A different way to test for getaddrinfo, so that it works on OSF/1 5.1.
[gnulib.git] / ChangeLog
1 2007-10-13  Albert Chin  <china@thewrittenword.com>
2             Bruno Haible  <bruno@clisp.org>
3
4         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
5         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
6
7 2007-10-13  Bruno Haible  <bruno@clisp.org>
8
9         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
10         defined, use the ISO C99 inline semantics.
11         * lib/argp.h (ARGP_EI): Likewise.
12
13 2007-10-13  Bruno Haible  <bruno@clisp.org>
14
15         Handle 'inline' change in gcc 4.3.0.
16         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
17         argp_fmtstream_write, argp_fmtstream_set_lmargin,
18         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
19         argp_fmtstream_point): Disable 'extern' declaration if the function
20         definition is going to be provided inline.
21         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
22         semantics, not the ISO C99 inline semantics.
23         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
24         'extern' declaration if the function definition is going to be provided
25         inline.
26         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
27         the GNU C inline semantics, not the ISO C99 inline semantics. With
28         GCC 4.2, avoid a warning.
29
30 2007-10-13  Bruno Haible  <bruno@clisp.org>
31
32         * lib/freading.h (freading): Enable the use of __freading for
33         glibc >= 2.7.
34         * lib/freading.c (freading): Likewise.
35
36 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
37
38         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
39         "warning: C99 inline functions are not supported; using GNU89".
40
41 2007-10-12  Bruno Haible  <bruno@clisp.org>
42
43         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
44         of 2.
45         * tests/test-ceilf2.c: New file.
46         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
47
48         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
49         * modules/ceilf-tests: Update.
50
51 2007-10-12  Bruno Haible  <bruno@clisp.org>
52
53         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
54         of 2.
55         * tests/test-floorf2.c: New file.
56         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
57
58         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
59         * modules/floorf-tests: Update.
60
61 2007-10-12  Bruno Haible  <bruno@clisp.org>
62
63         * tests/test-trunc2.c: New file.
64         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
65
66         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
67         * modules/trunc-tests: Update.
68
69 2007-10-12  Bruno Haible  <bruno@clisp.org>
70
71         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
72         of 2.
73         * tests/test-truncf2.c: New file.
74         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
75
76         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
77         * modules/truncf-tests: Update.
78
79 2007-10-11  Eric Blake  <ebb9@byu.net>
80
81         Don't claim strerror is broken on Interix.
82         * doc/functions/strerror.texi (strerror): Known broken systems are
83         now Solaris 8, and not Interix.
84         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
85         Interix on cross-compile.
86         Reported by Martin Koeppe in
87         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
88
89 2007-10-11  Bruno Haible  <bruno@clisp.org>
90
91         * modules/i-ring-tests: New file.
92         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
93         instead of assert.
94
95 2007-10-11  Bruno Haible  <bruno@clisp.org>
96
97         * modules/filenamecat-tests: New file.
98         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
99         * lib/filenamecat.c: Remove test code.
100
101 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
102
103         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
104
105         * lib/strerror.c: Include <string.h> always, to test interface,
106         and to remove the need for the dummy.
107         Include intprops.h to compute width instead of doing it ourselves
108         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
109         (strerror): Define it to return NULL if there's no system strerror.
110         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
111         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
112         ancient pre-strerror Unix systems well any more.  Saying "unknown
113         system error" is enough.
114         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
115         simpler strerror.c implementation.
116         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
117         Simplify the tests to reflect the simpler strerror implementation.
118         * modules/strerror (Depends-on): Add intprops.
119
120 2007-10-09  Eric Blake  <ebb9@byu.net>
121
122         Silence test-fpending.
123         * modules/fpending-tests (Files): Add wrapper script.
124         * tests/test-fpending.sh: New file.
125
126 2007-10-09  Bruno Haible  <bruno@clisp.org>
127
128         * MODULES.html.sh (func_module): Don't create a hyperlink for
129         function names like 'printf_frexp'.
130         (Misc): Add crc, memxor.
131         (Characteristics of floating types): New section.
132         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
133         isnanf-nolibm, signbit, trunc, truncf, truncl.
134         (Enhancements for ISO C 99 functions): New subsection Input/output.
135         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
136         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
137         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
138         (Compatibility checks for POSIX:2001 functions): Add clock-time.
139         (Enhancements for POSIX:2001 functions): Add chdir-long.
140         (File system functions): Add areadlink, chdir-safer, read-file.
141         Remove cycle-check.
142         (File system as inode set): New section.
143         (Date and time): Add gethrxtime.
144         (Multithreading): Add openmp.
145         (Internationalization functions): Add localename.
146         (Unicode string functions): Add unistr/u*-mbsnlen.
147         (Support for maintaining and releasing projects): Add git-version-gen.
148         (Lone files): Remove directories.
149
150 2007-10-08  Ben Pfaff  <blp@gnu.org>
151
152         * lib/xmalloca.h: Fix typo in comment.
153
154 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
155
156         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
157         when avoiding problems with integer overflow.  Use a portable test
158         instead.
159
160 2007-10-08  Simon Josefsson  <simon@josefsson.org>
161
162         * modules/dummy (License): Change to LGPLv2+.
163         * modules/float (License): Likewise
164         * modules/realloc (License): Likewise
165         * modules/stdlib (License): Likewise
166
167 2007-10-07  Bruno Haible  <bruno@clisp.org>
168
169         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
170         * floor.c (TWO_MANT_DIG): Likewise.
171         * ceil.c (TWO_MANT_DIG): Likewise.
172         Reported by Ben Pfaff.
173
174 2007-10-07  Bruno Haible  <bruno@clisp.org>
175
176         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
177         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
178         * lib/frexp.c (FUNC): Likewise.
179         * lib/printf-frexp.h (printf_frexp): Likewise.
180         * lib/printf-frexpl.h (printf_frexpl): Likewise.
181         * lib/printf-frexp.c (FUNC): Likewise.
182         Suggested by Jim Meyering.
183
184 2007-10-07  Jim Meyering  <meyering@redhat.com>
185
186         Make xnanosleep's integer overflow test more robust.
187         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
188         so that gcc-4.3.0 doesn't optimize away this test for overflow.
189
190 2007-10-07  Bruno Haible  <bruno@clisp.org>
191
192         * NEWS: Mention the license change.
193
194         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
195         abbreviations in the modules files.
196
197         Change copyright notice from GPLv2+ to GPLv3+.
198         * README: Change copyright notice.
199         * MODULES.html.sh: Likewise.
200         * build-aux/bootstrap.conf: Likewise.
201         * build-aux/config.libpath: Likewise.
202         * build-aux/csharpcomp.sh.in: Likewise.
203         * build-aux/csharpexec.sh.in: Likewise.
204         * build-aux/install-reloc: Likewise.
205         * build-aux/javacomp.sh.in: Likewise.
206         * build-aux/javaexec.sh.in: Likewise.
207         * build-aux/ldd.sh.in: Likewise.
208         * build-aux/reloc-ldflags: Likewise.
209         * build-aux/relocatable.sh.in: Likewise.
210         * build-aux/x-to-1.in: Likewise.
211         * check-module: Likewise.
212         * config/srclistvars.sh: Likewise.
213         * gnulib-tool: Likewise.
214         * lib/acl-internal.h: Likewise.
215         * lib/acl.c: Likewise.
216         * lib/acl.h: Likewise.
217         * lib/acl_entries.c: Likewise.
218         * lib/areadlink-with-size.c: Likewise.
219         * lib/areadlink.c: Likewise.
220         * lib/areadlink.h: Likewise.
221         * lib/argmatch.c: Likewise.
222         * lib/argmatch.h: Likewise.
223         * lib/argp-ba.c: Likewise.
224         * lib/argp-eexst.c: Likewise.
225         * lib/argp-fmtstream.c: Likewise.
226         * lib/argp-fmtstream.h: Likewise.
227         * lib/argp-fs-xinl.c: Likewise.
228         * lib/argp-help.c: Likewise.
229         * lib/argp-namefrob.h: Likewise.
230         * lib/argp-parse.c: Likewise.
231         * lib/argp-pin.c: Likewise.
232         * lib/argp-pv.c: Likewise.
233         * lib/argp-pvh.c: Likewise.
234         * lib/argp-xinl.c: Likewise.
235         * lib/argp.h: Likewise.
236         * lib/at-func.c: Likewise.
237         * lib/atanl.c: Likewise.
238         * lib/backupfile.c: Likewise.
239         * lib/backupfile.h: Likewise.
240         * lib/basename.c: Likewise.
241         * lib/binary-io.h: Likewise.
242         * lib/byteswap.in.h: Likewise.
243         * lib/c-stack.c: Likewise.
244         * lib/c-stack.h: Likewise.
245         * lib/c-strcasestr.c: Likewise.
246         * lib/c-strcasestr.h: Likewise.
247         * lib/c-strstr.c: Likewise.
248         * lib/c-strstr.h: Likewise.
249         * lib/c-strtod.c: Likewise.
250         * lib/calloc.c: Likewise.
251         * lib/canon-host.c: Likewise.
252         * lib/canon-host.h: Likewise.
253         * lib/canonicalize-lgpl.c: Likewise.
254         * lib/canonicalize.c: Likewise.
255         * lib/canonicalize.h: Likewise.
256         * lib/ceil.c: Likewise.
257         * lib/ceilf.c: Likewise.
258         * lib/ceill.c: Likewise.
259         * lib/chdir-long.c: Likewise.
260         * lib/chdir-long.h: Likewise.
261         * lib/chdir-safer.c: Likewise.
262         * lib/chdir-safer.h: Likewise.
263         * lib/chown.c: Likewise.
264         * lib/classpath.c: Likewise.
265         * lib/classpath.h: Likewise.
266         * lib/clean-temp.c: Likewise.
267         * lib/clean-temp.h: Likewise.
268         * lib/cloexec.c: Likewise.
269         * lib/close-stream.c: Likewise.
270         * lib/closein.c: Likewise.
271         * lib/closein.h: Likewise.
272         * lib/closeout.c: Likewise.
273         * lib/closeout.h: Likewise.
274         * lib/concat-filename.c: Likewise.
275         * lib/copy-file.c: Likewise.
276         * lib/copy-file.h: Likewise.
277         * lib/count-one-bits.h: Likewise.
278         * lib/crc.c: Likewise.
279         * lib/crc.h: Likewise.
280         * lib/creat-safer.c: Likewise.
281         * lib/csharpcomp.c: Likewise.
282         * lib/csharpcomp.h: Likewise.
283         * lib/csharpexec.c: Likewise.
284         * lib/csharpexec.h: Likewise.
285         * lib/cycle-check.c: Likewise.
286         * lib/cycle-check.h: Likewise.
287         * lib/diacrit.c: Likewise.
288         * lib/diacrit.h: Likewise.
289         * lib/diffseq.h: Likewise.
290         * lib/dirchownmod.c: Likewise.
291         * lib/dirent.in.h: Likewise.
292         * lib/dirfd.c: Likewise.
293         * lib/dirfd.h: Likewise.
294         * lib/dirname.c: Likewise.
295         * lib/dirname.h: Likewise.
296         * lib/dummy.c: Likewise.
297         * lib/dup-safer.c: Likewise.
298         * lib/dup2.c: Likewise.
299         * lib/eealloc.h: Likewise.
300         * lib/error.c: Likewise.
301         * lib/error.h: Likewise.
302         * lib/euidaccess.c: Likewise.
303         * lib/exclude.c: Likewise.
304         * lib/exclude.h: Likewise.
305         * lib/execute.c: Likewise.
306         * lib/execute.h: Likewise.
307         * lib/exitfail.c: Likewise.
308         * lib/exitfail.h: Likewise.
309         * lib/expl.c: Likewise.
310         * lib/fatal-signal.c: Likewise.
311         * lib/fatal-signal.h: Likewise.
312         * lib/fbufmode.c: Likewise.
313         * lib/fbufmode.h: Likewise.
314         * lib/fchdir.c: Likewise.
315         * lib/fchmodat.c: Likewise.
316         * lib/fchownat.c: Likewise.
317         * lib/fcntl--.h: Likewise.
318         * lib/fcntl-safer.h: Likewise.
319         * lib/fcntl.in.h: Likewise.
320         * lib/fd-safer.c: Likewise.
321         * lib/fflush.c: Likewise.
322         * lib/file-has-acl.c: Likewise.
323         * lib/file-set.c: Likewise.
324         * lib/file-type.c: Likewise.
325         * lib/file-type.h: Likewise.
326         * lib/fileblocks.c: Likewise.
327         * lib/filemode.c: Likewise.
328         * lib/filemode.h: Likewise.
329         * lib/filename.h: Likewise.
330         * lib/filenamecat.c: Likewise.
331         * lib/filenamecat.h: Likewise.
332         * lib/findprog.c: Likewise.
333         * lib/findprog.h: Likewise.
334         * lib/float.in.h: Likewise.
335         * lib/floor.c: Likewise.
336         * lib/floorf.c: Likewise.
337         * lib/floorl.c: Likewise.
338         * lib/fopen-safer.c: Likewise.
339         * lib/fopen.c: Likewise.
340         * lib/fpending.c: Likewise.
341         * lib/fpending.h: Likewise.
342         * lib/fprintf.c: Likewise.
343         * lib/fprintftime.h: Likewise.
344         * lib/fpucw.h: Likewise.
345         * lib/fpurge.c: Likewise.
346         * lib/fpurge.h: Likewise.
347         * lib/freadable.c: Likewise.
348         * lib/freadable.h: Likewise.
349         * lib/freadahead.c: Likewise.
350         * lib/freadahead.h: Likewise.
351         * lib/freading.c: Likewise.
352         * lib/freading.h: Likewise.
353         * lib/free.c: Likewise.
354         * lib/freopen.c: Likewise.
355         * lib/frexp.c: Likewise.
356         * lib/frexpl.c: Likewise.
357         * lib/fseek.c: Likewise.
358         * lib/fseterr.c: Likewise.
359         * lib/fseterr.h: Likewise.
360         * lib/fstatat.c: Likewise.
361         * lib/fstrcmp.c: Likewise.
362         * lib/fstrcmp.h: Likewise.
363         * lib/fsusage.c: Likewise.
364         * lib/fsusage.h: Likewise.
365         * lib/ftell.c: Likewise.
366         * lib/ftello.c: Likewise.
367         * lib/fts-cycle.c: Likewise.
368         * lib/fts.c: Likewise.
369         * lib/fts_.h: Likewise.
370         * lib/full-read.c: Likewise.
371         * lib/full-read.h: Likewise.
372         * lib/full-write.c: Likewise.
373         * lib/full-write.h: Likewise.
374         * lib/fwritable.c: Likewise.
375         * lib/fwritable.h: Likewise.
376         * lib/fwriteerror.c: Likewise.
377         * lib/fwriteerror.h: Likewise.
378         * lib/fwriting.c: Likewise.
379         * lib/fwriting.h: Likewise.
380         * lib/gcd.c: Likewise.
381         * lib/gcd.h: Likewise.
382         * lib/getcwd.c: Likewise.
383         * lib/getdate.h: Likewise.
384         * lib/getdate.y: Likewise.
385         * lib/getdomainname.c: Likewise.
386         * lib/getdomainname.h: Likewise.
387         * lib/getgroups.c: Likewise.
388         * lib/gethostname.c: Likewise.
389         * lib/gethrxtime.c: Likewise.
390         * lib/gethrxtime.h: Likewise.
391         * lib/getloadavg.c: Likewise.
392         * lib/getndelim2.c: Likewise.
393         * lib/getndelim2.h: Likewise.
394         * lib/getnline.c: Likewise.
395         * lib/getnline.h: Likewise.
396         * lib/getopt.c: Likewise.
397         * lib/getopt.in.h: Likewise.
398         * lib/getopt1.c: Likewise.
399         * lib/getopt_int.h: Likewise.
400         * lib/getpagesize.h: Likewise.
401         * lib/getsubopt.c: Likewise.
402         * lib/gettime.c: Likewise.
403         * lib/getugroups.c: Likewise.
404         * lib/getugroups.h: Likewise.
405         * lib/getusershell.c: Likewise.
406         * lib/gl_anyavltree_list1.h: Likewise.
407         * lib/gl_anyavltree_list2.h: Likewise.
408         * lib/gl_anyhash_list1.h: Likewise.
409         * lib/gl_anyhash_list2.h: Likewise.
410         * lib/gl_anylinked_list1.h: Likewise.
411         * lib/gl_anylinked_list2.h: Likewise.
412         * lib/gl_anyrbtree_list1.h: Likewise.
413         * lib/gl_anyrbtree_list2.h: Likewise.
414         * lib/gl_anytree_list1.h: Likewise.
415         * lib/gl_anytree_list2.h: Likewise.
416         * lib/gl_anytree_oset.h: Likewise.
417         * lib/gl_anytreehash_list1.h: Likewise.
418         * lib/gl_anytreehash_list2.h: Likewise.
419         * lib/gl_array_list.c: Likewise.
420         * lib/gl_array_list.h: Likewise.
421         * lib/gl_array_oset.c: Likewise.
422         * lib/gl_array_oset.h: Likewise.
423         * lib/gl_avltree_list.c: Likewise.
424         * lib/gl_avltree_list.h: Likewise.
425         * lib/gl_avltree_oset.c: Likewise.
426         * lib/gl_avltree_oset.h: Likewise.
427         * lib/gl_avltreehash_list.c: Likewise.
428         * lib/gl_avltreehash_list.h: Likewise.
429         * lib/gl_carray_list.c: Likewise.
430         * lib/gl_carray_list.h: Likewise.
431         * lib/gl_linked_list.c: Likewise.
432         * lib/gl_linked_list.h: Likewise.
433         * lib/gl_linkedhash_list.c: Likewise.
434         * lib/gl_linkedhash_list.h: Likewise.
435         * lib/gl_list.c: Likewise.
436         * lib/gl_list.h: Likewise.
437         * lib/gl_oset.c: Likewise.
438         * lib/gl_oset.h: Likewise.
439         * lib/gl_rbtree_list.c: Likewise.
440         * lib/gl_rbtree_list.h: Likewise.
441         * lib/gl_rbtree_oset.c: Likewise.
442         * lib/gl_rbtree_oset.h: Likewise.
443         * lib/gl_rbtreehash_list.c: Likewise.
444         * lib/gl_rbtreehash_list.h: Likewise.
445         * lib/gl_sublist.c: Likewise.
446         * lib/gl_sublist.h: Likewise.
447         * lib/group-member.c: Likewise.
448         * lib/group-member.h: Likewise.
449         * lib/hard-locale.c: Likewise.
450         * lib/hard-locale.h: Likewise.
451         * lib/hash-pjw.c: Likewise.
452         * lib/hash-pjw.h: Likewise.
453         * lib/hash-triple.c: Likewise.
454         * lib/hash.c: Likewise.
455         * lib/hash.h: Likewise.
456         * lib/human.c: Likewise.
457         * lib/human.h: Likewise.
458         * lib/i-ring.c: Likewise.
459         * lib/i-ring.h: Likewise.
460         * lib/idcache.c: Likewise.
461         * lib/imaxabs.c: Likewise.
462         * lib/imaxdiv.c: Likewise.
463         * lib/inet_pton.c: Likewise.
464         * lib/inet_pton.h: Likewise.
465         * lib/intprops.h: Likewise.
466         * lib/inttostr.c: Likewise.
467         * lib/inttostr.h: Likewise.
468         * lib/inttypes.in.h: Likewise.
469         * lib/isapipe.c: Likewise.
470         * lib/isdir.c: Likewise.
471         * lib/isnan.c: Likewise.
472         * lib/isnan.h: Likewise.
473         * lib/isnanf.c: Likewise.
474         * lib/isnanf.h: Likewise.
475         * lib/isnanl-nolibm.h: Likewise.
476         * lib/isnanl.c: Likewise.
477         * lib/isnanl.h: Likewise.
478         * lib/javacomp.c: Likewise.
479         * lib/javacomp.h: Likewise.
480         * lib/javaexec.c: Likewise.
481         * lib/javaexec.h: Likewise.
482         * lib/javaversion.c: Likewise.
483         * lib/javaversion.h: Likewise.
484         * lib/javaversion.java: Likewise.
485         * lib/lbrkprop.h: Likewise.
486         * lib/lchmod.h: Likewise.
487         * lib/lchown.c: Likewise.
488         * lib/ldexpl.c: Likewise.
489         * lib/linebreak.c: Likewise.
490         * lib/linebreak.h: Likewise.
491         * lib/linebuffer.c: Likewise.
492         * lib/linebuffer.h: Likewise.
493         * lib/locale.in.h: Likewise.
494         * lib/logl.c: Likewise.
495         * lib/long-options.c: Likewise.
496         * lib/long-options.h: Likewise.
497         * lib/lstat.c: Likewise.
498         * lib/lstat.h: Likewise.
499         * lib/math.in.h: Likewise.
500         * lib/mbchar.c: Likewise.
501         * lib/mbchar.h: Likewise.
502         * lib/mbfile.h: Likewise.
503         * lib/mbiter.h: Likewise.
504         * lib/mbscasecmp.c: Likewise.
505         * lib/mbscasestr.c: Likewise.
506         * lib/mbschr.c: Likewise.
507         * lib/mbscspn.c: Likewise.
508         * lib/mbslen.c: Likewise.
509         * lib/mbsncasecmp.c: Likewise.
510         * lib/mbsnlen.c: Likewise.
511         * lib/mbspbrk.c: Likewise.
512         * lib/mbspcasecmp.c: Likewise.
513         * lib/mbsrchr.c: Likewise.
514         * lib/mbssep.c: Likewise.
515         * lib/mbsspn.c: Likewise.
516         * lib/mbsstr.c: Likewise.
517         * lib/mbstok_r.c: Likewise.
518         * lib/mbswidth.c: Likewise.
519         * lib/mbswidth.h: Likewise.
520         * lib/mbuiter.h: Likewise.
521         * lib/memcasecmp.c: Likewise.
522         * lib/memcasecmp.h: Likewise.
523         * lib/memchr.c: Likewise.
524         * lib/memcmp.c: Likewise.
525         * lib/memcoll.c: Likewise.
526         * lib/memcoll.h: Likewise.
527         * lib/memcpy.c: Likewise.
528         * lib/memrchr.c: Likewise.
529         * lib/mkancesdirs.c: Likewise.
530         * lib/mkdir-p.c: Likewise.
531         * lib/mkdir-p.h: Likewise.
532         * lib/mkdir.c: Likewise.
533         * lib/mkdirat.c: Likewise.
534         * lib/mkdtemp.c: Likewise.
535         * lib/mkstemp-safer.c: Likewise.
536         * lib/mkstemp.c: Likewise.
537         * lib/modechange.c: Likewise.
538         * lib/modechange.h: Likewise.
539         * lib/mountlist.c: Likewise.
540         * lib/mountlist.h: Likewise.
541         * lib/mpsort.c: Likewise.
542         * lib/nanosleep.c: Likewise.
543         * lib/obstack.c: Likewise.
544         * lib/obstack.h: Likewise.
545         * lib/open-safer.c: Likewise.
546         * lib/open.c: Likewise.
547         * lib/openat-die.c: Likewise.
548         * lib/openat-priv.h: Likewise.
549         * lib/openat-proc.c: Likewise.
550         * lib/openat.c: Likewise.
551         * lib/openat.h: Likewise.
552         * lib/pagealign_alloc.c: Likewise.
553         * lib/pagealign_alloc.h: Likewise.
554         * lib/physmem.c: Likewise.
555         * lib/physmem.h: Likewise.
556         * lib/pipe-safer.c: Likewise.
557         * lib/pipe.c: Likewise.
558         * lib/pipe.h: Likewise.
559         * lib/posixtm.c: Likewise.
560         * lib/posixtm.h: Likewise.
561         * lib/posixver.c: Likewise.
562         * lib/printf-frexp.c: Likewise.
563         * lib/printf-frexp.h: Likewise.
564         * lib/printf-frexpl.c: Likewise.
565         * lib/printf-frexpl.h: Likewise.
566         * lib/printf.c: Likewise.
567         * lib/progname.c: Likewise.
568         * lib/progname.h: Likewise.
569         * lib/progreloc.c: Likewise.
570         * lib/putenv.c: Likewise.
571         * lib/quote.c: Likewise.
572         * lib/quote.h: Likewise.
573         * lib/quotearg.c: Likewise.
574         * lib/quotearg.h: Likewise.
575         * lib/raise.c: Likewise.
576         * lib/readline.c: Likewise.
577         * lib/readline.h: Likewise.
578         * lib/readlink.c: Likewise.
579         * lib/readtokens.c: Likewise.
580         * lib/readtokens.h: Likewise.
581         * lib/readtokens0.c: Likewise.
582         * lib/readtokens0.h: Likewise.
583         * lib/readutmp.c: Likewise.
584         * lib/readutmp.h: Likewise.
585         * lib/realloc.c: Likewise.
586         * lib/relocwrapper.c: Likewise.
587         * lib/rename-dest-slash.c: Likewise.
588         * lib/rename.c: Likewise.
589         * lib/rmdir.c: Likewise.
590         * lib/rpmatch.c: Likewise.
591         * lib/safe-read.c: Likewise.
592         * lib/safe-read.h: Likewise.
593         * lib/safe-write.c: Likewise.
594         * lib/safe-write.h: Likewise.
595         * lib/same-inode.h: Likewise.
596         * lib/same.c: Likewise.
597         * lib/same.h: Likewise.
598         * lib/save-cwd.c: Likewise.
599         * lib/save-cwd.h: Likewise.
600         * lib/savedir.c: Likewise.
601         * lib/savedir.h: Likewise.
602         * lib/savewd.c: Likewise.
603         * lib/savewd.h: Likewise.
604         * lib/search.in.h: Likewise.
605         * lib/setenv.c: Likewise.
606         * lib/setenv.h: Likewise.
607         * lib/settime.c: Likewise.
608         * lib/sh-quote.c: Likewise.
609         * lib/sh-quote.h: Likewise.
610         * lib/sig2str.c: Likewise.
611         * lib/sig2str.h: Likewise.
612         * lib/signal.in.h: Likewise.
613         * lib/signbitd.c: Likewise.
614         * lib/signbitf.c: Likewise.
615         * lib/signbitl.c: Likewise.
616         * lib/sigprocmask.c: Likewise.
617         * lib/sincosl.c: Likewise.
618         * lib/sleep.c: Likewise.
619         * lib/sprintf.c: Likewise.
620         * lib/sqrtl.c: Likewise.
621         * lib/stat-time.h: Likewise.
622         * lib/stdio--.h: Likewise.
623         * lib/stdio-safer.h: Likewise.
624         * lib/stdlib--.h: Likewise.
625         * lib/stdlib-safer.h: Likewise.
626         * lib/stdlib.in.h: Likewise.
627         * lib/stpcpy.c: Likewise.
628         * lib/stpncpy.c: Likewise.
629         * lib/strchrnul.c: Likewise.
630         * lib/strcspn.c: Likewise.
631         * lib/strerror.c: Likewise.
632         * lib/strftime.c: Likewise.
633         * lib/strftime.h: Likewise.
634         * lib/striconveh.c: Likewise.
635         * lib/striconveh.h: Likewise.
636         * lib/striconveha.c: Likewise.
637         * lib/striconveha.h: Likewise.
638         * lib/stripslash.c: Likewise.
639         * lib/strnlen1.c: Likewise.
640         * lib/strnlen1.h: Likewise.
641         * lib/strtod.c: Likewise.
642         * lib/strtoimax.c: Likewise.
643         * lib/strtok_r.c: Likewise.
644         * lib/strtol.c: Likewise.
645         * lib/strtoll.c: Likewise.
646         * lib/strtoul.c: Likewise.
647         * lib/strtoull.c: Likewise.
648         * lib/sysexits.in.h: Likewise.
649         * lib/tempname.c: Likewise.
650         * lib/tempname.h: Likewise.
651         * lib/timespec.h: Likewise.
652         * lib/tls.c: Likewise.
653         * lib/tls.h: Likewise.
654         * lib/tmpdir.c: Likewise.
655         * lib/tmpdir.h: Likewise.
656         * lib/tmpfile-safer.c: Likewise.
657         * lib/tmpfile.c: Likewise.
658         * lib/trigl.c: Likewise.
659         * lib/trigl.h: Likewise.
660         * lib/trim.c: Likewise.
661         * lib/trim.h: Likewise.
662         * lib/trunc.c: Likewise.
663         * lib/truncf.c: Likewise.
664         * lib/truncl.c: Likewise.
665         * lib/tsearch.c: Likewise.
666         * lib/unicodeio.c: Likewise.
667         * lib/unicodeio.h: Likewise.
668         * lib/unistd--.h: Likewise.
669         * lib/unistd-safer.h: Likewise.
670         * lib/unistdio/ulc-fprintf.c: Likewise.
671         * lib/unistdio/ulc-vfprintf.c: Likewise.
672         * lib/unlinkdir.c: Likewise.
673         * lib/unlinkdir.h: Likewise.
674         * lib/unlocked-io.h: Likewise.
675         * lib/unsetenv.c: Likewise.
676         * lib/userspec.c: Likewise.
677         * lib/utime.c: Likewise.
678         * lib/utimecmp.c: Likewise.
679         * lib/utimecmp.h: Likewise.
680         * lib/utimens.c: Likewise.
681         * lib/verify.h: Likewise.
682         * lib/verror.c: Likewise.
683         * lib/verror.h: Likewise.
684         * lib/version-etc-fsf.c: Likewise.
685         * lib/version-etc.c: Likewise.
686         * lib/version-etc.h: Likewise.
687         * lib/vfprintf.c: Likewise.
688         * lib/vprintf.c: Likewise.
689         * lib/vsprintf.c: Likewise.
690         * lib/w32spawn.h: Likewise.
691         * lib/wait-process.c: Likewise.
692         * lib/wait-process.h: Likewise.
693         * lib/wcwidth.c: Likewise.
694         * lib/write-any-file.c: Likewise.
695         * lib/xalloc-die.c: Likewise.
696         * lib/xalloc.h: Likewise.
697         * lib/xasprintf.c: Likewise.
698         * lib/xgetcwd.c: Likewise.
699         * lib/xgetcwd.h: Likewise.
700         * lib/xgetdomainname.c: Likewise.
701         * lib/xgetdomainname.h: Likewise.
702         * lib/xgethostname.c: Likewise.
703         * lib/xmalloc.c: Likewise.
704         * lib/xmalloca.c: Likewise.
705         * lib/xmalloca.h: Likewise.
706         * lib/xmemcoll.c: Likewise.
707         * lib/xnanosleep.c: Likewise.
708         * lib/xreadlink.c: Likewise.
709         * lib/xreadlink.h: Likewise.
710         * lib/xsetenv.c: Likewise.
711         * lib/xsetenv.h: Likewise.
712         * lib/xstriconv.c: Likewise.
713         * lib/xstriconv.h: Likewise.
714         * lib/xstrndup.c: Likewise.
715         * lib/xstrndup.h: Likewise.
716         * lib/xstrtod.c: Likewise.
717         * lib/xstrtod.h: Likewise.
718         * lib/xstrtol-error.c: Likewise.
719         * lib/xstrtol.c: Likewise.
720         * lib/xstrtol.h: Likewise.
721         * lib/xtime.h: Likewise.
722         * lib/xvasprintf.c: Likewise.
723         * lib/xvasprintf.h: Likewise.
724         * lib/yesno.c: Likewise.
725         * lib/yesno.h: Likewise.
726         * posix-modules: Likewise.
727         * tests/test-alloca-opt.c: Likewise.
728         * tests/test-arcfour.c: Likewise.
729         * tests/test-arctwo.c: Likewise.
730         * tests/test-argmatch.c: Likewise.
731         * tests/test-argp-2.sh: Likewise.
732         * tests/test-argp.c: Likewise.
733         * tests/test-arpa_inet.c: Likewise.
734         * tests/test-array_list.c: Likewise.
735         * tests/test-array_oset.c: Likewise.
736         * tests/test-atexit.c: Likewise.
737         * tests/test-avltree_list.c: Likewise.
738         * tests/test-avltree_oset.c: Likewise.
739         * tests/test-avltreehash_list.c: Likewise.
740         * tests/test-base64.c: Likewise.
741         * tests/test-binary-io.c: Likewise.
742         * tests/test-byteswap.c: Likewise.
743         * tests/test-c-ctype.c: Likewise.
744         * tests/test-c-strcasecmp.c: Likewise.
745         * tests/test-c-strcasestr.c: Likewise.
746         * tests/test-c-strncasecmp.c: Likewise.
747         * tests/test-c-strstr.c: Likewise.
748         * tests/test-canonicalize-lgpl.c: Likewise.
749         * tests/test-canonicalize.c: Likewise.
750         * tests/test-carray_list.c: Likewise.
751         * tests/test-ceilf.c: Likewise.
752         * tests/test-ceill.c: Likewise.
753         * tests/test-count-one-bits.c: Likewise.
754         * tests/test-crc.c: Likewise.
755         * tests/test-dirname.c: Likewise.
756         * tests/test-fbufmode.c: Likewise.
757         * tests/test-fcntl.c: Likewise.
758         * tests/test-fflush.c: Likewise.
759         * tests/test-floorf.c: Likewise.
760         * tests/test-floorl.c: Likewise.
761         * tests/test-fopen.c: Likewise.
762         * tests/test-fprintf-posix.c: Likewise.
763         * tests/test-fprintf-posix.h: Likewise.
764         * tests/test-fpurge.c: Likewise.
765         * tests/test-freadable.c: Likewise.
766         * tests/test-freadahead.c: Likewise.
767         * tests/test-freading.c: Likewise.
768         * tests/test-freopen.c: Likewise.
769         * tests/test-frexp.c: Likewise.
770         * tests/test-frexpl.c: Likewise.
771         * tests/test-fseek.c: Likewise.
772         * tests/test-fseeko.c: Likewise.
773         * tests/test-fseterr.c: Likewise.
774         * tests/test-fstrcmp.c: Likewise.
775         * tests/test-ftell.c: Likewise.
776         * tests/test-ftello.c: Likewise.
777         * tests/test-fwritable.c: Likewise.
778         * tests/test-fwriting.c: Likewise.
779         * tests/test-getaddrinfo.c: Likewise.
780         * tests/test-getpass.c: Likewise.
781         * tests/test-gettimeofday.c: Likewise.
782         * tests/test-hmac-md5.c: Likewise.
783         * tests/test-hmac-sha1.c: Likewise.
784         * tests/test-iconv.c: Likewise.
785         * tests/test-iconvme.c: Likewise.
786         * tests/test-inttypes.c: Likewise.
787         * tests/test-isnan.c: Likewise.
788         * tests/test-isnanf.c: Likewise.
789         * tests/test-isnanl-nolibm.c: Likewise.
790         * tests/test-isnanl.c: Likewise.
791         * tests/test-isnanl.h: Likewise.
792         * tests/test-ldexpl.c: Likewise.
793         * tests/test-linked_list.c: Likewise.
794         * tests/test-linkedhash_list.c: Likewise.
795         * tests/test-locale.c: Likewise.
796         * tests/test-localename.c: Likewise.
797         * tests/test-lock.c: Likewise.
798         * tests/test-lseek.c: Likewise.
799         * tests/test-malloca.c: Likewise.
800         * tests/test-math.c: Likewise.
801         * tests/test-mbscasecmp.c: Likewise.
802         * tests/test-mbscasestr1.c: Likewise.
803         * tests/test-mbscasestr2.c: Likewise.
804         * tests/test-mbscasestr3.c: Likewise.
805         * tests/test-mbscasestr4.c: Likewise.
806         * tests/test-mbschr.c: Likewise.
807         * tests/test-mbscspn.c: Likewise.
808         * tests/test-mbsncasecmp.c: Likewise.
809         * tests/test-mbspbrk.c: Likewise.
810         * tests/test-mbspcasecmp.c: Likewise.
811         * tests/test-mbsrchr.c: Likewise.
812         * tests/test-mbsspn.c: Likewise.
813         * tests/test-mbsstr1.c: Likewise.
814         * tests/test-mbsstr2.c: Likewise.
815         * tests/test-mbsstr3.c: Likewise.
816         * tests/test-md5.c: Likewise.
817         * tests/test-memmem.c: Likewise.
818         * tests/test-netinet_in.c: Likewise.
819         * tests/test-open.c: Likewise.
820         * tests/test-printf-frexp.c: Likewise.
821         * tests/test-printf-frexpl.c: Likewise.
822         * tests/test-printf-posix.c: Likewise.
823         * tests/test-printf-posix.h: Likewise.
824         * tests/test-rbtree_list.c: Likewise.
825         * tests/test-rbtree_oset.c: Likewise.
826         * tests/test-rbtreehash_list.c: Likewise.
827         * tests/test-read-file.c: Likewise.
828         * tests/test-rijndael.c: Likewise.
829         * tests/test-search.c: Likewise.
830         * tests/test-signbit.c: Likewise.
831         * tests/test-sleep.c: Likewise.
832         * tests/test-snprintf-posix.c: Likewise.
833         * tests/test-snprintf-posix.h: Likewise.
834         * tests/test-snprintf.c: Likewise.
835         * tests/test-sprintf-posix.c: Likewise.
836         * tests/test-sprintf-posix.h: Likewise.
837         * tests/test-stat-time.c: Likewise.
838         * tests/test-stdbool.c: Likewise.
839         * tests/test-stdint.c: Likewise.
840         * tests/test-stdio.c: Likewise.
841         * tests/test-stdlib.c: Likewise.
842         * tests/test-stpncpy.c: Likewise.
843         * tests/test-strcasestr.c: Likewise.
844         * tests/test-striconv.c: Likewise.
845         * tests/test-striconveh.c: Likewise.
846         * tests/test-striconveha.c: Likewise.
847         * tests/test-string.c: Likewise.
848         * tests/test-sys_select.c: Likewise.
849         * tests/test-sys_socket.c: Likewise.
850         * tests/test-sys_stat.c: Likewise.
851         * tests/test-sys_time.c: Likewise.
852         * tests/test-sysexits.c: Likewise.
853         * tests/test-time.c: Likewise.
854         * tests/test-tls.c: Likewise.
855         * tests/test-trunc.c: Likewise.
856         * tests/test-truncf.c: Likewise.
857         * tests/test-truncl.c: Likewise.
858         * tests/test-unistd.c: Likewise.
859         * tests/test-vasnprintf-posix.c: Likewise.
860         * tests/test-vasnprintf-posix2.c: Likewise.
861         * tests/test-vasnprintf.c: Likewise.
862         * tests/test-vasprintf-posix.c: Likewise.
863         * tests/test-vasprintf.c: Likewise.
864         * tests/test-verify.c: Likewise.
865         * tests/test-vfprintf-posix.c: Likewise.
866         * tests/test-vprintf-posix.c: Likewise.
867         * tests/test-vsnprintf-posix.c: Likewise.
868         * tests/test-vsnprintf.c: Likewise.
869         * tests/test-vsprintf-posix.c: Likewise.
870         * tests/test-wchar.c: Likewise.
871         * tests/test-wctype.c: Likewise.
872         * tests/test-wcwidth.c: Likewise.
873         * tests/test-xstrtol.c: Likewise.
874         * tests/test-xvasprintf.c: Likewise.
875         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
876         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
877         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
878         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
879         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
880         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
881         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
882         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
883         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
884         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
885         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
886         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
887         * tests/uniname/test-uninames.c: Likewise.
888         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
889         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
890         * tests/unistdio/test-u16-printf1.h: Likewise.
891         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
892         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
893         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
894         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
895         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
896         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
897         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
898         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
899         * tests/unistdio/test-u32-printf1.h: Likewise.
900         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
901         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
902         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
903         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
904         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
905         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
906         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
907         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
908         * tests/unistdio/test-u8-printf1.h: Likewise.
909         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
910         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
911         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
912         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
913         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
914         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
915         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
916         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
917         * tests/unistdio/test-ulc-printf1.h: Likewise.
918         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
919         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
920         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
921         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
922         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
923         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
924         * tests/uniwidth/test-u16-strwidth.c: Likewise.
925         * tests/uniwidth/test-u16-width.c: Likewise.
926         * tests/uniwidth/test-u32-strwidth.c: Likewise.
927         * tests/uniwidth/test-u32-width.c: Likewise.
928         * tests/uniwidth/test-u8-strwidth.c: Likewise.
929         * tests/uniwidth/test-u8-width.c: Likewise.
930         * tests/uniwidth/test-uc_width.c: Likewise.
931         * config/srclist-update: Likewise.
932         (fixlicense): Update to GPLv3+.
933
934         Change copyright notice from LGPLv2.1+ to LGPLv3+.
935         * tests/test-tsearch.c: Change copyright notice.
936
937         Change copyright notice from LGPLv2.0+ to LGPLv3+.
938         * lib/c-strcaseeq.h: Change copyright notice.
939         * lib/streq.h: Likewise.
940         * lib/uniconv.h: Likewise.
941         * lib/uniconv/u-conv-from-enc.h: Likewise.
942         * lib/uniconv/u-conv-to-enc.h: Likewise.
943         * lib/uniconv/u-strconv-from-enc.h: Likewise.
944         * lib/uniconv/u-strconv-to-enc.h: Likewise.
945         * lib/uniconv/u16-conv-from-enc.c: Likewise.
946         * lib/uniconv/u16-conv-to-enc.c: Likewise.
947         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
948         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
949         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
950         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
951         * lib/uniconv/u32-conv-from-enc.c: Likewise.
952         * lib/uniconv/u32-conv-to-enc.c: Likewise.
953         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
954         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
955         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
956         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
957         * lib/uniconv/u8-conv-from-enc.c: Likewise.
958         * lib/uniconv/u8-conv-to-enc.c: Likewise.
959         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
960         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
961         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
962         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
963         * lib/uniname.h: Likewise.
964         * lib/uniname/uniname.c: Likewise.
965         * lib/unistdio.h: Likewise.
966         * lib/unistdio/u-asnprintf.h: Likewise.
967         * lib/unistdio/u-asprintf.h: Likewise.
968         * lib/unistdio/u-printf-args.c: Likewise.
969         * lib/unistdio/u-printf-args.h: Likewise.
970         * lib/unistdio/u-printf-parse.h: Likewise.
971         * lib/unistdio/u-snprintf.h: Likewise.
972         * lib/unistdio/u-sprintf.h: Likewise.
973         * lib/unistdio/u-vasprintf.h: Likewise.
974         * lib/unistdio/u-vsnprintf.h: Likewise.
975         * lib/unistdio/u-vsprintf.h: Likewise.
976         * lib/unistdio/u16-asnprintf.c: Likewise.
977         * lib/unistdio/u16-asprintf.c: Likewise.
978         * lib/unistdio/u16-printf-parse.c: Likewise.
979         * lib/unistdio/u16-snprintf.c: Likewise.
980         * lib/unistdio/u16-sprintf.c: Likewise.
981         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
982         * lib/unistdio/u16-u16-asprintf.c: Likewise.
983         * lib/unistdio/u16-u16-snprintf.c: Likewise.
984         * lib/unistdio/u16-u16-sprintf.c: Likewise.
985         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
986         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
987         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
988         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
989         * lib/unistdio/u16-vasnprintf.c: Likewise.
990         * lib/unistdio/u16-vasprintf.c: Likewise.
991         * lib/unistdio/u16-vsnprintf.c: Likewise.
992         * lib/unistdio/u16-vsprintf.c: Likewise.
993         * lib/unistdio/u32-asnprintf.c: Likewise.
994         * lib/unistdio/u32-asprintf.c: Likewise.
995         * lib/unistdio/u32-printf-parse.c: Likewise.
996         * lib/unistdio/u32-snprintf.c: Likewise.
997         * lib/unistdio/u32-sprintf.c: Likewise.
998         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
999         * lib/unistdio/u32-u32-asprintf.c: Likewise.
1000         * lib/unistdio/u32-u32-snprintf.c: Likewise.
1001         * lib/unistdio/u32-u32-sprintf.c: Likewise.
1002         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
1003         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
1004         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
1005         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
1006         * lib/unistdio/u32-vasnprintf.c: Likewise.
1007         * lib/unistdio/u32-vasprintf.c: Likewise.
1008         * lib/unistdio/u32-vsnprintf.c: Likewise.
1009         * lib/unistdio/u32-vsprintf.c: Likewise.
1010         * lib/unistdio/u8-asnprintf.c: Likewise.
1011         * lib/unistdio/u8-asprintf.c: Likewise.
1012         * lib/unistdio/u8-printf-parse.c: Likewise.
1013         * lib/unistdio/u8-snprintf.c: Likewise.
1014         * lib/unistdio/u8-sprintf.c: Likewise.
1015         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
1016         * lib/unistdio/u8-u8-asprintf.c: Likewise.
1017         * lib/unistdio/u8-u8-snprintf.c: Likewise.
1018         * lib/unistdio/u8-u8-sprintf.c: Likewise.
1019         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
1020         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
1021         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
1022         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
1023         * lib/unistdio/u8-vasnprintf.c: Likewise.
1024         * lib/unistdio/u8-vasprintf.c: Likewise.
1025         * lib/unistdio/u8-vsnprintf.c: Likewise.
1026         * lib/unistdio/u8-vsprintf.c: Likewise.
1027         * lib/unistdio/ulc-asnprintf.c: Likewise.
1028         * lib/unistdio/ulc-asprintf.c: Likewise.
1029         * lib/unistdio/ulc-printf-parse.c: Likewise.
1030         * lib/unistdio/ulc-snprintf.c: Likewise.
1031         * lib/unistdio/ulc-sprintf.c: Likewise.
1032         * lib/unistdio/ulc-vasnprintf.c: Likewise.
1033         * lib/unistdio/ulc-vasprintf.c: Likewise.
1034         * lib/unistdio/ulc-vsnprintf.c: Likewise.
1035         * lib/unistdio/ulc-vsprintf.c: Likewise.
1036         * lib/unistr.h: Likewise.
1037         * lib/unistr/u-cpy-alloc.h: Likewise.
1038         * lib/unistr/u-cpy.h: Likewise.
1039         * lib/unistr/u-endswith.h: Likewise.
1040         * lib/unistr/u-move.h: Likewise.
1041         * lib/unistr/u-set.h: Likewise.
1042         * lib/unistr/u-startswith.h: Likewise.
1043         * lib/unistr/u-stpcpy.h: Likewise.
1044         * lib/unistr/u-stpncpy.h: Likewise.
1045         * lib/unistr/u-strcat.h: Likewise.
1046         * lib/unistr/u-strcpy.h: Likewise.
1047         * lib/unistr/u-strcspn.h: Likewise.
1048         * lib/unistr/u-strdup.h: Likewise.
1049         * lib/unistr/u-strlen.h: Likewise.
1050         * lib/unistr/u-strncat.h: Likewise.
1051         * lib/unistr/u-strncpy.h: Likewise.
1052         * lib/unistr/u-strnlen.h: Likewise.
1053         * lib/unistr/u-strpbrk.h: Likewise.
1054         * lib/unistr/u-strspn.h: Likewise.
1055         * lib/unistr/u-strstr.h: Likewise.
1056         * lib/unistr/u-strtok.h: Likewise.
1057         * lib/unistr/u16-check.c: Likewise.
1058         * lib/unistr/u16-chr.c: Likewise.
1059         * lib/unistr/u16-cmp.c: Likewise.
1060         * lib/unistr/u16-cpy-alloc.c: Likewise.
1061         * lib/unistr/u16-cpy.c: Likewise.
1062         * lib/unistr/u16-endswith.c: Likewise.
1063         * lib/unistr/u16-mblen.c: Likewise.
1064         * lib/unistr/u16-mbsnlen.c: Likewise.
1065         * lib/unistr/u16-mbtouc-aux.c: Likewise.
1066         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
1067         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
1068         * lib/unistr/u16-mbtouc.c: Likewise.
1069         * lib/unistr/u16-mbtoucr.c: Likewise.
1070         * lib/unistr/u16-move.c: Likewise.
1071         * lib/unistr/u16-next.c: Likewise.
1072         * lib/unistr/u16-prev.c: Likewise.
1073         * lib/unistr/u16-set.c: Likewise.
1074         * lib/unistr/u16-startswith.c: Likewise.
1075         * lib/unistr/u16-stpcpy.c: Likewise.
1076         * lib/unistr/u16-stpncpy.c: Likewise.
1077         * lib/unistr/u16-strcat.c: Likewise.
1078         * lib/unistr/u16-strchr.c: Likewise.
1079         * lib/unistr/u16-strcmp.c: Likewise.
1080         * lib/unistr/u16-strcpy.c: Likewise.
1081         * lib/unistr/u16-strcspn.c: Likewise.
1082         * lib/unistr/u16-strdup.c: Likewise.
1083         * lib/unistr/u16-strlen.c: Likewise.
1084         * lib/unistr/u16-strmblen.c: Likewise.
1085         * lib/unistr/u16-strmbtouc.c: Likewise.
1086         * lib/unistr/u16-strncat.c: Likewise.
1087         * lib/unistr/u16-strncmp.c: Likewise.
1088         * lib/unistr/u16-strncpy.c: Likewise.
1089         * lib/unistr/u16-strnlen.c: Likewise.
1090         * lib/unistr/u16-strpbrk.c: Likewise.
1091         * lib/unistr/u16-strrchr.c: Likewise.
1092         * lib/unistr/u16-strspn.c: Likewise.
1093         * lib/unistr/u16-strstr.c: Likewise.
1094         * lib/unistr/u16-strtok.c: Likewise.
1095         * lib/unistr/u16-to-u32.c: Likewise.
1096         * lib/unistr/u16-to-u8.c: Likewise.
1097         * lib/unistr/u16-uctomb-aux.c: Likewise.
1098         * lib/unistr/u16-uctomb.c: Likewise.
1099         * lib/unistr/u32-check.c: Likewise.
1100         * lib/unistr/u32-chr.c: Likewise.
1101         * lib/unistr/u32-cmp.c: Likewise.
1102         * lib/unistr/u32-cpy-alloc.c: Likewise.
1103         * lib/unistr/u32-cpy.c: Likewise.
1104         * lib/unistr/u32-endswith.c: Likewise.
1105         * lib/unistr/u32-mblen.c: Likewise.
1106         * lib/unistr/u32-mbsnlen.c: Likewise.
1107         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
1108         * lib/unistr/u32-mbtouc.c: Likewise.
1109         * lib/unistr/u32-mbtoucr.c: Likewise.
1110         * lib/unistr/u32-move.c: Likewise.
1111         * lib/unistr/u32-next.c: Likewise.
1112         * lib/unistr/u32-prev.c: Likewise.
1113         * lib/unistr/u32-set.c: Likewise.
1114         * lib/unistr/u32-startswith.c: Likewise.
1115         * lib/unistr/u32-stpcpy.c: Likewise.
1116         * lib/unistr/u32-stpncpy.c: Likewise.
1117         * lib/unistr/u32-strcat.c: Likewise.
1118         * lib/unistr/u32-strchr.c: Likewise.
1119         * lib/unistr/u32-strcmp.c: Likewise.
1120         * lib/unistr/u32-strcpy.c: Likewise.
1121         * lib/unistr/u32-strcspn.c: Likewise.
1122         * lib/unistr/u32-strdup.c: Likewise.
1123         * lib/unistr/u32-strlen.c: Likewise.
1124         * lib/unistr/u32-strmblen.c: Likewise.
1125         * lib/unistr/u32-strmbtouc.c: Likewise.
1126         * lib/unistr/u32-strncat.c: Likewise.
1127         * lib/unistr/u32-strncmp.c: Likewise.
1128         * lib/unistr/u32-strncpy.c: Likewise.
1129         * lib/unistr/u32-strnlen.c: Likewise.
1130         * lib/unistr/u32-strpbrk.c: Likewise.
1131         * lib/unistr/u32-strrchr.c: Likewise.
1132         * lib/unistr/u32-strspn.c: Likewise.
1133         * lib/unistr/u32-strstr.c: Likewise.
1134         * lib/unistr/u32-strtok.c: Likewise.
1135         * lib/unistr/u32-to-u16.c: Likewise.
1136         * lib/unistr/u32-to-u8.c: Likewise.
1137         * lib/unistr/u32-uctomb.c: Likewise.
1138         * lib/unistr/u8-check.c: Likewise.
1139         * lib/unistr/u8-chr.c: Likewise.
1140         * lib/unistr/u8-cmp.c: Likewise.
1141         * lib/unistr/u8-cpy-alloc.c: Likewise.
1142         * lib/unistr/u8-cpy.c: Likewise.
1143         * lib/unistr/u8-endswith.c: Likewise.
1144         * lib/unistr/u8-mblen.c: Likewise.
1145         * lib/unistr/u8-mbsnlen.c: Likewise.
1146         * lib/unistr/u8-mbtouc-aux.c: Likewise.
1147         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
1148         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
1149         * lib/unistr/u8-mbtouc.c: Likewise.
1150         * lib/unistr/u8-mbtoucr.c: Likewise.
1151         * lib/unistr/u8-move.c: Likewise.
1152         * lib/unistr/u8-next.c: Likewise.
1153         * lib/unistr/u8-prev.c: Likewise.
1154         * lib/unistr/u8-set.c: Likewise.
1155         * lib/unistr/u8-startswith.c: Likewise.
1156         * lib/unistr/u8-stpcpy.c: Likewise.
1157         * lib/unistr/u8-stpncpy.c: Likewise.
1158         * lib/unistr/u8-strcat.c: Likewise.
1159         * lib/unistr/u8-strchr.c: Likewise.
1160         * lib/unistr/u8-strcmp.c: Likewise.
1161         * lib/unistr/u8-strcpy.c: Likewise.
1162         * lib/unistr/u8-strcspn.c: Likewise.
1163         * lib/unistr/u8-strdup.c: Likewise.
1164         * lib/unistr/u8-strlen.c: Likewise.
1165         * lib/unistr/u8-strmblen.c: Likewise.
1166         * lib/unistr/u8-strmbtouc.c: Likewise.
1167         * lib/unistr/u8-strncat.c: Likewise.
1168         * lib/unistr/u8-strncmp.c: Likewise.
1169         * lib/unistr/u8-strncpy.c: Likewise.
1170         * lib/unistr/u8-strnlen.c: Likewise.
1171         * lib/unistr/u8-strpbrk.c: Likewise.
1172         * lib/unistr/u8-strrchr.c: Likewise.
1173         * lib/unistr/u8-strspn.c: Likewise.
1174         * lib/unistr/u8-strstr.c: Likewise.
1175         * lib/unistr/u8-strtok.c: Likewise.
1176         * lib/unistr/u8-to-u16.c: Likewise.
1177         * lib/unistr/u8-to-u32.c: Likewise.
1178         * lib/unistr/u8-uctomb-aux.c: Likewise.
1179         * lib/unistr/u8-uctomb.c: Likewise.
1180         * lib/unitypes.h: Likewise.
1181         * lib/uniwidth.h: Likewise.
1182         * lib/uniwidth/cjk.h: Likewise.
1183         * lib/uniwidth/u16-strwidth.c: Likewise.
1184         * lib/uniwidth/u16-width.c: Likewise.
1185         * lib/uniwidth/u32-strwidth.c: Likewise.
1186         * lib/uniwidth/u32-width.c: Likewise.
1187         * lib/uniwidth/u8-strwidth.c: Likewise.
1188         * lib/uniwidth/u8-width.c: Likewise.
1189         * lib/uniwidth/width.c: Likewise.
1190
1191 2007-10-07  Bruno Haible  <bruno@clisp.org>
1192
1193         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
1194         The file is still under LGPL (see modules/inttypes).
1195
1196 2007-10-06  Bruno Haible  <bruno@clisp.org>
1197
1198         * modules/trunc (Dependencies): Add 'extensions'.
1199         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
1200         Reported by Ben Pfaff <blp@gnu.org>.
1201
1202 2007-10-06  Bruno Haible  <bruno@clisp.org>
1203
1204         * modules/freopen-tests: New file.
1205         * tests/test-freopen.c: New file.
1206
1207         * modules/fopen-tests: New file.
1208         * tests/test-fopen.c: New file.
1209
1210         * modules/fopen: New file.
1211         * lib/fopen.c: New file.
1212         * m4/fopen.m4: New file.
1213         * modules/freopen: New file.
1214         * lib/freopen.c: New file.
1215         * m4/freopen.m4: New file.
1216         * lib/stdio.in.h (fopen, freopen): New declarations.
1217         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
1218         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
1219         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
1220         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
1221         * doc/functions/fopen.texi: Mention the 'fopen' module.
1222         * doc/functions/freopen.texi: Mention the 'freopen' module.
1223
1224 2007-10-06  Bruno Haible  <bruno@clisp.org>
1225
1226         * modules/open-tests: New file.
1227         * tests/test-open.c: New file.
1228
1229         * modules/open: New file.
1230         * lib/open.c: New file.
1231         * m4/open.m4: New file.
1232         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
1233         lib/open.c does.
1234         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
1235         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
1236         macros.
1237         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
1238         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
1239         REPLACE_OPEN.
1240         * doc/functions/open.texi: Mention the 'open' module.
1241
1242 2007-10-04  Bruno Haible  <bruno@clisp.org>
1243
1244         * modules/ceill-tests: New file.
1245         * tests/test-ceill.c: New file.
1246
1247         * modules/ceill: New file.
1248         * lib/ceill.c: Replace entire file.
1249         * m4/ceill.m4: New file.
1250         * lib/math.in.h (ceill): Replace declaration.
1251         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
1252         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
1253         * doc/functions/ceill.texi: Mention the 'ceill' module.
1254         * modules/mathl (Files): Remove lib/ceill.c.
1255         (Depends-on): Add ceill.
1256
1257 2007-10-04  Bruno Haible  <bruno@clisp.org>
1258
1259         * modules/ceilf-tests: New file.
1260         * tests/test-ceilf.c: New file.
1261
1262         * modules/ceilf: New file.
1263         * lib/ceil.c: New file.
1264         * lib/ceilf.c: New file.
1265         * m4/ceilf.m4: New file.
1266         * lib/math.in.h (ceilf): New declaration.
1267         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
1268         HAVE_DECL_CEILF.
1269         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
1270         HAVE_DECL_CEILF.
1271         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
1272
1273 2007-10-04  Bruno Haible  <bruno@clisp.org>
1274
1275         * modules/floorl-tests: New file.
1276         * tests/test-floorl.c: New file.
1277
1278         * modules/floorl: New file.
1279         * lib/floorl.c: Replace entire file.
1280         * m4/floorl.m4: New file.
1281         * lib/math.in.h (floorl): Replace declaration.
1282         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
1283         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
1284         * doc/functions/floorl.texi: Mention the 'floorl' module.
1285         * modules/mathl (Files): Remove lib/floorl.c.
1286         (Depends-on): Add floorl.
1287
1288 2007-10-04  Bruno Haible  <bruno@clisp.org>
1289
1290         * modules/floorf-tests: New file.
1291         * tests/test-floorf.c: New file.
1292
1293         * modules/floorf: New file.
1294         * lib/floor.c: New file.
1295         * lib/floorf.c: New file.
1296         * m4/floorf.m4: New file.
1297         * lib/math.in.h (floorf): New declaration.
1298         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
1299         HAVE_DECL_FLOORF.
1300         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
1301         HAVE_DECL_FLOORF.
1302         * doc/functions/floorf.texi: Mention the 'floorf' module.
1303
1304 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
1305             Bruno Haible  <bruno@clisp.org>
1306
1307         Advertise for the Git server instead of the CVS server.
1308         * doc/gnulib-intro.texi (Steady Development): Mention the Git
1309         repository instead of the CVS one.
1310         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
1311         about all VCS systems generically.
1312         * doc/gnulib.texi (Introduction): Capitalize `Git'.
1313
1314 2007-10-04  Bruno Haible  <bruno@clisp.org>
1315
1316         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
1317         means.
1318         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
1319
1320 2007-10-04  Bruno Haible  <bruno@clisp.org>
1321
1322         * modules/truncl-tests: New file.
1323         * tests/test-truncl.c: New file.
1324
1325         * modules/truncl: New file.
1326         * lib/truncl.c: New file.
1327         * m4/truncl.m4: New file.
1328         * lib/math.in.h (truncl): New declaration.
1329         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
1330         HAVE_DECL_TRUNCL.
1331         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
1332         HAVE_DECL_TRUNCL.
1333         * doc/functions/truncl.texi: Mention the 'truncl' module.
1334
1335 2007-10-04  Bruno Haible  <bruno@clisp.org>
1336
1337         * modules/truncf-tests: New file.
1338         * tests/test-truncf.c: New file.
1339
1340         * modules/truncf: New file.
1341         * lib/trunc.c: Make paramerizable through USE_* macros.
1342         * lib/truncf.c: New file.
1343         * m4/truncf.m4: New file.
1344         * lib/math.in.h (truncf): New declaration.
1345         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
1346         HAVE_DECL_TRUNCF.
1347         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
1348         HAVE_DECL_TRUNCF.
1349         * doc/functions/truncf.texi: Mention the 'truncf' module.
1350
1351 2007-10-03  Bruno Haible  <bruno@clisp.org>
1352
1353         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
1354         augmentation also for tests modules.
1355         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
1356         * modules/atexit-tests (Makefile.am): Likewise.
1357         * modules/binary-io-tests (Makefile.am): Likewise.
1358         * modules/c-strcase-tests (Makefile.am): Likewise.
1359         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
1360         * modules/canonicalize-tests (Makefile.am): Likewise.
1361         * modules/closein-tests (Makefile.am): Likewise.
1362         * modules/fprintf-posix-tests (Makefile.am): Likewise.
1363         * modules/freadahead-tests (Makefile.am): Likewise.
1364         * modules/fseek-tests (Makefile.am): Likewise.
1365         * modules/fseeko-tests (Makefile.am): Likewise.
1366         * modules/ftell-tests (Makefile.am): Likewise.
1367         * modules/ftello-tests (Makefile.am): Likewise.
1368         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
1369         * modules/isnanl-tests (Makefile.am): Likewise.
1370         * modules/lseek-tests (Makefile.am): Likewise.
1371         * modules/mbscasecmp-tests (Makefile.am): Likewise.
1372         * modules/mbscasestr-tests (Makefile.am): Likewise.
1373         * modules/mbschr-tests (Makefile.am): Likewise.
1374         * modules/mbscspn-tests (Makefile.am): Likewise.
1375         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
1376         * modules/mbspbrk-tests (Makefile.am): Likewise.
1377         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
1378         * modules/mbsrchr-tests (Makefile.am): Likewise.
1379         * modules/mbsspn-tests (Makefile.am): Likewise.
1380         * modules/mbsstr-tests (Makefile.am): Likewise.
1381         * modules/printf-posix-tests (Makefile.am): Likewise.
1382         * modules/snprintf-posix-tests (Makefile.am): Likewise.
1383         * modules/sprintf-posix-tests (Makefile.am): Likewise.
1384         * modules/tsearch-tests (Makefile.am): Likewise.
1385         * modules/uniname/uniname-tests (Makefile.am): Likewise.
1386         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
1387         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
1388         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
1389         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
1390         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
1391         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
1392         * modules/vprintf-posix-tests (Makefile.am): Likewise.
1393         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
1394         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
1395         * modules/xstrtoimax-tests (Makefile.am): Likewise.
1396         * modules/xstrtol-tests (Makefile.am): Likewise.
1397         * modules/xstrtoumax-tests (Makefile.am): Likewise.
1398         * modules/yesno-tests (Makefile.am): Likewise.
1399
1400 2007-10-03  Bruno Haible  <bruno@clisp.org>
1401
1402         * modules/trunc-tests: New file.
1403         * tests/test-trunc.c: New file.
1404
1405         * modules/trunc: New file.
1406         * lib/trunc.c: New file.
1407         * m4/trunc.m4: New file.
1408         * lib/math.in.h (trunc): New declaration.
1409         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
1410         HAVE_DECL_TRUNC.
1411         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
1412         HAVE_DECL_TRUNC.
1413         * doc/functions/trunc.texi: Mention the 'trunc' module.
1414
1415 2007-10-03  Bruno Haible  <bruno@clisp.org>
1416
1417         * tests/test-fpending.c: New file, mostly copied
1418         from coreutils/lib/t-fpending.c.
1419         * modules/fpending-tests: New file.
1420
1421 2007-10-03  Bruno Haible  <bruno@clisp.org>
1422
1423         Port the stdio extensions to QNX (untested).
1424         * lib/fseterr.c (fseterr): Add support for QNX.
1425         * lib/fbufmode.c (fbufmode): Likewise.
1426         * lib/freadable.c (freadable): Likewise.
1427         * lib/fwritable.c (fwritable): Likewise.
1428         * lib/freading.c (freading): Likewise.
1429         * lib/fwriting.c (fwriting): Likewise.
1430         * lib/freadahead.c (freadahed): Likewise.
1431         * lib/fpurge.c (fpurge): Likewise.
1432         * lib/fseeko.c (rpl_fseeko): Likewise.
1433
1434 2007-10-03  Bruno Haible  <bruno@clisp.org>
1435             Jim Meyering  <jim@meyering.net>
1436             Eric Blake  <ebb9@byu.net>
1437
1438         * doc/relocatable.texi: Use @command instead of @program.
1439
1440 2007-10-02  Jim Meyering  <jim@meyering.net>
1441
1442         Perform one more "_.h" -> ".in.h" substitution.
1443         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
1444         instead of unistd_.h here, too.
1445
1446 2007-10-01  Bruno Haible  <bruno@clisp.org>
1447
1448         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
1449         Needed for the alloca-opt module.
1450
1451 2007-09-30  Bruno Haible  <bruno@clisp.org>
1452
1453         * lib/alloca.in.h: Renamed from lib/alloca_.h.
1454         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
1455         alloca_.h.
1456         * lib/argz.in.h: Renamed from lib/argz_.h.
1457         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
1458         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
1459         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
1460         byteswap_.h.
1461         * lib/dirent.in.h: Renamed from lib/dirent_.h.
1462         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
1463         dirent_.h.
1464         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
1465         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
1466         fcntl_.h.
1467         * lib/float.in.h: Renamed from lib/float_.h.
1468         * modules/float (Files, Makefile.am): Use float.in.h instead of
1469         float_.h.
1470         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
1471         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
1472         fnmatch_.h.
1473         * lib/getopt.in.h: Renamed from lib/getopt_.h.
1474         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
1475         getopt_.h.
1476         * lib/glob.in.h: Renamed from lib/glob_.h.
1477         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
1478         * lib/iconv.in.h: Renamed from lib/iconv_.h.
1479         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
1480         iconv_.h.
1481         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
1482         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
1483         inttypes_.h.
1484         * lib/locale.in.h: Renamed from lib/locale_.h.
1485         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
1486         locale_.h.
1487         * lib/math.in.h: Renamed from lib/math_.h.
1488         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
1489         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
1490         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
1491         of netinet_in_.h. Add dependency.
1492         * lib/poll.in.h: Renamed from lib/poll_.h.
1493         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
1494         * lib/search.in.h: Renamed from lib/search_.h.
1495         * modules/search (Files, Makefile.am): Use search.in.h instead of
1496         search_.h.
1497         * lib/signal.in.h: Renamed from lib/signal_.h.
1498         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
1499         _signal.h.
1500         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
1501         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
1502         stdbool_.h.
1503         * lib/stdint.in.h: Renamed from lib/stdint_.h.
1504         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
1505         stdint_.h.
1506         * lib/stdio.in.h: Renamed from lib/stdio_.h.
1507         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
1508         stdio_.h.
1509         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
1510         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
1511         stdlib_.h.
1512         * lib/string.in.h: Renamed from lib/string_.h.
1513         * modules/string (Files, Makefile.am): Use string.in.h instead of
1514         string_.h.
1515         * doc/gnulib-tool.texi (Initial import): Update.
1516         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
1517         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
1518         of sys_select_.h. Add dependency.
1519         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
1520         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
1521         of sys_socket_.h.
1522         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
1523         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
1524         sys_stat_.h.
1525         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
1526         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
1527         sys_time_.h.
1528         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
1529         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
1530         sysexits_.h.
1531         * lib/time.in.h: Renamed from lib/time_.h.
1532         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
1533         * lib/unistd.in.h: Renamed from lib/unistd_.h.
1534         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
1535         unistd_.h.
1536         * lib/wchar.in.h: Renamed from lib/wchar_.h.
1537         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
1538         wchar_.h.
1539         * lib/wctype.in.h: Renamed from lib/wctype_.h.
1540         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
1541         wctype_.h.
1542         * build-aux/bootstrap (slurp): Update.
1543         * lib/.cppi-disable: Update.
1544
1545 2007-09-30  Bruno Haible  <bruno@clisp.org>
1546
1547         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
1548         Needed on BeOS.
1549
1550 2007-09-30  Bruno Haible  <bruno@clisp.org>
1551
1552         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
1553
1554 2007-09-29  Bruno Haible  <bruno@clisp.org>
1555
1556         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
1557
1558 2007-09-29  Bruno Haible  <bruno@clisp.org>
1559
1560         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
1561         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
1562         * build-aux/install-reloc: Compile also areadlink.c.
1563         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
1564
1565 2007-09-29  Bruno Haible  <bruno@clisp.org>
1566
1567         * gnulib-tool (func_emit_initmacro_done): Indentation.
1568
1569 2007-09-29  Bruno Haible  <bruno@clisp.org>
1570
1571         * README: Add CVS checkout update instructions.
1572         Info from Bob Proulx <bob@proulx.com>.
1573
1574 2007-09-28  Eric Blake  <ebb9@byu.net>
1575
1576         Provide move-if-change.
1577         * build-aux/move-if-change: New file, based on best practice
1578         rather than any canonical upstream location.
1579
1580 2007-09-28  Jim Meyering  <jim@meyering.net>
1581
1582         Fix canonicalize loop-detection corner case.
1583         Do not attempt to stat the symlink values stored via seen_triple.
1584         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
1585         on linux-2.6.18, (but not 2.6.22).
1586         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
1587         triple_compare.  The former compares dev,ino,filename, while the latter
1588         would actually stat dirname(filename) when dev and ino were equal.
1589         * lib/hash-triple.c: Install <string.h>.
1590         (STREQ): Define.
1591         (triple_compare_ino_str): New function.
1592         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
1593
1594 2007-09-28  Eric Blake  <ebb9@byu.net>
1595
1596         Enforce that AC_REPLACE_FUNCS files exist.
1597         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
1598         override check for typos.
1599
1600         Fix test-closein on Solaris 10.
1601         * tests/test-closein.c (main): Don't assume stdin can be inherited
1602         closed on all systems.
1603         * tests/test-closein.sh: Likewise.
1604         Reported by Piotr Tarnowski.
1605
1606 2007-09-28  Jim Meyering  <jim@meyering.net>
1607
1608         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
1609
1610 2007-09-27  Jim Meyering  <jim@meyering.net>
1611
1612         canonicalize: Avoid a false-positive cycle failure.
1613         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
1614         Sort.  Remove cycle-check.
1615         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
1616         not cycle-check.h.
1617         (seen_triple): New function.
1618         (canonicalize_filename_mode): Use it instead of cycle-check.
1619         * tests/test-canonicalize.c: Add a test for this bug.
1620         * tests/test-canonicalize.sh: Set up and run the test.
1621
1622         New module, file-set, from coreutils.
1623         * modules/file-set: Define it.
1624         * lib/file-set.c, lib/file-set.h: Implement.
1625
1626         New module, hash-triple, from coreutils.
1627         * modules/hash-triple: Define it.
1628         * lib/hash-triple.c, lib/hash-triple.h: Implement.
1629
1630 2007-09-25  Eric Blake  <ebb9@byu.net>
1631
1632         Fix strerror on Interix.
1633         * lib/string_.h (strerror): Declare replacement.
1634         * doc/functions/strerror.texi (strerror): Document the Interix
1635         shortcoming.
1636         * modules/string (Makefile.am): Support new hooks.
1637         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
1638         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
1639         gl_FUNC_STRERROR_SEPARATE.
1640         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
1641         * lib/strerror.c (rpl_strerror): Provide replacement.
1642         * modules/strerror (Depends-on): Add string.
1643         (configure.ac): Detect use of module.
1644         * tests/test-strerror.c: New file.
1645         * modules/strerror-tests: New test module.
1646         * modules/argp (Depends-on): Add strerror.
1647         * modules/error (Depends-on): Likewise.
1648         Reported by Martin Koeppe.
1649
1650 2007-09-24  Bruno Haible  <bruno@clisp.org>
1651
1652         * README: Update git instructions.
1653
1654 2007-09-24  Eric Blake  <ebb9@byu.net>
1655
1656         Revert fpending breakage from 2007-09-08.
1657         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
1658         __fpending.c.
1659
1660 2007-09-24  Jim Meyering  <jim@meyering.net>
1661
1662         filenamecat.c: Add a test.
1663         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
1664         showing how the function works when DIR is the empty string.
1665
1666 2007-09-21  Simon Josefsson  <simon@josefsson.org>
1667
1668         * tests/test-canonicalize.sh: Turn on executable bit.
1669
1670 2007-09-19  Eric Blake  <ebb9@byu.net>
1671
1672         * README: Update CVS instructions.
1673
1674 2007-09-18  Bruno Haible  <bruno@clisp.org>
1675
1676         * modules/areadlink: New file.
1677         * lib/areadlink.h (areadlink): New declaration.
1678         * lib/areadlink.c: New file, based on lib/xreadlink.c.
1679
1680 2007-09-17  Jim Meyering  <jim@meyering.net>
1681
1682         * lib/savewd.c (ESTALE) [!defined]: Define.
1683         Reported to be required on Interix by Martin Koeppe.
1684
1685 2007-09-17  Bruno Haible  <bruno@clisp.org>
1686
1687         * gnulib-tool (func_version): Use $version.
1688
1689 2007-09-16  Bruno Haible  <bruno@clisp.org>
1690
1691         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
1692         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
1693         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
1694         Reported by Greg Schafer <gschafer@zip.com.au>.
1695
1696 2007-09-15  Bruno Haible  <bruno@clisp.org>
1697
1698         * gnulib-tool (sed): Try a little harder to make bash understand the
1699         alias.
1700         Reported by Bruce Korb <bruce.korb@gmail.com>.
1701
1702 2007-09-13  Eric Blake  <ebb9@byu.net>
1703
1704         * ChangeLog: Remove conflict markers.
1705
1706 2007-09-13  Simon Josefsson  <simon@josefsson.org>
1707
1708         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
1709         Reported by Bruno Haible <bruno@clisp.org>.
1710
1711 2007-09-12  Bruno Haible  <bruno@clisp.org>
1712
1713         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
1714         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
1715         is not defined.
1716
1717 2007-09-12  Eric Blake  <ebb9@byu.net>
1718
1719         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
1720         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
1721         Autoconf definition.
1722         * modules/euidaccess (Depends-on): Add extensions, for
1723         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
1724         * modules/fnmatch (Depends-on): Likewise.
1725         * modules/getaddrinfo (Depends-on): Likewise.
1726         * modules/getdelim (Depends-on): Likewise.
1727         * modules/getline (Depends-on): Likewise.
1728         * modules/getsubopt (Depends-on): Likewise.
1729         * modules/gettext (Depends-on): Likewise.
1730         * modules/group-member (Depends-on): Likewise.
1731         * modules/mbchar (Depends-on): Likewise.
1732         * modules/memmem (Depends-on): Likewise.
1733         * modules/mempcpy (Depends-on): Likewise.
1734         * modules/memrchr (Depends-on): Likewise.
1735         * modules/pagealign_alloc (Depends-on): Likewise.
1736         * modules/readutmp (Depends-on): Likewise.
1737         * modules/stpcpy (Depends-on): Likewise.
1738         * modules/stpncpy (Depends-on): Likewise.
1739         * modules/strchrnul (Depends-on): Likewise.
1740         * modules/strndup (Depends-on): Likewise.
1741         * modules/strsep (Depends-on): Likewise.
1742         * modules/strverscmp (Depends-on): Likewise.
1743         * modules/vasprintf (Depends-on): Likewise.
1744         * modules/wcwidth (Depends-on): Likewise.
1745         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
1746         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
1747         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
1748         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
1749         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
1750         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
1751         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
1752         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
1753         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
1754         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
1755         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
1756         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
1757         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
1758         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
1759         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
1760         * m4/readutmp.m4 (gl_READUTMP): Likewise.
1761         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
1762         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
1763         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
1764         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
1765         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
1766         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
1767         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
1768         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
1769         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
1770         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
1771         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
1772         so that lock.m4 can be used in gettext without extensions module.
1773
1774 2007-09-11  Bruno Haible  <bruno@clisp.org>
1775
1776         * m4/isc-posix.m4: Remove file.
1777         Suggested by Eric Blake.
1778
1779 2007-09-11  Eric Blake  <ebb9@byu.net>
1780
1781         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
1782
1783 2007-09-10  Bruno Haible  <bruno@clisp.org>
1784
1785         * posix-modules: Fix typo in error message.
1786         Reported by Matt <mkraai@beckman.com>.
1787
1788 2007-09-09  Bruno Haible  <bruno@clisp.org>
1789
1790         * doc/functions/getdelim.texi: Update list of platforms lacking the
1791         function.
1792         * doc/functions/getline.texi: Likewise.
1793
1794 2007-09-09  Jim Meyering  <jim@meyering.net>
1795
1796         * lib/hash.c (hash_initialize): Detect calloc failure.
1797         Reported by Bruno Haible.
1798
1799 2007-09-09  Bruno Haible  <bruno@clisp.org>
1800
1801         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
1802         malloc or realloc fails.
1803
1804 2007-09-09  Bruno Haible  <bruno@clisp.org>
1805
1806         * modules/getcwd (Depends-on): Add malloc-posix.
1807         * modules/glob (Depends-on): Likewise.
1808         * modules/putenv (Depends-on): Likewise.
1809         * modules/strdup (Depends-on): Likewise.
1810         * modules/getdelim (Depends-on): Add realloc-posix.
1811         * modules/read-file (Depends-on): Likewise.
1812
1813 2007-09-09  Bruno Haible  <bruno@clisp.org>
1814
1815         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
1816         (gl_FUNC_MALLOC_POSIX): Require it.
1817         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
1818         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
1819         * modules/realloc (Files): Add m4/malloc.m4.
1820         * modules/calloc (Files): Likewise.
1821
1822 2007-09-09  Bruno Haible  <bruno@clisp.org>
1823
1824         * modules/malloc-posix: New file.
1825         * modules/malloc (Depends-on): Add malloc-posix.
1826         * lib/malloc.c: Include errno.h.
1827         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
1828         and a POSIX-compatible malloc into a single function. Set ENOMEM
1829         when returning NULL.
1830         * m4/malloc.m4: New file.
1831         * doc/functions/malloc.texi: Mention the malloc-posix module.
1832         * lib/stdlib_.h (malloc): New declaration.
1833         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1834         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
1835         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
1836         and HAVE_MALLOC_POSIX.
1837
1838 2007-09-09  Bruno Haible  <bruno@clisp.org>
1839
1840         * modules/realloc-posix: New file.
1841         * modules/realloc (Depends-on): Add realloc-posix.
1842         * lib/realloc.c: Include errno.h.
1843         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
1844         and a POSIX-compatible realloc into a single function. Set ENOMEM
1845         when returning NULL.
1846         * m4/realloc.m4: New file.
1847         * doc/functions/realloc.texi: Mention the realloc-posix module.
1848         * lib/stdlib_.h (realloc): New declaration.
1849         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1850         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
1851         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
1852         and HAVE_REALLOC_POSIX.
1853
1854 2007-09-09  Bruno Haible  <bruno@clisp.org>
1855
1856         * modules/calloc-posix: New file.
1857         * modules/calloc (Depends-on): Add calloc-posix.
1858         * lib/calloc.c: Include errno.h.
1859         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
1860         and a POSIX-compatible calloc into a single function. Set ENOMEM
1861         when returning NULL.
1862         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
1863         * doc/functions/calloc.texi: Mention the calloc-posix module.
1864         * lib/stdlib_.h (calloc): New declaration.
1865         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
1866         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
1867         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
1868         and HAVE_CALLOC_POSIX.
1869
1870 2007-09-09  Bruno Haible  <bruno@clisp.org>
1871
1872         Allow for modules to show an arbitrary notice.
1873         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
1874         * gnulib-tool: New option --extract-notice.
1875         (func_usage): Document it.
1876         (sed_extract_prog): Update.
1877         (func_get_notice): New function.
1878         (func_modules_notice): New function.
1879         (func_import, func_create_testdir): Invoke it.
1880         Suggested by Jim Meyering.
1881
1882 2007-09-09  Bruno Haible  <bruno@clisp.org>
1883
1884         * gnulib-tool: New options --verbose, --quiet.
1885         (func_usage): Document them.
1886         (verbose): New variable.
1887         (func_execute_command): New function.
1888         (func_import): Don't show the module list and the file list if
1889         $verbose < 0.
1890         (func_create_testdir): Likewise. Use func_execute_command.
1891         (func_create_megatestdir): Use func_execute_command.
1892
1893 2007-09-08  Bruno Haible  <bruno@clisp.org>
1894
1895         * gnulib-tool (func_import): Prefer rsync over wget when available,
1896         for fetching the PO files.
1897
1898 2007-09-08  Bruno Haible  <bruno@clisp.org>
1899
1900         * posix-modules: New file. Portions copied from gnulib-tool.
1901         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
1902
1903 2007-09-08  Jim Meyering  <jim@meyering.net>
1904
1905         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
1906         * lib/fpending.h: Rename from __fpending.h.
1907         * lib/fpending.c: Rename from __fpending.c.
1908         Include "fpending.h", not "__fpending.h".
1909         * lib/__fpending.h, lib/__fpending.c: Remove files.
1910         * modules/fpending (Files): Reflect new file names.
1911         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
1912
1913 2007-09-08  Bruno Haible  <bruno@clisp.org>
1914
1915         * m4/inttypes-h.m4: Remove stub file.
1916
1917 2007-09-07  Simon Josefsson  <simon@josefsson.org>
1918
1919         * doc/headers/stdint.texi: Discuss #include_next issue.
1920
1921 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
1922
1923         * build-aux/bootstrap: Remove obsolete comment about wget --help.
1924
1925 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1926
1927         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
1928         in variable name.
1929
1930 2007-09-03  Jim Meyering  <jim@meyering.net>
1931
1932         New module: git-version-gen.
1933         * modules/git-version-gen: New file.
1934
1935         Import changes from coreutils for bootstrap script.
1936
1937         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
1938
1939         bootstrap: uses rsync to download the .po files
1940         * build-aux/bootstrap (po_download_command_format): New global.
1941         (download_po_files): Use rsync.
1942         (update_po_files): Don't remove .po files after download,
1943         so future rsync runs can take advantage of the copies.
1944
1945         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
1946
1947         Solve the unnecessary-.po-file-regeneration problem once and for all.
1948         * build-aux/bootstrap (download_po_files): New function, renamed from
1949         get_translations.  Now, downloads, but doesn't update LINGUAS.
1950         (update_po_files): New function.
1951
1952         bootstrap: Ignore more.
1953         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
1954         uniwidth to e.g., lib/.gitignore.
1955         (slurp): Handle the sys_stat_.h -> sys mapping, too.
1956
1957         * build-aux/bootstrap: New setting: vc_ignore.
1958         (insert_sorted_if_absent): Create $file if absent.
1959         Adapt to new, possibly empty, list: $vc_ignore.
1960
1961         bootstrap: generate more ignorable names
1962         * build-aux/bootstrap (slurp): When generating ignorable names,
1963         also map .sin to .sed, .gperf to .c, and .y to .c.
1964
1965 2007-09-03  Jim Meyering  <jim@meyering.net>
1966
1967         * build-aux/git-version-gen: New file, from coreutils.  For details, see
1968         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
1969
1970 2007-09-02  Bruno Haible  <bruno@clisp.org>
1971
1972         Fix mis-recognition of 'mcs' on QNX 6.
1973         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
1974         output contains the string "Mono".
1975         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
1976         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
1977
1978 2007-09-01  Bruno Haible  <bruno@clisp.org>
1979
1980         Fix collision between uniwidth/* and linebreak modules.
1981         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
1982         u32_width): Remove declarations.
1983         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
1984         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
1985         streq3, streq2, streq1, streq0): Remove functions.
1986         (STREQ): Remove macro.
1987         (is_cjk_encoding): Remove function.
1988         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
1989         (uc_width, u8_width, u16_width, u32_width): Remove functions.
1990         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
1991         * NEWS: Document the change.
1992
1993 2007-09-01  Bruno Haible  <bruno@clisp.org>
1994
1995         * lib/streq.h: Add double-inclusion guard.
1996
1997 2007-09-01  Karl Berry  <karl@gnu.org>
1998
1999         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
2000
2001 2007-08-28  Jim Meyering  <jim@meyering.net>
2002
2003         Rename mreadlink_with_size to areadlink_with_size.
2004         * NEWS: Document the change.
2005         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
2006         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
2007         * lib/mreadlink.h: Rename this to...
2008         * lib/areadlink.h: ...this.
2009         * modules/mreadlink-with-size: Rename this to...
2010         * modules/areadlink-with-size: ...this.
2011         * lib/canonicalize.c: Reflect the renaming.
2012         * modules/canonicalize: Likewise.
2013
2014 2007-08-26  Bruno Haible  <bruno@clisp.org>
2015
2016         * gnulib-tool (func_import): When deciding which files to remove,
2017         consider also dangling symbolic links.
2018         Reported by Eric Blake.
2019
2020 2007-08-26  Bruno Haible  <bruno@clisp.org>
2021
2022         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
2023
2024 2007-08-23  Simon Josefsson  <simon@josefsson.org>
2025
2026         * lib/readline.c: Don't include getline.h, the prototype is now
2027         found in stdio.h.
2028
2029 2007-08-23  Jim Meyering  <jim@meyering.net>
2030
2031         Getdelim touchup.
2032         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
2033         around the funlockfile call, since funlockfile never sets errno.
2034         Don't set errno upon failed realloc.
2035
2036 2007-08-22  Eric Blake  <ebb9@byu.net>
2037
2038         Getline touchups.
2039         * lib/getdelim.c (getdelim): Revert regression that required *n to
2040         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
2041         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
2042         getdelim, rather than whether implementation is missing.
2043         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
2044         * lib/stdio_.h (getline): Also declare if replacement is
2045         required.
2046         * doc/functions/getdelim.texi: New file.
2047         * doc/functions/getline.texi: Likewise.
2048         * doc/gnulib.texi (Function Substitutes): Add new files.
2049         Reported by Bruno Haible.
2050
2051 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
2052
2053         * users.txt: Add Guile.
2054
2055 2007-08-22  Eric Blake  <ebb9@byu.net>
2056
2057         * tests/test-getdelim.c (main): Use remove, not unlink.
2058         * tests/test-getline.c (main): Likewise.
2059
2060         Move getline and getdelim into stdio.h, per POSIX 200x.
2061         * modules/getline (Files): Remove getline.h.
2062         (Depends-on): Add stdio.
2063         (configure.ac): Add module indicator.
2064         * modules/getdelim (Files): Remove getdelim.h.
2065         (Depends-on): Add stdio.
2066         (configure.ac): Add module indicator.
2067         * modules/stdio (Makefile.am): Work with new indicators.
2068         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
2069         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
2070         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2071         * lib/getdelim.h: Delete.
2072         * lib/getline.h: Delete.
2073         * lib/stdio_.h (getdelim, getline): Declare.
2074         * modules/getdelim-tests: New module.
2075         * modules/getline-tests: Likewise.
2076         * tests/test-getdelim.c: New file.
2077         * tests/test-getline.c: Likewise.
2078         * NEWS: Document the change.
2079         * lib/getline.c: Update choice of header.
2080         * lib/csharpcomp.c: Likewise.
2081         * lib/getpass.c: Likewise.
2082         * lib/javacomp.c: Likewise.
2083         * lib/javaversion.c: Likewise.
2084         * lib/yesno.c: Likewise.
2085         * lib/getdelim.c: Likewise.
2086         (getdelim): Set errno on failure, and avoid memory leak.
2087
2088 2007-08-19  Bruno Haible  <bruno@clisp.org>
2089
2090         * modules/closein (Depends-on): Add freadahead.
2091         * lib/closein.c: Include freadahead.h.
2092         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
2093         is zero.
2094
2095 2007-08-19  Bruno Haible  <bruno@clisp.org>
2096
2097         * modules/freadahead-tests: New file.
2098         * tests/test-freadahead.sh: New file.
2099         * tests/test-freadahead.c: New file.
2100
2101         * modules/freadahead: New file.
2102         * lib/freadahead.h: New file.
2103         * lib/freadahead.c: New file.
2104         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
2105         fbufmode, fpurge, freadable, fwritable.
2106
2107 2007-08-19  Eric Blake  <ebb9@byu.net>
2108
2109         Test yesno in combination with closein.
2110         * lib/yesno.c (yesno): Document use of stdin.
2111         * modules/yesno-tests (Files): New module.
2112         * tests/test-yesno.c (main): New file.
2113         * tests/test-yesno.sh: Likewise.
2114
2115 2007-08-19  Bruno Haible  <bruno@clisp.org>
2116
2117         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
2118         * lib/fseeko.c (rpl_fseeko): Likewise.
2119         * lib/fseterr.c (fseterr): Likewise.
2120
2121 2007-08-19  Bruno Haible  <bruno@clisp.org>
2122
2123         * tests/test-lseek.c (main): Disable a test for BeOS.
2124         * doc/functions/lseek.texi: Document the BeOS bug.
2125
2126 2007-08-19  Bruno Haible  <bruno@clisp.org>
2127             Eric Blake  <ebb9@byu.net>
2128
2129         * lib/lseek.c: Include <sys/stat.h>.
2130         (rpl_lseek): Add workaround code also for Unix platforms.
2131         Needed for BeOS.
2132         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
2133         * doc/functions/lseek.texi: Document BeOS definiency.
2134
2135 2007-08-18  Bruno Haible  <bruno@clisp.org>
2136
2137         * modules/fstrcmp-tests: New file.
2138         * tests/test-fstrcmp.c: New file.
2139
2140 2007-08-18  Bruno Haible  <bruno@clisp.org>
2141
2142         * modules/fstrcmp: New file, from GNU gettext with modifications.
2143         * lib/fstrcmp.h: New file, from GNU gettext.
2144         * lib/fstrcmp.c: New file, from GNU gettext.
2145         * MODULES.html.sh (String handling): Add fstrcmp.
2146
2147 2007-08-18  Bruno Haible  <bruno@clisp.org>
2148
2149         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
2150         'bool'.
2151         (diag, compareseq): Remove const from the ctxt argument.
2152         (USE_HEURISTIC): Undefine at the end.
2153
2154 2007-08-18  Jim Meyering  <jim@meyering.net>
2155
2156         New file: lib/idcache.h
2157         * NEWS: Mention the addition.
2158         * modules/idcache (Files): Add lib/idcache.h
2159         * lib/idcache.c: Include "idcache.h".
2160         Don't include <sys/types.h>.
2161         Add a FIXME comment.
2162         Move file-scoped "static" declarations to the top.
2163         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
2164
2165 2007-08-17  Bruno Haible  <bruno@clisp.org>
2166         and Paul Eggert  <eggert@cs.ucla.edu>
2167
2168         * MODULES.html.sh: Add diffseq.
2169         * modules/diffseq: New file.
2170         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
2171         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
2172
2173 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2174
2175         Import changes from coreutils for bootstrap script.
2176
2177         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
2178
2179         * build-aux/bootstrap (slurp): Work even in environments where
2180         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
2181         current code does not slurp files whose names start with ".", and
2182         this looks like it might be a troublesome area.
2183
2184         2007-07-11  Jim Meyering  <jim@meyering.net>
2185
2186         If there's a GPL vN copyright comment, require that N == 3.
2187
2188         2007-07-08  Jim Meyering  <jim@meyering.net>
2189
2190         Run the coreutils-specific code only if tests/Makefile.am.in exists.
2191         * build-aux/bootstrap (mam_template): Move definition out of loop.
2192
2193         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
2194
2195         * build-aux/bootstrap (symlink_to_dir): Rename function from
2196         symlink_to_gnulib.  Add a directory parameter.  Update all
2197         callers.
2198         (cp_mark_as_generated): Also check for -- and link to -- files in
2199         gl/.
2200
2201         2007-07-08  Jim Meyering  <jim@meyering.net>
2202
2203         Adapt to deeper hierarchy in gnulib.
2204         * build-aux/bootstrap (symlink_to_dir): If the destination
2205         directory doesn't exist, create it. This is required at least for
2206         "lib/uniwidth/cjk.h".
2207
2208         2007-05-15  Jim Meyering  <jim@meyering.net>
2209
2210         * build-aux/bootstrap: Now that generated Makefile.am files
2211         are no longer under version control, they must be created at
2212         bootstrap time.
2213
2214 2007-08-14  Ben Pfaff  <blp@gnu.org>
2215
2216         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
2217
2218 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2219
2220         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
2221         given the changes below.
2222         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
2223         even on hosts that have padding bits beyond the supported 64.
2224
2225 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
2226
2227         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
2228         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
2229         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
2230         depends on it.
2231         (xstrtol_error): Remove.
2232         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
2233         but with a different signature.
2234         (ATTRIBUTE_NORETURN, __attribute__): New macros.
2235         * lib/xstrtol-error.c: Include exitfail.h.
2236         (xstrtol_fatal): New function, with a different signature from the
2237         old xstrtol_error, so that the caller need not worry about passing
2238         in an exit status, or about storage management of the option argument.
2239         (xstrtol_error): Now a static function.  Redo signature to
2240         implement xstrtol_fatal.  Output the correct number of hyphens in
2241         front of the option so that the caller need not worry about
2242         storage management.
2243         (N_): New macro.
2244         (_): Remove; not used now.
2245         * modules/xstrtol: Depend on getopt.
2246         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
2247         of old STRTOL_FATAL_ERROR macro.
2248         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
2249         of test program.
2250         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
2251         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
2252
2253 2007-08-08  Eric Blake  <ebb9@byu.net>
2254
2255         * lib/xstrtol-error.c: Add missing include.
2256
2257         Move xstrtol messages into gnulib domain, when --pobase is used.
2258         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
2259         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
2260         * modules/xstrtol (Files): Distribute new file.
2261         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
2262         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
2263         * tests/test-xstrtol.c: ...into new file.
2264         * tests/test-xstrtoul.c: Also test xstrtoul.
2265         * tests/test-xstrtoimax.c: Also test xstrtoimax.
2266         * tests/test-xstrtoumax.c: Also test xstrtoumax.
2267         * tests/test-xstrtol.sh: Drive the tests.
2268         * tests/test-xstrtoimax.sh: Likewise.
2269         * tests/test-xstrtoumax.sh: Likewise.
2270         * modules/xstrtol-tests: New module.
2271         * modules/xstrtoimax-tests: Likewise.
2272         * modules/xstrtoumax-tests: Likewise.
2273
2274 2007-08-08  Jim Meyering  <jim@meyering.net>
2275
2276         New function: mfile_name_concat.
2277         * lib/filenamecat.c (mfile_name_concat): New function, just like
2278         file_name_concat, but return NULL upon failure rather than exiting
2279         with a diagnostic.
2280         * lib/filenamecat.h: Declare it.
2281
2282 2007-08-07  Bruno Haible  <bruno@clisp.org>
2283
2284         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
2285         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
2286         warning from gcc.
2287         Reported by Eric Blake.
2288
2289 2007-08-07  Simon Josefsson  <simon@josefsson.org>
2290
2291         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
2292         * modules/crypto/arcfour (License): Likewise.
2293         * modules/crypto/des-tests (License): Likewise.
2294         * modules/crypto/gc-arctwo-tests (License): Likewise.
2295         * modules/crypto/gc-des-tests (License): Likewise.
2296         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
2297         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
2298         * modules/crypto/gc-md2-tests (License): Likewise.
2299         * modules/crypto/gc-md4-tests (License): Likewise.
2300         * modules/crypto/gc-md5-tests (License): Likewise.
2301         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
2302         * modules/crypto/gc-rijndael-tests (License): Likewise.
2303         * modules/crypto/gc-sha1-tests (License): Likewise.
2304         * modules/crypto/gc-tests (License): Likewise.
2305         * modules/crypto/hmac-md5 (License): Likewise.
2306         * modules/crypto/hmac-sha1 (License): Likewise.
2307         * modules/crypto/md2-tests (License): Likewise.
2308         * modules/crypto/md4-tests (License): Likewise.
2309         * modules/crypto/md5 (License): Likewise.
2310         * modules/crypto/rijndael (License): Likewise.
2311         * modules/crypto/sha1 (License): Likewise.
2312         * modules/memxor (License): Likewise.
2313
2314 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
2315         and Bruno Haible  <bruno@clisp.org>
2316
2317         * NEWS: Describe interface changes to human, xstrtol.
2318         * lib/human.h: Include <xstrtol.h>.
2319         (human_options): Return enum strtol_error, not int.  Remove
2320         bool arg; take int * instead.
2321         * lib/human.c: Don't include "gettext.h".
2322         (_): Remove; no longer used.
2323         Don't include <xstrtol.h>, since human.h does it.
2324         (human_options): Adjust to abovementioned interface changes.
2325         Do not report error to stderr; that's now the caller's
2326         responsibility.
2327         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
2328         interface change.
2329         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
2330         Str, Argument_type_string.  All uses changed.  Put " argument"
2331         in diagnostics to make them clearer.  Change wording of suffix
2332         message for clarity.
2333         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
2334         Argument_type_string.
2335         (STRTOL_FATAL_WARN): Remove; no longer used.
2336         * modules/human (Depends-on): Remove gettext-h.
2337
2338 2007-08-06  Simon Josefsson  <simon@josefsson.org>
2339
2340         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
2341
2342 2007-07-31  Bruno Haible  <bruno@clisp.org>
2343
2344         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
2345         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
2346         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
2347
2348 2007-07-31  Bruno Haible  <bruno@clisp.org>
2349
2350         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
2351         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
2352
2353 2007-07-30  Bruno Haible  <bruno@clisp.org>
2354
2355         * modules/base64 (License): Use the synonymous term "LGPLv2+".
2356         * modules/c-ctype (License): Likewise.
2357         * modules/c-strcase (License): Likewise.
2358         * modules/check-version (License): Likewise.
2359         * modules/iconv (License): Likewise.
2360         * modules/iconv_open (License): Likewise.
2361         * modules/read-file (License): Likewise.
2362         * modules/striconv (License): Likewise.
2363         * modules/strverscmp (License): Likewise.
2364         * modules/vasprintf (License): Likewise.
2365         * modules/crypto/des (License): Likewise.
2366         * modules/crypto/gc (License): Likewise.
2367         * modules/crypto/gc-arcfour (License): Likewise.
2368         * modules/crypto/gc-arctwo (License): Likewise.
2369         * modules/crypto/gc-des (License): Likewise.
2370         * modules/crypto/gc-hmac-md5 (License): Likewise.
2371         * modules/crypto/gc-hmac-sha1 (License): Likewise.
2372         * modules/crypto/gc-md2 (License): Likewise.
2373         * modules/crypto/gc-md4 (License): Likewise.
2374         * modules/crypto/gc-md5 (License): Likewise.
2375         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
2376         * modules/crypto/gc-random (License): Likewise.
2377         * modules/crypto/gc-rijndael (License): Likewise.
2378         * modules/crypto/gc-sha1 (License): Likewise.
2379         * modules/crypto/md2 (License): Likewise.
2380         * modules/crypto/md4 (License): Likewise.
2381
2382 2007-07-30  Jim Meyering  <jim@meyering.net>
2383
2384         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
2385         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
2386         it has valid stat data.  This bug would cause du not to count the
2387         sizes of inaccessible directories.
2388         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
2389         in <http://bugzilla.redhat.com/250077>.
2390
2391 2007-07-25  Peter O'Gorman  <peter@pogma.com>
2392             Bruno Haible  <bruno@clisp.org>
2393
2394         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
2395         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
2396         #include_next, gives a diagnostic about it, but reports no error in
2397         the exit code.
2398         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
2399
2400 2007-07-24  Ben Pfaff  <blp@gnu.org>
2401
2402         Improve name: "count-one-bits" is better than "popcount".
2403         * MODULES.html.sh: Update name.
2404         * lib/popcount.h: Renamed lib/count-one-bits.h.
2405         (popcount): Renamed count_one_bits.
2406         (popcountl): Renamed count_one_bits_l.
2407         (popcountll): Renamed count_one_bits_ll.
2408         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
2409         * modules/popcount: Renamed module/count-one-bits.
2410         * modules/popcount-tests: Renamed module/count-one-bits-tests.
2411         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
2412
2413 2007-07-23  Ben Pfaff  <blp@gnu.org>
2414
2415         * lib/popcount.h (popcount32): Reduce size of constants, to allow
2416         better code generation, and add U to large constants to avoid
2417         warnings, in non-GCC case.
2418         Suggested by Bruno Haible.
2419
2420 2007-07-23  Ben Pfaff  <blp@gnu.org>
2421
2422         * lib/popcount.h: Use verify_true instead of if...abort.
2423         * modules/popcount: Depend on verify module.
2424         Suggested by Jim Meyering.
2425
2426 2007-07-23  Bruno Haible  <bruno@clisp.org>
2427
2428         * gnulib-tool (func_import): Create a .cvsignore file also when the
2429         directory is not yet in CVS but the toplevel directory is. When
2430         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
2431         Reported by Karl Berry.
2432
2433 2007-07-22  Ben Pfaff  <blp@gnu.org>
2434
2435         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
2436         case.
2437         Suggested by Eric Blake.
2438
2439 2007-07-22  Ben Pfaff  <blp@gnu.org>
2440
2441         New module: popcount.
2442         * MODULES.html.sh: Add popcount.
2443         * modules/popcount: New file.
2444         * modules/popcount-tests: New file.
2445         * tests/test-popcount.c: New file.
2446         * lib/popcount.h: New file.
2447         * m4/popcount.m4: New file.
2448
2449 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2450
2451         * build-aux/announce-gen: Update to GPLv3.
2452
2453         * build-aux/config.guess: Update from config.
2454
2455 2007-07-21  Bruno Haible  <bruno@clisp.org>
2456
2457         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
2458         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
2459
2460 2007-07-20  Jim Meyering  <jim@meyering.net>
2461
2462         * check-module: Diagnose a self-dependency.
2463
2464 2007-07-19  Bruno Haible  <bruno@clisp.org>
2465
2466         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
2467         empty.
2468         Reported by Eric Blake.
2469
2470 2007-07-18  Bruno Haible  <bruno@clisp.org>
2471
2472         * gnulib-tool: New options --po-base, --po-domain.
2473         (func_usage): Document them.
2474         (pobase, po_domain): New variables.
2475         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
2476         DEFAULT_TEXT_DOMAIN.
2477         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
2478         (func_import): Consider pobase and po_domain. Create a po/ directory.
2479         (func_create_testdir): Set pobase and po_domain to empty.
2480         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
2481         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
2482
2483 2007-07-18  Bruno Haible  <bruno@clisp.org>
2484
2485         * gnulib-tool (func_get_automake_snippet): Synthesize also an
2486         EXTRA_DIST augmentation for files in build-aux/.
2487
2488 2007-07-16  Bruno Haible  <bruno@clisp.org>
2489
2490         * modules/lseek (License): Use the synonymous term "LGPLv2+".
2491         * modules/getdelim (License): Likewise.
2492
2493 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2494
2495         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
2496         * modules/d-type (License): Likewise.
2497         * modules/extensions (License): Likewise.
2498         * modules/fnmatch (License): Likewise.
2499         * modules/fseeko (License): Likewise.
2500         * modules/getaddrinfo (License): Likewise.
2501         * modules/getline (License): Likewise.
2502         * modules/getlogin_r (License): Likewise.
2503         * modules/getpass (License): Likewise.
2504         * modules/gettimeofday (License): Likewise.
2505         * modules/glob (License): Likewise.
2506         * modules/inet_ntop (License): Likewise.
2507         * modules/malloc (License): Likewise.
2508         * modules/malloca (License): Likewise.
2509         * modules/memmem (License): Likewise.
2510         * modules/mempcpy (License): Likewise.
2511         * modules/memset (License): Likewise.
2512         * modules/minmax (License): Likewise.
2513         * modules/mktime (License): Likewise.
2514         * modules/netinet_in (License): Likewise.
2515         * modules/pathmax (License): Likewise.
2516         * modules/poll (License): Likewise.
2517         * modules/regex (License): Likewise.
2518         * modules/snprintf (License): Likewise.
2519         * modules/stdbool (License): Likewise.
2520         * modules/stdint (License): Likewise.
2521         * modules/stdio (License): Likewise.
2522         * modules/strcase (License): Likewise.
2523         * modules/strcasestr (License): Likewise.
2524         * modules/strdup (License): Likewise.
2525         * modules/string (License): Likewise.
2526         * modules/strndup (License): Likewise.
2527         * modules/strnlen (License): Likewise.
2528         * modules/strpbrk (License): Likewise.
2529         * modules/strptime (License): Likewise.
2530         * modules/strsep (License): Likewise.
2531         * modules/sys_select (License): Likewise.
2532         * modules/sys_socket (License): Likewise.
2533         * modules/sys_stat (License): Likewise.
2534         * modules/sys_time (License): Likewise.
2535         * modules/time (License): Likewise.
2536         * modules/time_r (License): Likewise.
2537         * modules/timegm (License): Likewise.
2538         * modules/unistd (License): Likewise.
2539         * modules/vsnprintf (License): Likewise.
2540         * modules/wctype (License): Likewise.
2541
2542 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2543
2544         * modules/argz (License): LGPLv2+.
2545
2546 2007-07-15  Karl Berry  <karl@gnu.org>
2547
2548         * doc/gnulib.texi: revise node structure per new fdl.texi.
2549
2550 2007-07-14  Bruno Haible  <bruno@clisp.org>
2551
2552         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
2553         the output file.
2554         * lib/uniname/uninames.h: Regenerated.
2555
2556 2007-07-14  Karl Berry  <karl@gnu.org>
2557
2558         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
2559         omitting sectioning and index commands.
2560
2561 2007-07-13  Bruno Haible  <bruno@clisp.org>
2562
2563         New gnulib-tool option --more-symlinks.
2564         * gnulib-tool (func_usage): Document --more-symlinks.
2565         (do_copyrights): New variable.
2566         Recognize option --more-symlinks.
2567         (func_import): Don't add a copyright notice transform to
2568         sed_transform_lib_file if do_copyrights is empty.
2569
2570 2007-07-13  Bruno Haible  <bruno@clisp.org>
2571
2572         * lib/vasnprintf.c (decimal_point_char): Define also if
2573         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
2574         && !NEED_PRINTF_DIRECTIVE_A.
2575         Reported by Clemens Koller <clemens.koller@anagramm.de> via
2576         Gary V. Vaughan <gary@gnu.org>.
2577
2578 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
2579
2580         * lib/inttypes_.h: Undo previous change, since it was fixed
2581         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
2582
2583 2007-07-13  Bruno Haible  <bruno@clisp.org>
2584
2585         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
2586         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
2587
2588 2007-07-13  Jim Meyering  <jim@meyering.net>
2589
2590         df: Don't fail for Tru64's "file-on-file mount".
2591         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
2592         so we fall through and use statfs instead.  Details here:
2593         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
2594         Reported by Albert Chin.
2595
2596 2007-07-13  Bruno Haible  <bruno@clisp.org>
2597
2598         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
2599         * modules/configmake (License): Likewise.
2600         * modules/gettext (License): Likewise.
2601         * modules/gettext-h (License): Likewise.
2602         * modules/include_next (License): Likewise.
2603         * modules/link-warning (License): Likewise.
2604         * modules/localcharset (License): Likewise.
2605         * modules/localename (License): Likewise.
2606         * modules/lock (License): Likewise.
2607         * modules/relocatable-lib-lgpl (License): Likewise.
2608         * modules/size_max (License): Likewise.
2609         * modules/vasnprintf (License): Likewise.
2610         * modules/wchar (License): Likewise.
2611         * modules/xsize (License): Likewise.
2612
2613 2007-07-13  Bruno Haible  <bruno@clisp.org>
2614
2615         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
2616         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
2617
2618 2007-07-12  Bruno Haible  <bruno@clisp.org>
2619
2620         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
2621         in the modules files.
2622
2623 2007-07-11  Karl Berry  <karl@gnu.org>
2624
2625         * MODULES.html.sh (func_module): use
2626          sed -e '\|^'"${includefile}"'$|d'
2627          instead of /.../d, to avoid errors on $includefile's containing /.
2628
2629 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
2630
2631         * gnulib-tool (func_import): Avoid duplication of --avoid
2632         statements
2633         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
2634         names to `_' in variable names.
2635
2636 2007-07-10  Eric Blake  <ebb9@byu.net>
2637
2638         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
2639         * NEWS: Document this change.
2640
2641 2007-07-08  Bruno Haible  <bruno@clisp.org>
2642
2643         Update to Unicode 5.0.
2644         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
2645         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
2646         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
2647         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
2648         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
2649         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
2650         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
2651         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
2652         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
2653         U+10A3F, U+1D242..U+1D244.
2654         (nonspacing_table_ind): Update.
2655         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
2656         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
2657
2658 2007-07-08  Bruno Haible  <bruno@clisp.org>
2659
2660         Update to Unicode 5.0.
2661         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
2662         code transform. Extend the name index field of unicode_name_to_code and
2663         unicode_code_to_name from 16 to 24 bits.
2664         * lib/uniname/uniname.c (unicode_character_name,
2665         unicode_name_character): Add the range 0x12xxx to the code transform.
2666         * lib/uniname/uninames.h: Regenerated.
2667         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
2668
2669 2007-07-07  Bruno Haible  <bruno@clisp.org>
2670
2671         * modules/wcwidth-tests: New file.
2672         * tests/test-wcwidth.c: New file.
2673
2674         Work around MacOS X wcwidth() bug.
2675         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
2676         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
2677         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
2678         original wcwidth in non-UTF-8 locales.
2679         * modules/wcwidth (Depends-on): Add localcharset, streq,
2680         uniwidth/width.
2681         * doc/functions/wcwidth.texi: Update.
2682
2683 2007-07-07  Bruno Haible  <bruno@clisp.org>
2684
2685         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
2686         (wcwidth): New declaration.
2687         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
2688         macros.
2689         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
2690         here. Prepare for creating <wchar.h> unconditionally.
2691         * modules/wchar (Depends-on): Add link-warning.
2692         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
2693         REPLACE_WCWIDTH, and GL_LINK_WARNING.
2694         * lib/wcwidth.h: Remove file.
2695         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
2696         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
2697         * modules/wcwidth (Files): Remove lib/wcwidth.h.
2698         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
2699         (Include): Replace wcwidth.h with <wchar.h>.
2700         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
2701         * lib/mbchar.h: Don't include wcwidth.h.
2702         * lib/mbswidth.c: Likewise.
2703         * NEWS: Mention the change.
2704
2705 2007-07-07  Bruno Haible  <bruno@clisp.org>
2706
2707         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
2708         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
2709         definition with an external declaration.
2710         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
2711         defined as a function. Remove AC_C_INLINE requirement.
2712         * modules/wcwidth (Files): Add lib/wcwidth.c.
2713         (Makefile.am): Remove redundant statement.
2714
2715 2007-07-07  Bruno Haible  <bruno@clisp.org>
2716
2717         * MODULES.html.sh (Unicode string functions): Add the new modules.
2718
2719         * tests/uniwidth/test-u32-strwidth.c: New file.
2720         * modules/uniwidth/u32-strwidth-tests: New file.
2721
2722         * lib/uniwidth/u32-strwidth.c: New file.
2723         * modules/uniwidth/u32-strwidth: New file.
2724
2725         * tests/uniwidth/test-u16-strwidth.c: New file.
2726         * modules/uniwidth/u16-strwidth-tests: New file.
2727
2728         * lib/uniwidth/u16-strwidth.c: New file.
2729         * modules/uniwidth/u16-strwidth: New file.
2730
2731         * tests/uniwidth/test-u8-strwidth.c: New file.
2732         * modules/uniwidth/u8-strwidth-tests: New file.
2733
2734         * lib/uniwidth/u8-strwidth.c: New file.
2735         * modules/uniwidth/u8-strwidth: New file.
2736
2737         * tests/uniwidth/test-u32-width.c: New file.
2738         * modules/uniwidth/u32-width-tests: New file.
2739
2740         * lib/uniwidth/u32-width.c: New file.
2741         * modules/uniwidth/u32-width: New file.
2742
2743         * tests/uniwidth/test-u16-width.c: New file.
2744         * modules/uniwidth/u16-width-tests: New file.
2745
2746         * lib/uniwidth/u16-width.c: New file.
2747         * modules/uniwidth/u16-width: New file.
2748
2749         * tests/uniwidth/test-u8-width.c: New file.
2750         * modules/uniwidth/u8-width-tests: New file.
2751
2752         * lib/uniwidth/u8-width.c: New file.
2753         * modules/uniwidth/u8-width: New file.
2754
2755         * tests/uniwidth/test-uc_width.c: New file.
2756         * modules/uniwidth/width-tests: New file.
2757
2758         * lib/uniwidth/width.c: New file, from GNU libiconv.
2759         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
2760         * modules/uniwidth/width: New file.
2761
2762         * lib/uniwidth.h: New file, from GNU libiconv.
2763         * modules/uniwidth/base: New file.
2764
2765 2007-07-07  Bruno Haible  <bruno@clisp.org>
2766
2767         * lib/uniname.h: New file, from GNU gettext.
2768         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
2769         * lib/uniname/uninames.h: New file, from GNU gettext.
2770         * lib/uniname/uniname.c: New file, from GNU gettext.
2771         * tests/uniname/test-uninames.sh: New file.
2772         * tests/uniname/test-uninames.c: New file, from GNU gettext.
2773         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
2774         * modules/uniname/base: New file.
2775         * modules/uniname/uniname: New file.
2776         * modules/uniname/uniname-tests: New file.
2777         * MODULES.html.sh (Unicode string functions): Add the new modules.
2778
2779 2007-07-06  Bruno Haible  <bruno@clisp.org>
2780
2781         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
2782
2783 2007-07-06  Bruno Haible  <bruno@clisp.org>
2784
2785         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
2786         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
2787         includes <cygwin/sys_time.h> which includes <sys/select.h> which
2788         include <sys/time.h>.
2789         Reported by Eric Blake.
2790
2791 2007-07-06  Eric Blake  <ebb9@byu.net>
2792
2793         Fix testing canonicalize on cygwin.
2794         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
2795         Revert patch from 2007-06-19.
2796         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
2797         canonicalize module is also in use.
2798         * tests/test-canonicalize.c: New file.
2799         * tests/test-canonicalize.sh: Likewise.
2800         * modules/canonicalize-tests: Likewise.
2801
2802 2007-07-06  Jim Meyering  <jim@meyering.net>
2803
2804         * lib/getugroups.c (getugroups): Detect getgrent failure.
2805         Adjust comment to reflect reality: this function may return -1.
2806
2807 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
2808
2809         * build-aux/bootstrap (TP_URL,get_translations): Update to use
2810         the new TP address.
2811         (usage): Fix typo
2812         (gnulib_mk): New variable.
2813
2814 2007-07-05  Jim Meyering  <jim@meyering.net>
2815
2816         Don't let endgrent clobber errno, no matter how improbable.
2817         * lib/getugroups.c (getugroups): Save and restore errno around
2818         endgrent call.
2819
2820         Close the group DB even when failing with 2^31 or more members.
2821         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
2822
2823 2007-07-04  Jim Meyering  <jim@meyering.net>
2824
2825         * lib/getugroups.h: New file.
2826         * lib/getugroups.c: Include "getugroups.h".
2827         Remove uses of "register" keyword.
2828         Move local variable, "cp", down into scope where used.
2829         Give "username" parameter the "const" attribute.
2830         * modules/getugroups (Files): Add lib/getugroups.h
2831
2832 2007-07-04  Karl Berry  <karl@gnu.org>
2833
2834         * MODULES.html.sh (func_all_modules): Complete rename of
2835         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
2836
2837 2007-07-02  Bruno Haible  <bruno@clisp.org>
2838
2839         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
2840         mode, when inttypes.h comes from gnulib.
2841         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
2842
2843 2007-07-02  Simon Josefsson  <simon@josefsson.org>
2844
2845         * NEWS: Mention lgpl module name change.
2846
2847         * modules/lgpl-2.1: Renamed from lgpl.
2848
2849         * NEWS: Mention gpl module name change.
2850
2851         * modules/gpl-3.0: New file, based on gpl-2.0.
2852
2853         * modules/gpl-2.0: Renamed from gpl.
2854
2855         * modules/gpl: Fix filename, doc/gpl.texi is now found at
2856         doc/gpl-2.0.texi.
2857
2858 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
2859
2860         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
2861         #define __STDC_LIMIT_MACROS temporarily while including
2862         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
2863         Problem reported by Joel E. Denny in
2864         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
2865
2866 2007-07-01  Bruno Haible  <bruno@clisp.org>
2867
2868         * lib/unistdio.h: New file.
2869         * lib/unistdio/u-asnprintf.h: New file.
2870         * lib/unistdio/u-asprintf.h: New file.
2871         * lib/unistdio/u-printf-args.c: New file.
2872         * lib/unistdio/u-printf-args.h: New file.
2873         * lib/unistdio/u-printf-parse.h: New file.
2874         * lib/unistdio/u-snprintf.h: New file.
2875         * lib/unistdio/u-sprintf.h: New file.
2876         * lib/unistdio/u-vasprintf.h: New file.
2877         * lib/unistdio/u-vsnprintf.h: New file.
2878         * lib/unistdio/u-vsprintf.h: New file.
2879         * lib/unistdio/ulc-asnprintf.c: New file.
2880         * lib/unistdio/ulc-asprintf.c: New file.
2881         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
2882         * lib/unistdio/ulc-printf-parse.c: New file.
2883         * lib/unistdio/ulc-snprintf.c: New file.
2884         * lib/unistdio/ulc-sprintf.c: New file.
2885         * lib/unistdio/ulc-vasnprintf.c: New file.
2886         * lib/unistdio/ulc-vasprintf.c: New file.
2887         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
2888         * lib/unistdio/ulc-vsnprintf.c: New file.
2889         * lib/unistdio/ulc-vsprintf.c: New file.
2890         * lib/unistdio/u8-asnprintf.c: New file.
2891         * lib/unistdio/u8-asprintf.c: New file.
2892         * lib/unistdio/u8-printf-parse.c: New file.
2893         * lib/unistdio/u8-snprintf.c: New file.
2894         * lib/unistdio/u8-sprintf.c: New file.
2895         * lib/unistdio/u8-vasnprintf.c: New file.
2896         * lib/unistdio/u8-vasprintf.c: New file.
2897         * lib/unistdio/u8-vsnprintf.c: New file.
2898         * lib/unistdio/u8-vsprintf.c: New file.
2899         * lib/unistdio/u8-u8-asnprintf.c: New file.
2900         * lib/unistdio/u8-u8-asprintf.c: New file.
2901         * lib/unistdio/u8-u8-snprintf.c: New file.
2902         * lib/unistdio/u8-u8-sprintf.c: New file.
2903         * lib/unistdio/u8-u8-vasnprintf.c: New file.
2904         * lib/unistdio/u8-u8-vasprintf.c: New file.
2905         * lib/unistdio/u8-u8-vsnprintf.c: New file.
2906         * lib/unistdio/u8-u8-vsprintf.c: New file.
2907         * lib/unistdio/u16-asnprintf.c: New file.
2908         * lib/unistdio/u16-asprintf.c: New file.
2909         * lib/unistdio/u16-printf-parse.c: New file.
2910         * lib/unistdio/u16-snprintf.c: New file.
2911         * lib/unistdio/u16-sprintf.c: New file.
2912         * lib/unistdio/u16-vasnprintf.c: New file.
2913         * lib/unistdio/u16-vasprintf.c: New file.
2914         * lib/unistdio/u16-vsnprintf.c: New file.
2915         * lib/unistdio/u16-vsprintf.c: New file.
2916         * lib/unistdio/u16-u16-asnprintf.c: New file.
2917         * lib/unistdio/u16-u16-asprintf.c: New file.
2918         * lib/unistdio/u16-u16-snprintf.c: New file.
2919         * lib/unistdio/u16-u16-sprintf.c: New file.
2920         * lib/unistdio/u16-u16-vasnprintf.c: New file.
2921         * lib/unistdio/u16-u16-vasprintf.c: New file.
2922         * lib/unistdio/u16-u16-vsnprintf.c: New file.
2923         * lib/unistdio/u16-u16-vsprintf.c: New file.
2924         * lib/unistdio/u32-asnprintf.c: New file.
2925         * lib/unistdio/u32-asprintf.c: New file.
2926         * lib/unistdio/u32-printf-parse.c: New file.
2927         * lib/unistdio/u32-snprintf.c: New file.
2928         * lib/unistdio/u32-sprintf.c: New file.
2929         * lib/unistdio/u32-vasnprintf.c: New file.
2930         * lib/unistdio/u32-vasprintf.c: New file.
2931         * lib/unistdio/u32-vsnprintf.c: New file.
2932         * lib/unistdio/u32-vsprintf.c: New file.
2933         * lib/unistdio/u32-u32-asnprintf.c: New file.
2934         * lib/unistdio/u32-u32-asprintf.c: New file.
2935         * lib/unistdio/u32-u32-snprintf.c: New file.
2936         * lib/unistdio/u32-u32-sprintf.c: New file.
2937         * lib/unistdio/u32-u32-vasnprintf.c: New file.
2938         * lib/unistdio/u32-u32-vasprintf.c: New file.
2939         * lib/unistdio/u32-u32-vsnprintf.c: New file.
2940         * lib/unistdio/u32-u32-vsprintf.c: New file.
2941         * tests/unistdio/test-ulc-asnprintf1.c: New file.
2942         * tests/unistdio/test-ulc-asnprintf1.h: New file.
2943         * tests/unistdio/test-ulc-printf1.h: New file.
2944         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
2945         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
2946         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
2947         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
2948         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
2949         * tests/unistdio/test-ulc-vasprintf1.c: New file.
2950         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
2951         * tests/unistdio/test-ulc-vsprintf1.c: New file.
2952         * tests/unistdio/test-u8-asnprintf1.c: New file.
2953         * tests/unistdio/test-u8-asnprintf1.h: New file.
2954         * tests/unistdio/test-u8-printf1.h: New file.
2955         * tests/unistdio/test-u8-vasnprintf1.c: New file.
2956         * tests/unistdio/test-u8-vasnprintf2.c: New file.
2957         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
2958         * tests/unistdio/test-u8-vasnprintf3.c: New file.
2959         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
2960         * tests/unistdio/test-u8-vasprintf1.c: New file.
2961         * tests/unistdio/test-u8-vsnprintf1.c: New file.
2962         * tests/unistdio/test-u8-vsprintf1.c: New file.
2963         * tests/unistdio/test-u16-asnprintf1.c: New file.
2964         * tests/unistdio/test-u16-asnprintf1.h: New file.
2965         * tests/unistdio/test-u16-printf1.h: New file.
2966         * tests/unistdio/test-u16-vasnprintf1.c: New file.
2967         * tests/unistdio/test-u16-vasnprintf2.c: New file.
2968         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
2969         * tests/unistdio/test-u16-vasnprintf3.c: New file.
2970         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
2971         * tests/unistdio/test-u16-vasprintf1.c: New file.
2972         * tests/unistdio/test-u16-vsnprintf1.c: New file.
2973         * tests/unistdio/test-u16-vsprintf1.c: New file.
2974         * tests/unistdio/test-u32-asnprintf1.c: New file.
2975         * tests/unistdio/test-u32-asnprintf1.h: New file.
2976         * tests/unistdio/test-u32-printf1.h: New file.
2977         * tests/unistdio/test-u32-vasnprintf1.c: New file.
2978         * tests/unistdio/test-u32-vasnprintf2.c: New file.
2979         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
2980         * tests/unistdio/test-u32-vasnprintf3.c: New file.
2981         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
2982         * tests/unistdio/test-u32-vasprintf1.c: New file.
2983         * tests/unistdio/test-u32-vsnprintf1.c: New file.
2984         * tests/unistdio/test-u32-vsprintf1.c: New file.
2985         * modules/unistdio/base: New file.
2986         * modules/unistdio/u-printf-args: New file.
2987         * modules/unistdio/ulc-asnprintf: New file.
2988         * modules/unistdio/ulc-asprintf: New file.
2989         * modules/unistdio/ulc-fprintf: New file.
2990         * modules/unistdio/ulc-printf-parse: New file.
2991         * modules/unistdio/ulc-snprintf: New file.
2992         * modules/unistdio/ulc-sprintf: New file.
2993         * modules/unistdio/ulc-vasnprintf: New file.
2994         * modules/unistdio/ulc-vasprintf: New file.
2995         * modules/unistdio/ulc-vfprintf: New file.
2996         * modules/unistdio/ulc-vsnprintf: New file.
2997         * modules/unistdio/ulc-vsprintf: New file.
2998         * modules/unistdio/u8-asnprintf: New file.
2999         * modules/unistdio/u8-asprintf: New file.
3000         * modules/unistdio/u8-printf-parse: New file.
3001         * modules/unistdio/u8-snprintf: New file.
3002         * modules/unistdio/u8-sprintf: New file.
3003         * modules/unistdio/u8-vasnprintf: New file.
3004         * modules/unistdio/u8-vasprintf: New file.
3005         * modules/unistdio/u8-vsnprintf: New file.
3006         * modules/unistdio/u8-vsprintf: New file.
3007         * modules/unistdio/u8-u8-asnprintf: New file.
3008         * modules/unistdio/u8-u8-asprintf: New file.
3009         * modules/unistdio/u8-u8-snprintf: New file.
3010         * modules/unistdio/u8-u8-sprintf: New file.
3011         * modules/unistdio/u8-u8-vasnprintf: New file.
3012         * modules/unistdio/u8-u8-vasprintf: New file.
3013         * modules/unistdio/u8-u8-vsnprintf: New file.
3014         * modules/unistdio/u8-u8-vsprintf: New file.
3015         * modules/unistdio/u16-asnprintf: New file.
3016         * modules/unistdio/u16-asprintf: New file.
3017         * modules/unistdio/u16-printf-parse: New file.
3018         * modules/unistdio/u16-snprintf: New file.
3019         * modules/unistdio/u16-sprintf: New file.
3020         * modules/unistdio/u16-vasnprintf: New file.
3021         * modules/unistdio/u16-vasprintf: New file.
3022         * modules/unistdio/u16-vsnprintf: New file.
3023         * modules/unistdio/u16-vsprintf: New file.
3024         * modules/unistdio/u16-u16-asnprintf: New file.
3025         * modules/unistdio/u16-u16-asprintf: New file.
3026         * modules/unistdio/u16-u16-snprintf: New file.
3027         * modules/unistdio/u16-u16-sprintf: New file.
3028         * modules/unistdio/u16-u16-vasnprintf: New file.
3029         * modules/unistdio/u16-u16-vasprintf: New file.
3030         * modules/unistdio/u16-u16-vsnprintf: New file.
3031         * modules/unistdio/u16-u16-vsprintf: New file.
3032         * modules/unistdio/u32-asnprintf: New file.
3033         * modules/unistdio/u32-asprintf: New file.
3034         * modules/unistdio/u32-printf-parse: New file.
3035         * modules/unistdio/u32-snprintf: New file.
3036         * modules/unistdio/u32-sprintf: New file.
3037         * modules/unistdio/u32-vasnprintf: New file.
3038         * modules/unistdio/u32-vasprintf: New file.
3039         * modules/unistdio/u32-vsnprintf: New file.
3040         * modules/unistdio/u32-vsprintf: New file.
3041         * modules/unistdio/u32-u32-asnprintf: New file.
3042         * modules/unistdio/u32-u32-asprintf: New file.
3043         * modules/unistdio/u32-u32-snprintf: New file.
3044         * modules/unistdio/u32-u32-sprintf: New file.
3045         * modules/unistdio/u32-u32-vasnprintf: New file.
3046         * modules/unistdio/u32-u32-vasprintf: New file.
3047         * modules/unistdio/u32-u32-vsnprintf: New file.
3048         * modules/unistdio/u32-u32-vsprintf: New file.
3049         * modules/unistdio/ulc-asnprintf-tests: New file.
3050         * modules/unistdio/ulc-vasnprintf-tests: New file.
3051         * modules/unistdio/ulc-vasprintf-tests: New file.
3052         * modules/unistdio/ulc-vsnprintf-tests: New file.
3053         * modules/unistdio/ulc-vsprintf-tests: New file.
3054         * modules/unistdio/u8-asnprintf-tests: New file.
3055         * modules/unistdio/u8-vasnprintf-tests: New file.
3056         * modules/unistdio/u8-vasprintf-tests: New file.
3057         * modules/unistdio/u8-vsnprintf-tests: New file.
3058         * modules/unistdio/u8-vsprintf-tests: New file.
3059         * modules/unistdio/u16-asnprintf-tests: New file.
3060         * modules/unistdio/u16-vasnprintf-tests: New file.
3061         * modules/unistdio/u16-vasprintf-tests: New file.
3062         * modules/unistdio/u16-vsnprintf-tests: New file.
3063         * modules/unistdio/u16-vsprintf-tests: New file.
3064         * modules/unistdio/u32-asnprintf-tests: New file.
3065         * modules/unistdio/u32-vasnprintf-tests: New file.
3066         * modules/unistdio/u32-vasprintf-tests: New file.
3067         * modules/unistdio/u32-vsnprintf-tests: New file.
3068         * modules/unistdio/u32-vsprintf-tests: New file.
3069         * MODULES.html.sh (Unicode string functions): Add the new modules.
3070
3071 2007-07-01  Bruno Haible  <bruno@clisp.org>
3072
3073         * lib/sprintf.c (sprintf): Limit the available length estimation,
3074         to avoid address wraparound.
3075         * lib/vsprintf.c (vsprintf): Likewise.
3076         * modules/sprintf-posix (Dependencies): Add stdint.
3077         * modules/vsprintf-posix (Dependencies): Likewise.
3078
3079 2007-07-01  Bruno Haible  <bruno@clisp.org>
3080
3081         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
3082         Windows PATH as well. Conservative double-quoting. Comments.
3083
3084 2007-07-01  Bruno Haible  <bruno@clisp.org>
3085             Eric Blake  <ebb9@byu.net>
3086             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3087
3088         * gnulib-tool (self_abspathname): Fix algorithm to cope with
3089         empty components in $PATH, denoting '.'.
3090
3091 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3092
3093         * gnulib-tool: Fix indentation.
3094         (func_create_megatestdir): Likewise.
3095         Report by Bruno Haible.
3096
3097 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3098
3099         Sync from Automake.
3100         * build-aux/gnupload: Fix shell portability issues with for loops.
3101         Report by Karl Berry.
3102
3103 2007-06-29  Simon Josefsson  <simon@josefsson.org>
3104
3105         * build-aux/maint.mk (POURL): Use translationproject.org.
3106
3107 2007-06-27  Simon Josefsson  <simon@josefsson.org>
3108             Bruno Haible  <bruno@clisp.org>
3109
3110         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
3111         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
3112         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
3113         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
3114         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
3115
3116 2007-06-27  Bruno Haible  <bruno@clisp.org>
3117
3118         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
3119         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
3120
3121 2007-06-26  Karl Berry  <karl@gnu.org>
3122
3123         * MODULES.html.sh: remove xreadlink-with-size.
3124
3125 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3126
3127         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
3128         method that I hope also handles the double-include problem noted
3129         by Bruno Haible in
3130         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
3131
3132 2007-06-23  Bruno Haible  <bruno@clisp.org>
3133
3134         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
3135         Don't let the 'mostlyclean' target fail if the last subdirectory could
3136         not be removed.
3137         Reported by Karl Berry.
3138
3139 2007-06-23  Bruno Haible  <bruno@clisp.org>
3140
3141         * gnulib-tool (echo): Add a speedier workaround for ksh.
3142         * tests/test-echo.sh: Likewise.
3143
3144 2007-06-23  Bruno Haible  <bruno@clisp.org>
3145
3146         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
3147         * tests/test-echo.sh: Likewise.
3148
3149 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3150
3151         * gnulib-tool (IFS): Initialize early, so we don't set it to
3152         empty later.
3153         (self_abspathname): Rewrite algorithm to set it, reindent.
3154         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
3155         (func_create_megatestdir): Merge some sed scripts.
3156
3157 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3158
3159         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
3160         exposed by Sun Studio 11 cc on Solaris 8.
3161
3162 2007-06-22  Bruno Haible  <bruno@clisp.org>
3163
3164         * gnulib-tool (echo): Ensure the echo primitive does not interpret
3165         backslashes.
3166         * tests/test-echo.sh: New file.
3167
3168 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3169
3170         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
3171         simplify `sed_replace_build_aux' scripts, they are portable but
3172         echoing them with `echo' is not.
3173         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
3174
3175 2007-06-21  Karl Berry  <karl@gnu.org>
3176
3177         * config/srclist.txt: guess we can't handle the licenses via
3178         srclist at the moment.
3179
3180 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
3181
3182         * MODULES.html.sh: Add include_next.
3183         * modules/include_next: New file.
3184
3185 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
3186
3187         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
3188         INCLUDE_NEXT.
3189         (gl_CHECK_NEXT_HEADERS): New macro.
3190         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
3191         the obsolescent gl_ABSOLUTE_HEADER.
3192         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
3193         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
3194         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
3195         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
3196         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
3197         * m4/math_h.m4 (gl_MATH_H): Likewise.
3198         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
3199         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
3200         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
3201         * m4/stdint.m4 (gl_STDINT_H): Likewise.
3202         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
3203         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
3204         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
3205         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
3206         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
3207         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
3208         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
3209         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
3210         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
3211         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
3212         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
3213         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
3214         * m4/inttypes.m4 (gl_INTTYPES_H): Define
3215         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
3216         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
3217         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
3218         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
3219         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
3220         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
3221         * lib/float_.h: Likewise.
3222         * lib/inttypes_.h: Likewise.
3223         * lib/math_.h: Likewise.
3224         * lib/search_.h: Likewise.
3225         * lib/signal_.h: Likewise.
3226         * lib/stdint_.h: Likewise.
3227         * lib/stdio_.h: Likewise.
3228         * lib/stdlib_.h: Likewise.
3229         * lib/string_.h: Likewise.
3230         * lib/sys_stat_.h: Likewise.
3231         * lib/sys_time_.h: Likewise.
3232         * lib/time_.h: Likewise.
3233         * lib/unistd_.h: Likewise.
3234         * lib/wchar_.h: Likewise.
3235         * lib/wctype_.h: Likewise.
3236         * lib/dirent_.h: Likewise.
3237         * lib/iconv_.h: Likewise.
3238         * lib/locale_.h: Likewise.
3239         * lib/netinet_in_.h: Likewise.
3240         * lib/sys_select_.h: Likewise.
3241         * lib/sys_socket_.h: Likewise.
3242         * lib/sysexits_.h: Likewise.
3243         * modules/fcntl (Depends-on): Depend on include_next, not
3244         absolute_header.
3245         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
3246         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
3247         * modules/fchdir: Likewise.
3248         * modules/float: Likewise.
3249         * modules/iconv_open: Likewise.
3250         * modules/inttypes: Likewise.
3251         * modules/locale: Likewise.
3252         * modules/math: Likewise.
3253         * modules/netinet_in: Likewise.
3254         * modules/search: Likewise.
3255         * modules/signal: Likewise.
3256         * modules/stdint: Likewise.
3257         * modules/stdio: Likewise.
3258         * modules/stdlib: Likewise.
3259         * modules/string: Likewise.
3260         * modules/sys_select: Likewise.
3261         * modules/sys_socket: Likewise.
3262         * modules/sys_stat: Likewise.
3263         * modules/sys_time: Likewise.
3264         * modules/sysexits: Likewise.
3265         * modules/time: Likewise.
3266         * modules/unistd: Likewise.
3267         * modules/wchar: Likewise.
3268         * modules/wctype: Likewise.
3269         * modules/sys_stat: Change maintainer to "all".
3270         * modules/unistd: Likewise.
3271
3272 2007-06-20  Karl Berry  <karl@gnu.org>
3273
3274         * config/srclist.txt: track www changes in license files.
3275
3276 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
3277
3278         * build-aux/bootstrap: Remove stray dot.
3279         Make sure build_aux settings are honored when linking
3280         gnulib_extra_files.
3281
3282 2007-06-19  Eric Blake  <ebb9@byu.net>
3283
3284         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
3285         Allow compilation on cygwin.
3286
3287 2007-06-19  Jim Meyering  <jim@meyering.net>
3288
3289         xreadlink-with-size: Remove module.  No longer used.
3290         Ex-callers now use xreadlink or mreadlink-with-size.
3291         * modules/xreadlink-with-size: Remove module.
3292         * lib/xreadlink-with-size.c: Remove file.
3293         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
3294         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
3295         just before the function definition *is* accurate.
3296
3297         Eliminate one way canonicalize_filename_mode could exit.
3298         * lib/canonicalize.c (canonicalize_filename_mode):
3299         Use mreadlink_with_size, not xreadlink_with_size.
3300
3301 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
3302
3303         Detect porting problems to FreeBSD/arm, which has time_t wider than
3304         long int.  Original problem reported for GNU diff by Xin Li in
3305         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
3306         * modules/getdate (Depends-on): Add intprops, verify.
3307         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
3308         is an integer type no wider than long int.
3309
3310 2007-06-18  Jim Meyering  <jim@meyering.net>
3311
3312         New module: mreadlink-with-size.
3313         * MODULES.html.sh: Add mreadlink-with-size.
3314         * modules/mreadlink-with-size: New module
3315         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
3316         not xreadlink-with-size.
3317         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
3318
3319 2007-06-16  Bruno Haible  <bruno@clisp.org>
3320
3321         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
3322         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
3323         Reported by Gary V. Vaughan <gary@gnu.org>.
3324
3325 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
3326
3327         Revamp lchown so that it lives in unistd.h where it belongs.
3328         * lib/lchown.h: Remove.
3329         * lib/dirchownmod.c: Don't include lib/lchown.h.
3330         * lib/fchownat.c: Likewise.
3331         * lib/openat.c: Likewise.
3332         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
3333         does not follow symlinks.
3334         (EOPNOTSUPP): Define if not defined.
3335         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
3336         is defined to 0.
3337         (lchown): New decl.
3338         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
3339         Do not check for lchown decl.
3340         Set REPLACE_LCHOWN.
3341         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
3342         REPLACE_LCHOWN.
3343         * modules/chown: Make it clear it follows symlinks.
3344         * modules/lchown: Make it clear it doesn't follow symlinks.
3345         (Files): Remove lib/lchown.h
3346         (Depends-on): Add unistd.
3347         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
3348         (Include): Include <unistd.h>, not "lchown.h".
3349         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
3350         REPLACE_LCHOWN.
3351
3352 2007-06-15  Jim Meyering  <jim@meyering.net>
3353
3354         Change license (GPL to LGPL) of fsusage and dependents.
3355         * modules/fsusage (License): Change to LGPL.
3356         * modules/full-read (License): Likewise.
3357         * modules/full-write (License): Likewise.
3358         * modules/safe-read (License): Likewise.
3359         * modules/safe-write (License): Likewise.
3360
3361 2007-06-14  Ben Pfaff  <blp@gnu.org>
3362
3363         Missing part of allocsa -> malloca transition.
3364         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
3365         gl_MALLOCA.
3366
3367 2007-06-12  Bruno Haible  <bruno@clisp.org>
3368
3369         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
3370         to ia64, x86_64, i386.
3371         Reported by Eric Blake.
3372
3373 2007-06-12  Bruno Haible  <bruno@clisp.org>
3374
3375         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
3376         cross-compiling to x86_64.
3377
3378 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
3379
3380         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
3381         glitch reported by Ralf Wildenhues in
3382         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
3383
3384         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
3385         Vin Shelton.
3386
3387 2007-06-11  Bruno Haible  <bruno@clisp.org>
3388
3389         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
3390         replacement string.
3391         Reported by Eric Blake.
3392
3393 2007-06-10  Bruno Haible  <bruno@clisp.org>
3394
3395         Prepare vasnprintf code for use with Unicode strings.
3396         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
3397         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
3398         TYPE_U32_STRING.
3399         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
3400         a_u32_string variants.
3401         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
3402         * lib/printf-args.c: Don't include config.h and the specification
3403         header if PRINTF_FETCHARGS is already defined.
3404         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
3405         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
3406         TYPE_U16_STRING, TYPE_U32_STRING.
3407         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
3408         u16_directive, u16_directives, u32_directive, u32_directives): New
3409         types.
3410         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
3411         New declarations.
3412         * lib/printf-parse.c: Don't include config.h and the specification
3413         header if PRINTF_PARSE is already defined. Eliminate the set of
3414         parameters for WIDE_CHAR_VERSION; the user of this file must provide
3415         them now. Include c-ctype.h.
3416         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
3417         directive and CHAR_T_ONLY_ASCII.
3418         * lib/vasnprintf.c: Don't include config.h and the specification header
3419         if VASNPRINTF is already defined.
3420         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
3421         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
3422         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
3423         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
3424         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
3425         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
3426         code accordingly.
3427         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
3428         pad_ourselves also in this case, with the 'c' and 's' directives, and
3429         with a different notion of "width".
3430         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
3431
3432 2007-06-10  Bruno Haible  <bruno@clisp.org>
3433
3434         * modules/unistr/u32-mbsnlen: New file.
3435         * lib/unistr/u32-mbsnlen.c: New file.
3436
3437         * modules/unistr/u16-mbsnlen: New file.
3438         * lib/unistr/u16-mbsnlen.c: New file.
3439
3440         * modules/unistr/u8-mbsnlen: New file.
3441         * lib/unistr/u8-mbsnlen.c: New file.
3442
3443         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
3444         declarations.
3445
3446 2007-06-10  Bruno Haible  <bruno@clisp.org>
3447
3448         * lib/string_.h (mbsnlen): New declaration.
3449         * lib/mbsnlen.c: New file.
3450         * m4/mbsnlen.m4: New file.
3451         * modules/mbsnlen: New file.
3452         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
3453         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
3454         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
3455
3456 2007-06-10  Bruno Haible  <bruno@clisp.org>
3457
3458         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
3459
3460 2007-06-10  Bruno Haible  <bruno@clisp.org>
3461
3462         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
3463         * lib/mbuiter.h: Likewise.
3464
3465 2007-06-10  Bruno Haible  <bruno@clisp.org>
3466
3467         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
3468         declaration.
3469
3470 2007-06-10  Karl Berry  <karl@gnu.org>
3471
3472         * config/srclist.txt: remove gettext entries, Bruno prefers
3473         to update individually.
3474
3475 2007-06-10  Bruno Haible  <bruno@clisp.org>
3476
3477         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
3478         'maxlen'. Ensure only length + width bytes are allocated, not
3479         length + 1 + width.
3480
3481 2007-06-09  Bruno Haible  <bruno@clisp.org>
3482
3483         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
3484         (CHAR_T): Remove macro.
3485         (VASNPRINTF): Update.
3486
3487 2007-06-09  Bruno Haible  <bruno@clisp.org>
3488
3489         * MODULES.html.sh (Unicode string functions): Add the new modules.
3490
3491         * modules/uniconv/u32-conv-to-enc: New file.
3492         * lib/uniconv/u32-conv-to-enc.c: New file.
3493         * modules/uniconv/u32-conv-to-enc-tests: New file.
3494         * tests/uniconv/test-u32-conv-to-enc.c: New file.
3495
3496         * modules/uniconv/u16-conv-to-enc: New file.
3497         * lib/uniconv/u16-conv-to-enc.c: New file.
3498         * lib/uniconv/u-conv-to-enc.h: New file.
3499         * modules/uniconv/u16-conv-to-enc-tests: New file.
3500         * tests/uniconv/test-u16-conv-to-enc.c: New file.
3501
3502         * modules/uniconv/u8-conv-to-enc: New file.
3503         * lib/uniconv/u8-conv-to-enc.c: New file.
3504         * modules/uniconv/u8-conv-to-enc-tests: New file.
3505         * tests/uniconv/test-u8-conv-to-enc.c: New file.
3506
3507         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
3508         u32_conv_to_encoding): New declarations.
3509
3510 2007-06-09  Bruno Haible  <bruno@clisp.org>
3511
3512         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
3513
3514 2007-06-09  Bruno Haible  <bruno@clisp.org>
3515
3516         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
3517         * modules/malloca: Renamed from modules/allocsa, updated.
3518         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
3519         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
3520         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
3521         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
3522         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
3523         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
3524         * modules/xmalloca: Renamed from modules/xallocsa, updated.
3525         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
3526         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
3527         * modules/c-strcasestr (Depends-on): Update.
3528         * lib/c-strcasestr.c: Update.
3529         * modules/c-strstr (Depends-on): Update.
3530         * lib/c-strstr.c: Update.
3531         * modules/canonicalize-lgpl (Depends-on): Update.
3532         * lib/canonicalize-lgpl.c: Update.
3533         * modules/clean-temp (Depends-on): Update.
3534         * lib/clean-temp.c: Update.
3535         * modules/csharpcomp (Depends-on): Update.
3536         * lib/csharpcomp.c: Update.
3537         * modules/csharpexec (Depends-on): Update.
3538         * lib/csharpexec.c: Update.
3539         * modules/javacomp (Depends-on): Update.
3540         * lib/javacomp.c: Update.
3541         * modules/javaexec (Depends-on): Update.
3542         * lib/javaexec.c: Update.
3543         * modules/mbscasestr (Depends-on): Update.
3544         * lib/mbscasestr.c: Update.
3545         * modules/mbsstr (Depends-on): Update.
3546         * lib/mbsstr.c: Update.
3547         * modules/setenv (Depends-on): Update.
3548         * lib/setenv.c: Update.
3549         * modules/strcasestr (Depends-on): Update.
3550         * lib/strcasestr.c: Update.
3551         * modules/striconveha (Depends-on): Update.
3552         * lib/striconveha.c: Update.
3553         * modules/relocatable-prog-wrapper (Files): Update.
3554         * lib/relocwrapper.c: Update.
3555         * build-aux/install-reloc: Update.
3556         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
3557
3558 2007-06-08  Bruno Haible  <bruno@clisp.org>
3559
3560         Port to uClibc.
3561         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
3562         * lib/fpurge.c (fpurge): Likewise.
3563         * lib/freading.c (freading): Likewise.
3564         * lib/fseeko.c (rpl_fseeko): Likewise.
3565         * lib/fseterr.c (fseterr): Likewise.
3566         * lib/fwriting.c (fwriting): Likewise.
3567         * tests/test-fflush.c (main): Avoid a failure on uClibc.
3568
3569 2007-06-08  Bruno Haible  <bruno@clisp.org>
3570
3571         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
3572         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
3573         * modules/gettext (Files): Add m4/intlmacosx.m4.
3574
3575 2007-06-07  Bruno Haible  <bruno@clisp.org>
3576
3577         * modules/localename-tests: New file.
3578         * tests/test-localename.c: New file.
3579
3580         New module 'localename'.
3581         * lib/localename.h: New file.
3582         * lib/localename.c: New file, from GNU gettext.
3583         * m4/localename.m4: New file.
3584         * modules/localename: New file.
3585
3586 2007-06-07  Bruno Haible  <bruno@clisp.org>
3587
3588         Work around the lack of <wchar.h> on some builds of uClibc.
3589         * doc/headers/wchar.texi: Update.
3590         * lib/wchar_.h: Include <wchar.h> only if it exists.
3591         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
3592         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
3593         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
3594         doesn't exist.
3595         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
3596         * modules/mbfile (Depends-on): Add wchar.
3597         * modules/mbiter (Depends-on): Likewise.
3598         * modules/mbuiter (Depends-on): Likewise.
3599         Reported by Simon Josefsson.
3600
3601 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
3602
3603         Work around problem reported by Steven M. Schweda in
3604         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
3605         Tru64 5.1B with the Compaq compiler environment installed declares
3606         an 'isblank' function but does not define it in the C library.
3607         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
3608         * lib/regex_internal.h (isblank): Likewise.
3609         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
3610         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
3611
3612 2007-06-05  Bruno Haible  <bruno@clisp.org>
3613
3614         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
3615         ia64.
3616         * modules/printf-safe: New file.
3617         * modules/fprintf-posix (Depends-on): Add printf-safe.
3618         * modules/printf-posix (Depends-on): Likewise.
3619         * modules/snprintf-posix (Depends-on): Likewise.
3620         * modules/sprintf-posix (Depends-on): Likewise.
3621         * modules/vasnprintf-posix (Depends-on): Likewise.
3622         * modules/vasprintf-posix (Depends-on): Likewise.
3623         * modules/vfprintf-posix (Depends-on): Likewise.
3624         * modules/vprintf-posix (Depends-on): Likewise.
3625         * modules/vsnprintf-posix (Depends-on): Likewise.
3626         * modules/vsprintf-posix (Depends-on): Likewise.
3627         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
3628         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
3629         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
3630         "no" on i386, x86_64, ia64.
3631         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
3632         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3633         on i386, x86_64, ia64.
3634         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
3635         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3636         on i386, x86_64, ia64.
3637         * tests/test-vasnprintf-posix.c: Include float.h.
3638         (LDBL80_WORDS): New macro.
3639         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3640         on i386, x86_64, ia64.
3641         * tests/test-vasprintf-posix.c: Include float.h.
3642         (LDBL80_WORDS): New macro.
3643         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3644         on i386, x86_64, ia64.
3645         * tests/test-snprintf-posix.c: Include float.h.
3646         * tests/test-sprintf-posix.c: Likewise.
3647         * tests/test-vsnprintf-posix.c: Likewise.
3648         * tests/test-vsprintf-posix.c: Likewise.
3649
3650 2007-06-05  Bruno Haible  <bruno@clisp.org>
3651
3652         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
3653         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
3654         non-IEEE numbers on i386, x86_64, ia64.
3655         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
3656         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
3657         * tests/test-isnanl.h: Include float.h.
3658         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
3659
3660 2007-06-05  Bruno Haible  <bruno@clisp.org>
3661
3662         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
3663         also the %a / %A. Handle the %a / %A code before this extra handling.
3664
3665 2007-06-05  Bruno Haible  <bruno@clisp.org>
3666
3667         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
3668         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
3669
3670 2007-06-05  Bruno Haible  <bruno@clisp.org>
3671
3672         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
3673         typo in variable name.
3674
3675 2007-06-05  Eric Blake  <ebb9@byu.net>
3676
3677         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
3678         Reported by Simon Josefsson.
3679
3680 2007-06-04  Bruno Haible  <bruno@clisp.org>
3681
3682         Avoid test failures on some PowerPC platforms.
3683         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
3684         Define differently for PowerPC.
3685         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
3686         Reported by Gary V. Vaughan <gary@gnu.org>.
3687
3688 2007-06-02  Bruno Haible  <bruno@clisp.org>
3689
3690         Fix test-stdint failure on FreeBSD/ia64.
3691         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
3692         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
3693         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
3694         * doc/headers/stdint.texi: Update.
3695
3696 2007-06-01  Bruno Haible  <bruno@clisp.org>
3697
3698         * tests/test-binary-io.c (main): Pass a third argument to open().
3699         Reported by Gary V. Vaughan <gary@gnu.org>.
3700
3701 2007-06-01  Bruno Haible  <bruno@clisp.org>
3702
3703         * doc/functions/frexpl.texi: Update for mingw.
3704
3705 2007-06-01  Bruno Haible  <bruno@clisp.org>
3706
3707         * tests/test-lseek.c (main): Disable test of errno for invalid third
3708         argument.
3709         * doc/functions/lseek.texi: Update.
3710         Reported by Gary V. Vaughan <gary@gnu.org>.
3711
3712 2007-05-28  Bruno Haible  <bruno@clisp.org>
3713
3714         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
3715
3716 2007-05-31  Eric Blake  <ebb9@byu.net>
3717
3718         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
3719         cross compiling.
3720
3721 2007-05-30  Eric Blake  <ebb9@byu.net>
3722         and Bruno Haible  <bruno@clisp.org>
3723
3724         Work around mingw test failures exposed by m4-1.4.9b.
3725         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
3726         * tests/test-unistd.c: Disable uid_t and git_t tests for the
3727         moment.
3728
3729 2007-05-30  Bruno Haible  <bruno@clisp.org>
3730
3731         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
3732         assuming that they are closed. Needed on HP-UX 11.
3733
3734 2007-05-29  Bruno Haible  <bruno@clisp.org>
3735
3736         Fix a problem with #include_next.
3737         * lib/dirent_.h: Split the double-inclusion guard.
3738         * lib/fcntl_.h: Likewise.
3739         * lib/float_.h: Likewise.
3740         * lib/iconv_.h: Likewise.
3741         * lib/inttypes_.h: Likewise.
3742         * lib/locale_.h: Likewise.
3743         * lib/math_.h: Likewise.
3744         * lib/netinet_in_.h: Likewise.
3745         * lib/search_.h: Likewise.
3746         * lib/signal_.h: Likewise.
3747         * lib/stdint_.h: Likewise.
3748         * lib/stdio_.h: Likewise.
3749         * lib/stdlib_.h: Likewise.
3750         * lib/string_.h: Likewise.
3751         * lib/sys_select_.h: Likewise.
3752         * lib/sys_socket_.h: Likewise.
3753         * lib/sys_stat_.h: Likewise.
3754         * lib/sys_time_.h: Likewise.
3755         * lib/sysexits_.h: Likewise.
3756         * lib/time_.h: Likewise.
3757         * lib/unistd_.h: Likewise.
3758         * lib/wchar_.h: Likewise.
3759         * lib/wctype_.h: Likewise.
3760
3761 2007-05-29  Bruno Haible  <bruno@clisp.org>
3762
3763         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
3764         for the moment.
3765
3766 2007-05-29  Bruno Haible  <bruno@clisp.org>
3767
3768         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
3769         invocation.
3770         Reported by Eric Blake.
3771
3772 2007-05-29  Bruno Haible  <bruno@clisp.org>
3773
3774         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
3775         compiling case.
3776
3777 2007-05-29  Eric Blake  <ebb9@byu.net>
3778             Bruno Haible  <bruno@clisp.org>
3779
3780         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
3781         cross compiles.
3782
3783 2007-05-28  Eric Blake  <ebb9@byu.net>
3784
3785         * modules/closein-tests (test_closein_LDADD): Support test on
3786         cygwin with libtool.
3787
3788 2007-05-28  Bruno Haible  <bruno@clisp.org>
3789
3790         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
3791         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
3792         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
3793         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
3794         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
3795         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
3796         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
3797         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
3798         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
3799
3800 2007-05-28  Eric Blake  <ebb9@byu.net>
3801
3802         Unconditionally include <config.h> in unit tests.
3803         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
3804         * tests/test-allocsa.c, tests/test-arcfour.c,
3805         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
3806         tests/test-array_list.c, tests/test-array_oset.c,
3807         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
3808         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
3809         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
3810         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
3811         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
3812         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
3813         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
3814         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
3815         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
3816         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
3817         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
3818         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
3819         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
3820         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
3821         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
3822         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
3823         test-md5.c, test-memmem.c, test-printf-posix.c,
3824         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
3825         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
3826         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
3827         test-strcasestr.c, test-striconv.c, test-striconveh.c,
3828         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
3829         test-vasnprintf-posix2.c, test-vasnprintf.c,
3830         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
3831         test-vfprintf-posix.c, test-vprintf-posix.c,
3832         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
3833         test-xvasprintf.c: Likewise.
3834
3835 2007-05-28  Bruno Haible  <bruno@clisp.org>
3836
3837         * gnulib-tool (func_import): Remember the --with-tests command-line
3838         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
3839         Reported by Eric Blake.
3840
3841 2007-05-28  Bruno Haible  <bruno@clisp.org>
3842
3843         * modules/ftell-tests: New file.
3844         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
3845         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
3846
3847         * lib/ftell.c: New file.
3848         * modules/ftell: New file.
3849         * m4/ftell.m4: New file.
3850         * doc/functions/ftell.texi: Update.
3851         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
3852         REPLACE_FTELL.
3853         * lib/stdio_.h (rpl_ftell): New declaration.
3854         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
3855         REPLACE_FTELL.
3856
3857 2007-05-28  Eric Blake  <ebb9@byu.net>
3858
3859         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
3860
3861 2007-05-28  Bruno Haible  <bruno@clisp.org>
3862
3863         * modules/fseek-tests: New file.
3864         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
3865         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
3866
3867         * lib/fseek.c: New file.
3868         * modules/fseek: New file.
3869         * m4/fseek.m4: New file.
3870         * doc/functions/fseek.texi: Update.
3871         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
3872         REPLACE_FSEEK.
3873         * lib/stdio_.h (rpl_fseek): New declaration.
3874         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
3875         REPLACE_FSEEK.
3876
3877 2007-05-28  Bruno Haible  <bruno@clisp.org>
3878
3879         * lib/stdio_.h (fflush): More comments.
3880
3881 2007-05-28  Bruno Haible  <bruno@clisp.org>
3882
3883         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
3884         runtime test.
3885
3886 2007-05-28  Eric Blake  <ebb9@byu.net>
3887
3888         Improve lseek module.
3889         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
3890         * lib/unistd_.h (lseek): Scale back link warning message.
3891         * tests/test-lseek.c: Beef up test.
3892         * tests/test-lseek.sh: Exercise more facets of lseek.
3893         Reported by Bruno Haible.
3894
3895 2007-05-28  Bruno Haible  <bruno@clisp.org>
3896
3897         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
3898         to define.
3899
3900 2007-05-27  Bruno Haible  <bruno@clisp.org>
3901
3902         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
3903
3904 2007-05-27  Bruno Haible  <bruno@clisp.org>
3905
3906         * modules/openmp: New file.
3907         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
3908         Noah Misch.
3909
3910 2007-05-26  Bruno Haible  <bruno@clisp.org>
3911
3912         * modules/chdir-long (Depends-on): Add fchdir.
3913         * modules/chdir-safer (Depends-on): Likewise.
3914         * modules/fts (Depends-on): Likewise.
3915         * modules/fts-lgpl (Depends-on): Likewise.
3916         * modules/openat (Depends-on): Likewise.
3917         * modules/savewd (Depends-on): Likewise.
3918
3919 2007-05-24  Eric Blake  <ebb9@byu.net>
3920
3921         Fix lseek on mingw.
3922         * modules/lseek: New module.
3923         * m4/lseek.m4: New file.
3924         * lib/lseek.c: New file.
3925         * modules/lseek-tests: New file.
3926         * tests/test-lseek.c: New file.
3927         * tests/test-lseek.sh: New file.
3928         * MODULES.html.sh: Document lseek module.
3929         * modules/fflush (Depends-on): Add lseek, fseeko.
3930         * modules/fseeko (Depends-on): Likewise.
3931         * modules/ftello (Depends-on): Likewise.
3932         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
3933         broken.
3934         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
3935         broken.
3936         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
3937         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
3938         * lib/ftello.c (rpl_ftello): Likewise.
3939         * tests/test-fseeko.c (main): Test this.
3940         * tests/test-fseeko.sh: Likewise.
3941         * tests/test-ftello.c (main): Likewise.
3942         * tests/test-ftello.sh: Likewise.
3943         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
3944         implies replacing fseek.
3945         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
3946         HAVE_FTELLO.
3947         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
3948         * modules/unistd (Makefile.am): Likewise.
3949         * lib/unistd_.h (lseek): Declare a replacement.
3950         * doc/functions/lseek.texi (lseek): Document this fix.
3951         * doc/functions/fseek.texi (fseek): Likewise.
3952         * doc/functions/ftell.texi (ftell): Likewise.
3953
3954 2007-05-24  Bruno Haible  <bruno@clisp.org>
3955
3956         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
3957         in the printed representation of a NaN.
3958         * tests/test-vasprintf-posix.c (test_function): Likewise.
3959         * tests/test-snprintf-posix.h (test_function): Likewise.
3960         * tests/test-sprintf-posix.h (test_function): Likewise.
3961         Reported by Eric Blake.
3962
3963 2007-05-23  Eric Blake  <ebb9@byu.net>
3964
3965         Fix fseeko/ftello on cygwin 1.5.24.
3966         * doc/functions/fseeko.texi (fseeko): Document the fix.
3967         * doc/functions/ftello.texi (ftello): Document the fix.
3968         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
3969         * doc/functions/stdout.text (stdout): New file.
3970         * doc/functions/stderr.text (stderr): New file.
3971         * doc/gnulib.texi (Function Substitutes): Use new files.
3972         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
3973         prior to 1.7.0.
3974         * tests/test-ftello.c (main): Likewise for ftello.
3975         * tests/test-fseeko.sh: New file.
3976         * tests/test-ftello.sh: New file.
3977         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
3978         with seekable stdin.
3979         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
3980         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
3981         (gl_REPLACE_FSEEKO): New macro.
3982         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
3983         * modules/fseeko (Files): Distribute fseeko.c.
3984         * modules/ftello (Files): Distribute ftello.c.
3985         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
3986         mode.
3987         * lib/ftello.c (rpl_ftello): New file.
3988         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
3989         fseeko, ftello.
3990         (gl_STDIN_LARGE_OFFSET): New macro.
3991         * modules/stdio (Makefile.am): Perform the replacement.
3992         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
3993
3994 2007-05-23  Bruno Haible  <bruno@clisp.org>
3995
3996         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
3997         GNULIB_POSIXCHECK is defined.
3998
3999 2007-05-21  Bruno Haible  <bruno@clisp.org>
4000
4001         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
4002         Check also the output for NaN arguments. When cross-compiling, guess
4003         no on IRIX.
4004         * lib/vasnprintf.c: Update comments.
4005         * tests/test-vasnprintf-posix.c (strisnan): New function.
4006         (test_function): Use it.
4007         * tests/test-vasprintf-posix.c (strisnan): New function.
4008         (test_function): Use it.
4009         * tests/test-snprintf-posix.h (strisnan): New function.
4010         (test_function): Use it.
4011         * tests/test-sprintf-posix.h (strisnan): New function.
4012         (test_function): Use it.
4013         Reported by Eric Blake.
4014
4015 2007-05-20  Bruno Haible  <bruno@clisp.org>
4016
4017         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
4018         numbers that fails on BeOS.
4019         * doc/functions/frexpl.texi: Update.
4020
4021 2007-05-20  Jim Meyering  <jim@meyering.net>
4022
4023         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
4024         forced upon us by glibc-2.6.
4025
4026 2007-05-20  Bruno Haible  <bruno@clisp.org>
4027
4028         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
4029         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
4030         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
4031         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
4032         NEED_PRINTF_INFINITE.
4033         (is_infinitel): New function.
4034         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
4035         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
4036         gl_PREREQ_VASNPRINTF_INFINITE.
4037         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
4038         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4039         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
4040         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
4041         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
4042         gl_PREREQ_VASNPRINTF_INFINITE.
4043         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4044         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4045         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4046         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4047         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4048         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4049         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4050         * doc/functions/fprintf.texi: Update.
4051         * doc/functions/printf.texi: Update.
4052         * doc/functions/snprintf.texi: Update.
4053         * doc/functions/sprintf.texi: Update.
4054         * doc/functions/vfprintf.texi: Update.
4055         * doc/functions/vprintf.texi: Update.
4056         * doc/functions/vsnprintf.texi: Update.
4057         * doc/functions/vsprintf.texi: Update.
4058
4059 2007-05-20  Bruno Haible  <bruno@clisp.org>
4060
4061         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
4062         was not found in libc.
4063         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
4064
4065 2007-05-20  Bruno Haible  <bruno@clisp.org>
4066
4067         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4068         printed as "-nan" instead of "nan".
4069         * tests/test-vasprintf-posix.c (test_function): Likewise.
4070         * tests/test-snprintf-posix.h (test_function): Likewise.
4071         * tests/test-sprintf-posix.h (test_function): Likewise.
4072         Needed for HP-UX 11.
4073
4074 2007-05-20  Jim Meyering  <jim@meyering.net>
4075
4076         Fix buggy test for the fchownat-deref bug.
4077         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
4078         symlink required for the run-test.  Without it, this test would
4079         always declare that fchownat doesn't work, and client code would
4080         unnecessarily use the replacement function with fixed libc.
4081         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
4082         Reported by Greg Schafer.
4083
4084 2007-05-19  Bruno Haible  <bruno@clisp.org>
4085
4086         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
4087         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
4088         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
4089         Needed for IRIX 6.5 and Solaris 2.5.1.
4090
4091 2007-05-19  Bruno Haible  <bruno@clisp.org>
4092
4093         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
4094         (test_function): Skip tests involving -0.0 on platforms where
4095         -0.0 = 0.0.
4096         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
4097         (test_function): Skip tests involving -0.0 on platforms where
4098         -0.0 = 0.0.
4099         * tests/test-snprintf-posix.h (have_minus_zero): New function.
4100         (test_function): Skip tests involving -0.0 on platforms where
4101         -0.0 = 0.0.
4102         * tests/test-sprintf-posix.h (have_minus_zero): New function.
4103         (test_function): Skip tests involving -0.0 on platforms where
4104         -0.0 = 0.0.
4105         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
4106         tests.
4107         * tests/test-printf-posix.h (test_function): Likewise.
4108         * tests/test-printf-posix.output: Remove all -0.0 related results.
4109         Needed for IRIX 6.5.
4110
4111 2007-05-19  Bruno Haible  <bruno@clisp.org>
4112
4113         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4114         printed as "nan0x7fffffff" instead of "nan".
4115         * tests/test-vasprintf-posix.c (test_function): Likewise.
4116         * tests/test-snprintf-posix.h (test_function): Likewise.
4117         * tests/test-sprintf-posix.h (test_function): Likewise.
4118         * tests/test-fprintf-posix.h (NaN): Remove macro.
4119         (test_function): Remove all NaN related tests.
4120         * tests/test-printf-posix.h (NaN): Remove macro.
4121         (test_function): Remove all NaN related tests.
4122         * tests/test-printf-posix.output: Remove all NaN related results.
4123         Needed for IRIX 6.5.
4124
4125 2007-05-19  Bruno Haible  <bruno@clisp.org>
4126
4127         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
4128         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
4129
4130 2007-05-19  Bruno Haible  <bruno@clisp.org>
4131
4132         * lib/float_.h: New file.
4133         * m4/float_h.m4: New file.
4134         * modules/float: New file.
4135         * modules/isnanl (Dependencies): Add float.
4136         * modules/isnanl-nolibm (Dependencies): Likewise.
4137         * modules/mathl (Dependencies): Likewise.
4138         * modules/printf-frexpl (Dependencies): Likewise.
4139         * modules/signbit (Dependencies): Likewise.
4140         * modules/vasnprintf (Dependencies): Likewise.
4141         * doc/headers/float.texi: Update.
4142
4143 2007-05-19  Jim Meyering  <jim@meyering.net>
4144
4145         * lib/utimens.c (gl_futimens): Rename from futimens,
4146         now that glibc-2.6 declares futimens.
4147         * lib/utimens.h: Likewise.
4148
4149 2007-05-19  Bruno Haible  <bruno@clisp.org>
4150
4151         Avoid test failures on mingw.
4152         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
4153         * tests/test-printf-posix.sh: Likewise.
4154         * tests/test-vfprintf-posix.sh: Likewise.
4155         * tests/test-vprintf-posix.sh: Likewise.
4156
4157 2007-05-19  Bruno Haible  <bruno@clisp.org>
4158
4159         Fix *printf result for NaN, Inf, -0.0 on mingw.
4160         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
4161         * lib/vasnprintf.c: Include math.h and isnan.h.
4162         (is_infinite_or_zero): New function.
4163         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
4164         values in the %f, %F, %e, %E, %g, %G directives.
4165         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
4166         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4167         gl_PRINTF_INFINITE and test its result. Invoke
4168         gl_PREREQ_VASNPRINTF_INFINITE.
4169         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4170         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4171         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4172         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4173         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4174         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4175         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4176         * doc/functions/fprintf.texi: Update.
4177         * doc/functions/printf.texi: Update.
4178         * doc/functions/snprintf.texi: Update.
4179         * doc/functions/sprintf.texi: Update.
4180         * doc/functions/vfprintf.texi: Update.
4181         * doc/functions/vprintf.texi: Update.
4182         * doc/functions/vsnprintf.texi: Update.
4183         * doc/functions/vsprintf.texi: Update.
4184
4185 2007-05-19  Bruno Haible  <bruno@clisp.org>
4186
4187         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
4188         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
4189         Instead of multiplying with 10^k, set extra_zeroes to k.
4190         (scale10_round_long_double): Remove function.
4191
4192 2007-05-18  Bruno Haible  <bruno@clisp.org>
4193
4194         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
4195         introduced on 2007-05-06.
4196
4197 2007-05-18  Bruno Haible  <bruno@clisp.org>
4198
4199         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
4200         %g directives.
4201         * tests/test-vasprintf-posix.c (test_function): Likewise.
4202         * tests/test-snprintf-posix.h (test_function): Likewise.
4203         * tests/test-sprintf-posix.h (test_function): Likewise.
4204
4205 2007-05-18  Bruno Haible  <bruno@clisp.org>
4206
4207         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
4208         (strmatch): New function.
4209         (test_function): Test the %f directive on numbers of various exponents.
4210         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
4211         (strmatch): New function.
4212         (test_function): Test the %f directive on numbers of various exponents.
4213         * tests/test-snprintf-posix.h (strmatch): New function.
4214         (test_function): Test the %f directive on numbers of various exponents.
4215         * tests/test-sprintf-posix.h (strmatch): New function.
4216         (test_function): Test the %f directive on numbers of various exponents.
4217         * tests/test-snprintf-posix.c (SIZEOF): New macro.
4218         * tests/test-sprintf-posix.c (SIZEOF): New macro.
4219         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
4220         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
4221
4222 2007-05-18  Bruno Haible  <bruno@clisp.org>
4223
4224         Add support for 'long double' number output.
4225         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
4226         * lib/vasnprintf.c: Include math.h and float+.h.
4227         (mp_limb_t): New type.
4228         (GMP_LIMB_BITS): New macro.
4229         (mp_twolimb_t): New type.
4230         (GMP_TWOLIMB_BITS): New macro.
4231         (mpn_t): New type.
4232         (multiply, divide, convert_to_decimal, decode_long_double,
4233         scale10_round_long_double, scale10_round_decimal_long_double,
4234         floorlog10l): New functions.
4235         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
4236         for the %f, %F, %e, %E, %g, %G directives.
4237         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
4238         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4239         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
4240         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
4241         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4242         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4243         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4244         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4245         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4246         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4247         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4248         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
4249         * modules/snprintf-posix (Depends-on): Likewise.
4250         * modules/sprintf-posix (Depends-on): Likewise.
4251         * modules/vasnprintf-posix (Depends-on): Likewise.
4252         * modules/vasprintf-posix (Depends-on): Likewise.
4253         * modules/vfprintf-posix (Depends-on): Likewise.
4254         * modules/vsnprintf-posix (Depends-on): Likewise.
4255         * modules/vsprintf-posix (Depends-on): Likewise.
4256         * modules/vasnprintf (Files): Add lib/float+.h.
4257         * doc/functions/fprintf.texi: Update.
4258         * doc/functions/printf.texi: Update.
4259         * doc/functions/snprintf.texi: Update.
4260         * doc/functions/sprintf.texi: Update.
4261         * doc/functions/vfprintf.texi: Update.
4262         * doc/functions/vprintf.texi: Update.
4263         * doc/functions/vsnprintf.texi: Update.
4264         * doc/functions/vsprintf.texi: Update.
4265
4266 2007-05-18  Bruno Haible  <bruno@clisp.org>
4267
4268         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
4269
4270 2007-05-18  Bruno Haible  <bruno@clisp.org>
4271
4272         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
4273         for printing 64-bit integers. Needed for mingw.
4274
4275 2007-05-18  Bruno Haible  <bruno@clisp.org>
4276
4277         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
4278         gl_FUNC_FREXPL_WORKS.
4279         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
4280
4281 2007-05-18  Bruno Haible  <bruno@clisp.org>
4282
4283         * modules/frexpl-nolibm-tests: New file.
4284
4285         * modules/frexpl-nolibm: New file.
4286         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
4287
4288 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
4289
4290         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
4291         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
4292         GCC 4.2, which otherwise issues a lot of warnings.
4293         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
4294         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
4295         Likewise.
4296         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
4297         * modules/iconv_open (iconv.h): Likewise.
4298         * modules/locale (locale.h): Likewise.
4299         * modules/netinet_in (netinet/in.h): Likewise.
4300         * modules/sys_select (sys_select.h): Likewise.
4301         * modules/sys_socket (sys/socket.h): Likewise.
4302         * modules/sys_stat (sys/stat.h): Likewise.
4303         * modules/sysexits (sysexits.h): Likewise.
4304         * modules/unistd (unistd.h): Likewise.
4305
4306 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4307
4308         * modules/closein-tests (Makefile.am): Distribute
4309         `test-closein.sh'.
4310
4311 2007-05-17  Bruno Haible  <bruno@clisp.org>
4312
4313         * tests/test-printf-posix.output: Renamed from
4314         tests/test-fprintf-posix.out.
4315         * modules/fprintf-posix-tests: Update.
4316         * modules/printf-posix-tests: Update.
4317         * modules/vfprintf-posix-tests: Update.
4318         * modules/vprintf-posix-tests: Update.
4319         * tests/test-fprintf-posix.sh: Update.
4320         * tests/test-printf-posix.sh: Update.
4321         * tests/test-vfprintf-posix.sh: Update.
4322         * tests/test-vprintf-posix.sh: Update.
4323         Reported by Ralf Wildenhues.
4324
4325 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
4326
4327         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
4328         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
4329         GCC 4.2, which otherwise issues a lot of warnings.
4330         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
4331         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
4332         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
4333         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
4334         it should no longer be needed.
4335         * lib/string_.h: Likewise.
4336         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
4337         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
4338         * modules/inttypes (inttypes.h): Likewise.
4339         * modules/math (math.h): Likewise.
4340         * modules/search (search.h): Likewise.
4341         * modules/signal (signal.h): Likewise.
4342         * modules/stdint (stdint.h): Likewise.
4343         * modules/stdio (stdio.h): Likewise.
4344         * modules/stdlib (stdlib.h): Likewise.
4345         * modules/string (string.h): Likewise.
4346         * modules/sys_time (sys/time.h): Likewise.
4347         * modules/time (time.h): Likewise.
4348         * modules/wchar (wchar.h): Likewise.
4349         * modules/wctype (wtype.h): Likewise.
4350
4351 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
4352
4353         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
4354
4355 2007-05-13  Bruno Haible  <bruno@clisp.org>
4356
4357         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
4358         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
4359         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
4360         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
4361         (gl_PREREQ_STRTOK_R): Don't require it here.
4362
4363 2007-05-13  Bruno Haible  <bruno@clisp.org>
4364
4365         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
4366         when used in C++ mode.
4367
4368 2007-05-12  Bruno Haible  <bruno@clisp.org>
4369
4370         * lib/linebuffer.h: Tweak doc.
4371         * lib/linebuffer.c: Likewise.
4372
4373 2007-05-12  James Youngman  <jay@gnu.org>
4374
4375         * lib/linebuffer.c (readlinebuffer_delim): New function,
4376         like readlinebuffer, but use a caller-specified delimiter.
4377         (readlinebuffer): Just call readlinebuffer_delim with '\n'
4378         as the delimiter.
4379         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
4380
4381 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
4382
4383         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
4384         * modules/openat (Files): Remove openat-die.c.
4385         (Depends-on): Add openat-die.
4386         * modules/openat-die: New module.
4387
4388 2007-05-06  Bruno Haible  <bruno@clisp.org>
4389
4390         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
4391         Update with info about Cygwin.
4392         * doc/functions/fprintf.texi: Update.
4393         * doc/functions/printf.texi: Update.
4394         * doc/functions/snprintf.texi: Update.
4395         * doc/functions/sprintf.texi: Update.
4396         * doc/functions/vfprintf.texi: Update.
4397         * doc/functions/vprintf.texi: Update.
4398         * doc/functions/vsnprintf.texi: Update.
4399         * doc/functions/vsprintf.texi: Update.
4400         Reported by Eric Blake.
4401
4402 2007-05-06  Bruno Haible  <bruno@clisp.org>
4403
4404         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
4405         padding ourselves for the floating-point directives.
4406         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
4407         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
4408         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4409         gl_PRINTF_FLAG_ZERO and test its result. Invoke
4410         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
4411         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4412         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
4413         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4414         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4415         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4416         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4417         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4418         * tests/test-snprintf-posix.h (test_function): Also check the width
4419         and some flags in the %f directive.
4420         * tests/test-sprintf-posix.h (test_function): Likewise.
4421         * tests/test-vasnprintf-posix.c (test_function): Likewise.
4422         * tests/test-vasprintf-posix.c (test_function): Likewise.
4423         * doc/functions/fprintf.texi: Update.
4424         * doc/functions/printf.texi: Update.
4425         * doc/functions/snprintf.texi: Update.
4426         * doc/functions/sprintf.texi: Update.
4427         * doc/functions/vfprintf.texi: Update.
4428         * doc/functions/vprintf.texi: Update.
4429         * doc/functions/vsnprintf.texi: Update.
4430         * doc/functions/vsprintf.texi: Update.
4431
4432 2007-05-06  Bruno Haible  <bruno@clisp.org>
4433
4434         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
4435         pass the ' flag character to sprintf or snprintf.
4436         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
4437         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
4438         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4439         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
4440         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
4441         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4442         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
4443         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4444         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4445         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4446         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4447         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4448         * tests/test-snprintf-posix.h (test_function): Also check the grouping
4449         flag.
4450         * tests/test-sprintf-posix.h (test_function): Likewise.
4451         * tests/test-vasnprintf-posix.c (test_function): Likewise.
4452         * tests/test-vasprintf-posix.c (test_function): Likewise.
4453         * doc/functions/fprintf.texi: Update.
4454         * doc/functions/printf.texi: Update.
4455         * doc/functions/snprintf.texi: Update.
4456         * doc/functions/sprintf.texi: Update.
4457         * doc/functions/vfprintf.texi: Update.
4458         * doc/functions/vprintf.texi: Update.
4459         * doc/functions/vsnprintf.texi: Update.
4460         * doc/functions/vsprintf.texi: Update.
4461
4462 2007-05-01  Bruno Haible  <bruno@clisp.org>
4463
4464         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
4465
4466 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4467
4468         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
4469         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
4470
4471 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4472
4473         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
4474         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
4475         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
4476
4477 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
4478
4479         * lib/argp-help.c (struct hol_entry): New member `ord'.
4480         (HOL_ENTRY_PTRCMP): Use ord for comparison
4481         (hol_sort): Initialize ord.
4482
4483 2007-05-01  Bruno Haible  <bruno@clisp.org>
4484
4485         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
4486         Reported by Eric Blake.
4487         * doc/gnulib.texi (Function Substitutes): Update.
4488
4489 2007-05-01  Bruno Haible  <bruno@clisp.org>
4490
4491         * doc/functions.texi: Remove file, now redundant through
4492         doc/functions/*.texi.
4493
4494 2007-05-01  Bruno Haible  <bruno@clisp.org>
4495
4496         * modules/argp (Depends-on): Add sleep.
4497
4498 2007-05-01  Bruno Haible  <bruno@clisp.org>
4499
4500         * modules/sleep-tests: New file.
4501         * tests/test-sleep.c: New file.
4502
4503         * modules/sleep: New file.
4504         * lib/sleep.c: New file.
4505         * m4/sleep.m4: New file.
4506         * lib/unistd_.h (sleep): New declaration.
4507         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
4508         HAVE_SLEEP.
4509         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
4510         * doc/functions/sleep.texi: Document the sleep module.
4511
4512 2007-05-01  Bruno Haible  <bruno@clisp.org>
4513
4514         * lib/sigprocmask.h: Remove file.
4515         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
4516         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
4517         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
4518         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
4519         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
4520         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
4521         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
4522         HAVE_SIGSET_T as a shell variable.
4523         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
4524         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
4525         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
4526         (Depends-on): Add signal. Remove verify.
4527         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
4528         (Include): Mention <signal.h> instead of sigprocmask.h.
4529         * NEWS: Mention the change.
4530         * lib/fatal-signal.c: Don't include sigprocmask.h.
4531
4532 2007-05-01  Bruno Haible  <bruno@clisp.org>
4533
4534         * modules/signal: New file.
4535         * lib/signal_.h: New file.
4536         * m4/signal_h.m4: New file.
4537
4538 2007-05-01  Bruno Haible  <bruno@clisp.org>
4539
4540         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
4541         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
4542         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
4543         HAVE_WCTYPE_CTMP_BUG into wctype.h.
4544
4545 2007-05-01  Bruno Haible  <bruno@clisp.org>
4546
4547         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
4548         configure time.
4549         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
4550         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
4551         * modules/sys_stat (Makefile.am): Substitute their values into
4552         sys/stat.h.
4553
4554 2007-05-01  Bruno Haible  <bruno@clisp.org>
4555
4556         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
4557         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
4558         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
4559
4560 2007-05-01  Bruno Haible  <bruno@clisp.org>
4561
4562         * doc/header/assert.texi: Undo last change: don't mention the gnulib
4563         'assert' module here.
4564
4565 2007-05-01  Bruno Haible  <bruno@clisp.org>
4566
4567         * doc/functions/*.texi: New files.
4568         * doc/functions/google-ranking.txt: New file.
4569         * doc/gnulib.texi (Function Substitutes): New chapter.
4570         (ctime, inet_ntoa): Remove sections.
4571         * doc/ctime.texi: Remove file.
4572         * doc/inet_ntoa.texi: Remove file.
4573         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
4574         dependencies.
4575         (%.info): New rule, specifying a --reference-limit.
4576
4577 2007-05-01  Bruno Haible  <bruno@clisp.org>
4578
4579         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
4580
4581 2007-05-01  Bruno Haible  <bruno@clisp.org>
4582
4583         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
4584         the portability of 'mkdir' to mingw systems.
4585
4586 2007-05-01  Bruno Haible  <bruno@clisp.org>
4587
4588         * doc/headers/google-ranking.txt: New file.
4589
4590 2007-04-30  Eric Blake  <ebb9@byu.net>
4591
4592         Prefer fseeko to fseek.
4593         * modules/getpass (Depends-on): Add fseeko.
4594         * lib/getpass.c (getpass): Use fseeko, not fseek.
4595
4596 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
4597
4598         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
4599         assumes the sorting is stable, while most qsort implementations
4600         are not.  Use argument addresses to ensure they never compare as
4601         equal.
4602
4603         * tests/test-argp-2.sh (usage-indent test): Fix output
4604         (func_compare): Restore diff options
4605         * tests/test-argp.c: Restore #include "progname.h"
4606
4607 2007-04-29  Bruno Haible  <bruno@clisp.org>
4608
4609         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
4610         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4611         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
4612         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4613         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
4614         (configure.ac): Define CHECK_SNPRINTF_POSIX.
4615         (TESTS, check_PROGRAMS): Add test-snprintf.
4616         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
4617         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
4618         (TESTS, check_PROGRAMS): Add test-vsnprintf.
4619         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
4620         assertions that fail on HP-UX, OSF/1, or IRIX.
4621         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
4622
4623 2007-04-29  Bruno Haible  <bruno@clisp.org>
4624
4625         * MODULES.html.sh (posix_functions): Remove 'contents'.
4626
4627 2007-04-29  Karl Berry  <karl@gnu.org>
4628
4629         * config/srclist.txt (gendocs_template_min): new entry.
4630
4631 2007-04-29  Bruno Haible  <bruno@clisp.org>
4632
4633         Work around fpurge bug on BSD systems.
4634         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
4635         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
4636         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
4637         fpurge to rpl_fpurge if the system already has this function.
4638         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
4639         the case where the system already has this function. Correct invariants
4640         on BSD systems.
4641         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
4642         BSD systems.
4643
4644 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
4645
4646         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
4647         proposed by Sven Verdoolaege.
4648
4649         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
4650         options.
4651         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
4652         (usage and help tests): Update
4653
4654 2007-04-29  Bruno Haible  <bruno@clisp.org>
4655
4656         * tests/test-fflush.c (main): Use a file of size 17, not 10.
4657         Print more information in case of failure. Disable a test on BeOS.
4658
4659 2007-04-29  Bruno Haible  <bruno@clisp.org>
4660
4661         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
4662         This helps debugging on systems on which no gdb is available.
4663
4664 2007-04-29  Bruno Haible  <bruno@clisp.org>
4665
4666         * lib/freading.h: Improve comments.
4667         * lib/fwriting.h: Likewise.
4668         * tests/test-freading.c (main): Don't check freading immediately after
4669         repositioning. Needed for glibc.
4670
4671 2007-04-29  Bruno Haible  <bruno@clisp.org>
4672
4673         * lib/freading.c (freading): Trivial simplification.
4674
4675 2007-04-28  Bruno Haible  <bruno@clisp.org>
4676
4677         * tests/test-fwriting.c (main): Also test the interaction between
4678         fflush and fwriting.
4679         * modules/fwriting-tests (Depends-on): Add fflush.
4680
4681         * tests/test-freading.c (main): Also test the interaction between
4682         fflush and freading.
4683         * modules/freading-tests (Depends-on): Add fflush.
4684
4685 2007-04-28  Bruno Haible  <bruno@clisp.org>
4686
4687         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
4688         fseeko and ftello.
4689         Suggested by Eric Blake.
4690
4691 2007-04-28  Jim Meyering  <jim@meyering.net>
4692
4693         Avoid false-negative in gl_STDINT_H's C99 conformance test.
4694         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
4695         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
4696
4697 2007-04-27  Eric Blake  <ebb9@byu.net>
4698
4699         * doc/headers/assert.texi (assert.h): Document assert module use.
4700
4701 2007-04-27  Bruno Haible  <bruno@clisp.org>
4702
4703         * doc/headers/*.texi: New files.
4704         * doc/gnulib.texi (Header File Substitutes): New chapter.
4705         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
4706         dependencies.
4707         (standards.info ,standards.html, standards.dvi): Update dependencies.
4708         (mostlyclean, clean): New targets.
4709
4710 2007-04-27  Bruno Haible  <bruno@clisp.org>
4711
4712         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
4713         * modules/sysexits (Files, Makefile.am): Update.
4714
4715         * lib/sys_socket_.h: Renamed from lib/socket_.h.
4716         * modules/sys_socket (Files, Makefile.am): Update.
4717
4718         * lib/sys_stat_.h: Renamed from lib/stat_.h.
4719         * modules/sys_stat (Files, Makefile.am): Update.
4720
4721 2007-04-27  Eric Blake  <ebb9@byu.net>
4722
4723         * lib/freading.h: Improve comments.
4724         * lib/fwriting.h: Likewise.
4725         * lib/fflush.c: Likewise.
4726
4727         Fix closein for mingw.
4728         * modules/closein-tests: Add tests for closein.
4729         * tests/test-closein.c: New file.
4730         * tests/test-closein.sh: Likewise.
4731         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
4732         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
4733
4734 2007-04-27  Bruno Haible  <bruno@clisp.org>
4735
4736         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
4737         version is < 6.
4738         * lib/math_.h [__DECC]: Likewise.
4739         * lib/stdio_.h [__DECC]: Likewise.
4740         * lib/stdlib_.h [__DECC]: Likewise.
4741         * lib/string_.h [__DECC]: Likewise.
4742         * lib/time_.h [__DECC]: Likewise.
4743         * lib/wchar_.h [__DECC]: Likewise.
4744         * lib/wctype_.h [__DECC]: Likewise.
4745
4746 2007-04-27  Bruno Haible  <bruno@clisp.org>
4747
4748         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
4749
4750 2007-04-27  Bruno Haible  <bruno@clisp.org>
4751
4752         * lib/fflush.c: Add comments.
4753         * modules/fpurge-tests (Depends-on): Add fflush.
4754         * modules/freadable-tests (Depends-on): Likewise.
4755         * modules/fwritable-tests (Depends-on): Likewise.
4756
4757 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
4758
4759         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
4760         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
4761         Report by Bruno Haible <bruno@clisp.org>.
4762
4763 2007-04-26  Eric Blake  <ebb9@byu.net>
4764
4765         Fix fflush on mingw.
4766         * modules/fflush (Depends-on): Add freading.
4767         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
4768         but unread data.
4769
4770 2007-04-26  Eric Blake  <ebb9@byu.net>
4771         and Bruno Haible  <bruno@clisp.org>
4772
4773         Implement freading and fwriting.
4774         * lib/freading.c: New file.
4775         * lib/freading.h: Likewise.
4776         * m4/freading.m4: Likewise.
4777         * modules/freading: Likewise.
4778         * modules/freading-tests: Likewise.
4779         * tests/test-freading.c: Likewise.
4780         * lib/fwriting.c: New file.
4781         * lib/fwriting.h: Likewise.
4782         * m4/fwriting.m4: Likewise.
4783         * modules/fwriting: Likewise.
4784         * modules/fwriting-tests: Likewise.
4785         * tests/test-fwriting.c: Likewise.
4786         * MODULES.html.sh (File stream based Input/Output): Mention them.
4787
4788 2007-04-26  Bruno Haible  <bruno@clisp.org>
4789
4790         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
4791         'long' when we assume it.
4792         Suggested by Eric Blake.
4793
4794 2007-04-26  Bruno Haible  <bruno@clisp.org>
4795
4796         Ensure fseeko, ftello are declared on glibc systems.
4797         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
4798         * modules/fseeko (configure.ac-early): Likewise.
4799         * modules/ftello (configure.ac-early): Likewise.
4800         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
4801         AC_FUNC_FSEEKO for this.
4802         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
4803         (gl_CHECK_FSEEKO): Remove macro.
4804
4805 2007-04-26  Bruno Haible  <bruno@clisp.org>
4806
4807         * tests/test-fflush.c (main): Also check the ftell result after
4808         fflush and fseek/fseeko.
4809         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
4810         file descriptor position cache in the stream.
4811         * lib/fseeko.c (rpl_fseeko): Likewise.
4812
4813 2007-04-26  Bruno Haible  <bruno@clisp.org>
4814
4815         * modules/fflush-tests (Depends-on): Add fseeko.
4816
4817 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
4818             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4819
4820         * lib/argz_.h: ensure error_t definition is obtained in same
4821         mechanism system argz.h would have.
4822         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
4823         argz facilities are known bad.  Err on the side of caution if
4824         cross-compiling.
4825
4826 2007-04-25  Eric Blake  <ebb9@byu.net>
4827
4828         * lib/fpurge.c (includes): Use stdlib.h for free.
4829         * tests/test-fflush.c (main): Also test fflush-fseeko.
4830
4831 2007-04-25  Bruno Haible  <bruno@clisp.org>
4832
4833         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
4834         * lib/fseeko.c: New file.
4835         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
4836         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
4837         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
4838         gl_FUNC_FSEEKO.
4839         (gl_FUNC_FSEEKO): Invoke it.
4840         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
4841         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
4842         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
4843
4844 2007-04-25  Bruno Haible  <bruno@clisp.org>
4845
4846         * modules/fflush (Depends-on): Add ftello.
4847
4848 2007-04-25  Bruno Haible  <bruno@clisp.org>
4849
4850         * modules/ftello-tests: New file.
4851         * tests/test-ftello.c: New file.
4852
4853         * modules/ftello: New file.
4854         * m4/ftello.m4: New file.
4855         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
4856         HAVE_FTELLO.
4857         * lib/stdio_.h (ftello): New declaration.
4858         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
4859         HAVE_FTELLO.
4860
4861 2007-04-25  Bruno Haible  <bruno@clisp.org>
4862
4863         * modules/fseeko-tests: New file.
4864         * tests/test-fseeko.c: New file.
4865
4866         * modules/fseeko: New file.
4867         * m4/fseeko.m4: New file.
4868         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
4869         HAVE_FSEEKO.
4870         * lib/stdio_.h (fseeko): New declaration.
4871         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
4872         HAVE_FSEEKO.
4873
4874 2007-04-25  Bruno Haible  <bruno@clisp.org>
4875
4876         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
4877
4878 2007-04-25  Bruno Haible  <bruno@clisp.org>
4879
4880         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
4881         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
4882         * tests/test-unistd.c: Likewise.
4883         * tests/test-fcntl.c: Likewise.
4884
4885 2007-04-23  Eric Blake  <ebb9@byu.net>
4886
4887         * lib/fflush.c: Fix missing include.
4888         Reported by Bruno Haible.
4889
4890 2007-04-23  Bruno Haible  <bruno@clisp.org>
4891
4892         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
4893         Reported by Eric Blake.
4894
4895 2007-04-23  Bruno Haible  <bruno@clisp.org>
4896
4897         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
4898
4899 2007-04-23  Bruno Haible  <bruno@clisp.org>
4900
4901         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
4902
4903 2007-04-23  Bruno Haible  <bruno@clisp.org>
4904
4905         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
4906         Needed on HP-UX 11.
4907
4908 2007-04-16  Eric Blake  <ebb9@byu.net>
4909
4910         Make fflush rely on fpurge.
4911         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
4912         open coding all variants.
4913         * modules/fflush (Depends-on): Add fpurge and unistd.
4914         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
4915         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
4916
4917         Fix --with-tests compilation on cygwin.
4918         * modules/argmatch-tests (Makefile.am): List gnulib library first
4919         in LDADD.
4920         * modules/argp-tests (Makefile.am): Likewise.
4921         * modules/array-list-tests (Makefile.am): Likewise.
4922         * modules/array-oset-tests (Makefile.am): Likewise.
4923         * modules/avltree-list-tests (Makefile.am): Likewise.
4924         * modules/avltree-oset-tests (Makefile.am): Likewise.
4925         * modules/avltreehash-list-tests (Makefile.am): Likewise.
4926         * modules/carray-list-tests (Makefile.am): Likewise.
4927         * modules/dirname-tests (Makefile.am): Likewise.
4928         * modules/frexp-tests (Makefile.am): Likewise.
4929         * modules/isnanl-tests (Makefile.am): Likewise.
4930         * modules/linked-list-tests (Makefile.am): Likewise.
4931         * modules/linkedhash-list-tests (Makefile.am): Likewise.
4932         * modules/lock-tests (Makefile.am): Likewise.
4933         * modules/rbtree-list-tests (Makefile.am): Likewise.
4934         * modules/rbtree-oset-tests (Makefile.am): Likewise.
4935         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
4936         * modules/tls-tests (Makefile.am): Likewise.
4937         * modules/tsearch-tests (Makefile.am): Likewise.
4938         * modules/xvasprintf-tests (Makefile.am): Likewise.
4939
4940         Fix fpurge for cygwin.
4941         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
4942         value.
4943         * modules/fpurge-tests (Depends-on): Clean up trash.
4944
4945 2007-04-16  Simon Josefsson  <simon@josefsson.org>
4946
4947         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
4948
4949         * m4/autobuild.m4: Re-indent.
4950
4951 2007-04-13  Bruno Haible  <bruno@clisp.org>
4952
4953         * modules/fpurge-tests: New file.
4954         * tests/test-fpurge.c: New file.
4955
4956         * modules/fpurge: New file.
4957         * lib/fpurge.h: New file.
4958         * lib/fpurge.c: New file.
4959         * m4/fpurge.m4: New file.
4960
4961 2007-04-13  Bruno Haible  <bruno@clisp.org>
4962
4963         * modules/fbufmode-tests: New file.
4964         * tests/test-fbufmode.c: New file.
4965
4966         * modules/fbufmode: New file.
4967         * lib/fbufmode.h: New file.
4968         * lib/fbufmode.c: New file.
4969         * m4/fbufmode.m4: New file.
4970
4971 2007-04-13  Bruno Haible  <bruno@clisp.org>
4972
4973         * modules/fwritable-tests: New file.
4974         * tests/test-fwritable.c: New file.
4975
4976         * modules/fwritable: New file.
4977         * lib/fwritable.h: New file.
4978         * lib/fwritable.c: New file.
4979         * m4/fwritable.m4: New file.
4980
4981 2007-04-13  Bruno Haible  <bruno@clisp.org>
4982
4983         * modules/freadable-tests: New file.
4984         * tests/test-freadable.c: New file.
4985
4986         * modules/freadable: New file.
4987         * lib/freadable.h: New file.
4988         * lib/freadable.c: New file.
4989         * m4/freadable.m4: New file.
4990
4991 2007-04-13  Bruno Haible  <bruno@clisp.org>
4992
4993         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
4994         MOSTLYCLEANFILES.
4995
4996 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
4997
4998         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
4999         gzip bootstrap.conf to avoid dragging in i18n machinery.
5000         (gnulib_tool_option): Use it.
5001
5002 2007-04-13  Bruno Haible  <bruno@clisp.org>
5003
5004         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
5005         %F directives.
5006         * tests/test-vasprintf-posix.c (test_function): Likewise.
5007         * tests/test-snprintf-posix.h (test_function): Likewise.
5008         * tests/test-sprintf-posix.h (test_function): Likewise.
5009         * tests/test-fprintf-posix.h (test_function): Likewise.
5010         * tests/test-printf-posix.h (test_function): Likewise.
5011         * tests/test-fprintf-posix.out: Likewise.
5012
5013 2007-04-13  Bruno Haible  <bruno@clisp.org>
5014
5015         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
5016         * modules/tls-tests (configure.ac): Likewise.
5017         Reported by Arto C. Nirkko <anirkko@insel.ch>.
5018
5019 2007-04-13  Bruno Haible  <bruno@clisp.org>
5020
5021         * lib/tls.c (glthread_tls_get): Fix return type.
5022         Patch by Arto C. Nirkko <anirkko@insel.ch>.
5023
5024 2007-04-12  Eric Blake  <ebb9@byu.net>
5025
5026         * modules/gettime (Depends-on): Remove gettime.
5027         Reported by Dmitry V. Levin.
5028
5029 2007-04-12  Bruno Haible  <bruno@clisp.org>
5030
5031         * modules/fflush (Include): Mention <stdio.h>.
5032         * modules/strtoimax (Include): Mention <inttypes.h>.
5033         * modules/strtoumax (Include): Likewise.
5034
5035 2007-04-12  Eric Blake  <ebb9@byu.net>
5036
5037         * .cvsignore: New file.
5038         * .gitignore: Likewise.
5039
5040 2007-04-12  Bruno Haible  <bruno@clisp.org>
5041
5042         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
5043         not before, since $(LDADD) often contains libgnu.a.
5044         * modules/striconv-tests (test_striconv_LDADD): Likewise.
5045         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
5046         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
5047         Needed on Cygwin.
5048
5049 2007-04-12  Eric Blake  <ebb9@byu.net>
5050
5051         Work around glibc's failure to flush stdin on fclose.
5052         * lib/closein.c (close_stdin): Flush stdin before closing.
5053
5054         Work around glibc's failure to reset seekable stdin on exit.
5055         * modules/closein: New module.
5056         * lib/closein.c: New file.
5057         * lib/closein.h: Likewise.
5058         * m4/closein.m4: Likewise.
5059         * MODULES.html.sh (File stream based Input/Output): Document it.
5060
5061 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5062
5063         * gnulib-tool: Rename generated 'autobuild' script to
5064         'do-autobuild' in --create-megatestdir output.
5065
5066         * doc/gnulib.texi (Build robot for gnulib): Fix.
5067
5068 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5069
5070         * modules/sysexits (Depends-on): Add absolute-header.
5071
5072 2007-04-12  Eric Blake  <ebb9@byu.net>
5073
5074         No need to preserve errno on success.
5075         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
5076         Reported by Bruno Haible.
5077
5078 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5079
5080         * MODULES.html.sh (Support for maintaining and releasing
5081         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
5082
5083 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5084
5085         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
5086
5087 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5088
5089         * modules/autobuild: New module.
5090
5091         * m4/autobuild.m4: New file.
5092
5093 2007-04-11  Bruno Haible  <bruno@clisp.org>
5094
5095         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
5096         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
5097         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
5098         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
5099         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5100         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5101         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5102         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5103         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5104         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5105         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
5106         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5107         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5108         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
5109         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5110         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5111         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
5112         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5113         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5114         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
5115         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5116         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5117         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
5118         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5119         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5120         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
5121         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5122         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5123         Reported by Eric Blake.
5124
5125 2007-04-11  Bruno Haible  <bruno@clisp.org>
5126
5127         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
5128
5129 2007-04-10  Bruno Haible  <bruno@clisp.org>
5130
5131         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
5132         for NaN and Infinity. Needed on FreeBSD 6.1.
5133         * tests/test-vasnprintf-posix.c (test_function): Undo last change
5134         regarding results for "%010a" of Infinity and NaN.
5135         * tests/test-vasprintf-posix.c (test_function): Likewise.
5136         * tests/test-snprintf-posix.h (test_function): Likewise.
5137         * tests/test-sprintf-posix.h (test_function): Likewise.
5138         * tests/test-fprintf-posix.h (test_function): Likewise.
5139         * tests/test-printf-posix.h (test_function): Likewise.
5140         * tests/test-fprintf-posix.out: Likewise.
5141
5142 2007-04-10  Bruno Haible  <bruno@clisp.org>
5143
5144         * modules/locale-tests: New file.
5145         * tests/test-locale.c: New file.
5146
5147         * modules/locale: New file.
5148         * lib/locale_.h: New file.
5149         * m4/locale_h.m4: New file.
5150
5151 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
5152             Bruno Haible  <bruno@clisp.org>
5153
5154         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
5155         be determined, test for availability of the copysignf, copysign,
5156         copysignl functions.
5157         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
5158         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
5159         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
5160
5161 2007-04-09  Eric Blake  <ebb9@byu.net>
5162
5163         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
5164         * modules/stdio (Makefile.am): Support fflush.
5165         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
5166         * modules/fflush: New file.
5167         * lib/fflush.c: Likewise.
5168         * m4/fflush.m4: Likewise.
5169         * modules/fflush-tests: New test.
5170         * tests/test-fflush.c: Likewise.
5171         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
5172
5173 2007-04-06  Bruno Haible  <bruno@clisp.org>
5174
5175         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
5176         (VASNPRINTF): Use signbit for faster determination whether to print a
5177         minus sign.
5178         * modules/vasnprintf (Files): Remove lib/float+.h.
5179         * modules/fprintf-posix (Depends-on): Add signbit.
5180         * modules/snprintf-posix (Depends-on): Likewise.
5181         * modules/sprintf-posix (Depends-on): Likewise.
5182         * modules/vasnprintf-posix (Depends-on): Likewise.
5183         * modules/vasprintf-posix (Depends-on): Likewise.
5184         * modules/vfprintf-posix (Depends-on): Likewise.
5185         * modules/vsnprintf-posix (Depends-on): Likewise.
5186         * modules/vsprintf-posix (Depends-on): Likewise.
5187
5188 2007-04-06  Bruno Haible  <bruno@clisp.org>
5189
5190         * tests/test-frexp.c (main): Test also the sign bit of zero results.
5191         * tests/test-frexpl.c (main): Likewise.
5192         * tests/test-ldexpl.c (main): Likewise.
5193         * modules/frexp-tests (Depends-on): Add signbit.
5194         * modules/frexpl-tests (Depdends-on): Likewise.
5195         * modules/ldexpl-tests (Depdends-on): Likewise.
5196
5197 2007-04-06  Bruno Haible  <bruno@clisp.org>
5198
5199         * modules/signbit-tests: New file.
5200         * tests/test-signbit.c: New file.
5201
5202         * modules/signbit: New file.
5203         * lib/signbitf.c: New file.
5204         * lib/signbitd.c: New file.
5205         * lib/signbitl.c: New file.
5206         * m4/signbit.m4: New file.
5207         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
5208         (signbit): New macro.
5209         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
5210         REPLACE_SIGNBIT.
5211         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
5212         REPLACE_FREXPL into math.h.
5213
5214 2007-04-06  Bruno Haible  <bruno@clisp.org>
5215
5216         * modules/isnanf-nolibm-tests: New file.
5217         * tests/test-isnanf.c: New file.
5218
5219         * modules/isnanf-nolibm: New file.
5220         * lib/isnanf.h: New file.
5221         * lib/isnanf.c: New file.
5222         * lib/isnan.c: Consider the USE_FLOAT macro.
5223         * m4/isnanf.m4: New file.
5224
5225 2007-04-06  Bruno Haible  <bruno@clisp.org>
5226
5227         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
5228         (Link): New section.
5229
5230         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
5231
5232 2007-04-06  Bruno Haible  <bruno@clisp.org>
5233
5234         Assume the 'long double' type.
5235         * m4/longdouble.m4: Remove file.
5236         * config/srclist.txt: Don't mention longdouble.m4.
5237         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
5238         * lib/float+.h: Likewise.
5239         * lib/frexp.c: Likewise.
5240         * lib/printf-args.h: Likewise.
5241         * lib/printf-args.c: Likewise.
5242         * lib/printf-frexp.c: Likewise.
5243         * lib/printf-parse.c: Likewise.
5244         * lib/vasnprintf.c: Likewise.
5245         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
5246         * m4/intl.m4: Likewise.
5247         * m4/isnanl.m4: Likewise.
5248         * m4/printf.m4: Likewise.
5249         * m4/printf-frexpl.m4: Likewise.
5250         * m4/vasnprintf.m4: Likewise.
5251         * modules/allocsa (Files): Remove m4/longdouble.m4.
5252         * modules/gettext (Files): Likewise.
5253         * modules/relocatable-prog-wrapper (Files): Likewise.
5254         * modules/vasnprintf (Files): Likewise.
5255         * modules/isnanl (Files): Likewise.
5256         (Include): Simplify.
5257         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
5258         (Include): Simplify.
5259         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
5260         (Include): Simplify.
5261         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
5262         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5263         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
5264         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5265         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
5266         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5267         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
5268         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5269         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
5270         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5271         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
5272         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5273         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
5274         * tests/test-isnanl.c: Likewise.
5275         * tests/test-snprintf-posix.h: Likewise.
5276         * tests/test-sprintf-posix.h: Likewise.
5277         * tests/test-vasnprintf-posix.c: Likewise.
5278         * tests/test-vasnprintf-posix2.c: Likewise.
5279         * tests/test-vasprintf-posix.c: Likewise.
5280
5281 2007-04-06  Bruno Haible  <bruno@clisp.org>
5282
5283         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
5284         * lib/math_.h [__DECC]: Include the overridden include file through
5285         #include_next, outside the double-inclusion guard.
5286         * lib/stdio_.h [__DECC]: Likewise.
5287         * lib/stdlib_.h [__DECC]: Likewise.
5288         * lib/string_.h [__DECC]: Likewise.
5289         * lib/time_.h [__DECC]: Likewise.
5290         * lib/wchar_.h [__DECC]: Likewise.
5291         * lib/wctype_.h [__DECC]: Likewise.
5292         * lib/inttypes_.h [__DECC]: Likewise.
5293         Reported by Albert Chin <china@thewrittenword.com> in
5294         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
5295
5296 2007-04-04  Eric Blake  <ebb9@byu.net>
5297
5298         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
5299         1.5.x.
5300
5301 2007-04-04  Bruno Haible  <bruno@clisp.org>
5302
5303         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
5304         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
5305
5306 2007-04-04  Bruno Haible  <bruno@clisp.org>
5307
5308         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
5309         results for "%010a" of Infinity and NaN.
5310         * tests/test-vasprintf-posix.c (test_function): Likewise.
5311         * tests/test-snprintf-posix.h (test_function): Likewise.
5312         * tests/test-sprintf-posix.h (test_function): Likewise.
5313         * tests/test-fprintf-posix.h (test_function): Remove these tests.
5314         * tests/test-printf-posix.h (test_function): Likewise.
5315         * tests/test-fprintf-posix.out: Update.
5316         Needed for FreeBSD 6.1.
5317
5318 2007-04-04  Bruno Haible  <bruno@clisp.org>
5319
5320         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
5321         directly used by the gnulib modules nor by gnulib-tool.
5322
5323 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
5324
5325         * DEPENDENCIES: Give overall description of version dependency
5326         desirability.  Use more-typical names for apps.
5327         Add shell, coreutils, diffutils, grep, tar, gzip.
5328
5329 2007-04-04  Simon Josefsson  <simon@josefsson.org>
5330
5331         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
5332
5333 2007-04-04  Karl Berry  <karl@gnu.org>
5334
5335         * MODULES.html.sh (func_module): missing '.
5336
5337 2007-04-03  Bruno Haible  <bruno@clisp.org>
5338
5339         * modules/argmatch-tests (Makefile.am): New variable
5340         test_argmatch_LDADD.
5341         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
5342         * modules/array-list-tests (Makefile.am): New variable
5343         test_array_list_LDADD.
5344         * modules/array-oset-tests (Makefile.am): New variable
5345         test_array_oset_LDADD.
5346         * modules/avltree-list-tests (Makefile.am): New variable
5347         test_avltree_list_LDADD.
5348         * modules/avltree-oset-tests (Makefile.am): New variable
5349         test_avltree_oset_LDADD.
5350         * modules/avltreehash-list-tests (Makefile.am): New variable
5351         test_avltreehash_list_LDADD.
5352         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
5353         test_canonicalize_lgpl_LDADD.
5354         * modules/carray-list-tests (Makefile.am): New variable
5355         test_carray_list_LDADD.
5356         * modules/dirname-tests (Makefile.am): New variable
5357         test_dirname_LDADD.
5358         * modules/linked-list-tests (Makefile.am): New variable
5359         test_linked_list_LDADD.
5360         * modules/linkedhash-list-tests (Makefile.am): New variable
5361         test_linkedhash_list_LDADD.
5362         * modules/rbtree-list-tests (Makefile.am): New variable
5363         test_rbtree_list_LDADD.
5364         * modules/rbtree-oset-tests (Makefile.am): New variable
5365         test_rbtree_oset_LDADD.
5366         * modules/rbtreehash-list-tests (Makefile.am): New variable
5367         test_rbtreehash_list_LDADD.
5368         * modules/xvasprintf-tests (Makefile.am): New variable
5369         test_xvasprintf_LDADD.
5370         Reported by Eric Blake.
5371
5372 2007-04-03  Eric Blake  <ebb9@byu.net>
5373
5374         * DEPENDENCIES: Weaken m4 requirements.
5375
5376 2007-04-03  Bruno Haible  <bruno@clisp.org>
5377
5378         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
5379         * modules/isnanl-tests (configure.ac): Likewise.
5380
5381 2007-04-03  Ben Pfaff  <blp@gnu.org>
5382
5383         * modules/iconv_open: Add $(srcdir)/ to source directory
5384         references in Makefile fragments that call gperf, to fix VPATH
5385         builds.
5386
5387 2007-04-03  Bruno Haible  <bruno@clisp.org>
5388
5389         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
5390         * lib/ldexpl.c: Undo last change.
5391
5392 2007-04-03  Bruno Haible  <bruno@clisp.org>
5393
5394         * modules/printf-frexpl (Depends-on): Undo last change.
5395         (Files): Add m4/ldexpl.m4.
5396
5397 2007-04-03  Bruno Haible  <bruno@clisp.org>
5398
5399         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
5400         * modules/isnanl (Link): New section.
5401
5402         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
5403         * modules/frexp (Link): New section.
5404
5405         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
5406         * modules/frexpl (Link): New section.
5407
5408         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
5409         * modules/ldexpl (Link): New section.
5410
5411 2007-04-03  Bruno Haible  <bruno@clisp.org>
5412
5413         * modules/TEMPLATE-EXTENDED: New file.
5414         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
5415
5416 2007-04-03  Bruno Haible  <bruno@clisp.org>
5417
5418         * DEPENDENCIES: New file.
5419         Suggested by Simon Josefsson.
5420
5421 2007-04-03  Bruno Haible  <bruno@clisp.org>
5422
5423         * doc/gnulib.texi: Escape @.
5424
5425 2007-04-03  James Youngman  <jay@gnu.org>
5426         and Paul Eggert  <eggert@cs.ucla.edu>
5427
5428         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
5429         birthtime on all systems that have birthtime, not just those which
5430         use st_birthtimensec rather than st_birthtim.  Putting zero in
5431         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
5432         that the birth time is not available for files on an NFS mount.
5433
5434 2007-04-03  Simon Josefsson  <simon@josefsson.org>
5435
5436         * modules/memxor: Move back from crypto/, suggested by Bruno.
5437         * modules/crypto/hmac-sha1: Fix memxor dependency.
5438
5439         * modules/crypto/gc: Moved from ../.
5440
5441 2007-04-02  Eric Blake  <ebb9@byu.net>
5442
5443         * lib/ldexpl.c (includes): Avoid libm.
5444
5445         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
5446
5447 2007-04-02  Bruno Haible  <bruno@clisp.org>
5448
5449         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
5450         on IRIX.
5451
5452 2007-04-02  Bruno Haible  <bruno@clisp.org>
5453
5454         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
5455         x86 or x86_64 platforms running MacOS X.
5456         Reported by Ryan Schmidt <@ryandesign.com>.
5457
5458 2007-04-02  Bruno Haible  <bruno@clisp.org>
5459
5460         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
5461         i386.
5462
5463 2007-04-01  Simon Josefsson  <simon@josefsson.org>
5464
5465         * modules/crypto/arcfour: Moved from ../.
5466         * modules/crypto/arcfour-tests: Moved from ../.
5467         * modules/crypto/arctwo: Moved from ../.
5468         * modules/crypto/arctwo-tests: Moved from ../.
5469         * modules/crypto/des: Moved from ../.
5470         * modules/crypto/des-tests: Moved from ../.
5471         * modules/crypto/gc-arcfour: Moved from ../.
5472         * modules/crypto/gc-arcfour-tests: Moved from ../.
5473         * modules/crypto/gc-arctwo: Moved from ../.
5474         * modules/crypto/gc-arctwo-tests: Moved from ../.
5475         * modules/crypto/gc-des: Moved from ../.
5476         * modules/crypto/gc-des-tests: Moved from ../.
5477         * modules/crypto/gc-hmac-md5: Moved from ../.
5478         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
5479         * modules/crypto/gc-hmac-sha1: Moved from ../.
5480         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
5481         * modules/crypto/gc-md2: Moved from ../.
5482         * modules/crypto/gc-md2-tests: Moved from ../.
5483         * modules/crypto/gc-md4: Moved from ../.
5484         * modules/crypto/gc-md4-tests: Moved from ../.
5485         * modules/crypto/gc-md5: Moved from ../.
5486         * modules/crypto/gc-md5-tests: Moved from ../.
5487         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
5488         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
5489         * modules/crypto/gc-random: Moved from ../.
5490         * modules/crypto/gc-rijndael: Moved from ../.
5491         * modules/crypto/gc-rijndael-tests: Moved from ../.
5492         * modules/crypto/gc-sha1: Moved from ../.
5493         * modules/crypto/gc-sha1-tests: Moved from ../.
5494         * modules/crypto/gc-tests: Moved from ../.
5495         * modules/crypto/hmac-md5: Moved from ../.
5496         * modules/crypto/hmac-md5-tests: Moved from ../.
5497         * modules/crypto/hmac-sha1: Moved from ../.
5498         * modules/crypto/hmac-sha1-tests: Moved from ../.
5499         * modules/crypto/md2: Moved from ../.
5500         * modules/crypto/md2-tests: Moved from ../.
5501         * modules/crypto/md4: Moved from ../.
5502         * modules/crypto/md4-tests: Moved from ../.
5503         * modules/crypto/md5: Moved from ../.
5504         * modules/crypto/md5-tests: Moved from ../.
5505         * modules/crypto/memxor: Moved from ../.
5506         * modules/crypto/rijndael: Moved from ../.
5507         * modules/crypto/rijndael-tests: Moved from ../.
5508         * modules/crypto/sha1: Moved from ../.
5509
5510 2007-03-30  James Youngman  <jay@gnu.org>
5511
5512         * tests/test-stat-time.c (prepare_test): use chmod() rather than
5513         rename() to change the ctime of a file (because ctime is unaffected
5514         by rename on jfs2 on AIX 5.1).
5515         (main): Start by doing cleanup, in case a previous run failed leaving
5516         test files behind.
5517
5518 2007-03-31  Bruno Haible  <bruno@clisp.org>
5519
5520         Support old proprietary implementations of iconv.
5521         * modules/iconv_open: New file.
5522         * lib/iconv_.h: New file.
5523         * m4/iconv_h.m4: New file.
5524         * lib/iconv_open.c: New file.
5525         * lib/iconv_open-aix.gperf: New file.
5526         * lib/iconv_open-hpux.gperf: New file.
5527         * lib/iconv_open-irix.gperf: New file.
5528         * lib/iconv_open-osf.gperf: New file.
5529         * m4/iconv_open.m4: New file.
5530         * modules/linebreak (Depends-on): Add iconv_open.
5531         * modules/striconv (Depends-on): Likewise.
5532         * modules/striconveh (Depends-on): Likewise.
5533         * modules/unicodeio (Depends-on): Likewise.
5534         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
5535         (iconv_t)(-1).
5536         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
5537         conversion if cd is (iconv_t)(-1).
5538         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
5539         is not possible.
5540
5541 2007-03-31  Bruno Haible  <bruno@clisp.org>
5542
5543         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
5544         work on Solaris either. Protect also second use of "autodetect_jp".
5545
5546 2007-03-31  Bruno Haible  <bruno@clisp.org>
5547
5548         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
5549         the function is not present.
5550
5551 2007-03-31  Bruno Haible  <bruno@clisp.org>
5552
5553         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
5554         the function is not present.
5555
5556 2007-03-31  Bruno Haible  <bruno@clisp.org>
5557
5558         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
5559         a bug in HP-UX iconv_open().
5560
5561 2007-03-31  Bruno Haible  <bruno@clisp.org>
5562
5563         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
5564         (Mathematics <math.h>): New section, add fpieee.
5565         (Input/output <stdio.h>): Add fseterr.
5566         (Mathematics <math.h>): New section, add printf-frexp.
5567         (Container data structures): Add sublist.
5568         (Core language properties): Add fpucw, inline.
5569         (Functions for greatest-width integer types <inttypes.h>): Add
5570         imaxabs, imaxdiv, inttypes.
5571         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
5572         isnanl-nolibm, ldexp.
5573         (Mathematics <math.h>): New section, add printf-frexpl.
5574         (Support for systems lacking POSIX:2001): Add fprintf-posix,
5575         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
5576         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
5577         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
5578         (Unicode string functions): Add unistr/u*-mbtoucr.
5579         (Java): Add javacomp-script, javaexec-script.
5580         (C#): Add csharpcomp-script, csharpexec-script.
5581         (Support for building libraries and executables): Add havelib,
5582         relocatable-*.
5583         (Support for maintaining and releasing projects): Renamed from
5584         'Support for maintaining and release projects'. Add announce-gen.
5585
5586 2007-03-31  Bruno Haible  <bruno@clisp.org>
5587
5588         * README: Talk primarily about git.
5589         (git and CVS): Renamed from CVS.
5590         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
5591         gnulib is available through git.
5592         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
5593
5594 2007-03-30  Bruno Haible  <bruno@clisp.org>
5595
5596         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
5597         * lib/poll_.h: Likewise.
5598         * lib/stat_.h: Likewise.
5599         * lib/sys_time_.h: Likewise.
5600         * lib/sysexit_.h: Likewise.
5601         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
5602         * lib/stdbool_.h: Likewise.
5603         * lib/byteswap_.h: Add double-inclusion guard.
5604
5605 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
5606
5607         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
5608
5609 2007-03-30  Karl Berry  <karl@gnu.org>
5610
5611         * config/srclist-update: double space after USA in the license
5612         substitution, since that's how it's usually (?) written.
5613
5614 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
5615
5616         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
5617         reported by Bruno Haible.
5618
5619 2007-03-29  Bruno Haible  <bruno@clisp.org>
5620
5621         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
5622         a bug in AIX iconv().
5623
5624 2007-03-29  Bruno Haible  <bruno@clisp.org>
5625
5626         * modules/ldexpl-tests: New file.
5627         * tests/test-ldexpl.c: New file.
5628
5629 2007-03-29  Bruno Haible  <bruno@clisp.org>
5630
5631         * lib/ldexpl.c: Include fpucw.h.
5632         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
5633         multiplication.
5634         * modules/ldexpl (Depends-on): Add fpucw.
5635
5636 2007-03-29  Bruno Haible  <bruno@clisp.org>
5637
5638         * modules/ldexpl: New file.
5639         * m4/ldexpl.m4: New file.
5640         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
5641         set.
5642         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
5643         REPLACE_LDEXPL.
5644         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
5645         REPLACE_LDEXPL.
5646         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
5647         gl_FUNC_LDEXPL_WORKS.
5648         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
5649         * modules/mathl (Files): Remove lib/ldexpl.c.
5650         (Depends-on): Add ldexpl.
5651
5652 2007-03-29  Bruno Haible  <bruno@clisp.org>
5653
5654         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
5655
5656 2007-03-29  Bruno Haible  <bruno@clisp.org>
5657
5658         * tests/test-striconveh.c (main): Don't assume that a direct conversion
5659         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
5660         and possibly also HP-UX.
5661         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
5662         work on AIX, IRIX, HP-UX, OSF/1.
5663         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
5664         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
5665         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
5666         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
5667         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
5668         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
5669
5670 2007-03-29  Bruno Haible  <bruno@clisp.org>
5671
5672         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
5673
5674 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5675
5676         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
5677         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
5678
5679 2007-03-29  Eric Blake  <ebb9@byu.net>
5680
5681         * lib/acl-internal.h: Remove redundant include.
5682         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
5683         Cygwin when a file is locked.
5684
5685 2007-03-29  Bruno Haible  <bruno@clisp.org>
5686
5687         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
5688         file.
5689         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
5690
5691 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
5692
5693         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
5694         try to remove a parent directory if the child couldn't be removed
5695         (except for the first rmdir, which could fail because the child
5696         doesn't exist).  Problem reported by Jeff Blaine in
5697         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
5698
5699 2007-03-28  Bruno Haible  <bruno@clisp.org>
5700
5701         * lib/striconveh.c (utf8conv_carefully): New function.
5702         (mem_cd_iconveh_internal): Invoke it.
5703
5704 2007-03-28  Bruno Haible  <bruno@clisp.org>
5705
5706         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
5707         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
5708         input.
5709         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
5710         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
5711         unistr/u8-uctomb.
5712
5713 2007-03-28  Bruno Haible  <bruno@clisp.org>
5714
5715         * modules/unistr/u8-mbtoucr: New file.
5716         * lib/unistr/u8-mbtoucr.c: New file.
5717         * modules/unistr/u16-mbtoucr: New file.
5718         * lib/unistr/u16-mbtoucr.c: New file.
5719         * modules/unistr/u16-mbtoucr: New file.
5720         * lib/unistr/u16-mbtoucr.c: New file.
5721         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
5722
5723 2007-03-27  Simon Josefsson  <simon@josefsson.org>
5724             Bruno Haible  <bruno@clisp.org>
5725
5726         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
5727         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
5728         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
5729
5730         * m4/stdio_h.m4: Add stubs for vasprintf too.
5731
5732         * modules/stdio: Support vasprintf in sed command.
5733
5734         * modules/vasprintf: Depend on stdio for prototypes.  Remove
5735         vasprintf.h.  Add stdio module indicator.
5736
5737         * lib/stdio_.h: Declare asprintf and vasprintf, based on
5738         vasprintf.h.
5739
5740         * lib/vasprintf.h: File removed.
5741
5742         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
5743         * lib/vasprintf.c: Ditto.
5744         * lib/xvasprintf.c: Ditto.
5745         * tests/test-vasprintf-posix.c: Ditto.
5746         * tests/test-vasprintf.c: Ditto.
5747
5748 2007-03-27  Bruno Haible  <bruno@clisp.org>
5749
5750         Make vasnprintf multithread-safe.
5751         * lib/vasnprintf.c (decimal_point_char): New function.
5752         (VASNPRINTF): Use it.
5753         Suggested by Simon Josefsson.
5754
5755 2007-03-27  Eric Blake  <ebb9@byu.net>
5756
5757         Support sub-second birthtime on cygwin.
5758         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
5759         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
5760         (get_stat_birthtime): Also work with st_birthtim.
5761
5762 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
5763
5764         * lib/stat-time.h (USE_BIRTHTIME): Remove.
5765         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
5766         (get_stat_birthtime_ns): Do not try to use "spare" fields.
5767         (get_stat_birthtime_ns): Simplify compile-time tests.
5768         (get_stat_birthtime): Change the API to look like
5769         get_stat_mtime etc., except return a negative tv_nsec on error.
5770         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
5771         Don't check for "spare" fields.
5772         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
5773         or for struct stat.st_birthtime, as these tests aren't used.
5774         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
5775
5776 2007-03-27  Bruno Haible  <bruno@clisp.org>
5777
5778         * lib/stat-time.h: Include <sys/stat.h>.
5779
5780 2007-03-27  James Youngman  <jay@gnu.org>
5781
5782         * lib/stat-time.h (get_stat_birthtime): New function for
5783           retrieving st_birthtime as provided by UFS2 (hence *BSD).
5784         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
5785           and its variants.
5786         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
5787         * modules/stat-time-test: New file.
5788         * tests/test-stat-time.c: New test, devised by Bruno Haible.
5789
5790 2007-03-26  Bruno Haible  <bruno@clisp.org>
5791
5792         Better support of signalling NaNs.
5793         * lib/atanl.c: Include isnanl.h.
5794         (atanl): Perform test for NaN at the beginning of the function and
5795         through a call to isnanl.
5796         * lib/cosl.c: Include isnanl.h.
5797         (cosl): Perform test for NaN at the beginning of the function and
5798         through a call to isnanl.
5799         * lib/ldexpl.c: Include isnanl.h.
5800         (ldexpl): Perform test for NaN through a call to isnanl.
5801         * lib/logl.c: Include isnanl.h.
5802         (logl): Perform test for NaN at the beginning of the function and
5803         through a call to isnanl.
5804         * lib/sinl.c: Include isnanl.h.
5805         (sinl): Perform test for NaN at the beginning of the function and
5806         through a call to isnanl.
5807         * lib/sqrtl.c: Include isnanl.h.
5808         (sqrtl): Perform test for NaN at the beginning of the function and
5809         through a call to isnanl.
5810         * lib/tanl.c: Include isnanl.h.
5811         (tanl): Perform test for NaN at the beginning of the function and
5812         through a call to isnanl.
5813         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
5814         * modules/mathl (Depends-on): Add isnanl.
5815
5816 2007-03-26  Eric Blake  <ebb9@byu.net>
5817
5818         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
5819         regression in logic sense of previous patch.
5820
5821 2007-03-26  Bruno Haible  <bruno@clisp.org>
5822
5823         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
5824         unportable shell command "if ! ...".
5825         Reported by Ralf Wildenhues.
5826
5827 2007-03-25  Bruno Haible  <bruno@clisp.org>
5828
5829         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
5830         <sysexits.h> file, and only add EX_CONFIG.
5831         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
5832         absolute file name and whether it is sufficient. Substitute also
5833         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
5834         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
5835         ABSOLUTE_SYSEXITS_H into sysexits.h.
5836
5837 2007-03-25  Bruno Haible  <bruno@clisp.org>
5838
5839         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
5840         hints is NULL.
5841
5842 2007-03-25  Bruno Haible  <bruno@clisp.org>
5843
5844         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
5845         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
5846
5847 2007-03-25  Bruno Haible  <bruno@clisp.org>
5848
5849         * lib/vasnprintf.c: Include langinfo.h.
5850         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
5851         multithread-safe.
5852         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
5853         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
5854         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5855         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5856         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5857         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5858         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5859         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
5860         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5861         Reported by Simon Josefsson.
5862
5863 2007-03-25  Bruno Haible  <bruno@clisp.org>
5864
5865         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
5866         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
5867         * modules/vasnprintf (Depends-on): Add stdint.
5868
5869 2007-03-25  Bruno Haible  <bruno@clisp.org>
5870
5871         * modules/fpieee: New file.
5872         * m4/fpieee.m4: New file.
5873         * modules/isnan-nolibm (Depends-on): Add fpieee.
5874         * modules/isnanl-nolibm (Depends-on): Add fpieee.
5875         * modules/isnanl (Depends-on): Add fpieee.
5876
5877 2007-03-25  Bruno Haible  <bruno@clisp.org>
5878
5879         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
5880
5881 2007-03-25  Bruno Haible  <bruno@clisp.org>
5882
5883         Avoid test failures on IRIX 6.5.
5884         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
5885         (main): Use it.
5886         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
5887         macros.
5888         (main): Use them.
5889
5890 2007-03-25  Bruno Haible  <bruno@clisp.org>
5891
5892         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
5893         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
5894         exists but doesn't work.
5895         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
5896         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
5897         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
5898         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
5899
5900 2007-03-25  Bruno Haible  <bruno@clisp.org>
5901
5902         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
5903         returns inf. Needed on IRIX 6.5.
5904
5905 2007-03-25  Bruno Haible  <bruno@clisp.org>
5906
5907         * tests/test-frexpl.c: Include isnanl-nolibm.h.
5908         (main): Use isnanl instead of x != x idiom.
5909         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
5910
5911         * tests/test-frexp.c: Include isnan.h.
5912         (main): Use isnan instead of x != x idiom.
5913         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
5914
5915 2007-03-25  Bruno Haible  <bruno@clisp.org>
5916
5917         * tests/test-frexp.c (NaN): New function/macro.
5918         (main): Use it instead of 0.0 / 0.0.
5919         * tests/test-isnan.c (NaN): New function/macro.
5920         (main): Use it instead of 0.0 / 0.0.
5921         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
5922         (test_function): Use it instead of 0.0 / 0.0.
5923         * tests/test-vasprintf-posix.c (NaN): New function/macro.
5924         (test_function): Use it instead of 0.0 / 0.0.
5925         * tests/test-snprintf-posix.h (NaN): New function/macro.
5926         (test_function): Use it instead of 0.0 / 0.0.
5927         * tests/test-sprintf-posix.h (NaN): New function/macro.
5928         (test_function): Use it instead of 0.0 / 0.0.
5929         * tests/test-fprintf-posix.h (NaN): New function/macro.
5930         (test_function): Use it instead of 0.0 / 0.0.
5931         * tests/test-printf-posix.h (NaN): New function/macro.
5932         (test_function): Use it instead of 0.0 / 0.0.
5933
5934         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
5935
5936 2007-03-25  Bruno Haible  <bruno@clisp.org>
5937
5938         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
5939
5940 2007-03-25  Bruno Haible  <bruno@clisp.org>
5941
5942         * lib/regexec.c (merge_state_with_log): Make static.
5943
5944 2007-03-25  Bruno Haible  <bruno@clisp.org>
5945
5946         * lib/trigl.c (kernel_rem_pio2): Make static.
5947
5948 2007-03-25  Bruno Haible  <bruno@clisp.org>
5949
5950         * lib/sincosl.c (sincosl_table): Make static.
5951
5952 2007-03-25  Bruno Haible  <bruno@clisp.org>
5953
5954         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
5955         if the compiler does not support C99.
5956
5957 2007-03-25  Bruno Haible  <bruno@clisp.org>
5958
5959         * modules/time (Makefile.am): Ensure all rule action lines start with a
5960         tab.
5961
5962 2007-03-24  Bruno Haible  <bruno@clisp.org>
5963
5964         * modules/tsearch-tests: New file.
5965         * tests/test-tsearch.sh: New file.
5966         * tests/test-tsearch.c: New file, mostly copied from glibc.
5967
5968         * modules/search-tests: New file.
5969         * tests/test-search.c: New file.
5970
5971         * modules/search: New file.
5972         * lib/search_.h: New file, incorporating lib/tsearch.h.
5973         * m4/search_h.m4: New file.
5974         * lib/tsearch.h: Remove file.
5975         * lib/tsearch.c: Include search.h instead of tsearch.h.
5976         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
5977         HAVE_TSEARCH.
5978         * modules/tsearch (Files): Remove lib/tsearch.h.
5979         (Depends-on): Add search.
5980         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
5981         (Include): Change tsearch.h into search.h.
5982
5983 2007-03-24  Bruno Haible  <bruno@clisp.org>
5984
5985         * modules/fpucw: New file.
5986         * lib/fpucw.h: New file.
5987         * lib/frexp.c: Include fpucw.h.
5988         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
5989         (FUNC): Use them.
5990         * lib/printf-frexp.c: Include fpucw.h.
5991         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
5992         (FUNC): Use them.
5993         * lib/vasnprintf.c: Include fpucw.h.
5994         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
5995         'long double' calculations.
5996         * tests/test-frexpl.c: Include fpucw.h.
5997         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
5998         * tests/test-printf-frexpl.c: Include fpucw.h.
5999         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
6000         * modules/frexpl (Depends-on): Add fpucw.
6001         * modules/printf-frexpl (Depends-on): Likewise.
6002         * modules/fprintf-posix (Depends-on): Likewise.
6003         * modules/snprintf-posix (Depends-on): Likewise.
6004         * modules/sprintf-posix (Depends-on): Likewise.
6005         * modules/vasnprintf-posix (Depends-on): Likewise.
6006         * modules/vasprintf-posix (Depends-on): Likewise.
6007         * modules/vfprintf-posix (Depends-on): Likewise.
6008         * modules/vsnprintf-posix (Depends-on): Likewise.
6009         * modules/vsprintf-posix (Depends-on): Likewise.
6010         * modules/frexpl-tests (Depends-on): Likewise.
6011         * modules/printf-frexpl-tests (Depends-on): Likewise.
6012
6013 2007-03-24  Bruno Haible  <bruno@clisp.org>
6014
6015         * lib/float+.h: New file.
6016         * lib/isnan.c: Include float+.h.
6017         (SIZE): New macro.
6018         (FUNC): Compare only SIZE bytes of the value.
6019         * lib/vasnprintf.c: Include float+.h.
6020         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
6021         SIZEOF_LDBL or SIZEOF_DBL bytes.
6022         * modules/isnan-nolibm (Files): Add lib/float+.h.
6023         * modules/isnanl-nolibm (Files): Add lib/float+.h.
6024         * modules/isnanl (Files): Add lib/float+.h.
6025         * modules/vasnprintf (Files): Add lib/float+.h.
6026
6027 2007-03-24  Bruno Haible  <bruno@clisp.org>
6028
6029         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
6030         include isnanl-nolibm.h.
6031
6032 2007-03-24  Bruno Haible  <bruno@clisp.org>
6033
6034         * tests/test-read-file.c (main): Don't produce spurious output for
6035         expected situations. Make the test fail if it encountered unexpected
6036         results.
6037
6038 2007-03-24  Bruno Haible  <bruno@clisp.org>
6039
6040         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
6041         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
6042
6043 2007-03-24  Bruno Haible  <bruno@clisp.org>
6044
6045         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
6046
6047 2007-03-24  Bruno Haible  <bruno@clisp.org>
6048
6049         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
6050         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
6051
6052         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
6053         * modules/utf8-ucs4: Turn into a symbolic link to module
6054         unistr/u8-mbtouc.
6055
6056         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
6057         utf8-ucs4-unsafe.
6058         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
6059         unistr/u8-mbtouc-unsafe.
6060
6061         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
6062         * modules/utf16-ucs4: Turn into a symbolic link to module
6063         unistr/u16-mbtouc.
6064
6065         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
6066         utf16-ucs4-unsafe.
6067         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
6068         unistr/u16-mbtouc-unsafe.
6069
6070         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
6071         * modules/ucs4-utf8: Turn into a symbolic link to module
6072         unistr/u8-ubtomb.
6073
6074         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
6075         * modules/ucs4-utf16: Turn into a symbolic link to module
6076         unistr/u16-ubtomb.
6077
6078 2007-03-24  Bruno Haible  <bruno@clisp.org>
6079
6080         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
6081         Enable the function only if HAVE_INLINE.
6082         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
6083         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6084         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
6085         Enable the function only if HAVE_INLINE.
6086         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
6087         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6088         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
6089         Enable the function only if HAVE_INLINE.
6090         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
6091         Enable the function only if HAVE_INLINE.
6092         * modules/utf8-ucs4: Update.
6093         * modules/utf8-ucs4-unsafe: Update.
6094         * modules/utf16-ucs4: Update.
6095         * modules/utf16-ucs4-unsafe: Update.
6096         * modules/ucs4-utf8: Update.
6097         * modules/ucs4-utf16: Update.
6098
6099 2007-03-24  Bruno Haible  <bruno@clisp.org>
6100
6101         * lib/utf8-ucs4.h: Remove file.
6102         * lib/utf8-ucs4-unsafe.h: Remove file.
6103         * lib/utf16-ucs4.h: Remove file.
6104         * lib/utf16-ucs4-unsafe.h: Remove file.
6105         * lib/ucs4-utf8.h: Remove file.
6106         * lib/ucs4-utf16.h: Remove file.
6107         * lib/unistr.h: Include their previous contents.
6108         * m4/utf-ucs4.m4: Remove file.
6109         * m4/ucs4-utf.m4: Remove file.
6110         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
6111         (Depends-on): Add unistr/base.
6112         (configure.ac): Remove gl_UTF_UCS4.
6113         (Makefile.am): Update.
6114         (Include): Change to unistr.h.
6115         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
6116         (Depends-on): Add unistr/base.
6117         (configure.ac): Remove gl_UTF_UCS4.
6118         (Makefile.am): Update.
6119         (Include): Change to unistr.h.
6120         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
6121         (Depends-on): Add unistr/base.
6122         (configure.ac): Remove gl_UTF_UCS4.
6123         (Makefile.am): Update.
6124         (Include): Change to unistr.h.
6125         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
6126         (Depends-on): Add unistr/base.
6127         (configure.ac): Remove gl_UTF_UCS4.
6128         (Makefile.am): Update.
6129         (Include): Change to unistr.h.
6130         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
6131         (Depends-on): Add unistr/base.
6132         (configure.ac): Remove gl_UCS4_UTF.
6133         (Makefile.am): Update.
6134         (Include): Change to unistr.h.
6135         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
6136         (Depends-on): Add unistr/base.
6137         (configure.ac): Remove gl_UCS4_UTF.
6138         (Makefile.am): Update.
6139         (Include): Change to unistr.h.
6140         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
6141         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
6142         utf8-ucs4-unsafe.h.
6143         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
6144         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
6145         utf16-ucs4-unsafe.h.
6146         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
6147         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
6148         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
6149         * lib/unistr/u8-strchr.c: Likewise.
6150         * lib/unistr/u8-strrchr.c: Likewise.
6151         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
6152         * lib/unistr/u16-strchr.c: Likewise.
6153         * lib/unistr/u16-strrchr.c: Likewise.
6154         * lib/striconveh.c: Update.
6155         * lib/linebreak.c: Update.
6156
6157 2007-03-24  Bruno Haible  <bruno@clisp.org>
6158
6159         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
6160         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
6161
6162 2007-03-22  Bruno Haible  <bruno@clisp.org>
6163
6164         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
6165
6166 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6167
6168         * MODULES.html.sh (File system functions): New module write-any-file.
6169         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
6170         * m4/write-any-file.m4: New files.
6171
6172 2007-03-23  Eric Blake  <ebb9@byu.net>
6173
6174         * gnulib-tool: Rearrange space-tab sequences, since some editors
6175         like to eat them.
6176
6177 2007-03-23  Eric Blake  <ebb9@byu.net>
6178
6179         * lib/version-etc.c (version_etc_va): Update license wording to
6180         be more concise.  Recommended by Richard Stallman.
6181
6182 2007-03-22  Bruno Haible  <bruno@clisp.org>
6183
6184         * lib/poll.c (MSG_PEEK): New fallback definition.
6185
6186 2007-03-22  Bruno Haible  <bruno@clisp.org>
6187
6188         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
6189         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
6190         (main): Update.
6191         Fixes a compilation error on BeOS.
6192
6193 2007-03-22  Bruno Haible  <bruno@clisp.org>
6194
6195         * modules/frexpl-tests: New file.
6196         * tests/test-frexpl.c: New file.
6197
6198         * modules/frexpl: New file.
6199         * m4/frexpl.m4: New file.
6200         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
6201         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
6202         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
6203         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
6204         (Depends-on): Add frexpl. Remove isnanl-nolibm.
6205         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
6206
6207 2007-03-22  Bruno Haible  <bruno@clisp.org>
6208
6209         * lib/frexpl.c: Share code with lib/frexp.c.
6210         * modules/mathl (Files): Add lib/frexp.c.
6211         (Depends-on): Add isnanl-nolibm.
6212
6213 2007-03-22  Bruno Haible  <bruno@clisp.org>
6214
6215         * modules/printf-frexp (Files): Add m4/frexp.m4.
6216         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
6217         only if the found frexp function actually works.
6218
6219 2007-03-22  Bruno Haible  <bruno@clisp.org>
6220
6221         * lib/frexp.c: Remove older implementation that uses divisions.
6222
6223 2007-03-21  Bruno Haible  <bruno@clisp.org>
6224
6225         * modules/frexp-tests: New file.
6226         * tests/test-frexp.c: New file.
6227
6228         * modules/frexp: New file.
6229         * lib/frexp.c: New file.
6230         * m4/frexp.m4: New file.
6231         * lib/math_.h (frexp): New declaration.
6232         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
6233         REPLACE_FREXP.
6234         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
6235
6236 2007-03-21  Bruno Haible  <bruno@clisp.org>
6237
6238         * modules/isnanl-tests: New file.
6239         * tests/test-isnanl.c: New file.
6240
6241         * modules/isnanl: New file.
6242         * lib/isnanl.h: New file.
6243         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
6244         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
6245         gl_FUNC_ISNANL_WORKS.
6246         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
6247         New macros.
6248
6249 2007-03-21  Bruno Haible  <bruno@clisp.org>
6250
6251         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
6252         lib/isnanl.h.
6253         (Include): Update.
6254         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
6255         * lib/vasnprintf.c: Update.
6256         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
6257         tests/test-isnanl.h, remove tests/test-isnanl.c.
6258         (Makefile.am): Update.
6259         * tests/test-isnanl-nolibm.c: New file.
6260         * tests/test-isnanl.h: New file.
6261         * tests/test-isnanl.c: Remove file.
6262
6263 2007-03-21  Jim Meyering  <jim@meyering.net>
6264
6265         When trying to open ".", treat ESTALE like EACCES.
6266         * lib/savewd.c (savewd_save): Resort to forking not just upon
6267         failure with EACCES, but also when errno is ESTALE.
6268
6269 2007-03-20  Bruno Haible  <bruno@clisp.org>
6270
6271         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
6272         Needed on AIX 5.1. Reported by Matthew Woehlke.
6273
6274 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6275
6276         Suggestions by Bruno Haible:
6277         * lib/acl-internal.h: Include "gettext.h" rather than rolling
6278         our own.
6279         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
6280         * modules/acl (Depends-on): Add gettext.
6281
6282 2007-03-19  Bruno Haible  <bruno@clisp.org>
6283
6284         * modules/iconvme: Remove file.
6285         * lib/iconvme.h: Remove file.
6286         * lib/iconvme.c: Remove file.
6287         * m4/iconvme.m4: Remove file.
6288
6289 2007-03-19  Bruno Haible  <bruno@clisp.org>
6290
6291         * doc/relocatable-maint.texi: Break long shell script line.
6292         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
6293
6294 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6295
6296         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
6297         handle file_has_acl.
6298         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
6299         * lib/acl.c: Move header inclusions and related macro defns into
6300         lib/acl-internal.h.
6301         (S_ISLNK): Remove defn, since that's now done for us.
6302         (file_has_acl): Move to lib/file-has-acl.c.
6303         Call acl_trivial if available.  This is the crucial part of the fix.
6304         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
6305         shared within the library.  Rewrite a bit, partly to make it compatible
6306         with the GNU coding style.
6307         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
6308         Remove unnecessary double-quotes.
6309         Don't test for acl_to_text; the build will catch that.
6310         Replace acl_entries if it doesn't exist and it is needed.
6311         Check for -lsec and acl_trivial (as used on Solaris 10).
6312         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
6313         lib/file-has-acl.c.
6314         (Depends-on): Add sys_stat, for S_ISLNK.
6315
6316 2007-03-19  Ben Pfaff  <blp@gnu.org>
6317
6318         * doc/gnulib.texi: Fix typos.
6319         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
6320
6321 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6322
6323         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
6324         If size is zero here, buf must be zero.
6325
6326 2007-03-19  Simon Josefsson  <simon@josefsson.org>
6327
6328         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
6329         <bruno@clisp.org>.
6330
6331 2007-03-18  Bruno Haible  <bruno@clisp.org>
6332
6333         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
6334         Suggested by Eric Blake.
6335
6336 2007-03-18  Ben Pfaff  <blp@gnu.org>
6337
6338         * doc/relocatable.texi: Recommend using as prefix a directory
6339         that does not exist and will never be created.  Based on
6340         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
6341         and others.
6342
6343 2007-03-17  Bruno Haible  <bruno@clisp.org>
6344
6345         * lib/fchownat.c: Include lchown.h.
6346
6347 2007-03-17  Bruno Haible  <bruno@clisp.org>
6348
6349         Fix endless loop when the given allocated size was > INT_MAX.
6350         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
6351         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
6352         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
6353         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
6354         * lib/sprintf.c (sprintf): Likewise.
6355
6356 2007-03-17  Bruno Haible  <bruno@clisp.org>
6357
6358         * tests/test-argp-2.sh (func_compare): Output a context diff.
6359
6360 2007-03-17  Bruno Haible  <bruno@clisp.org>
6361
6362         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
6363         locale's decimal-point character.
6364
6365 2007-03-17  Bruno Haible  <bruno@clisp.org>
6366
6367         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
6368         before comparing it. Needed because on some platforms (e.g. x86) a
6369         'long double' occupies less bytes than sizeof (long double).
6370
6371 2007-03-17  Bruno Haible  <bruno@clisp.org>
6372
6373         * tests/test-crc.c (main): Make printf statements 64-bit clean.
6374         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
6375         * tests/test-getaddrinfo.c (simple): Likewise.
6376         * tests/test-read-file.c (main): Likewise.
6377
6378 2007-03-17  Bruno Haible  <bruno@clisp.org>
6379
6380         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
6381
6382 2007-03-17  Bruno Haible  <bruno@clisp.org>
6383
6384         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
6385         unused variable.
6386
6387 2007-03-17  Bruno Haible  <bruno@clisp.org>
6388
6389         * tests/test-c-strcasecmp.c: Include c-strcase.h.
6390         * tests/test-c-strncasecmp.c: Likewise.
6391
6392 2007-03-17  Bruno Haible  <bruno@clisp.org>
6393
6394         * modules/stdlib (Depends-on): Add unistd.
6395         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
6396         Needed for MacOS X 10.3.
6397
6398 2007-03-17  Bruno Haible  <bruno@clisp.org>
6399
6400         * lib/unistr/u-strdup.h: Include <stdlib.h>.
6401
6402 2007-03-17  Bruno Haible  <bruno@clisp.org>
6403
6404         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
6405
6406 2007-03-17  Bruno Haible  <bruno@clisp.org>
6407
6408         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
6409         to reflect files copied from gnulib (with or without modifications).
6410         Suggested by Jim Meyering.
6411
6412 2007-03-17  Eric Blake  <ebb9@byu.net>
6413
6414         * NEWS: Document stdlib change from 2007-02-18.
6415
6416 2007-03-17  Jim Meyering  <jim@meyering.net>
6417
6418         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
6419         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
6420         someone uses a name containing shell meta-characters.
6421         Reported by Alfred M. Szmidt.
6422
6423         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
6424
6425 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
6426
6427         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
6428         and copy gettext configuration files only if configure.ac contains
6429         a use of AM_GNU_GETTEXT_VERSION.
6430
6431 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
6432
6433         * build-aux/bootstrap (gnulib_name): New variable.
6434         (gnulib_tool_options): Use it.
6435
6436 2007-03-13  Simon Josefsson  <simon@josefsson.org>
6437
6438         * tests/test-des.c: Use new namespace.
6439
6440 2007-03-15  Bruno Haible  <bruno@clisp.org>
6441
6442         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
6443         Reported by James Youngman <jay@gnu.org>.
6444
6445 2007-03-15  Bruno Haible  <bruno@clisp.org>
6446
6447         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
6448         declared prototype. Needed with cc on OSF/1 5.1.
6449
6450 2007-03-15  Bruno Haible  <bruno@clisp.org>
6451
6452         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
6453         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
6454         (struct gl_list_implementation): Add dispose_fn argument to the
6455         'create_empty', 'create' methods.
6456         (struct gl_list_impl_base): Add field 'dispose_fn'.
6457         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
6458         argument.
6459         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
6460         dispose_fn argument.
6461         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
6462         dispose_fn on the dropped values.
6463         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
6464         dispose_fn argument.
6465         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
6466         dropped values.
6467         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
6468         (gl_tree_remove_node): Call dispose_fn on the dropped value.
6469         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
6470         (gl_tree_remove_node): Call dispose_fn on the dropped value.
6471         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
6472         argument.
6473         (gl_tree_list_free): Call dispose_fn on the dropped values.
6474         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
6475         the dropped values.
6476         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
6477         Add dispose_fn argument.
6478         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
6479         Call dispose_fn on the dropped values.
6480         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
6481         Add dispose_fn argument.
6482         (gl_sublist_create): Initialize the 'dispose_fn' field.
6483         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
6484         * tests/test-array_list.c (main): Update.
6485         * tests/test-carray_list.c (main): Update.
6486         * tests/test-avltree_list.c (main): Update.
6487         * tests/test-rbtree_list.c (main): Update.
6488         * tests/test-avltreehash_list.c (main): Update.
6489         * tests/test-rbtreehash_list.c (main): Update.
6490         * tests/test-linked_list.c (main): Update.
6491         * tests/test-linkedhash_list.c (main): Update.
6492         * tests/test-array_oset.c (main): Update.
6493
6494 2007-03-15  Bruno Haible  <bruno@clisp.org>
6495
6496         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
6497         (gl_oset_create_empty): Add dispose_fn argument.
6498         (struct gl_oset_implementation): Add dispose_fn argument to
6499         'create_empty' method.
6500         (struct gl_oset_impl_base): Add dispose_fn field.
6501         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
6502         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
6503         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
6504         values.
6505         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
6506         (gl_tree_oset_free): Call dispose_fn on the dropped values.
6507         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
6508         dropped value.
6509         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
6510         dropped value.
6511         * tests/test-array_oset.c (main): Update.
6512         * tests/test-avltree_oset.c (main): Update.
6513         * tests/test-rbtree_oset.c (main): Update.
6514         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
6515
6516 2007-03-13  Bruno Haible  <bruno@clisp.org>
6517
6518         * tests/test-stdbool.c (i): Update after last patch.
6519
6520 2007-03-12  Bruno Haible  <bruno@clisp.org>
6521
6522         * lib/quotearg.c: Include <wctype.h> early, before the definition of
6523         the iswprint macro. Needed on Solaris 2.5.1.
6524
6525 2007-03-12  Bruno Haible  <bruno@clisp.org>
6526
6527         * tests/test-printf-frexp.c (main): Declare x as volatile.
6528
6529 2007-03-12  Simon Josefsson  <simon@josefsson.org>
6530
6531         * doc/gnulib.texi (Build robot for gnulib): New section.
6532
6533 2007-03-12  Jim Meyering  <jim@meyering.net>
6534
6535         * build-aux/bootstrap: New file.
6536         * build-aux/bootstrap.conf: New file, from coreutils.
6537
6538 2007-03-11  Bruno Haible  <bruno@clisp.org>
6539
6540         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
6541
6542 2007-03-12  Simon Josefsson  <simon@josefsson.org>
6543
6544         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
6545         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
6546         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
6547
6548 2007-03-11  Bruno Haible  <bruno@clisp.org>
6549
6550         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
6551         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
6552
6553 2007-03-11  Bruno Haible  <bruno@clisp.org>
6554
6555         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
6556         formula. Needed for SunPRO C 5.0.
6557
6558 2007-03-11  Bruno Haible  <bruno@clisp.org>
6559
6560         * modules/long-options (Depends-on): Add getopt.
6561
6562 2007-03-11  Bruno Haible  <bruno@clisp.org>
6563
6564         * modules/modechange (Depends-on): Add stdbool.
6565
6566 2007-03-11  Bruno Haible  <bruno@clisp.org>
6567
6568         * modules/i-ring (Depends-on): Add stdbool.
6569
6570 2007-03-11  Bruno Haible  <bruno@clisp.org>
6571
6572         * modules/gc-des (Depends-on): Add stdbool.
6573
6574 2007-03-11  Bruno Haible  <bruno@clisp.org>
6575
6576         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
6577
6578 2007-03-11  Bruno Haible  <bruno@clisp.org>
6579
6580         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
6581
6582 2007-03-11  Bruno Haible  <bruno@clisp.org>
6583
6584         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
6585
6586 2007-03-11  Bruno Haible  <bruno@clisp.org>
6587
6588         * lib/vasnprintf.c (sprintf): Undefine.
6589
6590 2007-03-11  Bruno Haible  <bruno@clisp.org>
6591
6592         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
6593         initializers in SunPRO C and Compaq C compilers.
6594
6595 2007-03-11  Bruno Haible  <bruno@clisp.org>
6596
6597         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
6598         decrementing code ANSI C compliant.
6599
6600 2007-03-11  Bruno Haible  <bruno@clisp.org>
6601
6602         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
6603         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
6604
6605 2007-03-11  Bruno Haible  <bruno@clisp.org>
6606
6607         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
6608         <stdbool.h> substitute doesn't pass.
6609
6610 2007-03-11  Bruno Haible  <bruno@clisp.org>
6611
6612         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
6613
6614 2007-03-11  Bruno Haible  <bruno@clisp.org>
6615
6616         * gnulib-tool (func_create_megatestdir): Create also an autobuild
6617         script, for submission to autobuild.josefsson.org.
6618
6619 2007-03-10  Bruno Haible  <bruno@clisp.org>
6620
6621         * modules/canonicalize-lgpl-tests: New file.
6622         * tests/test-canonicalize-lgpl.sh: New file.
6623         * tests/test-canonicalize-lgpl.c: New file.
6624
6625         * modules/c-strcase-tests: New file.
6626         * tests/test-c-strcase.sh: New file.
6627         * tests/test-c-strcasecmp.c: New file.
6628         * tests/test-c-strncasecmp.c: New file.
6629
6630         * modules/atexit-tests: New file.
6631         * tests/test-atexit.sh: New file.
6632         * tests/test-atexit.c: New file.
6633
6634 2007-03-10  Bruno Haible  <bruno@clisp.org>
6635
6636         * tests/test-binary-io.sh: Use temporary filenames that are not so
6637         likely to clash with those of other tests (in a parallel make).
6638         * tests/test-binary-io.c: Likewise.
6639
6640 2007-03-10  Bruno Haible  <bruno@clisp.org>
6641
6642         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
6643         fallback; use #error instead.
6644         Suggested by Simon Josefsson.
6645
6646 2007-03-10  Bruno Haible  <bruno@clisp.org>
6647
6648         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
6649         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
6650         first and the last.
6651
6652 2007-03-10  Bruno Haible  <bruno@clisp.org>
6653
6654         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
6655
6656 2007-03-10  Bruno Haible  <bruno@clisp.org>
6657
6658         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
6659         "make distcheck".
6660         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
6661         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
6662         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
6663
6664 2007-03-10  Bruno Haible  <bruno@clisp.org>
6665
6666         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
6667         variable.
6668         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
6669         variable.
6670
6671 2007-03-09  Eric Blake  <ebb9@byu.net>
6672         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
6673
6674         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
6675         types are not being provided by gnulib.
6676         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
6677         types are supported.
6678
6679 2007-03-10  Bruno Haible  <bruno@clisp.org>
6680
6681         * lib/stdio_.h (__attribute__): New macro.
6682         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
6683         vsprintf): Specify __attribute__ __format__ for GCC.
6684         Suggested by Eric Blake.
6685
6686 2007-03-09  Bruno Haible  <bruno@clisp.org>
6687
6688         * modules/printf-posix-tests: New file.
6689         * tests/test-printf-posix.sh: New file.
6690         * tests/test-printf-posix.c: New file.
6691
6692         * modules/printf-posix: New file.
6693         * lib/printf.c: New file.
6694         * m4/printf-posix-rpl.m4: New file.
6695         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
6696         REPLACE_PRINTF.
6697         * lib/stdio_.h (printf): New declaration.
6698         (format, __format__, ____printf____, ____scanf____, ____strftime____,
6699         ____strfmon____): New macros.
6700         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
6701         REPLACE_PRINTF.
6702
6703 2007-03-09  Bruno Haible  <bruno@clisp.org>
6704
6705         * tests/test-vasnprintf-posix2.sh: New file.
6706         * tests/test-vasnprintf-posix2.c: New file.
6707         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
6708         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
6709         (Makefile.am): Activate test-vasnprintf-posix2.sh.
6710
6711         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
6712         a locale dependent decimal point, rather than always '.'.
6713
6714 2007-03-09  Eric Blake  <ebb9@byu.net>
6715
6716         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
6717         spite of platforms like Tandem/NSK that define it to -1.
6718
6719 2007-03-08  Bruno Haible  <bruno@clisp.org>
6720
6721         * modules/vprintf-posix-tests: New file.
6722         * tests/test-vprintf-posix.sh: New file.
6723         * tests/test-vprintf-posix.c: New file.
6724         * tests/test-printf-posix.h: New file.
6725
6726         * modules/vprintf-posix: New file.
6727         * lib/vprintf.c: New file.
6728         * m4/vprintf-posix.m4: New file.
6729         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
6730         REPLACE_VPRINTF.
6731         * lib/stdio_.h (vprintf): New declaration.
6732         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
6733         REPLACE_VPRINTF.
6734
6735 2007-03-08  Bruno Haible  <bruno@clisp.org>
6736
6737         * modules/fprintf-posix-tests: New file.
6738         * tests/test-fprintf-posix.sh: New file.
6739         * tests/test-fprintf-posix.c: New file.
6740
6741         * modules/fprintf-posix: New file.
6742         * lib/fprintf.c: New file.
6743         * m4/fprintf-posix.m4: New file.
6744         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
6745         REPLACE_FPRINTF.
6746         * lib/stdio_.h (fprintf): New declaration.
6747         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
6748         REPLACE_FPRINTF.
6749
6750 2007-03-08  Bruno Haible  <bruno@clisp.org>
6751
6752         * modules/vfprintf-posix-tests: New file.
6753         * tests/test-vfprintf-posix.sh: New file.
6754         * tests/test-vfprintf-posix.c: New file.
6755         * tests/test-fprintf-posix.h: New file.
6756         * tests/test-fprintf-posix.out: New file.
6757
6758         * modules/vfprintf-posix: New file.
6759         * lib/vfprintf.c: New file.
6760         * m4/vfprintf-posix.m4: New file.
6761         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
6762         REPLACE_VFPRINTF.
6763         * lib/stdio_.h (vfprintf): New declaration.
6764         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
6765         REPLACE_VFPRINTF.
6766
6767 2007-03-08  Bruno Haible  <bruno@clisp.org>
6768
6769         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
6770
6771 2007-03-08  Bruno Haible  <bruno@clisp.org>
6772
6773         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
6774         instead of 'expr' invocations.
6775         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6776         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6777         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6778         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6779         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6780         Suggested by Paul Eggert.
6781
6782 2007-03-08  Bruno Haible  <bruno@clisp.org>
6783
6784         * modules/fseterr-tests: New file.
6785         * tests/test-fseterr.c: New file.
6786
6787         * modules/fseterr: New file.
6788         * lib/fseterr.h: New file.
6789         * lib/fseterr.c: New file.
6790
6791 2007-03-08  Bruno Haible  <bruno@clisp.org>
6792
6793         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
6794         * lib/getopt_.h: Likewise.
6795         * lib/mbswidth.h: Likewise.
6796         * lib/setenv.h: Likewise.
6797         * lib/vasnprintf.h: Likewise.
6798         * lib/vasprintf.h: Likewise.
6799         * lib/verror.h: Likewise.
6800         * lib/xsetenv.h: Likewise.
6801         * lib/xvasprintf.h: Likewise.
6802
6803 2007-03-08  Jim Meyering  <jim@meyering.net>
6804
6805         * users.txt: Add parted.
6806
6807         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
6808
6809 2007-03-07  Bruno Haible  <bruno@clisp.org>
6810
6811         * m4/printf.m4: Make the shell script snippets copy&pastable.
6812
6813 2007-03-02  Bruno Haible  <bruno@clisp.org>
6814
6815         * lib/netinet_in_.h: New file.
6816         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
6817         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
6818         * modules/netinet_in (Files): Add lib/netinet_in_.h.
6819         (Depends-on): Add absolute-header.
6820         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
6821         into netinet/in.h.
6822
6823 2007-03-03  Bruno Haible  <bruno@clisp.org>
6824
6825         * lib/sys_select_.h: New file.
6826         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
6827         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
6828         * modules/sys_select (Files): Add lib/sys_select_.h.
6829         (Depends-on): Add absolute-header.
6830         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
6831         into sys/select.h.
6832
6833 2007-03-02  Bruno Haible  <bruno@clisp.org>
6834
6835         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
6836         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
6837         values.
6838         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
6839         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
6840         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
6841         * modules/sys_socket (Depends-on): Add absolute-header.
6842         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
6843         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
6844         (Include): Remove requirement of inclusion of <sys/types.h>.
6845
6846 2007-03-02  Bruno Haible  <bruno@clisp.org>
6847
6848         * lib/byteswap_.h (bswap_32): Fix formula.
6849
6850 2007-03-06  Bruno Haible  <bruno@clisp.org>
6851
6852         * modules/sprintf-posix-tests: New file.
6853         * tests/test-sprintf-posix.c: New file.
6854
6855         * modules/sprintf-posix: New file.
6856         * lib/sprintf.c: New file.
6857         * m4/sprintf-posix.m4: New file.
6858         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
6859         REPLACE_SPRINTF.
6860         * lib/stdio_.h (sprintf): New declaration.
6861         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
6862         REPLACE_SPRINTF.
6863
6864 2007-03-06  Bruno Haible  <bruno@clisp.org>
6865
6866         * modules/vsprintf-posix-tests: New file.
6867         * tests/test-vsprintf-posix.c: New file.
6868         * tests/test-sprintf-posix.h: New file.
6869
6870         * modules/vsprintf-posix: New file.
6871         * lib/vsprintf.c: New file.
6872         * m4/vsprintf-posix.m4: New file.
6873         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
6874         REPLACE_VSPRINTF.
6875         * lib/stdio_.h (vsprintf): New declaration.
6876         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
6877         REPLACE_VSPRINTF.
6878
6879 2007-03-06  Bruno Haible  <bruno@clisp.org>
6880
6881         * modules/vsnprintf (Depend-on): Remove minmax.
6882
6883 2007-03-06  Bruno Haible  <bruno@clisp.org>
6884
6885         * modules/snprintf-posix-tests: New file.
6886         * tests/test-snprintf-posix.c: New file.
6887
6888         * modules/snprintf-posix: New file.
6889         * m4/snprintf-posix.m4: New file.
6890         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
6891         gl_FUNC_SNPRINTF.
6892         (gl_FUNC_SNPRINTF): Invoke it.
6893         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
6894         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
6895         is set.
6896         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
6897
6898 2007-03-06  Bruno Haible  <bruno@clisp.org>
6899
6900         * modules/vsnprintf-posix-tests: New file.
6901         * tests/test-vsnprintf-posix.c: New file.
6902         * tests/test-snprintf-posix.h: New file.
6903
6904         * modules/vsnprintf-posix: New file.
6905         * m4/vsnprintf-posix.m4: New file.
6906         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
6907         gl_FUNC_VSNPRINTF.
6908         (gl_FUNC_VSNPRINTF): Invoke it.
6909         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
6910         * lib/stdio_.h (vsnprintf): Define as a replacement if
6911         REPLACE_VSNPRINTF is set.
6912         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
6913
6914 2007-03-06  Bruno Haible  <bruno@clisp.org>
6915
6916         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
6917         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
6918
6919 2007-03-06  Bruno Haible  <bruno@clisp.org>
6920
6921         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
6922         (asinl): Declare also if HAVE_DECL_ASINL is set.
6923         (atanl): Declare also if HAVE_DECL_ATANL is set.
6924         (ceill): Declare also if HAVE_DECL_CEILL is set.
6925         (cosl): Declare also if HAVE_DECL_COSL is set.
6926         (expl): Declare also if HAVE_DECL_EXPL is set.
6927         (floorl): Declare also if HAVE_DECL_FLOORL is set.
6928         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
6929         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
6930         (logl): Declare also if HAVE_DECL_LOGL is set.
6931         (sinl): Declare also if HAVE_DECL_SINL is set.
6932         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
6933         (tanl): Declare also if HAVE_DECL_TANL is set.
6934         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
6935         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
6936         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
6937         declaration of frexpl, ldexpl.
6938         * modules/printf-frexpl (Depends-on): Add math.
6939         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
6940
6941 2007-03-05  Bruno Haible  <bruno@clisp.org>
6942
6943         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
6944         frexpl and ldexpl are declared.
6945         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
6946
6947 2007-03-05  Bruno Haible  <bruno@clisp.org>
6948
6949         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
6950         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
6951
6952 2007-03-05  Bruno Haible  <bruno@clisp.org>
6953
6954         * lib/stdio_.h: Include <stddef.h>.
6955
6956 2007-03-05  Bruno Haible  <bruno@clisp.org>
6957
6958         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
6959
6960 2007-03-05  Bruno Haible  <bruno@clisp.org>
6961
6962         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
6963         NetBSD 4, from Ralf Wildenhues.
6964
6965 2007-03-04  Bruno Haible  <bruno@clisp.org>
6966
6967         * lib/vasprintf.h: Update #if logic for the case when the functions
6968         exist but are overridden.
6969
6970 2007-03-04  Bruno Haible  <bruno@clisp.org>
6971
6972         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
6973         implementations: glibc-2.4 and MacOS X 10.3.
6974         * tests/test-vasnprintf-posix.c (test_function): Test also the case
6975         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
6976         * tests/test-vasprintf-posix.c (test_function): Likewise.
6977
6978 2007-03-04  Bruno Haible  <bruno@clisp.org>
6979
6980         * modules/vasprintf-posix-tests: New file.
6981         * tests/test-vasprintf-posix.c: New file.
6982
6983         * modules/vasprintf-posix: New file.
6984         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
6985         defined.
6986         * m4/vasprintf-posix.m4: New file.
6987         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
6988         gl_FUNC_VASPRINTF.
6989         (gl_FUNC_VASPRINTF): Invoke it.
6990         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
6991         here.
6992         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
6993
6994 2007-03-04  Bruno Haible  <bruno@clisp.org>
6995
6996         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
6997         REPLACE_GETTIMEOFDAY.
6998         * modules/sys_time (Makefile.am): Likewise.
6999         * m4/sys_time_h.m4: Likewise.
7000         * m4/gettimeofday.m4: Likewise.
7001
7002 2007-03-04  Bruno Haible  <bruno@clisp.org>
7003
7004         * modules/vasnprintf-posix-tests: New file.
7005         * tests/test-vasnprintf-posix.c: New file.
7006
7007         * modules/vasnprintf-posix: New file.
7008         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
7009         printf-frexpl.h.
7010         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
7011         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
7012         REPLACE_VASNPRINTF is defined.
7013         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
7014         gl_FUNC_VASNPRINTF.
7015         (gl_FUNC_VASNPRINTF): Invoke it.
7016         * m4/vasnprintf-posix.m4: New file.
7017         * m4/printf.m4: New file.
7018
7019 2007-03-04  Bruno Haible  <bruno@clisp.org>
7020
7021         Compile progreloc.c only if --enable-relocatable is specified.
7022         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
7023         if --enable-relocatable was specified.
7024         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
7025         lib_SOURCES.
7026
7027 2007-03-04  Jim Meyering  <jim@meyering.net>
7028
7029         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
7030         Use it consistently, rather than enumerating errno constants.
7031
7032 2007-03-04  Bruno Haible  <bruno@clisp.org>
7033
7034         * modules/xvasprintf-tests: New file.
7035         * tests/test-xvasprintf.c: New file.
7036
7037         * modules/vasprintf-tests: New file.
7038         * tests/test-vasprintf.c: New file.
7039
7040         * modules/vasnprintf-tests: New file.
7041         * tests/test-vasnprintf.c: New file.
7042
7043         * modules/vsnprintf-tests: New file.
7044         * tests/test-vsnprintf.c: New file.
7045
7046         * modules/snprintf-tests: New file.
7047         * tests/test-snprintf.c: New file.
7048
7049 2007-03-04  Bruno Haible  <bruno@clisp.org>
7050
7051         Compile relocatable.c only if --enable-relocatable is specified.
7052         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
7053         gl_RELOCATABLE_LIBRARY.
7054         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
7055         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
7056         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
7057         gl_RELOCATABLE_LIBRARY.
7058         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
7059         (Makefile.am): Remove lib_SOURCES.
7060         * modules/relocatable-lib-lgpl (configure.ac): Invoke
7061         gl_RELOCATABLE_LIBRARY.
7062         (Makefile.am): Remove lib_SOURCES.
7063         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
7064         always.
7065         * modules/relocatable-prog-wrapper (configure.ac): Invoke
7066         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
7067
7068 2007-03-04  Bruno Haible  <bruno@clisp.org>
7069
7070         * modules/argmatch-tests: New file.
7071         * tests/test-argmatch.c: New file.
7072
7073         * tests/test-allocsa.c (main): Halve the number of loop runs.
7074
7075         * modules/alloca-opt-tests: New file.
7076         * tests/test-alloca-opt.c: New file.
7077
7078 2007-03-04  Jim Meyering  <jim@meyering.net>
7079
7080         Work around difference between Linux ACLs and Solaris 10 ZFS.
7081         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
7082         for EINVAL.
7083
7084 2007-03-03  Bruno Haible  <bruno@clisp.org>
7085
7086         * modules/relocatable-prog (Depends-on): Add back progreloc's
7087         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
7088
7089 2007-03-03  Bruno Haible  <bruno@clisp.org>
7090
7091         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
7092         * modules/relocatable-lib: New file.
7093
7094 2007-03-03  Bruno Haible  <bruno@clisp.org>
7095
7096         * modules/relocatable-prog: Renamed from modules/relocatable.
7097         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
7098
7099 2007-03-03  Bruno Haible  <bruno@clisp.org>
7100
7101         * modules/relocatable-script (Files): Add doc/relocatable.texi,
7102         m4/relocatable-lib.m4.
7103         (Depends-on): Remove 'relocatable'.
7104         (configure.ac): Add gl_RELOCATABLE_NOP.
7105
7106 2007-03-03  Bruno Haible  <bruno@clisp.org>
7107
7108         * modules/relocatable-prog-wrapper: New file.
7109         * modules/relocatable (Depends-on): Add it. Remove all other
7110         dependencies except progname.
7111         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
7112
7113         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
7114         (gl_FUNC_STRERROR): Nop.
7115         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
7116
7117         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
7118         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
7119
7120         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
7121         (gl_FUNC_READLINK): Update.
7122
7123         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
7124
7125 2007-03-03  Bruno Haible  <bruno@clisp.org>
7126
7127         * lib/xreadlink.c: Include <unistd.h> unconditionally.
7128         * modules/xreadlink (Depends-on): Add unistd.
7129         * modules/xreadlink-with-size (Depends-on): Likewise.
7130
7131 2007-03-03  Bruno Haible  <bruno@clisp.org>
7132
7133         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
7134         extracted from gt_FUNC_SETENV.
7135         (gt_FUNC_SETENV): Remove macro.
7136         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
7137         remove gt_FUNC_SETENV.
7138
7139 2007-03-03  Bruno Haible  <bruno@clisp.org>
7140
7141         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
7142         ENABLE_RELOCATABLE here.
7143         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
7144
7145 2007-03-03  Bruno Haible  <bruno@clisp.org>
7146
7147         * modules/rbtreehash-list-tests (Depends-on): Add progname.
7148         * tests/test-rbtreehash_list.c: Include progname.h.
7149         (main): Call set_program_name.
7150
7151         * modules/rbtree-oset-tests (Depends-on): Add progname.
7152         * tests/test-rbtree_oset.c: Include progname.h.
7153         (main): Call set_program_name.
7154
7155         * modules/rbtree-list-tests (Depends-on): Add progname.
7156         * tests/test-rbtree_list.c: Include progname.h.
7157         (main): Call set_program_name.
7158
7159         * modules/linked-list-tests (Depends-on): Add progname.
7160         * tests/test-linked_list.c: Include progname.h.
7161         (main): Call set_program_name.
7162
7163 2007-03-03  Bruno Haible  <bruno@clisp.org>
7164
7165         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
7166         All uses of __restrict changed to _Restrict_.
7167         * lib/glob_.h (__restrict): Remove macro.
7168
7169 2007-03-02  Bruno Haible  <bruno@clisp.org>
7170
7171         * modules/gettext (configure.ac): Require gettext infrastructure
7172         from version 0.16.1.
7173
7174 2007-03-02  Bruno Haible  <bruno@clisp.org>
7175
7176         * modules/linkedhash-list-tests (Depends-on): Add progname.
7177         * tests/test-linkedhash_list.c: Include progname.h.
7178         (main): Call set_program_name.
7179
7180         * modules/carray-list-tests (Depends-on): Add progname.
7181         * tests/test-carray_list.c: Include progname.h.
7182         (main): Call set_program_name.
7183
7184         * modules/avltreehash-list-tests (Depends-on): Add progname.
7185         * tests/test-avltreehash_list.c: Include progname.h.
7186         (main): Call set_program_name.
7187
7188         * modules/avltree-oset-tests (Depends-on): Add progname.
7189         * tests/test-avltree_oset.c: Include progname.h.
7190         (main): Call set_program_name.
7191
7192         * modules/avltree-list-tests (Depends-on): Add progname.
7193         * tests/test-avltree_list.c: Include progname.h.
7194         (main): Call set_program_name.
7195
7196         * modules/array-oset-tests (Depends-on): Add progname.
7197         * tests/test-array_oset.c: Include progname.h.
7198         (main): Call set_program_name.
7199
7200         * modules/array-list-tests (Depends-on): Add progname.
7201         * tests/test-array_list.c: Include progname.h.
7202         (main): Call set_program_name.
7203
7204         * modules/argp-tests (Depends-on): Add progname.
7205         * tests/test-argp.c: Include argp.h first. Include progname.h.
7206         (main): Call set_program_name.
7207
7208 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
7209
7210         * doc/gnulib-tool.texi (Initial import): Reword description of
7211         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
7212         limited effect even if defined after the first system include.
7213
7214 2007-03-01  Bruno Haible  <bruno@clisp.org>
7215
7216         * build-aux/config.libpath: Update to libtool-1.5.22.
7217         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
7218
7219 2007-03-01  Bruno Haible  <bruno@clisp.org>
7220
7221         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
7222         foo_CFLAGS.
7223         Reported by Ralf Wildenhues.
7224
7225 2007-03-01  Bruno Haible  <bruno@clisp.org>
7226
7227         * build-aux/install-reloc: Remove object files left over by some
7228         compilers.
7229         Reported by Ralf Wildenhues.
7230
7231 2007-03-01  Bruno Haible  <bruno@clisp.org>
7232
7233         * build-aux/install-reloc: Break long lines.
7234
7235 2007-03-01  Bruno Haible  <bruno@clisp.org>
7236
7237         * doc/relocatable.texi: Document that it may not work on OpenBSD.
7238         Reported by Ralf Wildenhues.
7239
7240 2007-03-01  Bruno Haible  <bruno@clisp.org>
7241
7242         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
7243         include ordering constraints.
7244
7245 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
7246
7247         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
7248         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
7249         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
7250         as another example.
7251         * lib/time_.h: Fix misspelling.
7252         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
7253         Require gl_HEADER_TIME_H_DEFAULTS.
7254         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
7255         * m4/time_r.m4 (gl_TIME_R): Likewise.
7256         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
7257
7258 2007-03-01  Bruno Haible  <bruno@clisp.org>
7259
7260         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
7261         * m4/utimens.m4 (gl_UTIMENS): Likewise.
7262
7263 2007-03-01  Jim Meyering  <jim@meyering.net>
7264
7265         * modules/xreadlink (Maintainer): Add my name.
7266         * modules/xreadlink-with-size (Depends-on): Alphabetize.
7267
7268 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
7269             Bruno Haible  <bruno@clisp.org>
7270
7271         * build-aux/install-reloc: Compile also c-ctype.c.
7272         * build-aux/relocatable.sh.in: New file.
7273         * doc/relocatable.texi: New file.
7274         * doc/relocatable-maint.texi: New file.
7275         * doc/gnulib.texi: Include relocatable-maint.texi.
7276         * lib/progreloc.c: Include unistd.h unconditionally.
7277         * lib/relocwrapper.c: Include unistd.h unconditionally.
7278         Include c-ctype.h.
7279         (add_dotbin): Use c_tolower.
7280         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
7281         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
7282         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
7283         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
7284         to m4/relocatable-lib.m4.
7285         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
7286         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
7287         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
7288         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
7289         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
7290         * modules/relocatable: New file.
7291         * modules/relocatable-lib: New file.
7292         * modules/relocatable-script: New file.
7293
7294 2007-02-28  Bruno Haible  <bruno@clisp.org>
7295
7296         Import --enable-relocatable infrastructure.
7297         * build-aux/config.libpath: New file, from GNU gettext.
7298         * build-aux/install-reloc: New file, from GNU gettext.
7299         * build-aux/reloc-ldflags: New file, from GNU gettext.
7300         * lib/relocatable.h: New file, from GNU gettext.
7301         * lib/relocatable.c: New file, from GNU gettext.
7302         * lib/relocwrapper.c: New file, from GNU gettext.
7303         * m4/relocatable.m4: New file, from GNU gettext.
7304
7305 2007-02-28  Bruno Haible  <bruno@clisp.org>
7306
7307         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
7308
7309         * modules/xreadlink: New file, from GNU gettext with modifications.
7310         * lib/xreadlink.c: New file, from GNU gettext.
7311         * lib/xreadlink.h: Add comments.
7312         (xreadlink): New declaration.
7313
7314         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
7315         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
7316         lib/xreadlink-with-size.c.
7317         (configure.ac): Remove gl_XREADLINK invocation.
7318         (Makefile.am): Augment lib_SOURCES.
7319         * m4/xreadlink.m4: Remove file.
7320         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
7321         (xreadlink_with_size): Renamed from xreadink.
7322         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
7323         * modules/canonicalize (Depends-on): Replace xreadlink with
7324         xreadlink-with-size.
7325         * lib/canonicalize.c (canonicalize_filename_mode): Update.
7326
7327 2007-02-25  Jim Meyering  <jim@meyering.net>
7328
7329         * build-aux/announce-gen: When complaining about excess arguments,
7330         list them.
7331
7332 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
7333
7334         * README: Document signed integer overflow situation more
7335         accurately.
7336
7337 2007-02-25  Bruno Haible  <bruno@clisp.org>
7338
7339         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
7340         'a' or 'A' conversion.
7341
7342 2007-02-25  Bruno Haible  <bruno@clisp.org>
7343
7344         * modules/filename: Renamed from modules/pathname.
7345         (Files): Replace lib/pathname.h with lib/filename.h. Replace
7346         lib/concatpath.c with lib/concat-filename.c.
7347         (Makefile.am): Update.
7348         (Include): Replace pathname.h with filename.h.
7349         * lib/filename.h: Renamed from lib/pathname.h.
7350         (concatenated_filename): Renamed from concatenated_pathname.
7351         * lib/concat-filename.c: Renamed from lib/concatpath.c.
7352         (concatenated_filename): Renamed from concatenated_pathname.
7353         * lib/findprog.c: Include filename.h instead of pathname.h.
7354         (find_in_path): Update.
7355         * lib/javacomp.c: Include filename.h instead of pathname.h.
7356         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
7357         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
7358         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
7359         is_oldgcj_14_13_usable, is_javac_usable): Update.
7360         * lib/javaexec.c: Include filename.h instead of pathname.h.
7361         (execute_java_class): Update.
7362         * modules/findprog: Update.
7363         * modules/javacomp: Update.
7364         * modules/javaexec: Update.
7365         * MODULES.html.sh (File system functions): Add 'filename', remove
7366         'pathname'.
7367
7368 2007-02-25  Bruno Haible  <bruno@clisp.org>
7369
7370         * modules/printf-frexpl-tests: New file.
7371         * tests/test-printf-frexpl.c: New file.
7372
7373         * modules/printf-frexpl: New file.
7374         * lib/printf-frexpl.h: New file.
7375         * lib/printf-frexpl.c: New file.
7376         * m4/printf-frexpl.m4: New file.
7377
7378 2007-02-25  Bruno Haible  <bruno@clisp.org>
7379
7380         * modules/printf-frexp-tests: New file.
7381         * tests/test-printf-frexp.c: New file.
7382
7383         * modules/printf-frexp: New file.
7384         * lib/printf-frexp.h: New file.
7385         * lib/printf-frexp.c: New file.
7386         * m4/printf-frexp.m4: New file.
7387
7388 2007-02-25  Bruno Haible  <bruno@clisp.org>
7389
7390         Assume automake >= 1.10 for the tests.
7391         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
7392         * modules/arctwo-tests: Likewise.
7393         * modules/argp-tests: Likewise.
7394         * modules/avltree-list-tests: Likewise.
7395         * modules/avltree-oset-tests: Likewise.
7396         * modules/avltreehash-list-tests: Likewise.
7397         * modules/carray-list-tests: Likewise.
7398         * modules/crc-tests: Likewise.
7399         * modules/des-tests: Likewise.
7400         * modules/gc-arcfour-tests: Likewise.
7401         * modules/gc-arctwo-tests: Likewise.
7402         * modules/gc-des-tests: Likewise.
7403         * modules/gc-hmac-md5-tests: Likewise.
7404         * modules/gc-hmac-sha1-tests: Likewise.
7405         * modules/gc-md2-tests: Likewise.
7406         * modules/gc-md4-tests: Likewise.
7407         * modules/gc-md5-tests: Likewise.
7408         * modules/gc-pbkdf2-sha1-tests: Likewise.
7409         * modules/gc-rijndael-tests: Likewise.
7410         * modules/gc-sha1-tests: Likewise.
7411         * modules/gc-tests: Likewise.
7412         * modules/getaddrinfo-tests: Likewise.
7413         * modules/hmac-md5-tests: Likewise.
7414         * modules/hmac-sha1-tests: Likewise.
7415         * modules/linked-list-tests: Likewise.
7416         * modules/linkedhash-list-tests: Likewise.
7417         * modules/lock-tests: Likewise.
7418         * modules/md2-tests: Likewise.
7419         * modules/md4-tests: Likewise.
7420         * modules/md5-tests: Likewise.
7421         * modules/rbtree-list-tests: Likewise.
7422         * modules/rbtree-oset-tests: Likewise.
7423         * modules/rbtreehash-list-tests: Likewise.
7424         * modules/read-file-tests: Likewise.
7425         * modules/rijndael-tests: Likewise.
7426         * modules/stdint-tests: Likewise.
7427         * modules/tls-tests: Likewise.
7428
7429 2007-02-24  Bruno Haible  <bruno@clisp.org>
7430
7431         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
7432         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
7433         function; instead check whether isnan with a double argument links.
7434         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
7435         function; instead check whether isnan with a 'long double' argument
7436         links.
7437         Reported by Eric Blake <ebb9@byu.net>.
7438
7439 2007-02-24  Bruno Haible  <bruno@clisp.org>
7440
7441         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
7442         defined.
7443         * lib/isnanl.c: Remove all code. Just include isnan.c.
7444         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
7445
7446 2007-02-25  Jim Meyering  <jim@meyering.net>
7447
7448         Avoid conflicting types for 'unsetenv' on FreeBSD.
7449         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
7450         conflicting with FreeBSD's (5.0 and 6.1) function declaration
7451         in stdlib.h.
7452
7453 2007-02-24  Bruno Haible  <bruno@clisp.org>
7454
7455         * modules/isnanl-nolibm-tests: New file.
7456         * tests/test-isnanl.c: New file.
7457
7458         * modules/isnanl-nolibm: New file.
7459         * lib/isnanl.h: New file.
7460         * lib/isnanl.c: New file.
7461         * m4/isnanl.m4: New file.
7462
7463 2007-02-24  Bruno Haible  <bruno@clisp.org>
7464
7465         * modules/isnan-nolibm-tests: New file.
7466         * tests/test-isnan.c: New file.
7467
7468         * modules/isnan-nolibm: New file.
7469         * lib/isnan.h: New file.
7470         * lib/isnan.c: New file.
7471         * m4/isnan.m4: New file.
7472
7473 2007-02-24  Bruno Haible  <bruno@clisp.org>
7474
7475         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
7476         assume that an exponent fits in 20 bits.
7477
7478 2007-02-24  Jim Meyering  <jim@meyering.net>
7479
7480         * m4/regex.m4: Update the description of the configure-time option,
7481         --without-included-regex, to state accurately what the defaults are,
7482         and perhaps to give people an idea why using this option is risky.
7483
7484 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
7485
7486         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
7487         loops on small arguments.  This attempts to avoid the problem
7488         Bruno Haible reported for AIX 4.3.2 in
7489         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
7490
7491 2007-02-23  Bruno Haible  <bruno@clisp.org>
7492
7493         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
7494         Needed for help2man.
7495
7496 2007-02-23  Karl Berry  <karl@gnu.org>
7497
7498         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
7499         exists, foo.h should be cvs-ignored, not committed.
7500
7501 2007-02-23  Eric Blake  <ebb9@byu.net>
7502
7503         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
7504         * lib/stat-time.h (includes): Likewise.
7505         * lib/utimecmp.c (includes): Likewise.
7506         * lib/utimens.h (includes): Likewise.
7507         * lib/getdate.y (includes): Also include "timespec.h" for use
7508         internal to the module.
7509         * modules/utimens (Depends-on): Revert yesterday's patch.
7510         * modules/nanosleep (Depends-on): Add missing dependency.
7511
7512 2007-02-22  Bruno Haible  <bruno@clisp.org>
7513
7514         * lib/glob.c: Don't include getlogin_r.h.
7515
7516 2007-02-22  Jim Meyering  <jim@meyering.net>
7517
7518         * modules/utimens (Depends-on): Add timespec, required for
7519         utimens.h's inclusion of timespec.h.
7520
7521 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7522
7523         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
7524         long unreadable paths in GNU/Linux.  Problem reported by Andreas
7525         Schwab in
7526         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
7527         I'll try to think of a better way to fix the Solaris problem.
7528
7529         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
7530         like glibc; on Solaris 10, it fails with errno == EINVAL.
7531         POSIX says the behavior is unspecified if the first argument is NULL,
7532         so play it safe and never pass NULL to the system getcwd.
7533
7534 2007-02-21  Jim Meyering  <jim@meyering.net>
7535
7536         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
7537         of gettimeofday.  It would conflict with the one now always
7538         provided via sys_time_.h.  Reported by Matthew Woehlke, as
7539         an IRIX 6.5 build failure.
7540
7541 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
7542
7543         Minor fixups to port to Solaris 10 with Sun C 5.8.
7544         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
7545         * modules/getcwd (Depends-on): Add dirfd.
7546         * lib/putenv.c (putenv): #undef it.
7547         (rpl_putenv): New decl.
7548         (malloc, free): Include <stdlib.h> rather than prototyping separately.
7549
7550 2007-02-20  Bruno Haible  <bruno@clisp.org>
7551
7552         * modules/stdio-tests: New file.
7553         * tests/test-stdio.c: New file.
7554
7555         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
7556         (Depends-on): Add stdio.
7557         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
7558         (Include): Use <stdio.h> instead of vsnprintf.h.
7559         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
7560         HAVE_DECL_VSNPRINTF.
7561         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
7562
7563         * modules/snprintf (Files): Remove lib/snprintf.h.
7564         (Depends-on): Add stdio.
7565         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
7566         (Include): Use <stdio.h> instead of snprintf.h.
7567         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
7568         HAVE_DECL_SNPRINTF.
7569         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
7570         * lib/getaddrinfo.c: Likewise.
7571
7572         * modules/stdio: New file.
7573         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
7574         * lib/snprintf.h: Remove file.
7575         * lib/vsnprintf.h: Remove file.
7576         * lib/.cppi-disable: Remove snprintf.h.
7577         * m4/stdio_h.m4: New file.
7578         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
7579
7580 2007-02-20  Jim Meyering  <jim@meyering.net>
7581
7582         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
7583         used by e.g., mingw.  From Bruno Haible.
7584
7585 2007-02-19  Bruno Haible  <bruno@clisp.org>
7586
7587         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
7588         warnings.
7589         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7590
7591 2007-02-19  Bruno Haible  <bruno@clisp.org>
7592
7593         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
7594         from mingw users.
7595
7596 2007-02-19  Bruno Haible  <bruno@clisp.org>
7597
7598         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
7599         warnings.
7600         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
7601
7602 2007-02-19  Jim Meyering  <jim@meyering.net>
7603
7604         Don't use FD after a successful "fdopendir (fd)".
7605         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
7606         Reset it by calling dirfd on the just-obtained DIR*.
7607
7608         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
7609         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
7610
7611 2007-02-18  Bruno Haible  <bruno@clisp.org>
7612
7613         * lib/readlink.c: Include <unistd.h>.
7614         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
7615         HAVE_READLINK.
7616         * modules/readlink (Depends-on): Add unistd.
7617         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7618         (Include): Add <unistd.h>.
7619
7620         * lib/getlogin_r.h: Remove file.
7621         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
7622         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
7623         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
7624         HAVE_DECL_GETLOGIN_R.
7625         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
7626         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7627         (Include): Use <unistd.h> instead of getlogin_r.h.
7628
7629         * lib/getcwd.h: Remove file.
7630         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
7631         * lib/xgetcwd.c: Likewise.
7632         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
7633         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
7634         * modules/getcwd (Files): Remove lib/getcwd.h.
7635         (Depends-on): Add unistd.
7636         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7637         (Include): Use <unistd.h> instad of getcwd.h.
7638
7639         * lib/ftruncate.c: Include <unistd.h> first.
7640         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
7641         Set HAVE_FTRUNCATE.
7642         * modules/ftruncate (Depends-on): Add unistd.
7643         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7644
7645         * lib/fchdir.c: Include <unistd.h> first.
7646         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
7647         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
7648         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
7649         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7650         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
7651
7652         * lib/dup2.c: Include <unistd.h> first.
7653         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
7654         HAVE_DUP2.
7655         * modules/dup2 (Depends-on): Add unistd.
7656         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7657
7658         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
7659         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
7660         REPLACE_CHOWN. Don't define chown as a macro here.
7661         * modules/chown (Depends-on): Add unistd.
7662         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7663
7664         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
7665         Add definition for GL_LINK_WARNING.
7666         (chown, dup2): New declarations.
7667         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
7668         link warning.
7669         (ftruncate): New declaration.
7670         (getcwd): New declaration, taken from old getcwd.h.
7671         (getlogin_r): New declaration, taken from old getlogin_r.h.
7672         (readlink): New declaration.
7673         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
7674         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
7675         (gl_PREREQ_UNISTD): Remove macro.
7676         (gl_UNISTD_MODULE_INDICATOR): New macro.
7677         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
7678         many new variables. Don't set UNISTD_H.
7679         * modules/unistd (Description): Change.
7680         (Depends-on): Add link-warning.
7681         (configure.ac): Update.
7682         (Makefile.am): Create unistd.h always. Substitute many new variables
7683         into it.
7684
7685 2007-02-18  Bruno Haible  <bruno@clisp.org>
7686
7687         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
7688         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
7689         HAVE_GETSUBOPT.
7690         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
7691         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
7692         * lib/getsubopt.h: Remove file.
7693         * modules/getsubopt (Files): Remove lib/getsubopt.h.
7694         (Depends-on): Add stdlib.
7695         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7696         (Includes): Use <stdlib.h> instead of getsubopt.h.
7697         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
7698         Set HAVE_GETSUBOPT.
7699         * lib/getsubopt.c: Don't include getsubopt.h.
7700
7701 2007-02-18  Bruno Haible  <bruno@clisp.org>
7702
7703         * modules/fchdir (Depends-on): Add dup2.
7704
7705 2007-02-18  Bruno Haible  <bruno@clisp.org>
7706
7707         * lib/stdlib_.h: Handle glibc's special invocation convention
7708         specially.
7709
7710 2007-02-18  Bruno Haible  <bruno@clisp.org>
7711
7712         * modules/stdlib-tests: New file.
7713         * tests/test-stdlib.c: New file.
7714
7715         * modules/mkstemp (Files): Remove lib/mkstemp.h.
7716         (Depends-on): Add stdlib.
7717         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7718         (Includes): Use <stdlib.h> instead of mkstemp.h.
7719         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
7720         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
7721         * lib/mkstemp.c: Don't include mkstemp.h.
7722         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
7723         * lib/stdlib--.h: Don't include mkstemp.h.
7724
7725         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
7726         (Depends-on): Add stdlib.
7727         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7728         (Includes): Use <stdlib.h> instead of mkdtemp.h.
7729         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
7730         HAVE_MKDTEMP.
7731         * lib/mkdtemp.c: Don't include mkdtemp.h.
7732         * lib/clean-temp.c: Don't include mkdtemp.h.
7733
7734         * modules/exit (Files): Remove lib/exit.h.
7735         (Depends-on): Add stdlib.
7736         (Makefile.am): Remove lib_SOURCES.
7737         (Include): Use <stdlib.h> instead of exit.h.
7738         * lib/argmatch.c: Don't include exit.h.
7739         * lib/execute.c: Likewise.
7740         * lib/pagealign_alloc.c: Likewise.
7741         * lib/pipe.c: Likewise.
7742         * lib/wait-process.c: Likewise.
7743         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
7744         * lib/exitfail.c: Likewise.
7745         * lib/savewd.c: Likewise.
7746         * lib/xsetenv.c: Likewise.
7747
7748         * modules/stdlib: New file.
7749         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
7750         and extra comments about mkstemp().
7751         * lib/exit.h: Remove file.
7752         * lib/mkdtemp.h: Remove file.
7753         * lib/mkstemp.h: Remove file.
7754         * m4/stdlib_h.m4: New file.
7755         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
7756
7757 2007-02-18  Bruno Haible  <bruno@clisp.org>
7758
7759         * modules/math-tests: New file.
7760         * tests/test-math.c: New file.
7761
7762         * modules/math: New file.
7763         * modules/mathl (Files): Remove lib/mathl.h.
7764         (Depends-on): Add math.
7765         (Makefile.am): Don't mention mathl.h.
7766         (Include): Use <math.h> instead of mathl.h.
7767         * lib/math_.h: New file.
7768         * lib/mathl.h: Remove file.
7769         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
7770         mathl.h.
7771         * lib/asinl.c: Likewise.
7772         * lib/atanl.c: Likewise.
7773         * lib/ceill.c: Likewise.
7774         * lib/cosl.c: Likewise.
7775         * lib/expl.c: Likewise.
7776         * lib/floorl.c: Likewise.
7777         * lib/frexpl.c: Likewise.
7778         * lib/ldexpl.c: Likewise.
7779         * lib/logl.c: Likewise.
7780         * lib/sincosl.c: Likewise.
7781         * lib/sinl.c: Likewise.
7782         * lib/sqrtl.c: Likewise.
7783         * lib/tanl.c: Likewise.
7784         * lib/trigl.c: Likewise.
7785         * m4/math_h.m4: New file.
7786         * MODULES.html.sh (Mathematics): Add math.
7787
7788 2007-02-17  Bruno Haible  <bruno@clisp.org>
7789
7790         * modules/wctype-tests: New file.
7791         * tests/test-wctype.c: New file.
7792
7793         * modules/wchar-tests: New file.
7794         * tests/test-wchar.c: New file.
7795
7796         * modules/unistd-tests: New file.
7797         * tests/test-unistd.c: New file.
7798
7799         * modules/time-tests: New file.
7800         * tests/test-time.c: New file.
7801
7802         * modules/sysexits-tests: New file.
7803         * tests/test-sysexits.c: New file.
7804
7805         * modules/sys_time-tests: New file.
7806         * tests/test-sys_time.c: New file.
7807
7808         * modules/sys_stat-tests: New file.
7809         * tests/test-sys_stat.c: New file.
7810
7811         * modules/sys_socket-tests: New file.
7812         * tests/test-sys_socket.c: New file.
7813
7814         * modules/sys_select-tests: New file.
7815         * tests/test-sys_select.c: New file.
7816
7817         * modules/string-tests: New file.
7818         * tests/test-string.c: New file.
7819
7820         * modules/stdbool-tests: New file.
7821         * tests/test-stdbool.c: New file.
7822
7823         * modules/netinet_in-tests: New file.
7824         * tests/test-netinet_in.c: New file.
7825
7826         * modules/inttypes-tests: New file.
7827         * tests/test-inttypes.c: New file.
7828
7829         * modules/fcntl-tests: New file.
7830         * tests/test-fcntl.c: New file.
7831
7832         * modules/byteswap-tests: New file.
7833         * tests/test-byteswap.c: New file.
7834
7835         * modules/arpa_inet-tests: New file.
7836         * tests/test-arpa_inet.c: New file.
7837
7838 2007-02-17  Bruno Haible  <bruno@clisp.org>
7839
7840         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
7841         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
7842         if the corresponding module is not enabled. Emit link warnings if
7843         the function is used nevertheless.
7844         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
7845         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
7846         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
7847         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
7848         * modules/inttypes (Depends-on): Add link-warning.
7849         (Makefile.am): Copy the contents of build-aux/link-warning.h into
7850         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
7851         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
7852         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
7853         * modules/imaxdiv (configure.ac): Likewise.
7854         * modules/strtoimax (configure.ac): Likewise.
7855         * modules/strtoumax (configure.ac): Likewise.
7856
7857 2007-02-17  Bruno Haible  <bruno@clisp.org>
7858
7859         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
7860         gl_STRING_MODULE_INDICATOR_DEFAULTS.
7861         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
7862         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
7863
7864 2007-02-17  Bruno Haible  <bruno@clisp.org>
7865
7866         * modules/link-warning: New file.
7867         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
7868         * lib/string_.h (GL_LINK_WARNING): Remove definition.
7869         * modules/string (Depends-on): Add link-warning.
7870         (Makefile.am): Copy the contents of build-aux/link-warning.h into
7871         string.h.
7872         * MODULES.html.sh (Support for building libraries and executables): Add
7873         link-warning.
7874
7875 2007-02-17  Bruno Haible  <bruno@clisp.org>
7876
7877         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
7878         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
7879         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
7880         long lines.
7881
7882 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
7883             Bruno Haible  <bruno@clisp.org>
7884
7885         * modules/tmpfile: New file.
7886         * lib/tmpfile.c: New file.
7887         * m4/tmpfile.m4: New file.
7888         * MODULES.html.sh (func_all_modules): New section "Input/output".
7889
7890 2007-02-15  Bruno Haible  <bruno@clisp.org>
7891
7892         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
7893         (supports_delete_on_close): New function.
7894         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
7895
7896 2007-02-14  Bruno Haible  <bruno@clisp.org>
7897
7898         * modules/mbspcasecmp-tests: New file.
7899         * tests/test-mbspcasecmp.sh: New file.
7900         * tests/test-mbspcasecmp.c: New file.
7901
7902         New module mbspcasecmp.
7903         * modules/mbspcasecmp: New file.
7904         * lib/mbspcasecmp.c: New file.
7905         * lib/string_.h (strncasecmp): Change warning message.
7906         (mbspcasecmp): New declaration.
7907         * m4/mbspcasecmp.m4: New file.
7908         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7909         GNULIB_MBSPCASECMP.
7910         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
7911         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
7912
7913 2007-02-14  Bruno Haible  <bruno@clisp.org>
7914
7915         * modules/mbsncasecmp-tests: New file.
7916         * tests/test-mbsncasecmp.sh: New file.
7917         * tests/test-mbsncasecmp.c: New file.
7918
7919         New module mbsncasecmp.
7920         * modules/mbsncasecmp: New file.
7921         * lib/mbsncasecmp.c: New file.
7922         * lib/string_.h (mbsncasecmp): New declaration.
7923         * m4/mbsncasecmp.m4: New file.
7924         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7925         GNULIB_MBSNCASECMP.
7926         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
7927         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
7928
7929 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7930
7931         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
7932         Verify that it doesn't overlap with our flags.
7933         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
7934         do not have the desired effect in multibyte locales; instead, use
7935         mbscasecmp.
7936         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
7937         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
7938         we don't require GNU fnmatch ourselves (if our users require it, they
7939         should do so explicitly).
7940
7941         Fix regex code so it doesn't rely on strcasecmp.
7942         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
7943         Otherwise, include gnulib's langinfo.h.
7944         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
7945         undesirable behavior in non-C locales.  Instead, rely on localecharset.
7946         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
7947         * modules/regex (FILES): Remove m4/codeset.m4.
7948         (Depends-on): Add localcharset.  Remove strcase.
7949
7950 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7951
7952         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
7953         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
7954
7955 2007-02-13  Bruno Haible  <bruno@clisp.org>
7956
7957         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
7958         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7959
7960 2007-02-12  Bruno Haible  <bruno@clisp.org>
7961
7962         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
7963         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
7964         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
7965         time warning rather than a link error.
7966
7967 2007-02-12  Bruno Haible  <bruno@clisp.org>
7968
7969         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
7970         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
7971         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7972
7973 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
7974
7975         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
7976         args, not 2.
7977
7978 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
7979
7980         New module 'time', so that apps can include <time.h> as per
7981         POSIX and GNU instead of separate include files like time_r.h
7982         and timegm.h.  This implementation tries out a simpler approach
7983         for replacing decls in standard include files (as compared to
7984         the string module), somewhat as an experiment.
7985
7986         * config/srclist.txt: Comment out mktime.c for now.
7987         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
7988         since it doesn't apply any more.  Use generic wording instead.
7989         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
7990         'time'.
7991         * lib/time_.h, m4/time_h.m4, modules/time: New files.
7992         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
7993         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
7994         Don't include <sys/types.h>; no longer needed since we assume C89.
7995         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
7996         * lib/strftime.c: Likewise.
7997         * lib/time_r.c: Likewise.
7998         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
7999         * lib/nanosleep.c: Include <time.h> first, to check interface.
8000         * lib/strptime.c: Likewise.
8001         * lib/time_r.c: Likewise.
8002         * lib/timegm.c: Likewise.
8003         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
8004         needed.
8005         * lib/timegm.c: Don't include timegm.h; no longer needed.
8006         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
8007         time.h now handles any problems in that area.
8008         (struct timespec, nanosleep): Remove; time.h now arranges for these.
8009         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
8010         that time.h defines struct timespec.
8011         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
8012         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
8013         handles that.
8014         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
8015         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
8016         needed.  Set REPLACE_LOCALTIME.
8017         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
8018         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
8019         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
8020         nanosleep; time_h.m4 now does that.  Don't require
8021         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
8022         module handles this now.
8023         * modules/getdate (Depends-on): Remove timespec.  Add time.
8024         * modules/nanosleep (Depends-on): Likewise.
8025         * modules/stat-time (Depends-on): Likewise.
8026         * modules/nanosleep (Include): Include time.h, not timespec.h.
8027         * modules/strptime (Files): Remove lib/strptime.h.
8028         (Depends-on): Add extensions, time.
8029         (Include): Include time.h, not strptime.h.
8030         * modules/time_r (Files): Remove lib/time_r.h.
8031         (Depends-on): Add time.
8032         (Include): Include time.h, not time_r.h.
8033         * modules/timegm: Likewise.
8034         * modules/timespec (Description): Now does timespec-related decls
8035         of our own, instead of struct timespec itself.
8036         (Depends-on): Add time; remove extensions.
8037         (Maintainer): Add self.
8038         * modules/utimecmp (Depends-on): Add time; remove timespec.
8039         * modules/utimens (Depends-on): Likewise.
8040         * modules/xnanosleep (Depends-on): Likewise.
8041
8042 2007-02-11  Bruno Haible  <bruno@clisp.org>
8043
8044         * lib/c-strstr.c: Include allocsa.h.
8045         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8046         * lib/c-strcasestr.c: Include allocsa.h.
8047         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8048         * lib/strcasestr.c: Include allocsa.h.
8049         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8050         * lib/mbsstr.c: Include allocsa.h.
8051         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8052         allocsa/freesa instead of malloc/free.
8053         * lib/mbscasestr.c: Include allocsa.h.
8054         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8055         allocsa/freesa instead of malloc/free.
8056         * modules/c-strstr (Depends-on): Add allocsa.
8057         * modules/c-strcasestr (Depends-on): Likewise.
8058         * modules/strcasestr (Depends-on): Likewise.
8059         * modules/mbsstr (Depends-on): Likewise.
8060         * modules/mbscasestr (Depends-on): Likewise.
8061
8062 2007-02-11  Bruno Haible  <bruno@clisp.org>
8063
8064         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
8065
8066         * modules/mbsspn-tests: New file.
8067         * tests/test-mbsspn.sh: New file.
8068         * tests/test-mbsspn.c: New file.
8069
8070 2007-02-11  Bruno Haible  <bruno@clisp.org>
8071
8072         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
8073
8074         * modules/mbspbrk-tests: New file.
8075         * tests/test-mbspbrk.sh: New file.
8076         * tests/test-mbspbrk.c: New file.
8077
8078 2007-02-11  Bruno Haible  <bruno@clisp.org>
8079
8080         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
8081         unneeded cast.
8082
8083         * modules/mbscspn-tests: New file.
8084         * tests/test-mbscspn.sh: New file.
8085         * tests/test-mbscspn.c: New file.
8086
8087 2007-02-11  Bruno Haible  <bruno@clisp.org>
8088
8089         * modules/mbscasecmp-tests: New file.
8090         * tests/test-mbscasecmp.sh: New file.
8091         * tests/test-mbscasecmp.c: New file.
8092
8093 2007-02-11  Bruno Haible  <bruno@clisp.org>
8094
8095         Ensure O(n) worst-case complexity of mbscasestr.
8096         * lib/mbscasestr.c: Include stdbool.h.
8097         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8098         functions.
8099         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
8100         the bookkeeping indicates that it's worth it.
8101         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
8102
8103         * modules/mbscasestr-tests: New file.
8104         * tests/test-mbscasestr1.c: New file.
8105         * tests/test-mbscasestr2.sh: New file.
8106         * tests/test-mbscasestr2.c: New file.
8107         * tests/test-mbscasestr3.sh: New file.
8108         * tests/test-mbscasestr3.c: New file.
8109         * tests/test-mbscasestr4.sh: New file.
8110         * tests/test-mbscasestr4.c: New file.
8111         * m4/locale-tr.m4: New file.
8112
8113 2007-02-11  Bruno Haible  <bruno@clisp.org>
8114
8115         Ensure O(n) worst-case complexity of mbsstr.
8116         * lib/mbsstr.c: Include stdbool.h.
8117         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8118         functions.
8119         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
8120         bookkeeping indicates that it's worth it.
8121         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
8122
8123         * modules/mbsstr-tests: New file.
8124         * tests/test-mbsstr1.c: New file.
8125         * tests/test-mbsstr2.sh: New file.
8126         * tests/test-mbsstr2.c: New file.
8127         * tests/test-mbsstr3.sh: New file.
8128         * tests/test-mbsstr3.c: New file.
8129         * m4/locale-fr.m4: New file.
8130
8131 2007-02-11  Bruno Haible  <bruno@clisp.org>
8132
8133         * lib/mbsrchr.c (mbsrchr): Fix bug.
8134
8135         * modules/mbsrchr-tests: New file.
8136         * tests/test-mbsrchr.sh: New file.
8137         * tests/test-mbsrchr.c: New file.
8138
8139 2007-02-11  Bruno Haible  <bruno@clisp.org>
8140
8141         * lib/mbschr.c (mbschr): Fix bug.
8142
8143         * modules/mbschr-tests: New file.
8144         * tests/test-mbschr.sh: New file.
8145         * tests/test-mbschr.c: New file.
8146         * m4/locale-zh.m4: New file.
8147
8148 2007-02-11  Bruno Haible  <bruno@clisp.org>
8149
8150         Support for copying multibyte string iterators.
8151         * lib/mbiter.h: Include <string.h>.
8152         (mbiter_multi_copy): New function.
8153         (mbi_copy): New macro.
8154         * lib/mbuiter.h: Include <string.h>.
8155         (mbuiter_multi_copy): New function.
8156         (mbui_copy): New macro.
8157
8158 2007-02-11  Bruno Haible  <bruno@clisp.org>
8159
8160         New module mbslen.
8161         * modules/mbslen: New file.
8162         * lib/mbslen.c: New file.
8163         * lib/string_.h (mbslen): New declaration.
8164         * m4/mbslen.m4: New file.
8165         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8166         GNULIB_MBSLEN.
8167         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
8168         * MODULES.html.sh (Internationalization functions): Add mbslen.
8169
8170 2007-02-11  Bruno Haible  <bruno@clisp.org>
8171
8172         Ensure O(n) worst-case complexity of strcasestr substitute.
8173         * lib/strcasestr.c: Include stdbool.h.
8174         (knuth_morris_pratt): New function.
8175         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
8176         bookkeeping indicates that it's worth it.
8177         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
8178
8179         * modules/strcasestr-tests: New file.
8180         * tests/test-strcasestr.c: New file.
8181
8182 2007-02-11  Bruno Haible  <bruno@clisp.org>
8183
8184         Ensure O(n) worst-case complexity of c_strcasestr.
8185         * lib/c-strcasestr.c: Include stdbool.h, string.h.
8186         (knuth_morris_pratt): New function.
8187         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
8188         the bookkeeping indicates that it's worth it.
8189         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
8190
8191         * modules/c-strcasestr-tests: New file.
8192         * tests/test-c-strcasestr.c: New file.
8193
8194 2007-02-11  Bruno Haible  <bruno@clisp.org>
8195
8196         Ensure O(n) worst-case complexity of c_strstr.
8197         * lib/c-strstr.c: Include stdbool.h, string.h.
8198         (knuth_morris_pratt): New function.
8199         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
8200         bookkeeping indicates that it's worth it.
8201         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
8202
8203         * lib/c-strstr.c: Complete rewrite for maintainability.
8204
8205         * modules/c-strstr-tests: New file.
8206         * tests/test-c-strstr.c: New file.
8207
8208 2007-02-11  Bruno Haible  <bruno@clisp.org>
8209
8210         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
8211         5.2.1 and earlier, whereby \055 was treated just like the range
8212         delimiter '-'.
8213         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
8214
8215 2007-02-08  Bruno Haible  <bruno@clisp.org>
8216
8217         * modules/regex (Depends-on): Add stdbool.
8218         Reported by Dalibor Topic <robilad@kaffe.org>.
8219
8220 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
8221
8222         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
8223         Prefer returning from main to exiting from it.
8224         Remove unnecessary parens after sizeof.
8225
8226 2007-02-05  Bruno Haible  <bruno@clisp.org>
8227
8228         New module mbssep.
8229         * modules/mbssep: New file.
8230         * lib/mbssep.c: New file.
8231         * lib/string_.h (strsep): Add a conditional link warning.
8232         (mbssep): New declaration.
8233         * m4/mbssep.m4: New file.
8234         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8235         GNULIB_MBSSEP.
8236         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
8237         * MODULES.html.sh (Internationalization functions): Add mbssep.
8238
8239 2007-02-05  Bruno Haible  <bruno@clisp.org>
8240
8241         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
8242         Optimize search in case of 1 delimiter.
8243
8244 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
8245
8246         * lib/acl.h: Include sys/types.h before sys/acl.h.
8247
8248 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
8249
8250         Merge upstream fix for glibc bugzilla #3957:
8251
8252         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
8253
8254         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
8255         bit for RE_HAT_LISTS_NOT_NEWLINE.
8256         (build_charclass_op): Remove bogus comment.
8257
8258 2007-02-05  Simon Josefsson  <simon@josefsson.org>
8259
8260         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
8261
8262 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8263
8264         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
8265         * lib/memmem.c [!defined _LIBC]: Include config.h.
8266
8267 2007-02-04  Bruno Haible  <bruno@clisp.org>
8268
8269         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
8270         warning message.
8271
8272 2007-02-04  Bruno Haible  <bruno@clisp.org>
8273
8274         New module mbstok_r.
8275         * modules/mbstok_r: New file.
8276         * lib/mbstok_r.c: New file.
8277         * lib/string_.h (strtok_r): Change argument names to match the
8278         comments. Add a conditional link warning.
8279         (mbstok_r): New declaration.
8280         * m4/mbstok_r.m4: New file.
8281         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8282         GNULIB_MBSTOK_R.
8283         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
8284         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
8285
8286 2007-02-04  Bruno Haible  <bruno@clisp.org>
8287
8288         New module mbsspn.
8289         * modules/mbsspn: New file.
8290         * lib/mbsspn.c: New file.
8291         * lib/string_.h (strspn): Add a conditional link warning.
8292         (mbsspn): New declaration.
8293         * m4/mbsspn.m4: New file.
8294         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8295         GNULIB_MBSSPN.
8296         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
8297         * MODULES.html.sh (Internationalization functions): Add mbsspn.
8298
8299 2007-02-04  Bruno Haible  <bruno@clisp.org>
8300
8301         New module mbspbrk.
8302         * modules/mbspbrk: New file.
8303         * lib/mbspbrk.c: New file.
8304         * lib/string_.h (strpbrk): Add a conditional link warning.
8305         (mbspbrk): New declaration.
8306         * m4/mbspbrk.m4: New file.
8307         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8308         GNULIB_MBSPBRK.
8309         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
8310         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
8311
8312 2007-02-04  Bruno Haible  <bruno@clisp.org>
8313
8314         New module mbscspn.
8315         * modules/mbscspn: New file.
8316         * lib/mbscspn.c: New file.
8317         * lib/string_.h (strcspn): Add a conditional link warning.
8318         (mbscspn): New declaration.
8319         * m4/mbscspn.m4: New file.
8320         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8321         GNULIB_MBSCSPN.
8322         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
8323         * MODULES.html.sh (Internationalization functions): Add mbscspn.
8324
8325 2007-02-04  Bruno Haible  <bruno@clisp.org>
8326
8327         New module mbscasestr, reduced goal of strcasestr.
8328         * modules/mbscasestr: New file.
8329         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
8330         (mbscasestr): Renamed from strcasestr.
8331         * lib/strcasestr.c: Don't include mbuiter.h.
8332         (strcasestr): Remove support for multibyte locales.
8333         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
8334         Change the conditional link warning.
8335         (mbscasestr): New declaration.
8336         * m4/mbscasestr.m4: New file.
8337         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
8338         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
8339         REPLACE_STRCASESTR.
8340         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
8341         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
8342         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
8343         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
8344         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
8345         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
8346         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
8347         (Depends-on): Remove mbuiter.
8348         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
8349
8350 2007-02-04  Bruno Haible  <bruno@clisp.org>
8351
8352         Simplify handling of strncasecmp.
8353         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
8354         the conditional link warning.
8355         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
8356         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
8357         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
8358         * modules/strcase (configure.ac): Don't invoke
8359         gl_STRING_MODULE_INDICATOR.
8360         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
8361
8362 2007-02-04  Bruno Haible  <bruno@clisp.org>
8363
8364         New module mbscasecmp, reduced goal of strcasecmp.
8365         * modules/mbscasecmp: New file.
8366         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
8367         (mbscasecmp): Renamed from strcasecmp.
8368         * lib/strcasecmp.c: Don't include mbuiter.h.
8369         (strcasecmp): Remove support for multibyte locales.
8370         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
8371         Change the conditional link warning.
8372         (mbscasecmp): New declaration.
8373         * m4/mbscasecmp.m4: New file.
8374         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
8375         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
8376         REPLACE_STRCASECMP.
8377         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
8378         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8379         GNULIB_MBSCASECMP.
8380         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
8381         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
8382         * modules/strcase (Files): Remove m4/mbrtowc.m4.
8383         (Depends-on): Remove mbuiter.
8384         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
8385
8386 2007-02-04  Bruno Haible  <bruno@clisp.org>
8387
8388         New module mbsstr. Remove module strstr.
8389         * modules/mbsstr: New file.
8390         * modules/strstr: Remove file.
8391         * lib/mbsstr.c: Renamed from lib/strstr.c.
8392         (mbsstr): Renamed from strstr.
8393         * lib/string_.h (strstr): Remove declaration. Change the conditional
8394         link warning.
8395         (mbsstr): New declaration.
8396         * m4/mbsstr.m4: New file.
8397         * m4/strstr.m4: Remove file.
8398         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
8399         REPLACE_STRSTR.
8400         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
8401         Don't initialize GNULIB_STRSTR.
8402         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
8403         substitute GNULIB_STRSTR and REPLACE_STRSTR.
8404         * MODULES.html.sh (Internationalization functions): Add mbsstr.
8405         (Support for systems lacking ANSI C 89): Remove strstr.
8406
8407 2007-02-04  Bruno Haible  <bruno@clisp.org>
8408
8409         New module mbsrchr.
8410         * modules/mbsrchr: New file.
8411         * lib/mbsrchr.c: New file.
8412         * lib/string_.h (strrchr): Add a conditional link warning.
8413         (mbsrchr): New declaration.
8414         * m4/mbsrchr.m4: New file.
8415         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8416         GNULIB_MBSRCHR.
8417         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
8418         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
8419
8420 2007-02-04  Bruno Haible  <bruno@clisp.org>
8421
8422         New module mbschr.
8423         * modules/mbschr: New file.
8424         * lib/mbschr.c: New file.
8425         * lib/string_.h (strchr): Add a conditional link warning.
8426         (mbschr): New declaration.
8427         * m4/mbschr.m4: New file.
8428         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8429         GNULIB_MBSCHR.
8430         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
8431         * MODULES.html.sh (Internationalization functions): Add mbschr.
8432
8433 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8434
8435         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
8436
8437         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
8438
8439 2007-02-04  Bruno Haible  <bruno@clisp.org>
8440
8441         New module description section 'configure.ac-early'.
8442         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
8443         (func_get_autoconf_early_snippet): New function.
8444         (func_import, func_create_testdir): Use it. Remove special cases for
8445         modules 'extensions' and 'lock'.
8446         * modules/extensions (configure.ac-early): Require
8447         gl_USE_SYSTEM_EXTENSIONS.
8448         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
8449
8450 2007-02-04  Bruno Haible  <bruno@clisp.org>
8451
8452         Make use of gcj-4.3's -fsource and -ftarget option.
8453         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
8454         and if so try the options -fsource and -ftarget.
8455         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
8456         source_version, ftarget_option, target_version arguments.
8457         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
8458         (is_envjavac_oldgcj_14_14_usable): Renamed from
8459         is_envjavac_gcj_14_14_usable.
8460         (is_envjavac_oldgcj_14_13_usable): Renamed from
8461         is_envjavac_gcj_14_13_usable.
8462         (is_gcj_present): Update.
8463         (is_gcj_43, is_gcj43_usable): New functions.
8464         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
8465         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
8466         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
8467         try the options -fsource and -ftarget.
8468
8469 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8470
8471         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
8472         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
8473         larger value.
8474
8475 2007-02-03  Jim Meyering  <jim@meyering.net>
8476
8477         Give tools a better chance to allocate space for very large buffers.
8478         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
8479
8480         Make pwd and readlink work also when run with an unreadable parent dir
8481         on systems with openat support.
8482         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
8483         provided getcwd function, even when we have openat support.
8484         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
8485
8486 2007-02-02  Bruno Haible  <bruno@clisp.org>
8487
8488         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
8489         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
8490         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
8491         portability problems if one of these functions is only used on specific
8492         platforms.
8493         Reported by Paul Eggert.
8494
8495 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8496
8497         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
8498         is causing more trouble than it's curing.
8499         * lib/regex_internal.h (__mempcpy): Remove.
8500         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
8501         (and make the code a tad smaller to boot).
8502         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
8503
8504 2007-02-02  Jim Meyering  <jim@meyering.net>
8505
8506         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
8507         section, not in the Makefile.am: one.
8508
8509 2007-02-02  Eric Blake  <ebb9@byu.net>
8510
8511         * lib/strchrnul.c: Always include config.h first.
8512
8513         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
8514         gnulib strstr is not necessary here.
8515
8516 2007-02-02  Simon Josefsson  <simon@josefsson.org>
8517
8518         * m4/socklen.m4: Fix typo.
8519
8520 2007-02-02  Eric Blake  <ebb9@byu.net>
8521
8522         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
8523         * modules/netinet_in (Makefile.am): Likewise.
8524
8525 2007-02-01  Bruno Haible  <bruno@clisp.org>
8526
8527         * lib/string_.h (GL_LINK_WARNING): New macro.
8528         (strcasecmp, strstr, strcasestr): If provided by the system,
8529         conditionally define as a macro that leads to a warning instead of to
8530         an error.
8531         (strncasecmp): Conditionally define as a macro that leads to a warning.
8532
8533 2007-02-01  Karl Berry  <karl@gnu.org>
8534
8535         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
8536
8537 2007-02-01  Bruno Haible  <bruno@clisp.org>
8538
8539         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
8540         renamings.
8541
8542 2007-02-01  Eric Blake  <ebb9@byu.net>
8543
8544         * modules/regex (Depends-on): Revert dependence on mempcpy.
8545         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
8546         module's definition of mempcpy.
8547         Reported by Paul Eggert.
8548
8549 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8550
8551         * lib/string_.h: If the gnulib module XYZ is not present, undefine
8552         the symbol XYZ before redefining it.  This fixes a problem with
8553         programs that don't use XYZ, when compiled on systems that define
8554         XYZ to something else.
8555
8556 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8557
8558         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
8559         occurs when "mkdir -m foo" creates a setgid directory that is (1)
8560         writeable to group or other and (2) is intended to have a special
8561         mode bit that is set or cleared.  In such a case, the directory
8562         should be neither group- nor other-writeable until the special
8563         mode bits are right.
8564
8565 2007-01-31  Eric Blake  <ebb9@byu.net>
8566
8567         * modules/mountlist (Depends-on): Add strstr.
8568
8569         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
8570         bug.
8571         * modules/string (Makefile.am): Remove redundant replacement.
8572         * modules/regex (Depends-on): Add mempcpy.
8573
8574 2007-01-31  Bruno Haible  <bruno@clisp.org>
8575
8576         New module description field 'Link'.
8577         * gnulib-tool (func_usage): Document --extract-link-directive.
8578         (sed_extract_prog): Recognize 'Link' directive.
8579         (func_get_link_directive): New function.
8580         (func_import): Show summary of link directives.
8581         Handle --extract-link-directive option.
8582         * modules/acl (Link): New section.
8583         * modules/clock-time (Link): New section.
8584         * modules/euidaccess (Link): New section.
8585         * modules/gettext (Link): New section.
8586         * modules/iconv (Link): New section.
8587         * modules/lock (Link): New section.
8588         * modules/nanosleep (Link): New section.
8589         * modules/readline (Link): New section.
8590
8591 2007-01-27  Bruno Haible  <bruno@clisp.org>
8592
8593         Enforce the use of gnulib modules for unportable <string.h> functions.
8594         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
8595         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
8596         (gl_HEADER_STRING_H_BODY): Require it.
8597         * lib/string_.h: If the gnulib module XYZ is not present, redefine
8598         the symbol XYZ to one that gives a link error.
8599         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
8600         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
8601         * modules/mempcpy (configure.ac): Likewise.
8602         * modules/memrchr (configure.ac): Likewise.
8603         * modules/stpcpy (configure.ac): Likewise.
8604         * modules/stpncpy (configure.ac): Likewise.
8605         * modules/strcase (configure.ac): Likewise.
8606         * modules/strcasestr (configure.ac): Likewise.
8607         * modules/strchrnul (configure.ac): Likewise.
8608         * modules/strdup (configure.ac): Likewise.
8609         * modules/strndup (configure.ac): Likewise.
8610         * modules/strnlen (configure.ac): Likewise.
8611         * modules/strpbrk (configure.ac): Likewise.
8612         * modules/strsep (configure.ac): Likewise.
8613         * modules/strstr (configure.ac): Likewise.
8614         * modules/strtok_r (configure.ac): Likewise.
8615
8616 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
8617
8618         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
8619
8620 2007-01-30  Jim Meyering  <jim@meyering.net>
8621
8622         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
8623
8624 2007-01-29  Bruno Haible  <bruno@clisp.org>
8625
8626         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
8627         * lib/execute.c: Likewise.
8628         * lib/pipe.c: Likewise.
8629         * lib/printf-args.h: Likewise.
8630         * lib/printf-args.c: Likewise.
8631         * lib/printf-parse.c: Likewise.
8632         * lib/vasnprintf.c: Likewise.
8633
8634 2007-01-29  Eric Blake  <ebb9@byu.net>
8635
8636         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
8637         declaration.
8638
8639 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
8640
8641         * lib/strptime.h (strptime): Use 'restrict' for args where
8642         POSIX requires this.
8643         * lib/strptime.c (strptime): Likewise.
8644         Change license notice from LGPL to GPL, since gnulib-tool will
8645         change this as needed.
8646         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
8647         defined.
8648         Include "strptime.h" first, to check interface.
8649         Do not #undef _LIBC and _NL_CURRENT.
8650         Do not include <stdlib.h>; no longer needed.
8651         Include "time_r.h" and declare ptime_locale_status
8652         only if _LIBC is not defined.
8653         (__P): Remove unused macro.
8654         (match_string): Bring back glibc version, but use it only if _LIBC
8655         is defined.
8656         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
8657         Remove unnecessary assertion and abort() call.
8658         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
8659         * m4/strptime.m4: Fix serial number comment.
8660         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
8661         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
8662         (Depends-on): Add time_r.
8663
8664 2007-01-29  Bruno Haible  <bruno@clisp.org>
8665
8666         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
8667         strptime.
8668         * modules/strptime (Depends-on): Add stdbool.
8669         * lib/strptime.h: Include <time.h> always. Add comments.
8670
8671 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
8672
8673         * modules/strptime: New file.
8674         * lib/strptime.h: New file.
8675         * lib/strptime.c: New file.
8676         * m4/strptime.m4: New file.
8677
8678 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
8679
8680         * MODULES.html.sh: New module mpsort.
8681         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
8682
8683         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
8684         a circularity problem with HP-UX ia64 reported by Bob Proulx in
8685         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
8686         All uses changed.
8687         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
8688         All uses changed.
8689         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
8690         to _Restrict_.
8691         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
8692         the parameter matches the prototype.
8693
8694 2007-01-28  Jim Meyering  <jim@meyering.net>
8695
8696         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
8697         sys/time.h here, reverting that part of the previous patch:
8698         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
8699
8700 2007-01-28  Bruno Haible  <bruno@clisp.org>
8701
8702         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
8703         value of $(SYS_TIME_H).
8704         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
8705         remove it conditionally, too. [added by Jim Meyering]
8706         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
8707         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
8708         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
8709         GETTIMEOFDAY_REPLACEMENT to 1.
8710
8711 2007-01-28  Bruno Haible  <bruno@clisp.org>
8712
8713         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
8714         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
8715         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
8716         Set UNISTD_H instead of UNISTD_H2.
8717         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
8718
8719 2007-01-28  Bruno Haible  <bruno@clisp.org>
8720
8721         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
8722         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
8723
8724 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8725
8726         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
8727         (func_create_testdir): Ensure C locale for `grep' and `tr'
8728         character ranges.
8729         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
8730         ACLOCAL_AMFLAGS parsing state machine.
8731
8732 2007-01-27  Bruno Haible  <bruno@clisp.org>
8733
8734         * modules/unistr/base: Update.
8735
8736 2007-01-27  Bruno Haible  <bruno@clisp.org>
8737
8738         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
8739         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
8740         * modules/unistr/u32-mbtouc-unsafe: Renamed from
8741         modules/unistr/u32-mbtouc.
8742         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
8743         * lib/unistr.h: Update.
8744         * lib/linebreak.c: Update.
8745         * modules/unistr/u32-mbtouc: Renamed from
8746         modules/unistr/u32-mbtouc-safe.
8747         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
8748         * lib/unistr.h: Update.
8749         * lib/unistr/u32-to-u8.c: Update.
8750         * lib/unistr/u32-to-u16.c: Update.
8751
8752 2007-01-27  Bruno Haible  <bruno@clisp.org>
8753
8754         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
8755         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
8756         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
8757         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
8758         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
8759         * modules/unistr/u16-mbtouc-unsafe: Renamed from
8760         modules/unistr/u16-mbtouc.
8761         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
8762         * lib/unistr.h: Update.
8763         * lib/linebreak.c: Update.
8764         * modules/linebreak: Update.
8765         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
8766         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
8767         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
8768         * modules/unistr/u16-mbtouc: Renamed from
8769         modules/unistr/u16-mbtouc-safe.
8770         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
8771         * lib/unistr.h: Update.
8772         * lib/unistr/u16-to-u8.c: Update.
8773         * modules/unistr/u16-to-u8: Update.
8774         * lib/unistr/u16-to-u32.c: Update.
8775         * modules/unistr/u16-to-u32: Update.
8776
8777 2007-01-27  Bruno Haible  <bruno@clisp.org>
8778
8779         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
8780         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
8781         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
8782         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
8783         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
8784         * modules/unistr/u8-mbtouc-unsafe: Renamed from
8785         modules/unistr/u8-mbtouc.
8786         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
8787         * lib/unistr.h: Update.
8788         * lib/striconveh.c: Update.
8789         * modules/striconveh: Update.
8790         * lib/linebreak.c: Update.
8791         * modules/linebreak: Update.
8792         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
8793         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
8794         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
8795         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
8796         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
8797         * lib/unistr.h: Update.
8798         * lib/striconveh.c: Update.
8799         * modules/striconveh: Update.
8800         * lib/unistr/u8-to-u16.c: Update.
8801         * modules/unistr/u8-to-u16: Update.
8802         * lib/unistr/u8-to-u32.c: Update.
8803         * modules/unistr/u8-to-u32: Update.
8804
8805 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8806
8807         Sync from Libtool.
8808         * lib/argz.c: Do not include strings.h nor memory.h, include
8809         string.h unconditionally.  Patch by Simon Josefsson.
8810
8811 2007-01-27  Bruno Haible  <bruno@clisp.org>
8812
8813         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
8814         from gl_HEADER_STRING_H_BODY.
8815         (gl_HEADER_STRING_H_BODY): Require it.
8816         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
8817         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
8818         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
8819         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
8820         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
8821         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
8822         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8823         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
8824         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
8825         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
8826         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
8827         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
8828         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
8829         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8830         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
8831
8832 2007-01-27  Bruno Haible  <bruno@clisp.org>
8833
8834         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
8835         check_PROGRAMS into noinst_PROGRAMS.
8836         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
8837         check_PROGRAMS in this case.
8838         (func_import): Set for_test to false.
8839         (func_create_testdir): Set for_test to true.
8840
8841 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
8842             Bruno Haible  <bruno@clisp.org>
8843
8844         * modules/strcasestr (Files): Remove lib/strcasestr.h.
8845         (Depends-on): Add string.
8846         (Includes): Use <string.h> instead of strcasestr.h.
8847         * modules/string (Makefile.am): Also substitute the value of
8848         REPLACE_STRCASESTR.
8849         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
8850         assume strcasestr is declared in <string.h> not <strings.h>. Also
8851         set REPLACE_STRCASESTR.
8852         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
8853         REPLACE_STRCASESTR.
8854         * lib/strcasestr.h: Remove file.
8855         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
8856         * lib/string_.h (strcasestr): New declaration.
8857
8858 2007-01-27  Bruno Haible  <bruno@clisp.org>
8859
8860         * lib/string_.h: Use 'extern'.
8861
8862 2007-01-27  Jim Meyering  <jim@meyering.net>
8863
8864         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
8865         of set-but-not-used local, "q".
8866
8867         * lib/mempcpy.c: Include <config.h> before <string.h>.
8868         This fixes a compilation error on HP-UX, due to the system's
8869         "restrict"-using mempcpy prototype.
8870
8871 2007-01-26  Bruno Haible  <bruno@clisp.org>
8872
8873         Small optimization.
8874         * lib/javacomp.c: Include c-strstr.h.
8875          (is_envjavac_gcj): Use c_strstr instead of strstr.
8876         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
8877
8878 2007-01-26  Bruno Haible  <bruno@clisp.org>
8879
8880         * MODULES.html.sh (Unicode string functions): Add the new modules.
8881
8882         * modules/uniconv/u32-strconv-to-locale: New file.
8883         * lib/uniconv/u32-strconv-to-locale.c: New file.
8884
8885         * modules/uniconv/u16-strconv-to-locale: New file.
8886         * lib/uniconv/u16-strconv-to-locale.c: New file.
8887
8888         * modules/uniconv/u8-strconv-to-locale: New file.
8889         * lib/uniconv/u8-strconv-to-locale.c: New file.
8890
8891         * modules/uniconv/u32-strconv-from-locale: New file.
8892         * lib/uniconv/u32-strconv-from-locale.c: New file.
8893
8894         * modules/uniconv/u16-strconv-from-locale: New file.
8895         * lib/uniconv/u16-strconv-from-locale.c: New file.
8896
8897         * modules/uniconv/u8-strconv-from-locale: New file.
8898         * lib/uniconv/u8-strconv-from-locale.c: New file.
8899
8900         * modules/uniconv/u32-strconv-to-enc: New file.
8901         * lib/uniconv/u32-strconv-to-enc.c: New file.
8902         * modules/uniconv/u32-strconv-to-enc-tests: New file.
8903         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
8904
8905         * modules/uniconv/u16-strconv-to-enc: New file.
8906         * lib/uniconv/u16-strconv-to-enc.c: New file.
8907         * lib/uniconv/u-strconv-to-enc.h: New file.
8908         * modules/uniconv/u16-strconv-to-enc-tests: New file.
8909         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
8910
8911         * modules/uniconv/u8-strconv-to-enc: New file.
8912         * lib/uniconv/u8-strconv-to-enc.c: New file.
8913         * modules/uniconv/u8-strconv-to-enc-tests: New file.
8914         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
8915
8916         * modules/uniconv/u32-strconv-from-enc: New file.
8917         * lib/uniconv/u32-strconv-from-enc.c: New file.
8918         * modules/uniconv/u32-strconv-from-enc-tests: New file.
8919         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
8920
8921         * modules/uniconv/u16-strconv-from-enc: New file.
8922         * lib/uniconv/u16-strconv-from-enc.c: New file.
8923         * modules/uniconv/u16-strconv-from-enc-tests: New file.
8924         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
8925
8926         * modules/uniconv/u8-strconv-from-enc: New file.
8927         * lib/uniconv/u8-strconv-from-enc.c: New file.
8928         * lib/uniconv/u-strconv-from-enc.h: New file.
8929         * modules/uniconv/u8-strconv-from-enc-tests: New file.
8930         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
8931
8932         * modules/uniconv/u32-conv-from-enc: New file.
8933         * lib/uniconv/u32-conv-from-enc.c: New file.
8934         * modules/uniconv/u32-conv-from-enc-tests: New file.
8935         * tests/uniconv/test-u32-conv-from-enc.c: New file.
8936
8937         * modules/uniconv/u16-conv-from-enc: New file.
8938         * lib/uniconv/u16-conv-from-enc.c: New file.
8939         * lib/uniconv/u-conv-from-enc.h: New file.
8940         * modules/uniconv/u16-conv-from-enc-tests: New file.
8941         * tests/uniconv/test-u16-conv-from-enc.c: New file.
8942
8943         * modules/uniconv/u8-conv-from-enc: New file.
8944         * lib/uniconv/u8-conv-from-enc.c: New file.
8945         * modules/uniconv/u8-conv-from-enc-tests: New file.
8946         * tests/uniconv/test-u8-conv-from-enc.c: New file.
8947
8948         * modules/uniconv/base: New file.
8949         * lib/uniconv.h: New file.
8950
8951 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
8952
8953         * doc/gnulib-tool.texi (Initial import): Update to match current
8954         behavior with strdup module.
8955         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
8956         * lib/memmem.h: Remove; all uses removed.  This is now done
8957         by <string.h>.
8958         * lib/mempcpy.h: Likewise.
8959         * lib/memrchr.h: Likewise.
8960         * lib/stpcpy.h: Likewise.
8961         * lib/stpncpy.h: Likewise.
8962         * lib/strcase.h: Likewise.
8963         * lib/strchrnul.h: Likewise.
8964         * lib/strdup.h: Likewise.
8965         * lib/strndup.h: Likewise.
8966         * lib/strnlen.h: Likewise.
8967         * lib/strpbrk.h: Likewise.
8968         * lib/strsep.h: Likewise.
8969         * lib/strstr.h: Likewise.
8970         * lib/strtok_r.h: Likewise.
8971         * lib/string_.h: New file.
8972         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
8973         Rely on <string.h> instead.
8974         * lib/canon-host.c: Likewise.
8975         * lib/chdir-long.c: Likewise.
8976         * lib/concatpath.c: Likewise.
8977         * lib/exclude.c: Likewise.
8978         * lib/fchdir.c: Likewise.
8979         * lib/getaddrinfo.c: Likewise.
8980         * lib/getcwd.c: Likewise.
8981         * lib/getsubopt.c: Likewise.
8982         * lib/glob.c: Likewise.
8983         * lib/hard-locale.c: Likewise.
8984         * lib/iconvme.c: Likewise.
8985         * lib/javacomp.c: Likewise.
8986         * lib/mempcpy.c: Likewise.
8987         * lib/memrchr.c: Likewise.
8988         * lib/regex_internal.h: Likewise.
8989         * lib/stpncpy.c: Likewise.
8990         * lib/strcasecmp.c: Likewise.
8991         * lib/strchrnul.c: Likewise.
8992         * lib/strdup.c: Likewise.
8993         * lib/striconv.c: Likewise.
8994         * lib/striconveh.c: Likewise.
8995         * lib/striconveha.c: Likewise.
8996         * lib/strncasecmp.c: Likewise.
8997         * lib/strndup.c: Likewise.
8998         * lib/strnlen.c: Likewise.
8999         * lib/strsep.c: Likewise.
9000         * lib/strstr.c: Likewise.
9001         * lib/strtok_r.c: Likewise.
9002         * lib/userspec.c: Likewise.
9003         * lib/w32spawn.h: Likewise.
9004         * lib/xstrndup.c: Likewise.
9005         * lib/mountlist.c (strstr): Remove decl.
9006         * m4/string_h.m4: New file.
9007         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
9008         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
9009         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
9010         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
9011         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
9012         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
9013         Set REPLACE_STRCASECMP if necessary.
9014         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
9015         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
9016         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
9017         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
9018         HAVE_DECL_STRDUP if necessary.
9019         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
9020         since gl_FUNC_STRNDUP does that now.
9021         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
9022         Check for decl here...
9023         (gl_PREREQ_STRNLEN): ... not here.
9024         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
9025         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
9026         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
9027         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
9028         necessary.
9029         * modules/string: New file.
9030         * modules/memmem (Files): Remove special-purpose include file.
9031         (Depends-on): Add string.
9032         (Include): Include <string.h>, not the removed file.
9033         * modules/mempcpy: Likewise.
9034         * modules/memrchr: Likewise.
9035         * modules/stpcpy: Likewise.
9036         * modules/stpncpy: Likewise.
9037         * modules/strcase: Likewise.
9038         * modules/strchrnul: Likewise.
9039         * modules/strdup: Likewise.
9040         * modules/strndup: Likewise.
9041         * modules/strnlen: Likewise.
9042         * modules/strpbrk: Likewise.
9043         * modules/strsep: Likewise.
9044         * modules/strstr: Likewise.
9045         * modules/strtok_r: Likewise.
9046         * tests/test-dirname.c: Don't include "strdup.h", since
9047         <string.h> now suffices.
9048         * tests/test-memmem.c: Don't include "memmem.h", since
9049         <string.h> now suffices.
9050
9051 2007-01-25  Bruno Haible  <bruno@clisp.org>
9052
9053         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
9054         *resultp is 0.
9055
9056         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
9057         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
9058         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
9059         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
9060
9061         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
9062         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
9063         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
9064         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
9065         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
9066         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
9067
9068 2007-01-24  Bruno Haible  <bruno@clisp.org>
9069
9070         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
9071         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
9072         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
9073         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
9074         gl_FUNC_FTS_CORE.
9075         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
9076         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
9077         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
9078         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
9079         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
9080         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
9081         gl_FUNC_FCHOWNAT.
9082         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
9083         gl_FUNC_STRFTIME.
9084         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
9085         Reported by Ralf Wildenhues.
9086
9087 2007-01-24  Bruno Haible  <bruno@clisp.org>
9088
9089         Drop AC_REQUIRE calls that are redundant with the module dependencies.
9090         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
9091         gl_GETADDRINFO.
9092         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
9093         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
9094         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
9095
9096 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9097
9098         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
9099         Don't use 'exit'; just return from 'main'.
9100         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
9101
9102         * lib/fnmatch_.h: Readjust white space and comments to match
9103         glibc, to avoid spurious diffs.
9104
9105 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9106
9107         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
9108         2004-12-01 change by Jakub Jelinek, since this code won't compile
9109         if !LIBC.  Problem reported by Bob Proulx.
9110
9111 2007-01-23  Bruno Haible  <bruno@clisp.org>
9112
9113         * lib/striconveh.c: Include c-strcaseeq.h.
9114         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
9115         * modules/striconveh (Depends-on): Add c-strcaseeq.
9116
9117 2007-01-23  Bruno Haible  <bruno@clisp.org>
9118
9119         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
9120
9121         * modules/c-strcaseeq: New file.
9122         * lib/c-strcaseeq.h: New file.
9123
9124         * modules/streq: New file.
9125         * lib/streq.h: New file.
9126
9127 2007-01-23  Bruno Haible  <bruno@clisp.org>
9128
9129         * modules/striconveha-tests: New file.
9130         * tests/test-striconveha.c: New file.
9131
9132         * lib/striconveha.h: Include <stdbool.h>.
9133         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
9134         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
9135         (mem_iconveha_notranslit): Renamed from mem_iconveha.
9136         (mem_iconveha): New function.
9137         (str_iconveha_notranslit): Renamed from str_iconveha.
9138         (str_iconveha): New function.
9139         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
9140         c-strcase.
9141
9142 2007-01-23  Bruno Haible  <bruno@clisp.org>
9143
9144         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
9145         encodings without forgiving before trying any encoding with handler.
9146         (str_iconveha): Try all encodings without forgiving before trying any
9147         encoding with handler.
9148
9149 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9150
9151         Import the following changes from libc.
9152
9153         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
9154
9155         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
9156
9157         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
9158
9159         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
9160         normal_bracket label.
9161
9162         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
9163
9164         [BZ #361]
9165         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
9166         to normal_bracket after fetching the next character.
9167
9168 2007-01-22  Bruno Haible  <bruno@clisp.org>
9169
9170         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
9171         argument.
9172         * lib/striconveh.c (iconv_carefully_1): New function.
9173         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
9174         argument.
9175         (str_cd_iconveh): Update.
9176         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
9177         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
9178         * tests/test-striconveh.c (MAGIC): New macro.
9179         (new_offsets): New function.
9180         (main): Test call with and without offsets.
9181
9182 2007-01-22  Bruno Haible  <bruno@clisp.org>
9183
9184         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
9185         * modules/sys_select (Makefile.am): Likewise.
9186         * modules/sys_socket (Makefile.am): Likewise.
9187         * modules/sys_time (Makefile.am): Likewise.
9188
9189 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9190
9191         * modules/gettimeofday (License): Change from GPL to LGPL, since
9192         gettimeofday is a library function.
9193
9194 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9195
9196         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
9197
9198 2007-01-21  Bruno Haible  <bruno@clisp.org>
9199
9200         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
9201
9202 2007-01-21  Bruno Haible  <bruno@clisp.org>
9203
9204         * modules/striconveha: New file.
9205         * lib/striconveha.h: New file.
9206         * lib/striconveha.c: New file.
9207         * MODULES.html.sh (Internationalization functions): Add striconveha.
9208         * lib/striconv.c (str_iconv): Optimize the case of an empty input
9209         string.
9210         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
9211
9212 2007-01-21  Bruno Haible  <bruno@clisp.org>
9213
9214         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
9215         * lib/striconveh.c (str_iconveh): Likewise.
9216
9217 2007-01-21  Bruno Haible  <bruno@clisp.org>
9218
9219         * lib/striconveh.h (mem_iconveh): New declaration.
9220         * lib/striconveh.c (mem_iconveh): New function.
9221         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
9222
9223 2007-01-21  Bruno Haible  <bruno@clisp.org>
9224
9225         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
9226
9227         * lib/striconveh.h (mem_cd_iconveh): Change specification.
9228         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
9229         original result buffer.
9230         (str_cd_iconveh): Update.
9231         * tests/test-striconveh.c (main): Update.
9232
9233         * lib/striconv.h (mem_cd_iconv): Change specification.
9234         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
9235         result buffer.
9236         (str_cd_iconv): Update.
9237         * tests/test-striconv.c (main): Update.
9238
9239 2007-01-21  Bruno Haible  <bruno@clisp.org>
9240
9241         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
9242
9243 2007-01-20  Jim Meyering  <jim@meyering.net>
9244
9245         * lib/userspec.c (parse_with_separator): If a user or group string
9246         starts with "+", skip the corresponding name-to-ID look-up, since
9247         such a look-up must fail: user and group names may not include "+".
9248
9249 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9250
9251         * lib/poll.c: Include sys/time.h and time.h unconditionally,
9252         since we now assume the sys_time module.
9253         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
9254         check for sys/time.h; no longer needed.
9255         * modules/poll (Depends-on): Depend on sys_time.
9256
9257 2007-01-18  Bruno Haible  <bruno@clisp.org>
9258
9259         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
9260         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
9261
9262         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
9263         gettimeofday.
9264
9265         * tests/test-gettimeofday.c: Include <time.h>.
9266         (dummy): Remove variable.
9267
9268         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
9269         gl_HEADER_SYS_TIME_H.
9270         (gl_HEADER_SYS_TIME_H): New macro.
9271
9272         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
9273         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9274         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
9275         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
9276         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9277         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
9278         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
9279         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9280         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
9281         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
9282         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9283
9284         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
9285         last change; it caused a compilation error when cross-compiling to
9286         Cygwin.
9287
9288 2007-01-18  Jim Meyering  <jim@meyering.net>
9289
9290         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
9291         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
9292         than the race-prone "test -d sys || mkdir sys".
9293         (configure.ac): Use AC_PROG_MKDIR_P.
9294         * modules/sys_select: Likewise.
9295         * modules/sys_socket: Likewise.
9296         * modules/sys_time: Likewise.
9297
9298 2007-01-18  Eric Blake  <ebb9@byu.net>
9299
9300         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
9301         replace gettimeofday.
9302         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
9303         name, to avoid infinite recursion.
9304
9305 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
9306
9307         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
9308         module sys_time.
9309         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
9310         assume timespec.h defines struct timeval.
9311         * lib/settime.c: Likewise.
9312         * lib/utimens.c: Likewise.
9313         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
9314         since we now assume the gettimeofday module.
9315         * lib/tempname.c (__gen_tempname): Likewise.
9316         * lib/gettimeofday.h: Remove.
9317         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
9318         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
9319         Include <time.h>, for 'time()'.
9320         (localtime_buffer_addr): Also use this workaround if
9321         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
9322         to simplify the uses.  All uses changed.
9323         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
9324         that #undef is inside {}, and 'const' follows type name consistently.
9325         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
9326         (gettimeofday): Do not use the maximum possible value for
9327         tv->tv_usec, since that might break usages other than ls.c.
9328         Instead, we'll leave ls.c alone.  This undoes today's patch
9329         by Bruno.  Add a compile-time warning for 1s-clock resolution;
9330         we've never observed the problem but might as well keep the
9331         canary.
9332         * lib/nanosleep.c: Include timespec.h first, for interface check.
9333         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
9334         now assume the sys_time module.
9335         * lib/tempname.c: Likewise.
9336         * lib/timespec.h: Likewise.
9337         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
9338         needed.
9339         * lib/strftime.c: Likewise.
9340         * lib/timespec.h: Likewise.
9341         * lib/posixtm.c: Include posixtm.h first, for interface check.
9342         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
9343         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
9344         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
9345         * lib/sys_time_.h: New file.
9346         * lib/timespec.h (struct timespec): Use long int, not long.
9347         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
9348         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
9349         Remove obsolescent call to AC_HEADER_TIME.
9350         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
9351         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
9352         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
9353         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
9354         Likewise.
9355         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
9356         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
9357         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
9358         into the sys_time module.  Check for gettimeofday just once.
9359         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
9360         for gettimeofday signature to just check the signature.  Merely
9361         compile it, since linking doesn't test signature.  Improve test for
9362         whether gettimeofday.o is actually needed.
9363         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
9364         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
9365         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
9366         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9367         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
9368         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
9369         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
9370         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
9371         than worrying about sys/time.h.
9372         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
9373         Don't bother worrying about TIME_WITH_SYS_TIME.
9374         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
9375         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
9376         * m4/sys_time_h.m4: New file.
9377         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
9378         Don't include sys/time.h.  Return from main rather than exiting.
9379         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
9380         all uses changed.
9381         * modules/gethrxtime (Depends-on): Add sys_time.
9382         * modules/gettime (Depends-on): Likewise.
9383         * modules/gettimeofday (Depends-on): Likewise.
9384         * modules/nanosleep (Depends-on): Likewise.
9385         * modules/settime (Depends-on): Likewise.
9386         * modules/tempname (Depends-on): Likewise.
9387         * modules/utimens (Depends-on): Likewise.
9388         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
9389         (Include:) Change back to <sys/time.h>.
9390         (Maintainer:) Add self.
9391         * modules/sys_time: New file.
9392         * modules/tempname (Depends-on): Add gettimeofday.
9393         * tests/test-gettimeofday.c: Include <sys/time.h>
9394         rather than gettimeofday.h.
9395
9396 2007-01-17  Bruno Haible  <bruno@clisp.org>
9397
9398         * gnulib-tool (func_get_license): Revert last patch. Instead, let
9399         the license default to GPL.
9400         (func_create_testdir): Don't complain if a module is LGPL and its
9401         tests module depends on GPLed modules.
9402
9403 2007-01-17  Bruno Haible  <bruno@clisp.org>
9404
9405         * lib/gettimeofday.c (gettimeofday): Add code for the case
9406         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
9407         maximum possible value for tv->tv_usec, rather than the minimum one.
9408
9409 2005-10-08  Martin Lambers  <marlam@marlam.de>
9410 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
9411 2007-01-16  Bruno Haible  <bruno@clisp.org>
9412
9413         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
9414         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
9415         gl_FUNC_GETTIMEOFDAY.
9416         (Include): Add gettimeofday.h.
9417         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
9418         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
9419         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
9420         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
9421         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
9422         * lib/gettimeofday.h: New file.
9423         * lib/gettimeofday.c: Include <sys/timeb.h>.
9424         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
9425         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9426         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
9427         fall back on time().
9428
9429         * tests/test-gettimeofday.c: New file.
9430         * modules/gettimeofday-tests: New file.
9431
9432 2007-01-16  Eric Blake  <ebb9@byu.net>
9433
9434         * modules/fnmatch (Depends-on): Depend on wchar.
9435         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
9436         * m4/fnmatch.m4: Likewise.
9437         * modules/mbchar (Makefile.am): Assume <wchar.h>.
9438         * m4/mbchar.m4: Likewise.
9439         * modules/mbswidth (Depends-on): Depend on wchar.
9440         * lib/mbswidth.c: Assume <wchar.h>.
9441         * m4/mbswidth.m4: Likewise.
9442         * modules/quotearg (Depends-on): Depend on wchar.
9443         * lib/quotearg.c: Assume <wchar.h>.
9444         * m4/quotearg.m4: Likewise.
9445         * modules/regex (Depends-on): Depend on wchar.
9446         * lib/regex_internal.h: Assume <wchar.h>.
9447         * m4/regex.m4: Likewise.
9448         * modules/stdint (Depends-on): Depend on wchar.
9449         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
9450         * m4/stdint.m4: Likewise.
9451         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
9452         * modules/strftime (Depends-on): Depend on wchar.
9453         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
9454         * modules/strtol (Depends-on): Depend on wchar.
9455         * lib/strtol.c: Assume <wchar.h>.
9456         * modules/wcwidth (Depends-on): Depend on wchar.
9457         * lib/wcwidth.h: Assume <wchar.h>.
9458         * m4/wcwidth.m4: Likewise.
9459
9460 2007-01-16  Bruno Haible  <bruno@clisp.org>
9461
9462         * modules/csharpexec-script: New, created from...
9463         * modules/csharpexec: ... this.
9464
9465 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
9466
9467         * modules/javaexec-script: New, created from...
9468         * modules/javaexec: ... this.
9469
9470 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9471
9472         * modules/poll (Dependencies): Add sys_select.
9473
9474 2007-01-15  Jim Meyering  <jim@meyering.net>
9475
9476         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
9477         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
9478         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
9479         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
9480
9481 2007-01-15  Bruno Haible  <bruno@clisp.org>
9482
9483         * modules/striconveh: New file.
9484         * lib/striconveh.h: New file.
9485         * lib/striconveh.c: New file.
9486         * MODULES.html.sh (Internationalization functions): Add striconveh.
9487
9488         * modules/striconveh-tests: New file.
9489         * tests/test-striconveh.c: New file.
9490
9491 2007-01-15  Bruno Haible  <bruno@clisp.org>
9492
9493         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
9494         not from GNU libiconv or GNU libc.
9495
9496 2007-01-15  Bruno Haible  <bruno@clisp.org>
9497
9498         * doc/gnulib-intro.texi (Copyright): Explain the different license
9499         terms for module descriptions, autoconf macros, tests, documentation.
9500
9501 2007-01-14  Bruno Haible  <bruno@clisp.org>
9502
9503         * modules/striconv-tests: New file.
9504         * tests/test-striconv.c: New file.
9505
9506 2007-01-14  Bruno Haible  <bruno@clisp.org>
9507
9508         * modules/iconv-tests: New file.
9509         * tests/test-iconv.c: New file.
9510
9511 2007-01-14  Bruno Haible  <bruno@clisp.org>
9512
9513         * gnulib-tool (func_get_license): For test modules, use the license of
9514         the main module.
9515
9516 2007-01-14  Bruno Haible  <bruno@clisp.org>
9517
9518         * modules/iconv (Include): Clarify that <iconv.h> can only be included
9519         if iconv is found to exist.
9520
9521 2007-01-14  Bruno Haible  <bruno@clisp.org>
9522
9523         * modules/c-ctype-tests: New file.
9524         * tests/test-c-ctype.c: New file.
9525
9526 2007-01-14  Bruno Haible  <bruno@clisp.org>
9527
9528         * modules/binary-io-tests: New file.
9529         * tests/test-binary-io.sh: New file.
9530         * tests/test-binary-io.c: New file.
9531
9532 2007-01-14  Bruno Haible  <bruno@clisp.org>
9533
9534         * modules/array-oset-tests: New file.
9535         * tests/test-array_oset.c: New file.
9536
9537 2007-01-14  Bruno Haible  <bruno@clisp.org>
9538
9539         * modules/array-list-tests: New file.
9540         * tests/test-array_list.c: New file.
9541
9542 2007-01-14  Bruno Haible  <bruno@clisp.org>
9543
9544         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
9545         and make.
9546         Reported by Simon Josefsson in
9547         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
9548
9549 2007-01-14  Bruno Haible  <bruno@clisp.org>
9550
9551         * modules/allocsa-tests: New file.
9552         * tests/test-allocsa.c: New file.
9553
9554 2007-01-14  Bruno Haible  <bruno@clisp.org>
9555
9556         * modules/fchdir (Depends-on): Add absolute-header.
9557         * modules/unistd (Depends-on): Likewise.
9558
9559 2006-12-30  Bruno Haible  <bruno@clisp.org>
9560
9561         * modules/fchdir: New file.
9562         * modules/unistd (Files): Add lib/unistd_.h.
9563         (Makefile.am): Generate unistd.h from unistd_.h.
9564         * lib/fchdir.c: New file.
9565         * lib/dirent_.h: New file.
9566         * lib/unistd_.h: New file.
9567         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
9568         * m4/fchdir.m4: New file.
9569         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
9570         (gl_HEADER_UNISTD): Invoke it.
9571         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
9572         function.
9573         * lib/backupfile.c (opendir, closedir): Undefine.
9574         * lib/chown.c (open, close): Undefine.
9575         * lib/clean-temp.c (open, close): Undefine.
9576         * lib/copy-file.c (open, close): Undefine.
9577         * lib/execute.c (open, close): Undefine.
9578         * lib/fsusage.c (open, close): Undefine.
9579         * lib/gc-gnulib.c (open, close): Undefine.
9580         * lib/getcwd.c (opendir, closedir): Undefine.
9581         * lib/glob.c (opendir, closedir): Undefine.
9582         * lib/javacomp.c (open, close): Undefine.
9583         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
9584         * lib/openat-proc.c (open, close): Undefine.
9585         * lib/pagealign_alloc.c (open, close): Undefine.
9586         * lib/pipe.c (open, close): Undefine.
9587         * lib/progreloc.c (open, close): Undefine.
9588         * lib/savedir.c (opendir, closedir): Undefine.
9589         * lib/utime.c (open, close): Undefine.
9590         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
9591
9592 2007-01-10  Bruno Haible  <bruno@clisp.org>
9593
9594         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
9595
9596 2007-01-12  Eric Blake  <ebb9@byu.net>
9597
9598         Provide a robust <wchar.h>.  Further simplifications are now
9599         possible in other modules, but not included here.
9600         * modules/wchar: New module.
9601         * m4/wchar.m4: New file.
9602         * lib/wchar_.h: Likewise.
9603         * modules/mbchar (Depends-on): Depend on wchar, as the first use
9604         of the new module.
9605         * MODULES.html.sh (Extended multibyte and wide character utilities):
9606         New section.
9607
9608 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
9609
9610         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
9611         to a reasonable default for memory allocation.
9612         (xreadlink): Don't allocate a huge buffer, to work around a buggy
9613         file system that reports garbage st_size values for symlinks.
9614         Problem reported by Liyang Hu.
9615
9616 2007-01-11  Simon Josefsson  <simon@josefsson.org>
9617
9618         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
9619         Emacs .#* auto-save files).
9620
9621 2007-01-11  Bruno Haible  <bruno@clisp.org>
9622
9623         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
9624         directory.
9625
9626 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
9627
9628         Use @...@ consistently in lib/wctype_.h.
9629         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
9630         on it being set to 1 or 0.
9631         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
9632         go back to AC_SUBSTing it.
9633         * modules/wctype (Makefile.am): Undo previous change.
9634
9635 2007-01-10  Eric Blake  <ebb9@byu.net>
9636
9637         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
9638         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
9639         * modules/wctype (Makefile.am): Likewise.
9640         Reported by Chris McGuire.
9641
9642 2007-01-10  Jim Meyering  <jim@meyering.net>
9643
9644         fts.c: a small readability/maintainability improvement
9645         * lib/fts.c (fts_read): Make this code slightly more readable and
9646         maintainable by hoisting the "sp->fts_cur = p" assignments to
9647         immediately follow the statements that set P.  Derived from
9648         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
9649
9650 2007-01-10  Eric Blake  <ebb9@byu.net>
9651
9652         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
9653         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
9654         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
9655         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
9656         Reported by Chris McGuire.
9657
9658 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9659
9660         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
9661         in sed script.
9662
9663 2007-01-09  Bruno Haible  <bruno@clisp.org>
9664
9665         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
9666         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
9667         variables.
9668         (func_module): Use them.
9669
9670 2007-01-09  Bruno Haible  <bruno@clisp.org>
9671
9672         * modules/unistr/base: New file.
9673         * lib/unistr.h: New file.
9674
9675         * modules/unistr/u8-to-u16: New file.
9676         * lib/unistr/u8-to-u16.c: New file.
9677
9678         * modules/unistr/u8-to-u32: New file.
9679         * lib/unistr/u8-to-u32.c: New file.
9680
9681         * modules/unistr/u16-to-u8: New file.
9682         * lib/unistr/u16-to-u8.c: New file.
9683
9684         * modules/unistr/u16-to-u32: New file.
9685         * lib/unistr/u16-to-u32.c: New file.
9686
9687         * modules/unistr/u32-to-u8: New file.
9688         * lib/unistr/u32-to-u8.c: New file.
9689
9690         * modules/unistr/u32-to-u16: New file.
9691         * lib/unistr/u32-to-u16.c: New file.
9692
9693         * modules/unistr/u8-check: New file.
9694         * modules/unistr/u16-check: New file.
9695         * modules/unistr/u32-check: New file.
9696         * lib/unistr/u8-check.c: New file.
9697         * lib/unistr/u16-check.c: New file.
9698         * lib/unistr/u32-check.c: New file.
9699
9700         * modules/unistr/u8-chr: New file.
9701         * modules/unistr/u16-chr: New file.
9702         * modules/unistr/u32-chr: New file.
9703         * lib/unistr/u8-chr.c: New file.
9704         * lib/unistr/u16-chr.c: New file.
9705         * lib/unistr/u32-chr.c: New file.
9706
9707         * modules/unistr/u8-cmp: New file.
9708         * modules/unistr/u16-cmp: New file.
9709         * modules/unistr/u32-cmp: New file.
9710         * lib/unistr/u8-cmp.c: New file.
9711         * lib/unistr/u16-cmp.c: New file.
9712         * lib/unistr/u32-cmp.c: New file.
9713
9714         * modules/unistr/u8-cpy: New file.
9715         * modules/unistr/u16-cpy: New file.
9716         * modules/unistr/u32-cpy: New file.
9717         * lib/unistr/u8-cpy.c: New file.
9718         * lib/unistr/u16-cpy.c: New file.
9719         * lib/unistr/u32-cpy.c: New file.
9720         * lib/unistr/u-cpy.h: New file.
9721
9722         * modules/unistr/u8-cpy-alloc: New file.
9723         * modules/unistr/u16-cpy-alloc: New file.
9724         * modules/unistr/u32-cpy-alloc: New file.
9725         * lib/unistr/u8-cpy-alloc.c: New file.
9726         * lib/unistr/u16-cpy-alloc.c: New file.
9727         * lib/unistr/u32-cpy-alloc.c: New file.
9728         * lib/unistr/u-cpy-alloc.h: New file.
9729
9730         * modules/unistr/u8-endswith: New file.
9731         * modules/unistr/u16-endswith: New file.
9732         * modules/unistr/u32-endswith: New file.
9733         * lib/unistr/u8-endswith.c: New file.
9734         * lib/unistr/u16-endswith.c: New file.
9735         * lib/unistr/u32-endswith.c: New file.
9736         * lib/unistr/u-endswith.h: New file.
9737
9738         * modules/unistr/u8-mblen: New file.
9739         * modules/unistr/u16-mblen: New file.
9740         * modules/unistr/u32-mblen: New file.
9741         * lib/unistr/u8-mblen.c: New file.
9742         * lib/unistr/u16-mblen.c: New file.
9743         * lib/unistr/u32-mblen.c: New file.
9744
9745         * modules/unistr/u8-mbtouc: New file.
9746         * modules/unistr/u16-mbtouc: New file.
9747         * modules/unistr/u32-mbtouc: New file.
9748         * lib/unistr/u8-mbtouc.c: New file.
9749         * lib/unistr/u16-mbtouc.c: New file.
9750         * lib/unistr/u32-mbtouc.c: New file.
9751
9752         * modules/unistr/u8-mbtouc-safe: New file.
9753         * modules/unistr/u16-mbtouc-safe: New file.
9754         * modules/unistr/u32-mbtouc-safe: New file.
9755         * lib/unistr/u8-mbtouc-safe.c: New file.
9756         * lib/unistr/u16-mbtouc-safe.c: New file.
9757         * lib/unistr/u32-mbtouc-safe.c: New file.
9758
9759         * modules/unistr/u8-move: New file.
9760         * modules/unistr/u16-move: New file.
9761         * modules/unistr/u32-move: New file.
9762         * lib/unistr/u8-move.c: New file.
9763         * lib/unistr/u16-move.c: New file.
9764         * lib/unistr/u32-move.c: New file.
9765         * lib/unistr/u-move.h: New file.
9766
9767         * modules/unistr/u8-next: New file.
9768         * modules/unistr/u16-next: New file.
9769         * modules/unistr/u32-next: New file.
9770         * lib/unistr/u8-next.c: New file.
9771         * lib/unistr/u16-next.c: New file.
9772         * lib/unistr/u32-next.c: New file.
9773
9774         * modules/unistr/u8-prev: New file.
9775         * modules/unistr/u16-prev: New file.
9776         * modules/unistr/u32-prev: New file.
9777         * lib/unistr/u8-prev.c: New file.
9778         * lib/unistr/u16-prev.c: New file.
9779         * lib/unistr/u32-prev.c: New file.
9780
9781         * modules/unistr/u8-set: New file.
9782         * modules/unistr/u16-set: New file.
9783         * modules/unistr/u32-set: New file.
9784         * lib/unistr/u8-set.c: New file.
9785         * lib/unistr/u16-set.c: New file.
9786         * lib/unistr/u32-set.c: New file.
9787         * lib/unistr/u-set.h: New file.
9788
9789         * modules/unistr/u8-startswith: New file.
9790         * modules/unistr/u16-startswith: New file.
9791         * modules/unistr/u32-startswith: New file.
9792         * lib/unistr/u8-startswith.c: New file.
9793         * lib/unistr/u16-startswith.c: New file.
9794         * lib/unistr/u32-startswith.c: New file.
9795         * lib/unistr/u-startswith.h: New file.
9796
9797         * modules/unistr/u8-stpcpy: New file.
9798         * modules/unistr/u16-stpcpy: New file.
9799         * modules/unistr/u32-stpcpy: New file.
9800         * lib/unistr/u8-stpcpy.c: New file.
9801         * lib/unistr/u16-stpcpy.c: New file.
9802         * lib/unistr/u32-stpcpy.c: New file.
9803         * lib/unistr/u-stpcpy.h: New file.
9804
9805         * modules/unistr/u8-stpncpy: New file.
9806         * modules/unistr/u16-stpncpy: New file.
9807         * modules/unistr/u32-stpncpy: New file.
9808         * lib/unistr/u8-stpncpy.c: New file.
9809         * lib/unistr/u16-stpncpy.c: New file.
9810         * lib/unistr/u32-stpncpy.c: New file.
9811         * lib/unistr/u-stpncpy.h: New file.
9812
9813         * modules/unistr/u8-strcat: New file.
9814         * modules/unistr/u16-strcat: New file.
9815         * modules/unistr/u32-strcat: New file.
9816         * lib/unistr/u8-strcat.c: New file.
9817         * lib/unistr/u16-strcat.c: New file.
9818         * lib/unistr/u32-strcat.c: New file.
9819         * lib/unistr/u-strcat.h: New file.
9820
9821         * modules/unistr/u8-strchr: New file.
9822         * modules/unistr/u16-strchr: New file.
9823         * modules/unistr/u32-strchr: New file.
9824         * lib/unistr/u8-strchr.c: New file.
9825         * lib/unistr/u16-strchr.c: New file.
9826         * lib/unistr/u32-strchr.c: New file.
9827
9828         * modules/unistr/u8-strcmp: New file.
9829         * modules/unistr/u16-strcmp: New file.
9830         * modules/unistr/u32-strcmp: New file.
9831         * lib/unistr/u8-strcmp.c: New file.
9832         * lib/unistr/u16-strcmp.c: New file.
9833         * lib/unistr/u32-strcmp.c: New file.
9834
9835         * modules/unistr/u8-strcpy: New file.
9836         * modules/unistr/u16-strcpy: New file.
9837         * modules/unistr/u32-strcpy: New file.
9838         * lib/unistr/u8-strcpy.c: New file.
9839         * lib/unistr/u16-strcpy.c: New file.
9840         * lib/unistr/u32-strcpy.c: New file.
9841         * lib/unistr/u-strcpy.h: New file.
9842
9843         * modules/unistr/u8-strcspn: New file.
9844         * modules/unistr/u16-strcspn: New file.
9845         * modules/unistr/u32-strcspn: New file.
9846         * lib/unistr/u8-strcspn.c: New file.
9847         * lib/unistr/u16-strcspn.c: New file.
9848         * lib/unistr/u32-strcspn.c: New file.
9849         * lib/unistr/u-strcspn.h: New file.
9850
9851         * modules/unistr/u8-strdup: New file.
9852         * modules/unistr/u16-strdup: New file.
9853         * modules/unistr/u32-strdup: New file.
9854         * lib/unistr/u8-strdup.c: New file.
9855         * lib/unistr/u16-strdup.c: New file.
9856         * lib/unistr/u32-strdup.c: New file.
9857         * lib/unistr/u-strdup.h: New file.
9858
9859         * modules/unistr/u8-strlen: New file.
9860         * modules/unistr/u16-strlen: New file.
9861         * modules/unistr/u32-strlen: New file.
9862         * lib/unistr/u8-strlen.c: New file.
9863         * lib/unistr/u16-strlen.c: New file.
9864         * lib/unistr/u32-strlen.c: New file.
9865         * lib/unistr/u-strlen.h: New file.
9866
9867         * modules/unistr/u8-strmblen: New file.
9868         * modules/unistr/u16-strmblen: New file.
9869         * modules/unistr/u32-strmblen: New file.
9870         * lib/unistr/u8-strmblen.c: New file.
9871         * lib/unistr/u16-strmblen.c: New file.
9872         * lib/unistr/u32-strmblen.c: New file.
9873
9874         * modules/unistr/u8-strmbtouc: New file.
9875         * modules/unistr/u16-strmbtouc: New file.
9876         * modules/unistr/u32-strmbtouc: New file.
9877         * lib/unistr/u8-strmbtouc.c: New file.
9878         * lib/unistr/u16-strmbtouc.c: New file.
9879         * lib/unistr/u32-strmbtouc.c: New file.
9880
9881         * modules/unistr/u8-strncat: New file.
9882         * modules/unistr/u16-strncat: New file.
9883         * modules/unistr/u32-strncat: New file.
9884         * lib/unistr/u8-strncat.c: New file.
9885         * lib/unistr/u16-strncat.c: New file.
9886         * lib/unistr/u32-strncat.c: New file.
9887         * lib/unistr/u-strncat.h: New file.
9888
9889         * modules/unistr/u8-strncmp: New file.
9890         * modules/unistr/u16-strncmp: New file.
9891         * modules/unistr/u32-strncmp: New file.
9892         * lib/unistr/u8-strncmp.c: New file.
9893         * lib/unistr/u16-strncmp.c: New file.
9894         * lib/unistr/u32-strncmp.c: New file.
9895
9896         * modules/unistr/u8-strncpy: New file.
9897         * modules/unistr/u16-strncpy: New file.
9898         * modules/unistr/u32-strncpy: New file.
9899         * lib/unistr/u8-strncpy.c: New file.
9900         * lib/unistr/u16-strncpy.c: New file.
9901         * lib/unistr/u32-strncpy.c: New file.
9902         * lib/unistr/u-strncpy.h: New file.
9903
9904         * modules/unistr/u8-strnlen: New file.
9905         * modules/unistr/u16-strnlen: New file.
9906         * modules/unistr/u32-strnlen: New file.
9907         * lib/unistr/u8-strnlen.c: New file.
9908         * lib/unistr/u16-strnlen.c: New file.
9909         * lib/unistr/u32-strnlen.c: New file.
9910         * lib/unistr/u-strnlen.h: New file.
9911
9912         * modules/unistr/u8-strpbrk: New file.
9913         * modules/unistr/u16-strpbrk: New file.
9914         * modules/unistr/u32-strpbrk: New file.
9915         * lib/unistr/u8-strpbrk.c: New file.
9916         * lib/unistr/u16-strpbrk.c: New file.
9917         * lib/unistr/u32-strpbrk.c: New file.
9918         * lib/unistr/u-strpbrk.h: New file.
9919
9920         * modules/unistr/u8-strrchr: New file.
9921         * modules/unistr/u16-strrchr: New file.
9922         * modules/unistr/u32-strrchr: New file.
9923         * lib/unistr/u8-strrchr.c: New file.
9924         * lib/unistr/u16-strrchr.c: New file.
9925         * lib/unistr/u32-strrchr.c: New file.
9926
9927         * modules/unistr/u8-strspn: New file.
9928         * modules/unistr/u16-strspn: New file.
9929         * modules/unistr/u32-strspn: New file.
9930         * lib/unistr/u8-strspn.c: New file.
9931         * lib/unistr/u16-strspn.c: New file.
9932         * lib/unistr/u32-strspn.c: New file.
9933         * lib/unistr/u-strspn.h: New file.
9934
9935         * modules/unistr/u8-strstr: New file.
9936         * modules/unistr/u16-strstr: New file.
9937         * modules/unistr/u32-strstr: New file.
9938         * lib/unistr/u8-strstr.c: New file.
9939         * lib/unistr/u16-strstr.c: New file.
9940         * lib/unistr/u32-strstr.c: New file.
9941         * lib/unistr/u-strstr.h: New file.
9942
9943         * modules/unistr/u8-strtok: New file.
9944         * modules/unistr/u16-strtok: New file.
9945         * modules/unistr/u32-strtok: New file.
9946         * lib/unistr/u8-strtok.c: New file.
9947         * lib/unistr/u16-strtok.c: New file.
9948         * lib/unistr/u32-strtok.c: New file.
9949         * lib/unistr/u-strtok.h: New file.
9950
9951         * modules/unistr/u8-uctomb: New file.
9952         * modules/unistr/u16-uctomb: New file.
9953         * modules/unistr/u32-uctomb: New file.
9954         * lib/unistr/u8-uctomb.c: New file.
9955         * lib/unistr/u16-uctomb.c: New file.
9956         * lib/unistr/u32-uctomb.c: New file.
9957
9958         * MODULES.html.sh (Unicode string functions): Add the new modules.
9959
9960 2007-01-08  Bruno Haible  <bruno@clisp.org>
9961
9962         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
9963         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
9964         subdirectories.
9965
9966 2007-01-08  Karl Berry  <karl@gnu.org>
9967
9968         * doc/error.texi: mention that main() fns must set program_name
9969         when progname is used.
9970
9971 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
9972
9973         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
9974         WCTYPE_H is empty, for the benefit of builds from non-distclean
9975         directories.  Problem reported by Eric Blake in
9976         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
9977
9978 2007-01-08  Bruno Haible  <bruno@clisp.org>
9979
9980         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
9981         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
9982         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
9983         PROVIDE_CANONICALIZE_FILENAME_MODE.
9984         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
9985
9986 2007-01-08  Bruno Haible  <bruno@clisp.org>
9987
9988         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
9989         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
9990         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
9991         * lib/fts.c: Likewise.
9992         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
9993
9994 2006-12-25  Bruno Haible  <bruno@clisp.org>
9995
9996         * modules/utf8-ucs4-safe: New file.
9997         * lib/utf8-ucs4-safe.h: New file.
9998         * lib/unistr/utf8-ucs4-safe.c: New file.
9999
10000         * modules/utf16-ucs4-safe: New file.
10001         * lib/utf16-ucs4-safe.h: New file.
10002         * lib/unistr/utf16-ucs4-safe.c: New file.
10003
10004         * MODULES.html.sh (Unicode string functions): Add the new modules.
10005
10006 2007-01-08  Bruno Haible  <bruno@clisp.org>
10007
10008         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
10009         (Depends-on): Add unitypes.
10010         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
10011         (u8_mbtouc_aux): Move out to separate file.
10012         (u8_mbtouc): Use ucs4_t, uint8_t types.
10013         * lib/unistr/utf8-ucs4.c: New file.
10014
10015         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
10016         (Depends-on): Add unitypes.
10017         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
10018         (u16_mbtouc_aux): Move out to separate file.
10019         (u16_mbtouc): Use ucs4_t, uint16_t types.
10020         * lib/unistr/utf16-ucs4.c: New file.
10021
10022         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
10023         (Depends-on): Add unitypes.
10024         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
10025         (u8_uctomb_aux): Move out to separate file.
10026         (u8_uctomb): Use ucs4_t, uint8_t types.
10027         * lib/unistr/ucs4-utf8.c: New file.
10028
10029         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
10030         (Depends-on): Add unitypes.
10031         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
10032         (u16_uctomb_aux): Move out to separate file.
10033         (u16_uctomb): Use ucs4_t, uint16_t types.
10034         * lib/unistr/ucs4-utf16.c: New file.
10035
10036 2006-12-25  Bruno Haible  <bruno@clisp.org>
10037
10038         * modules/unitypes: New file.
10039         * lib/unitypes.h: New file.
10040         * MODULES.html.sh (func_all_modules): New section "Unicode string
10041         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
10042         this section. Add unitypes.
10043
10044 2007-01-08  Bruno Haible  <bruno@clisp.org>
10045
10046         Avoid variable names that conflict with those from libtool.
10047         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
10048         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
10049         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
10050         library_names_spec to acl_library_names_spec, hardcode_* to
10051         acl_hardcode_*.
10052         Reported by Ralf Wildenhues.
10053
10054 2007-01-08  Bruno Haible  <bruno@clisp.org>
10055
10056         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
10057         definition.
10058         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
10059         definition.
10060         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
10061         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
10062         definition.
10063         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
10064         definition.
10065         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
10066         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
10067         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
10068         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
10069         definition.
10070         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
10071         definition.
10072         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
10073         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
10074         GC_USE_<algorithm>.
10075         * lib/gc-libgcrypt.c: Likewise.
10076         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
10077         * modules/gc-arctwo (configure.ac): Likewise.
10078         * modules/gc-des (configure.ac): Likewise.
10079         * modules/gc-hmac-md5 (configure.ac): Likewise.
10080         * modules/gc-hmac-sha1 (configure.ac): Likewise.
10081         * modules/gc-md2 (configure.ac): Likewise.
10082         * modules/gc-md4 (configure.ac): Likewise.
10083         * modules/gc-md5 (configure.ac): Likewise.
10084         * modules/gc-random (configure.ac): Likewise.
10085         * modules/gc-rijndael (configure.ac): Likewise.
10086         * modules/gc-sha1 (configure.ac): Likewise.
10087
10088 2007-01-08  Bruno Haible  <bruno@clisp.org>
10089
10090         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
10091         macro definition.
10092         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
10093         definition.
10094         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
10095         definition.
10096         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
10097         * modules/fcntl-safer (configure.ac): Likewise.
10098         * modules/fopen-safer (configure.ac): Likewise.
10099         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
10100         GNULIB_FWRITEERROR macro definition.
10101
10102 2007-01-08  Bruno Haible  <bruno@clisp.org>
10103
10104         * m4/gnulib-common.m4: New file.
10105         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
10106         (func_get_filelist): Add m4/gnulib-common.m4.
10107
10108 2007-01-08  Bruno Haible  <bruno@clisp.org>
10109
10110         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
10111         command.
10112
10113 2007-01-08  Jim Meyering  <jim@meyering.net>
10114
10115         Use a more robust test for a "can't happen" condition.
10116         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
10117         narrowed the st_size value.  Presuming the "can't happen" condition
10118         is true, that narrowing could conceivably convert an invalid st_size
10119         value into a valid one.  Instead, use a change based on Matthew
10120         Woehlke's original patch.
10121
10122         Slight readability improvement: use an assert-like macro
10123         in place of literal "abort ()" uses.
10124         * lib/fts.c (fts_assert): Define.
10125         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
10126         Use this macro instead of a bare 'abort'.
10127
10128 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
10129
10130         Don't worry about using IRIX 5.3's wctype.h broken definitions;
10131         simply work around them.
10132         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
10133         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
10134         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
10135         declaring.
10136         Don't bother to define as macros, since the standard doesn't require it.
10137         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
10138         longer worry about IRIX 5.3.
10139         (HAVE_WCTYPE_CTMP_BUG): Remove.
10140
10141 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
10142
10143         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
10144         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
10145         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
10146         Problems reported by Georg Schwarz for IRIX 5.3.
10147
10148         * gnulib-tool (autoconf_minversion): Take the maximum version number
10149         found, not the minimum.  Problem reported by James Youngman.
10150
10151 2007-01-03  Karl Berry  <karl@gnu.org>
10152
10153         * doc/error.texi: new file, explaining interaction with progname.
10154         * doc/gnulib.texi: include it.  Update copyright.
10155
10156 2007-01-03  Simon Josefsson  <simon@josefsson.org>
10157
10158         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
10159         AC_CANONICAL_HOST, to improve autobuild outputs.
10160
10161 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
10162             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
10163
10164         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
10165         sockets, server sockets, and other file descriptors.  Count errors
10166         to compute the return value.  Reorder the code a bit to be easier
10167         to follow.  Don't set event bits that were not requested (except
10168         POLLERR and POLLHUP).
10169
10170 2007-01-01  Bruno Haible  <bruno@clisp.org>
10171
10172         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
10173
10174 2007-01-03  Jim Meyering  <jim@meyering.net>
10175
10176         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
10177
10178 2007-01-02  Bruno Haible  <bruno@clisp.org>
10179
10180         * modules/settime (Include): Require timespec.h.
10181         * modules/nanosleep (Include): Likewise.
10182
10183 2007-01-01  Bruno Haible  <bruno@clisp.org>
10184
10185         * gnulib-tool (func_emit_copyright_notice): Bump year.
10186         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
10187
10188 2007-01-01  Bruno Haible  <bruno@clisp.org>
10189
10190         Improve support for OpenBSD.
10191         * build-aux/config.rpath (libname_spec): Export.
10192         (library_names_spec): New variable. Export.
10193         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
10194         library_names_spec from the config.rpath output. Locate shared library
10195         through the name pattern in library_names_spec.
10196
10197 2007-01-01  Eric Blake  <ebb9@byu.net>
10198
10199         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
10200
10201 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
10202
10203         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
10204         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
10205         assume the C locale, and avoid an "eval" that could cause trouble.
10206         Problem with SORT reported by Bob Proulx.
10207
10208         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
10209         Define.  Trivial patch from Henning Nielsen Lund, originally
10210         sent to bug-grep@gnu.org today.
10211
10212 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
10213
10214         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
10215         struct stat.  Problem reported by Henning Nielsen Lund.
10216         * lib/acl.c: Include acl.h first, to check interface.  Don't
10217         bother to include sys/types.h and sys/stat.h again.
10218
10219 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
10220
10221         Import the following change from libc; problem reported by
10222         Sven Verdoolaege.
10223
10224         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
10225
10226         [BZ #1373]
10227         * lib/argp.h: Remove __NTH for __argp_usage inline function.
10228
10229 2006-12-28  Jim Meyering  <jim@meyering.net>
10230
10231         * build-aux/announce-gen: Do not assume that the package
10232         builds any of tar.gz, tar.bz2, and .xdelta files.
10233         Suggestion from Simon Josefsson.
10234
10235 2006-12-28  Simon Josefsson  <simon@josefsson.org>
10236
10237         * modules/announce-gen: New file.
10238
10239 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
10240
10241         * lib/mbchar.h: Just include <wctype.h>; the wctype module
10242         handles its gotchas now.
10243         * lib/mbswidth.c: Likewise.
10244         * lib/wcwidth.h: Likewise.
10245         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
10246         and iswcntrl; the wctype module does this stuff now.
10247         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
10248         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10249         * modules/mbchar (Depends-on): Add wctype.
10250         * modules/mbswidth (Depends-on): Likewise.
10251         * modules/wcwidth (Depends-on): Likewise.
10252
10253 2006-12-27  Eric Blake  <ebb9@byu.net>
10254
10255         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
10256         module uses more than what <wctype.h> is required to provide.
10257
10258 2006-12-26  Eric Blake  <ebb9@byu.net>
10259
10260         * gnulib-tool (sed_extract_prog): Avoid space-tab.
10261
10262 2006-12-26  Eric Blake  <ebb9@byu.net>
10263
10264         * modules/absolute-header: New module.
10265         * modules/fcntl (Depends-on): Depend on it.
10266         * modules/inttypes (Depends-on): Likewise.
10267         * modules/stdint (Depends-on): Likewise.
10268         * modules/sys_stat (Depends-on): Likewise.
10269         * modules/wctype (Depends-on): Likewise.
10270         * MODULES.html.sh (Support for building libraries and
10271         executables): Document it.
10272
10273 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
10274
10275         * gnulib-tool (SED): Remove, undoing previous change.
10276         The problem was that it broke coreutils on Solaris, because
10277         "sed --posix" leaked into a makefile.
10278         (sed): New alias, if 'alias' and GNU sed.
10279
10280 2006-12-24  Jim Meyering  <jim@meyering.net>
10281
10282         Work around an fchownat bug in glibc-2.4:
10283         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
10284         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
10285         in spite of the -P option.
10286         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
10287         New macros.
10288         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
10289         * modules/openat (Files): Add lib/fchownat.c.
10290         * lib/openat.c (fchownat): Don't define here.  Move to...
10291         * lib/fchownat.c: ...this new file.
10292
10293 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10294
10295         Fix bug reported by Bruno Haible in
10296         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
10297         where quotearg.c didn't compile on Mac OS X 10.2 because it
10298         lacks <wchar.h> and wint_t.
10299         * lib/wctype_.h (__wctype_wint_t): New type.
10300         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
10301         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
10302         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
10303         Arg is now of type __wctype_wint_t, not wint_t.
10304         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
10305         substitute HAVE_WINT_T.
10306         * modules/wctype (Files): Add m4/wint_t.m4.
10307         (wctype.h): Substitute HAVE_WINT_T.
10308
10309 2006-12-23  Bruno Haible  <bruno@clisp.org>
10310
10311         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
10312
10313 2006-12-23  Bruno Haible  <bruno@clisp.org>
10314
10315         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
10316         S_ISLNK.
10317         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
10318         mingw.
10319
10320 2006-12-22  Bruno Haible  <bruno@clisp.org>
10321
10322         * lib/copy-file.c: Include acl.h.
10323         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
10324         Close the file descriptors only after being done with copy_acl.
10325         * modules/copy-file (Depends-on): Add acl.
10326
10327 2006-12-22  Bruno Haible  <bruno@clisp.org>
10328
10329         * gnulib-tool (SED): New variable.
10330         Use $SED instead of sed everywhere.
10331
10332 2006-12-22  Bruno Haible  <bruno@clisp.org>
10333
10334         * modules/no-c++: New file.
10335         * m4/no-c++.m4: New file.
10336         * MODULES.html.sh (Support for building libraries and executables):
10337         Add no-c++.
10338
10339 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
10340
10341         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
10342         Include <limits.h>, and use its INT_MAX to rewrite the
10343         j loop so that it does not overflow 'int'.  Problem reported by
10344         Ralf Wildenhues in
10345         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
10346         Play it safe by shifting left by 1 rather than multiplying by 2,
10347         as GCC is less likely to optimize this away when the value
10348         is signed (when it assumes overflow leads to undefined behavior).
10349         Also, don't assume time_t uses two's complement.
10350
10351 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10352
10353         * MODULES.html.sh: New module wctype.
10354         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
10355         * lib/fnmatch.c: Don't bother to include <wchar.h> before
10356         <wctype.h>, since the new wctype module should fix this.
10357         * lib/quotearg.c: Include <wctype.h> unconditionally, since
10358         the wctype module should arrange for it.
10359         * lib/regex_internal.h: Likewise.
10360         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
10361         since the wctype module should handle this now.
10362         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
10363         * modules/fnmatch (Depends-on): Add wctype.
10364         * modules/quotearg (Depends-on): Likewise.
10365         * modules/regex (Depends-on): Likewise.
10366
10367 2006-12-19  Bruno Haible  <bruno@clisp.org>
10368
10369         * lib/strdup.h [C++]: Wrap definitions in extern "C".
10370         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
10371
10372 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10373
10374         * modules/savewd (Depends-on): Fix dependency on fcntl.
10375
10376 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10377
10378         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
10379         conforms to C99, rather than relying on the user's environment
10380         setting of STDINT_H.
10381
10382 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10383         and Eric Blake  <ebb9@byu.net>
10384
10385         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
10386         This is more consistent with the other defines here.
10387         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
10388         Port to z/OS.  Problem reported by Paul Gilmartin.
10389         Change local vars to use gl_ prefix rather than ac_.
10390         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
10391         with other defines.
10392         * modules/double-slash-root: New module.
10393         * modules/dirname (Files): Remove m4/double-slash-root.m4.
10394         (Depends-on): Add double-slash-root.
10395         * MODULES.html.sh (File system functions): Mention new module.
10396
10397 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
10398
10399         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
10400         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
10401         This is for the benefit of gzip, which doesn't do i18n.
10402
10403 2006-12-12  Jim Meyering  <jim@meyering.net>
10404
10405         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
10406         Reported by Andreas Schwab <schwab@suse.de>.
10407
10408 2006-12-12  Bruno Haible  <bruno@clisp.org>
10409
10410         Merge these changes.
10411         2006-09-05  Bruno Haible  <bruno@clisp.org>
10412         * lib/iconvme.c (iconv_string): No need to save and restore errno when
10413         iconv_alloc succeeded.
10414         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
10415         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
10416         test for " && dest " at the end - dest is always != NULL there. Call
10417         iconv with 4xNULL arguments initially, to reset the state. Call iconv
10418         with 2xNULL arguments, also to flush the state storage. Handle the
10419         IRIX iconv behaviour. Realloc the final result, to throw away unused
10420         memory.
10421
10422 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
10423
10424         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
10425         and fchmodat unconditionally, since glibc 2.4 has them.
10426         Problem reported by Arkadiusz Miskiewicz.
10427
10428 2006-12-10  Bruno Haible  <bruno@clisp.org>
10429
10430         * gnulib-tool (func_import): Show the include files only for those
10431         modules that are copied and specified.
10432         Reported by Karl Berry.
10433
10434 2006-12-08  Jim Meyering  <jim@meyering.net>
10435
10436         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
10437         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
10438
10439         * build-aux/announce-gen: Add two new options, both optional:
10440         --bootstrap-tools=TOOL_LIST
10441               a comma-separated list of tools, e.g.,
10442               autoconf,automake,bison,gnulib
10443         --gnulib-snapshot-date=DATE
10444               if gnulib is in the bootstrap tool list,
10445               then report this as the snapshot date.
10446               If not specified, use the current date/time.
10447               If you specify a date here, be sure it's UTC.
10448
10449 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10450
10451         * tests/test-argp-2.sh: Fix test to match actual output.
10452         (func_compare): Fix sed script to be portable.
10453
10454 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
10455
10456         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
10457         workaround for this case.  It is not autoconfigured now; offhand
10458         it's hard to see how to autoconfigure it.
10459
10460 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
10461
10462         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
10463         a directory that is about to be chowned.  Such a directory's
10464         initial file permissions should permit the owner only and this
10465         should not be changed until after the chown, since the group and
10466         other bits would be incorrect if they granted permission before
10467         the chown.
10468
10469         Fix porting problem for iswctype reported by Georg Schwarz in:
10470         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
10471         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
10472         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
10473         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
10474         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10475
10476 2006-12-03  Jim Meyering  <jim@meyering.net>
10477
10478         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
10479         p->fts_statp may not yet be defined.
10480         (fts_read): Instead, set it in the caller, once p->fts_statp is
10481         sure to be defined, and corresponds to a top-level directory.
10482         This bug made du -x fail.  Here's the coreutils test case:
10483         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
10484         Reported by Mike Frysinger.
10485
10486 2006-12-01  Jim Meyering  <jim@meyering.net>
10487
10488         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
10489         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
10490         Reported by Simon Josefsson.
10491
10492 2006-11-30  Jim Meyering  <jim@meyering.net>
10493
10494         * m4/warning.m4: Use the all-permissive copyright notice
10495         recommended by RMS (rather than LGPL).
10496         * m4/vararrays.m4: Likewise.
10497         * m4/flexmember.m4: Likewise.
10498
10499 2006-11-29  Bruno Haible  <bruno@clisp.org>
10500
10501         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
10502         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
10503         using +=.
10504         Reported by Simon Josefsson <simon@josefsson.org>.
10505
10506 2006-11-28  James Youngman <jay@gnu.org>
10507
10508         * README: Advise users that they might find the bug-gnulib@gnu.org
10509         and autotools-announce@gnu.org mailing lists useful.
10510
10511 2006-11-28  Bruno Haible  <bruno@clisp.org>
10512
10513         * m4/ptrdiff_max.m4: Remove file.
10514
10515 2006-11-21  Bruno Haible  <bruno@clisp.org>
10516
10517         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
10518         _AC_COMPUTE_INT.
10519         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10520         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
10521         _AC_COMPUTE_INT.
10522         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10523         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
10524         _AC_COMPUTE_INT.
10525         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10526
10527 2006-11-28  Jim Meyering  <jim@meyering.net>
10528
10529         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
10530         warning from "gcc -Wshadow" about shadowing the builtin.
10531
10532 2006-11-27  Bruno Haible  <bruno@clisp.org>
10533
10534         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
10535         _AC_COMPUTE_INT.
10536         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10537
10538 2006-11-27  Bruno Haible  <bruno@clisp.org>
10539             Paul Eggert  <eggert@cs.ucla.edu>
10540
10541         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
10542
10543 2006-11-26  Bruno Haible  <bruno@clisp.org>
10544
10545         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
10546         noinst_LTLIBRARIES.
10547
10548 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
10549             Bruno Haible  <bruno@clisp.org>
10550
10551         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
10552         if compiling with "gcc -ansi".
10553
10554 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
10555
10556         Fix some incompatibilities with gcc -ansi -pedantic.
10557         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
10558         if compiling pedantically with GCC, unless it's C99 or later.
10559         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
10560         it mishandles gcc -ansi -pedantic as well.
10561         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
10562         if gcc -pedantic.
10563         * lib/regexec.c (check_node_accept_bytes): Don't use auto
10564         initializers for struct if -pedantic, unless it's C99 or later.
10565
10566 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
10567
10568         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
10569         Don't close an fd more than once. Identical atimes indicate
10570         success, not failure.
10571
10572 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
10573
10574         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
10575
10576 2006-11-23  Jim Meyering  <jim@meyering.net>
10577
10578         * build-aux/announce-gen: New file.  From coreutils.
10579
10580 2006-11-22  Jim Meyering  <jim@meyering.net>
10581
10582         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
10583         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
10584         (fts_read): Use a temporary to narrow the overused st_size member
10585         before using it in a switch statement.  Reported by Matthew Woehlke.
10586
10587         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
10588         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
10589
10590 2006-11-20  Bruno Haible  <bruno@clisp.org>
10591
10592         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
10593         changequote instead of pairs of brackets.
10594         Reported by Andreas Schwab <schwab@suse.de>.
10595
10596 2006-11-21  Jim Meyering  <jim@meyering.net>
10597
10598         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
10599         so as to remain compatible with older compilers.
10600         Patch from Michael Deutschmann.
10601
10602 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10603
10604         * MODULES.html.sh (File system functions): Add openat.
10605
10606         * lib/openat.h (rpl_fstatat): New macro, if
10607         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
10608         (fstatat): Define to rpl_fstatat under the same conditions,
10609         unless COMPILING_FSTATAT.
10610         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
10611         seems to have the bug.
10612         * lib/fstatat.c: New file.
10613         * modules/openat (Files): Add it.
10614
10615 2006-11-20  Bruno Haible  <bruno@clisp.org>
10616
10617         * Makefile: New file.
10618
10619 2006-11-20  Jim Meyering  <jim@meyering.net>
10620
10621         The beginnings of syntax-related checks for gnulib.
10622         * lib/Makefile: New file.
10623         * lib/t-idcache: New script.  Ensure that the two halves of
10624         idcache.c stay in sync.
10625
10626         * lib/idcache.c: Adjust comments in user- and group- portions to
10627         be more accurate, and to be consistent with one another.
10628
10629 2006-11-20  Jim Meyering  <jim@meyering.net>
10630
10631         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
10632         continue using the flexible array member (thus, this module performs
10633         half as many malloc calls), with the addition that...
10634         (getgroup, getuser): Consistently record a non-match via an empty
10635         "name" string, and map an empty string match to a NULL return value.
10636         * modules/idcache (Depends-on): Re-add flexmember.
10637
10638         * lib/idcache.c (getuser): Remove all uses of the register keyword.
10639         (getuidbyname, getgroup, getgidbyname): Likewise.
10640
10641         Use cleaner syntax: NULL rather than 0.
10642         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
10643
10644 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10645
10646         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
10647         It mishandled the case where the group was missing.
10648         Problem reported by Greg Schafer.
10649         * modules/idcache: Likewise.
10650
10651 2006-11-18  Jim Meyering  <jim@meyering.net>
10652
10653         * check-module (%exempt_header): Add exception for some
10654         conditionally-included headers.
10655
10656         * modules/i-ring (Depends-on): Add verify.
10657         (License): Change to LGPL.
10658
10659 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
10660
10661         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
10662         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
10663         and inttostr.h.  Use snprintf rather than uinttostr, so that
10664         LGPLed code doesn't depend on GPLed.
10665
10666 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
10667
10668         * modules/inline (License): Change from GPL to LGPL.
10669
10670 2006-11-17  Jim Meyering  <jim@meyering.net>
10671
10672         * modules/d-type (License): Switch to LGPL.
10673
10674 2006-11-15  Bruno Haible  <bruno@clisp.org>
10675
10676         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
10677
10678 2006-11-15  Eric Blake  <ebb9@byu.net>
10679
10680         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
10681         the module dependency.
10682
10683 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10684             Bruno Haible  <bruno@clisp.org>
10685
10686         * gnulib-tool (func_create_testdir): Add license consistency check.
10687
10688 2006-11-15  Eric Blake  <ebb9@byu.net>
10689
10690         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
10691         random "(cached)" in configure output.
10692
10693 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10694
10695         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
10696         test for conforming inttypes.h is both announced and cached.
10697
10698         * MODULES.html.sh (seen_modules, seen_files): New variables.
10699         (func_module): Rewrite to use a few less gnulib-tool and sed
10700         invocations.  Avoid a couple of quadratic algorithms for ...
10701         (missed_modules, missed_files): ... these, with ...
10702         (func_append, func_tmpdir): ... these new functions, from
10703         gnulib-tool.  Analogously, install traps for cleanup.
10704
10705         * tests/test-gc.c (main): Remove unused variables.
10706         * tests/test-read-file.c: Include stdlib.h, for 'free'.
10707
10708 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
10709
10710         * modules/inttostr (License): Change to LGPL.
10711
10712 2006-11-14  Eric Blake  <ebb9@byu.net>
10713
10714         * modules/tempname (License): Change to LGPL.
10715
10716 2006-11-14  Eric Blake  <ebb9@byu.net>
10717
10718         * doc/functions.texi (Function Portability): *printf functions on
10719         Cygwin now understand all POSIX size specifiers.
10720
10721 2006-11-14  Bruno Haible  <bruno@clisp.org>
10722
10723         * modules/c-ctype (License): Change to LGPL.
10724
10725 2006-11-12  Bruno Haible  <bruno@clisp.org>
10726
10727         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
10728         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
10729         for GNOME libraries, for which the include files are installed in
10730         subdirectories of $prefix/include.
10731
10732 2006-11-12  Bruno Haible  <bruno@clisp.org>
10733
10734         * m4/lib-link.m4: Require at least autoconf-2.54.
10735         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
10736         name to underscores for the --with option.
10737
10738 2006-11-13  Bruno Haible  <bruno@clisp.org>
10739
10740         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
10741         the tests directory.
10742         Reported by Ralf Wildenhues.
10743
10744 2006-11-13  Bruno Haible  <bruno@clisp.org>
10745
10746         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
10747         (func_emit_initmacro_end): Undo the override here.
10748         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
10749         Works around the famous automake error in coreutils.
10750
10751 2006-11-13  Eric Blake  <ebb9@byu.net>
10752
10753         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
10754         element, not its node.
10755
10756 2006-11-12  Bruno Haible  <bruno@clisp.org>
10757
10758         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
10759         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
10760
10761 2006-11-12  Bruno Haible  <bruno@clisp.org>
10762
10763         * gnulib-tool: New option --local-symlink.
10764         (func_usage): Document it.
10765         (lsymbolic): New variable.
10766         (func_import, func_create_testdir): If --symlink was not specified,
10767         test whether --local-symlink was specified and the file comes from
10768         the local_gnulib_dir.
10769
10770 2006-11-12  Bruno Haible  <bruno@clisp.org>
10771
10772         * gnulib-tool (func_ln): New function.
10773         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
10774
10775 2006-11-12  Bruno Haible  <bruno@clisp.org>
10776
10777         Finish support for source files in subdirectories.
10778         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
10779         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
10780         AUTOMAKE_OPTIONS.
10781         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
10782
10783 2006-11-12  Bruno Haible  <bruno@clisp.org>
10784
10785         * gnulib-tool (func_get_automake_snippet): Synthesize also an
10786         EXTRA_lib_SOURCES augmentation.
10787         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
10788
10789 2006-11-12  Jim Meyering  <jim@meyering.net>
10790
10791         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
10792         file descriptors.  This also averts a failure on systems with
10793         native openat support when a traversed directory lacks "x" access.
10794         * lib/fts_.h: Include "i-ring.h"
10795         (struct FTS) [fts_fd_ring]: New member.
10796         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
10797         (FCHDIR): Add parentheses.
10798         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
10799         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
10800         When descending, rather than simply closing the previous
10801         fts_cwd_fd value, push that file descriptor onto the ring.
10802         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
10803         (fts_open): Initialize the new fd_ring member.
10804         (fts_close): Clear the ring.
10805         (fts_safe_changedir): When possible, use our new fd_ring to skip
10806         the diropen and fstat and dev/ino comparison that would normally
10807         accompany a virtual `chdir ("..")'.
10808
10809         * modules/fts (Depends-on): Add i-ring.
10810         * modules/i-ring: New module.
10811         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
10812         * m4/i-ring.m4: New file.
10813
10814 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10815
10816         * gnulib-tool (func_create_testdir): Fix replacement of
10817         `build-aux' in configure.ac.  Run autotools in gltests
10818         subdirectory.
10819         (func_create_testdir, func_create_megatestdir, test): There is
10820         no need for '--force' in most autotool invocations in a new
10821         tree.  Actually fail the whole test if any of the tools, or the
10822         configure or make stages fail.
10823
10824         Sync from Automake.
10825         * build-aux/gnupload: Revert last change.  Add pointer to upload
10826         instructions of the GNU Maintenance Instructions.
10827         Suggestion by Karl Berry.
10828
10829 2006-11-10  Jim Meyering  <jim@meyering.net>
10830
10831         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
10832
10833 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
10834
10835         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
10836         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
10837         (bind_textdomain_codeset) [! ENABLE_NLS]:
10838         Evaluate all the arguments.  That way, callers get compatible behavior
10839         if the arguments have side effects.  Also, it avoids some GCC
10840         diagnostics in some cases; Joel E. Denny reported problems when Bison
10841         was configured with --enable-gcc-warnigs.
10842
10843 2006-11-10  Jim Meyering  <jim@meyering.net>
10844
10845         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
10846         relevant options in CFLAGS (like -O, -fno-inline) are taken into
10847         account.
10848
10849 2006-11-10  Jim Meyering  <jim@meyering.net>
10850
10851         * modules/inline: New file/module.
10852         * modules/xalloc (Files): Remove m4/inline.m4.
10853         (Depends-on): Add inline, instead.
10854         * modules/oset: Likewise.
10855         * modules/list: Likewise.
10856
10857 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
10858
10859         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
10860         Problem reported by Matthew Woehlke.
10861
10862 2006-11-09  Bruno Haible  <bruno@clisp.org>
10863
10864         * lib/tempname.c (gen_tempname): Remove variant that invokes
10865         __gen_tempname.
10866         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
10867         __gen_tempname.
10868
10869 2006-11-08  Bruno Haible  <bruno@clisp.org>
10870
10871         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
10872         to 'yes' instead of 'cross-compiling'.
10873
10874 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
10875
10876         * lib/quotearg.h (quotearg_free): New decl.
10877         * lib/quotearg.c (quotearg_free): New function.
10878         (slot0, nslots, slotvec0, slotvec):
10879         Now file-scope so that quotearg_free can get at them.
10880
10881 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10882
10883         Sync from Automake.
10884         * build-aux/gnupload: Add missing 'gnu' to example URL.
10885         Report by Karl Berry.
10886
10887 2006-11-08  Bruno Haible  <bruno@clisp.org>
10888
10889         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
10890         Suggested by Paul Eggert.
10891
10892 2006-11-08  Jim Meyering  <jim@meyering.net>
10893
10894         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
10895         It's already included if !_LIBC.
10896         (fts_safe_changedir): Add a comment.
10897
10898 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
10899
10900         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
10901         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
10902         Matthew Woehlke.
10903
10904         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
10905         definitions up, to avoid colliding with change below.
10906         (static_inline) [HAVE_INLINE]: New macro.
10907         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
10908         Provide extern decls when !HAVE_INLINE.  Do not define unless
10909         static_inline is defined, either by us or by xmalloc.c.  Use
10910         static_inline rather than static inline.
10911         (XCALLOC): Optimize sizeof(T) = 1 case.
10912         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
10913
10914 2006-11-07  Bruno Haible  <bruno@clisp.org>
10915
10916         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
10917         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
10918         AC_C_INLINE.
10919         * modules/xalloc (Files): Add m4/inline.m4.
10920
10921 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10922
10923         * README: Fix typo.
10924         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
10925         (Miscellanous Notes): ...from this.
10926
10927 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
10928
10929         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
10930         Mention that offsetof should be used instead of sizeof.
10931         From Bruno Haible.
10932
10933 2006-11-07  Bruno Haible  <bruno@clisp.org>
10934
10935         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
10936
10937 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
10938
10939         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
10940         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
10941         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
10942         (gl_tree_add_before, gl_tree_add_after):
10943         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
10944         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
10945         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
10946         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
10947         (gl_linked_add_after, gl_linked_add_at): Likewise.
10948         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
10949         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
10950         (gl_tree_add_before, gl_tree_add_after): Likewise.
10951         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
10952         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
10953         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
10954
10955 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10956
10957         * lib/gl_oset.h: Use C comment style, not C++ comment style.
10958
10959 2006-11-06  Bruno Haible  <bruno@clisp.org>
10960
10961         * m4/inline.m4: New file.
10962         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
10963         * modules/list (Files): Add m4/inline.m4.
10964         * modules/oset (Files): Likewise.
10965
10966 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
10967
10968         * lib/idcache.c: Include <stddef.h>, for offsetof.
10969         (struct userid.name): Change from char * to a flexible array member.
10970         All uses changed.
10971         * modules/idcache (Depends-on): Add flexmember.
10972
10973         * MODULES.html.sh (Core language properties): New module flexmember.
10974         * modules/flexmember, m4/flexmember.m4: New files.
10975
10976         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
10977         inline functions that are identical with the old xnmalloc_inline,
10978         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
10979         that we can avoid some unnecessary integer multiplications and
10980         divisions in the common case where the element size is known at
10981         compile time.
10982         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
10983         needed.
10984         (xnboundedmalloc): Remove.
10985         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
10986         arguments, for consistency with rest of this header.
10987         (xcharalloc): Rewrite using XNMALLOC.
10988         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
10989         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
10990         versions have been moved to lib/xalloc.h and renamed to be the
10991         non-*_inline versions.
10992         (xmalloc, xrealloc): Implement without reference to the xnmalloc
10993         and xnrealloc functions, since those functions are now inline and
10994         now call us.
10995         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
10996         renaming described above.
10997         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
10998         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
10999         captures the dependency in AC_C_INLINE.
11000
11001         New module canonicalize-lgpl, proposed by Charles Wilson in
11002         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
11003         with a few small changes afterwards.
11004         * MODULES.html.sh (File system functions): New module
11005         canonicalize-lgpl.
11006         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
11007         and canonicalize_file_name.
11008         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
11009         * modules/canonicalize-lgpl: New files.
11010
11011 2006-11-05  Bruno Haible  <bruno@clisp.org>
11012
11013         * gnulib-tool (func_import, func_create_testdir): Create directories
11014         also for files in subdirectories of lib/.
11015
11016 2006-11-05  Bruno Haible  <bruno@clisp.org>
11017
11018         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
11019         ANSI C compliant.
11020
11021 2006-11-03  Bruno Haible  <bruno@clisp.org>
11022
11023         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
11024         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
11025         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
11026         (xnboundedmalloc): New inline function.
11027         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
11028         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
11029         xmalloc.
11030         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
11031         xmalloc.
11032         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
11033         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
11034         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
11035         xmalloc.
11036         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11037         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
11038         xmalloc.
11039         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
11040         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11041         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
11042         xmalloc.
11043         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11044         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
11045         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11046         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
11047         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
11048         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
11049         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
11050
11051 2006-11-03  Bruno Haible  <bruno@clisp.org>
11052
11053         * lib/c-ctype.h [C++]: Define functions without name mangling.
11054         * lib/fwriteerror.h [C++]: Likewise.
11055         * lib/gcd.h [C++]: Likewise.
11056         * lib/linebreak.h [C++]: Likewise.
11057
11058 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
11059
11060         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
11061         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
11062         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
11063         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
11064         Check for functions and headers just once.
11065         Check for declaration of canonicalize_file_name.
11066         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
11067
11068 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11069
11070         * gnulib-tool (func_import): Fix typo in actioncmd.
11071
11072 2006-11-02  Bruno Haible  <bruno@clisp.org>
11073
11074         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
11075         newline sequence in the Makefile.am snippet as a space, like "make"
11076         does.
11077         Reported by Roger Persson <perrog@gmail.com>.
11078
11079 2006-11-01  Bruno Haible  <bruno@clisp.org>
11080
11081         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
11082         already declared in <string.h>.
11083         * lib/strcase.h (strncasecmp): Don't declare it if yes.
11084
11085 2006-11-01  Bruno Haible  <bruno@clisp.org>
11086
11087         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
11088         * lib/strcase.h: Include <string.h>.
11089         (strcasecmp): Define to rpl_strcasecmp here.
11090
11091 2006-11-01  Bruno Haible  <bruno@clisp.org>
11092
11093         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
11094
11095 2006-11-01  Eric Blake  <ebb9@byu.net>
11096
11097         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
11098
11099         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
11100
11101 2006-10-29  Bruno Haible  <bruno@clisp.org>
11102
11103         Make it compile in C++ mode.
11104         * lib/full-write.c (full_rw): Add a cast.
11105
11106 2006-11-01  Bruno Haible  <bruno@clisp.org>
11107
11108         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
11109         be POSIX compliant.
11110         Reported by Roger Persson <perrog@gmail.com>.
11111
11112 2006-11-01  Eric Blake  <ebb9@byu.net>
11113
11114         * lib/getopt_.h: Fix comments.
11115
11116 2006-10-31  Eric Blake  <ebb9@byu.net>
11117
11118         * modules/tmpdir (Depends-on): Add sys_stat.
11119         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
11120         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
11121         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
11122         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
11123         tempname.
11124
11125 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
11126
11127         Avoid some C++ diagnostics reported by Bruno Haible.
11128         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
11129         xmalloc.
11130         (quotearg_alloc): Use xcharalloc rather than xmalloc.
11131         (struct slotvec): Move to top level.
11132         (quotearg_n_options): Rewrite to avoid xmalloc.
11133         * lib/xalloc.h (xcharalloc): New function.
11134         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
11135         [defined __cplusplus]: Add function template that provides result
11136         type propagation.  This part of the change is from Bruno Haible.
11137
11138 2006-10-29  Bruno Haible  <bruno@clisp.org>
11139
11140         Make it compile in C++ mode.
11141         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
11142         * lib/strnlen1.c (strnlen1): Cast memchr result.
11143         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
11144         * lib/clean-temp.c (string_equals, string_hash): Add casts.
11145         (create_temp_dir): Rename local variable 'template'.
11146         (compile_csharp_using_sscli): Add cast.
11147         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
11148         * lib/findprog.c (find_in_path): Likewise.
11149         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
11150         * lib/wait-process.c (register_slave_subprocess): Likewise.
11151
11152 2006-10-22  Bruno Haible  <bruno@clisp.org>
11153
11154         * modules/tsearch: New file.
11155         * lib/tsearch.h: New file.
11156         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
11157         * m4/tsearch.m4: New file.
11158         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
11159
11160 2006-10-29  Eric Blake  <ebb9@byu.net>
11161
11162         * lib/arcfour.c: Assume config.h.
11163         * lib/arctwo.c: Likewise.
11164         * lib/base64.c: Likewise.
11165         * lib/check-version.c: Likewise.
11166         * lib/crc.c: Likewise.
11167         * lib/des.c: Likewise.
11168         * lib/gc-gnulib.c: Likewise.
11169         * lib/gc-libgcrypt.c: Likewise.
11170         * lib/gc-pbkdf2-sha1.c: Likewise.
11171         * lib/getaddrinfo.c: Likewise.
11172         * lib/getdelim.c: Likewise.
11173         * lib/getline.c: Likewise.
11174         * lib/hmac-md5.c: Likewise.
11175         * lib/hmac-sha1.c: Likewise.
11176         * lib/iconvme.c: Likewise.
11177         * lib/md2.c: Likewise.
11178         * lib/md4.c: Likewise.
11179         * lib/memxor.c: Likewise.
11180         * lib/read-file.c: Likewise.
11181         * lib/readline.c: Likewise.
11182         * lib/rijndael-alg-fst.c: Likewise.
11183         * lib/rijndael-api-fst.c: Likewise.
11184         * lib/xgetdomainname.c: Likewise.
11185
11186 2006-10-28  Eric Blake  <ebb9@byu.net>
11187
11188         * lib/xstrndup.c: Assume config.h.
11189
11190 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
11191
11192         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
11193         stat-macros.h is now for our own macros, whereas stat_h is for
11194         macros in the <sys/stat.h> name space.
11195         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
11196         (STAT_MACROS_H): Remove.
11197         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
11198         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
11199         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
11200         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
11201         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
11202         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
11203         Move these macros to ...
11204         * lib/stat_.h: here.  Don't include stat-macros.h.
11205         * lib/canonicalize.c: Don't include stat-macros.h.
11206         * lib/chown.c: Likewise.
11207         * lib/euidaccess.c: Likewise.
11208         * lib/file-type.c: Likewise.
11209         * lib/filemode.c: Likewise.
11210         * lib/glob.c: Likewise.
11211         * lib/isapipe.c: Likewise.
11212         * lib/lchown.c: Likewise.
11213         * lib/lstat.c: Likewise.
11214         * lib/mkdir-p.c: Likewise.
11215         * lib/rmdir.c: Likewise.
11216         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
11217         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
11218         unless mkdir isn't declared, to speed up 'configure'.
11219         Always create sys/stat.h, since it's unlikely any real sys/stat.h
11220         would define all the S_* symbols.
11221         * modules/canonicalize (Depends-on):
11222         Depend on sys_stat, not stat-macros.
11223         * modules/chown: Likewise.
11224         * modules/euidaccess: Likewise.
11225         * modules/filemode: Likewise.
11226         * modules/file-type: Likewise.
11227         * modules/glob: Likewise.
11228         * modules/isapipe: Likewise.
11229         * modules/lchown: Likewise.
11230         * modules/lstat: Likewise.
11231         * modules/mkancesdirs: Likewise.
11232         * modules/rmdir: Likewise.
11233         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
11234         * modules/modechange: Likewise.
11235         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
11236         (configure.ac): Remove gl_STAT_MACROS.
11237         * modules/sys_stat (Depends-on): Remove stat-macros.
11238
11239 2006-10-27  Bruno Haible  <bruno@clisp.org>
11240
11241         * m4/signed.m4: Remove file.
11242         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
11243         invocation.
11244         * modules/vasnprintf (Files): Remove m4/signed.m4.
11245
11246 2006-10-27  Bruno Haible  <bruno@clisp.org>
11247
11248         Update to GNU gettext 0.16.
11249         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
11250         m4/inttypes-h.m4, m4/signed.m4.
11251         * m4/gettext.m4: Update to GNU gettext 0.16.
11252         * m4/intl.m4: New file, from GNU gettext.
11253         * m4/intldir.m4: New file, from GNU gettext.
11254         * config/srclist.txt: Update
11255
11256 2006-10-27  Eric Blake  <ebb9@byu.net>
11257
11258         * MODULES.html.sh: Document tempname.
11259         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
11260         dependencies.
11261         (Files): Move lib/tempname.c...
11262         * modules/tempname: ...to this new module.
11263         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
11264         (gl_PREREQ_TEMPNAME): Move...
11265         * m4/tempname.m4: ...to this new file.
11266         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
11267         * modules/sys_stat (Depends-on): Add stat-macros.
11268         * lib/stat_.h (includes): Pick up stat macros.
11269         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
11270         if stat macros are broken.
11271         * lib/tempname.c (includes): No need to include "stat-macros.h".
11272         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
11273         (direxists, __path_search) [!_LIBC]: Don't compile these in
11274         gnulib; the tmpdir module covers that.
11275         * lib/tempname.h: New file.
11276
11277 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
11278
11279         * COPYING: Explain how gnulib-tool converts licence headers.
11280         Almost all wording by Eric Blake.
11281
11282 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11283
11284         * lib/mbchar.h (is_basic_table): Make read-only.
11285         * lib/mbchar.c (is_basic_table): Likewise.
11286         Reported by John Darrington.
11287
11288 2006-10-25  Bruno Haible  <bruno@clisp.org>
11289
11290         * lib/progname.h (set_program_name): Undefine before defining.
11291
11292 2006-10-25  Bruno Haible  <bruno@clisp.org>
11293
11294         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
11295         false for non-gcc C++ compilers.
11296         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
11297
11298 2006-10-24  Bruno Haible  <bruno@clisp.org>
11299
11300         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
11301         iconv implementations like Irix iconv.
11302
11303 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11304
11305         * modules/vararrays: New file.
11306         * m4/vararrays.m4: New file, taken from diffutils.
11307         * MODULES.html.sh: New module vararrays.
11308
11309 2006-10-24  Karl Berry  <karl@gnu.org>
11310
11311         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
11312         Don't call GNU Unix.
11313
11314 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11315
11316         * users.txt: Add Libtool.
11317
11318         Sync from Libtool:
11319
11320         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11321
11322         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
11323         to gnulib's policy of including config.h unconditionally.
11324
11325 2006-10-24  Bruno Haible  <bruno@clisp.org>
11326
11327         * modules/wcwidth (Files): Add m4/wint_t.m4.
11328         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
11329         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
11330
11331 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11332
11333         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
11334         to pacify GCC with some -W flags enabled.  Problem reported by
11335         Bruno Haible.
11336
11337 2006-10-24  Jim Meyering  <jim@meyering.net>
11338
11339         * MODULES.html.sh: Remove uinttostr.  It's not a module.
11340         Reported by Karl Berry.
11341
11342 2006-10-23  Bruno Haible  <bruno@clisp.org>
11343
11344         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
11345
11346 2006-10-24  Bruno Haible  <bruno@clisp.org>
11347
11348         * lib/gl_list.h: Use C comment style, not C++ comment style.
11349
11350 2006-10-23  Eric Blake  <ebb9@byu.net>
11351
11352         * lib/getaddrinfo.c (includes): Add missing include.
11353
11354 2006-10-23  Bruno Haible  <bruno@clisp.org>
11355             Paul Eggert  <eggert@cs.ucla.edu>
11356
11357         Ability to rename obstack_free.
11358         * lib/obstack.h (__obstack_free): New macro. Declare instead of
11359         obstack_free.
11360         (obstack_free): Invoke the __obstack_free macro.
11361         * lib/obstack.c (obstack_free): Use __obstack_free macro.
11362
11363 2006-10-23  Bruno Haible  <bruno@clisp.org>
11364             Paul Eggert  <eggert@cs.ucla.edu>
11365
11366         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
11367         __argc, __argv from the declaration. (They are defined as macros on
11368         mingw.)
11369
11370 2006-10-22  Bruno Haible  <bruno@clisp.org>
11371
11372         * doc/gnulib-intro.texi: New file.
11373         * doc/gnulib.texi: Include it.
11374
11375 2006-10-21  Bruno Haible  <bruno@clisp.org>
11376
11377         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
11378         "Introduction", "Miscellanous Notes", "Particular Modules".
11379
11380 2006-10-21  Bruno Haible  <bruno@clisp.org>
11381
11382         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
11383         Change mostlyclean-local rule to avoid sh syntax error from bash
11384         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
11385
11386 2006-10-23  Jim Meyering  <jim@meyering.net>
11387
11388         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
11389         in place of snprintf.
11390
11391         * modules/inttostr (Files): Add lib/uinttostr.c.
11392         * lib/uinttostr.c (inttostr): New file/function.
11393         * lib/inttostr.h (uinttostr): Declare.
11394         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
11395         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
11396         Add uinttostr.
11397         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
11398
11399 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11400
11401         * lib/canonicalize.c (ELOOP): Define if not already defined.
11402         Problem reported by Bruno Haible in
11403         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
11404
11405 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11406
11407         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
11408         Problem reported by Perry Smith and Ville Laurikari.
11409
11410         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
11411         uses.
11412
11413 2006-10-19  Bruno Haible  <bruno@clisp.org>
11414
11415         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
11416         for mingw.
11417
11418 2006-10-19  Bruno Haible  <bruno@clisp.org>
11419
11420         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
11421         Needed for mingw.
11422
11423 2006-10-19  Bruno Haible  <bruno@clisp.org>
11424
11425         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
11426
11427 2006-10-19  Bruno Haible  <bruno@clisp.org>
11428
11429         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
11430         it.
11431
11432 2006-10-19  Bruno Haible  <bruno@clisp.org>
11433
11434         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
11435         invocation.
11436
11437 2006-10-19  Bruno Haible  <bruno@clisp.org>
11438
11439         * gnulib-tool (func_create_testdir): Don't include ftruncate and
11440         mountlist by default.
11441
11442 2006-10-16  Bruno Haible  <bruno@clisp.org>
11443
11444         * lib/c-strstr.c: Include c-strstr.h.
11445
11446 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11447
11448         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
11449         in a slash.
11450
11451 2006-10-18  Bruno Haible  <bruno@clisp.org>
11452
11453         * lib/lock.h [C++]: Wrap definitions in extern "C".
11454
11455 2006-10-18  Bruno Haible  <bruno@clisp.org>
11456
11457         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
11458         gl_LIBOBJS list.
11459
11460 2006-10-18  Bruno Haible  <bruno@clisp.org>
11461
11462         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
11463
11464 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
11465
11466         * lib/xstrtol.h: Include gettext.h.
11467         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
11468         Problem reported by Eric Blake.
11469         * modules/xstrtol (Depends-on): Add gettext-h.
11470
11471 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
11472
11473         * lib/strftime.c (advance): New macro.
11474         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
11475         incomplete type, so you can't add 0 to it.  Problem and patch
11476         reported by Eelco Dolstra for dietlibc.
11477
11478 2006-10-18  Jim Meyering  <jim@meyering.net>
11479
11480         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
11481         type for a local, and rename it: s/up/user_proc/.
11482
11483 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
11484
11485         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
11486         READ_UTMP_USER_PROCESS.
11487         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
11488
11489 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
11490
11491         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
11492         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
11493
11494 2006-10-17  Eric Blake  <ebb9@byu.net>
11495
11496         * lib/sigprocmask.c (sigprocmask): Fix typo.
11497
11498         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
11499
11500         * modules/clean-temp (Makefile.am): Don't add to make output...
11501         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
11502         config.h.
11503
11504 2006-10-17  Bruno Haible  <bruno@clisp.org>
11505
11506         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
11507         differently if DEFAULT_TEXT_DOMAIN is set.
11508
11509 2006-10-16  Bruno Haible  <bruno@clisp.org>
11510
11511         * lib/clean-temp.c: Include fwriteerror.h.
11512
11513 2006-10-16  Bruno Haible  <bruno@clisp.org>
11514
11515         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
11516
11517 2006-10-16  Bruno Haible  <bruno@clisp.org>
11518
11519         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
11520         * lib/sigprocmask.h: Include <sys/types.h>.
11521         (sigset_t): Use the system's definition if present.
11522
11523 2006-10-17  Eric Blake  <ebb9@byu.net>
11524
11525         * lib/xvasprintf.c (includes): Assume config.h.
11526         * lib/xasprintf.c (includes): Likewise.
11527
11528 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
11529
11530         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
11531         at least as wide as intmax_t.
11532
11533 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
11534
11535         (Imported from Automake.)
11536         * build-aux/gnupload: Update to version 1.1 of directive file.
11537
11538 2006-10-16  Eric Blake  <ebb9@byu.net>
11539
11540         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
11541         match Automake 1.10a.
11542
11543 2006-10-14  Bruno Haible  <bruno@clisp.org>
11544
11545         * modules/sigprocmask: New file.
11546         * lib/sigprocmask.h: New file.
11547         * lib/sigprocmask.c: New file.
11548         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
11549         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
11550         request sigprocmask.o.
11551         (gl_PREREQ_SIGPROCMASK): New macro.
11552         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
11553         (Depends-on): Add sigprocmask.
11554         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
11555         gt_SIGNALBLOCKING. Test for 'raise' only once.
11556         * lib/fatal-signal.c: Include sigprocmask.h.
11557         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
11558         unblock_fatal_signals): Define always.
11559         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11560         sigprocmask.
11561
11562 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
11563
11564         Sync from Automake.
11565         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
11566         which incorrectly sets the mode of an existing destination
11567         directory.  In some cases the unpatched install-sh could do the
11568         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
11569         system.  We hope this is rare in practice, but it's clearly worth
11570         fixing.  Problem reported by Alex Unleashed in
11571         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
11572         Also, don't bother to check for -m bugs unless we're using -m;
11573         suggested by Stepan Kasal.
11574
11575 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11576
11577         Sync from Automake.
11578         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
11579         `-c' flag, so they appear at the same position as in %FASTDEP%
11580         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
11581         which ignores unknown options only after the first non-option.
11582         Bug report against M4 by Nelson H. F. Beebe.
11583
11584 2006-10-13  Jim Meyering  <jim@meyering.net>
11585
11586         Fix a bug in yesterday's change.
11587         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
11588         p->fts_statp->st_dev would be used uninitialized.
11589         Ensures that we always call fts_stat on the very first entry.
11590         Miklos Szeredi reported that find -xdev stopped working.
11591
11592 2006-10-12  Bruno Haible  <bruno@clisp.org>
11593
11594         * gnulib-tool (func_get_automake_snippet): Append an automatically
11595         computed EXTRA_DIST augmentation.
11596         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
11597         * modules/alloca-opt (Makefile.am): Likewise.
11598         * modules/allocsa (Makefile.am): Likewise.
11599         * modules/arcfour (Makefile.am): Likewise.
11600         * modules/arctwo (Makefile.am): Likewise.
11601         * modules/argmatch (Makefile.am): Likewise.
11602         * modules/argz (Makefile.am): Likewise.
11603         * modules/atexit (Makefile.am): Likewise.
11604         * modules/backupfile (Makefile.am): Likewise.
11605         * modules/byteswap (Makefile.am): Likewise.
11606         * modules/c-strtod (Makefile.am): Likewise.
11607         * modules/c-strtold (Makefile.am): Likewise.
11608         * modules/calloc (Makefile.am): Likewise.
11609         * modules/canon-host (Makefile.am): Likewise.
11610         * modules/canonicalize (Makefile.am): Likewise.
11611         * modules/chdir-long (Makefile.am): Likewise.
11612         * modules/chdir-safer (Makefile.am): Likewise.
11613         * modules/check-version (Makefile.am): Likewise.
11614         * modules/chown (Makefile.am): Likewise.
11615         * modules/cloexec (Makefile.am): Likewise.
11616         * modules/close-stream (Makefile.am): Likewise.
11617         * modules/closeout (Makefile.am): Likewise.
11618         * modules/crc (Makefile.am): Likewise.
11619         * modules/csharpexec (Makefile.am): Likewise.
11620         * modules/cycle-check (Makefile.am): Likewise.
11621         * modules/des (Makefile.am): Likewise.
11622         * modules/dev-ino (Makefile.am): Likewise.
11623         * modules/dirfd (Makefile.am): Likewise.
11624         * modules/dirname (Makefile.am): Likewise.
11625         * modules/dup2 (Makefile.am): Likewise.
11626         * modules/eealloc (Makefile.am): Likewise.
11627         * modules/error (Makefile.am): Likewise.
11628         * modules/euidaccess (Makefile.am): Likewise.
11629         * modules/exclude (Makefile.am): Likewise.
11630         * modules/exitfail (Makefile.am): Likewise.
11631         * modules/fcntl-safer (Makefile.am): Likewise.
11632         * modules/fcntl (Makefile.am): Likewise.
11633         * modules/file-type (Makefile.am): Likewise.
11634         * modules/fileblocks (Makefile.am): Likewise.
11635         * modules/filemode (Makefile.am): Likewise.
11636         * modules/filenamecat (Makefile.am): Likewise.
11637         * modules/fnmatch (Makefile.am): Likewise.
11638         * modules/fopen-safer (Makefile.am): Likewise.
11639         * modules/fpending (Makefile.am): Likewise.
11640         * modules/fprintftime (Makefile.am): Likewise.
11641         * modules/free (Makefile.am): Likewise.
11642         * modules/fsusage (Makefile.am): Likewise.
11643         * modules/ftruncate (Makefile.am): Likewise.
11644         * modules/fts (Makefile.am): Likewise.
11645         * modules/gc-arcfour (Makefile.am): Likewise.
11646         * modules/gc-des (Makefile.am): Likewise.
11647         * modules/gc-hmac-md5 (Makefile.am): Likewise.
11648         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
11649         * modules/gc-md4 (Makefile.am): Likewise.
11650         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
11651         * modules/gc-sha1 (Makefile.am): Likewise.
11652         * modules/gc (Makefile.am): Likewise.
11653         * modules/getaddrinfo (Makefile.am): Likewise.
11654         * modules/getcwd (Makefile.am): Likewise.
11655         * modules/getdelim (Makefile.am): Likewise.
11656         * modules/getdomainname (Makefile.am): Likewise.
11657         * modules/getgroups (Makefile.am): Likewise.
11658         * modules/gethostname (Makefile.am): Likewise.
11659         * modules/gethrxtime (Makefile.am): Likewise.
11660         * modules/getline (Makefile.am): Likewise.
11661         * modules/getloadavg (Makefile.am): Likewise.
11662         * modules/getlogin_r (Makefile.am): Likewise.
11663         * modules/getndelim2 (Makefile.am): Likewise.
11664         * modules/getopt (Makefile.am): Likewise.
11665         * modules/getpagesize (Makefile.am): Likewise.
11666         * modules/getpass-gnu (Makefile.am): Likewise.
11667         * modules/getpass (Makefile.am): Likewise.
11668         * modules/getsubopt (Makefile.am): Likewise.
11669         * modules/gettime (Makefile.am): Likewise.
11670         * modules/gettimeofday (Makefile.am): Likewise.
11671         * modules/getugroups (Makefile.am): Likewise.
11672         * modules/getusershell (Makefile.am): Likewise.
11673         * modules/glob (Makefile.am): Likewise.
11674         * modules/group-member (Makefile.am): Likewise.
11675         * modules/hard-locale (Makefile.am): Likewise.
11676         * modules/hash (Makefile.am): Likewise.
11677         * modules/hmac-md5 (Makefile.am): Likewise.
11678         * modules/hmac-sha1 (Makefile.am): Likewise.
11679         * modules/human (Makefile.am): Likewise.
11680         * modules/idcache (Makefile.am): Likewise.
11681         * modules/imaxabs (Makefile.am): Likewise.
11682         * modules/imaxdiv (Makefile.am): Likewise.
11683         * modules/inet_ntop (Makefile.am): Likewise.
11684         * modules/inet_pton (Makefile.am): Likewise.
11685         * modules/intprops (Makefile.am): Likewise.
11686         * modules/inttostr (Makefile.am): Likewise.
11687         * modules/inttypes (Makefile.am): Likewise.
11688         * modules/isapipe (Makefile.am): Likewise.
11689         * modules/javaversion (Makefile.am): Likewise.
11690         * modules/lchmod (Makefile.am): Likewise.
11691         * modules/lchown (Makefile.am): Likewise.
11692         * modules/localcharset (Makefile.am): Likewise.
11693         * modules/long-options (Makefile.am): Likewise.
11694         * modules/lstat (Makefile.am): Likewise.
11695         * modules/malloc (Makefile.am): Likewise.
11696         * modules/mathl (Makefile.am): Likewise.
11697         * modules/mbchar (Makefile.am): Likewise.
11698         * modules/md2 (Makefile.am): Likewise.
11699         * modules/md4 (Makefile.am): Likewise.
11700         * modules/md5 (Makefile.am): Likewise.
11701         * modules/memcasecmp (Makefile.am): Likewise.
11702         * modules/memchr (Makefile.am): Likewise.
11703         * modules/memcmp (Makefile.am): Likewise.
11704         * modules/memcoll (Makefile.am): Likewise.
11705         * modules/memcpy (Makefile.am): Likewise.
11706         * modules/memmem (Makefile.am): Likewise.
11707         * modules/memmove (Makefile.am): Likewise.
11708         * modules/mempcpy (Makefile.am): Likewise.
11709         * modules/memrchr (Makefile.am): Likewise.
11710         * modules/memset (Makefile.am): Likewise.
11711         * modules/memxor (Makefile.am): Likewise.
11712         * modules/mkancesdirs (Makefile.am): Likewise.
11713         * modules/mkdir-p (Makefile.am): Likewise.
11714         * modules/mkdir (Makefile.am): Likewise.
11715         * modules/mkdtemp (Makefile.am): Likewise.
11716         * modules/mkstemp (Makefile.am): Likewise.
11717         * modules/mktime (Makefile.am): Likewise.
11718         * modules/modechange (Makefile.am): Likewise.
11719         * modules/mountlist (Makefile.am): Likewise.
11720         * modules/nanosleep (Makefile.am): Likewise.
11721         * modules/obstack (Makefile.am): Likewise.
11722         * modules/openat (Makefile.am): Likewise.
11723         * modules/pagealign_alloc (Makefile.am): Likewise.
11724         * modules/pathmax (Makefile.am): Likewise.
11725         * modules/physmem (Makefile.am): Likewise.
11726         * modules/poll (Makefile.am): Likewise.
11727         * modules/posixtm (Makefile.am): Likewise.
11728         * modules/posixver (Makefile.am): Likewise.
11729         * modules/putenv (Makefile.am): Likewise.
11730         * modules/quote (Makefile.am): Likewise.
11731         * modules/quotearg (Makefile.am): Likewise.
11732         * modules/raise (Makefile.am): Likewise.
11733         * modules/read-file (Makefile.am): Likewise.
11734         * modules/readline (Makefile.am): Likewise.
11735         * modules/readlink (Makefile.am): Likewise.
11736         * modules/readtokens (Makefile.am): Likewise.
11737         * modules/readutmp (Makefile.am): Likewise.
11738         * modules/realloc (Makefile.am): Likewise.
11739         * modules/regex (Makefile.am): Likewise.
11740         * modules/rename-dest-slash (Makefile.am): Likewise.
11741         * modules/rename (Makefile.am): Likewise.
11742         * modules/rijndael (Makefile.am): Likewise.
11743         * modules/rmdir (Makefile.am): Likewise.
11744         * modules/rpmatch (Makefile.am): Likewise.
11745         * modules/safe-read (Makefile.am): Likewise.
11746         * modules/safe-write (Makefile.am): Likewise.
11747         * modules/same-inode (Makefile.am): Likewise.
11748         * modules/same (Makefile.am): Likewise.
11749         * modules/save-cwd (Makefile.am): Likewise.
11750         * modules/savedir (Makefile.am): Likewise.
11751         * modules/setenv (Makefile.am): Likewise.
11752         * modules/settime (Makefile.am): Likewise.
11753         * modules/sha1 (Makefile.am): Likewise.
11754         * modules/sig2str (Makefile.am): Likewise.
11755         * modules/snprintf (Makefile.am): Likewise.
11756         * modules/stat-macros (Makefile.am): Likewise.
11757         * modules/stat-time (Makefile.am): Likewise.
11758         * modules/stdbool (Makefile.am): Likewise.
11759         * modules/stdint (Makefile.am): Likewise.
11760         * modules/stdlib-safer (Makefile.am): Likewise.
11761         * modules/stpcpy (Makefile.am): Likewise.
11762         * modules/stpncpy (Makefile.am): Likewise.
11763         * modules/strcase (Makefile.am): Likewise.
11764         * modules/strcasestr (Makefile.am): Likewise.
11765         * modules/strchrnul (Makefile.am): Likewise.
11766         * modules/strcspn (Makefile.am): Likewise.
11767         * modules/strdup (Makefile.am): Likewise.
11768         * modules/strerror (Makefile.am): Likewise.
11769         * modules/strftime (Makefile.am): Likewise.
11770         * modules/strndup (Makefile.am): Likewise.
11771         * modules/strnlen (Makefile.am): Likewise.
11772         * modules/strpbrk (Makefile.am): Likewise.
11773         * modules/strsep (Makefile.am): Likewise.
11774         * modules/strstr (Makefile.am): Likewise.
11775         * modules/strtod (Makefile.am): Likewise.
11776         * modules/strtoimax (Makefile.am): Likewise.
11777         * modules/strtok_r (Makefile.am): Likewise.
11778         * modules/strtol (Makefile.am): Likewise.
11779         * modules/strtoll (Makefile.am): Likewise.
11780         * modules/strtoul (Makefile.am): Likewise.
11781         * modules/strtoull (Makefile.am): Likewise.
11782         * modules/strtoumax (Makefile.am): Likewise.
11783         * modules/strverscmp (Makefile.am): Likewise.
11784         * modules/sys_socket (Makefile.am): Likewise.
11785         * modules/sys_stat (Makefile.am): Likewise.
11786         * modules/sysexits (Makefile.am): Likewise.
11787         * modules/time_r (Makefile.am): Likewise.
11788         * modules/timegm (Makefile.am): Likewise.
11789         * modules/timespec (Makefile.am): Likewise.
11790         * modules/tmpfile-safer (Makefile.am): Likewise.
11791         * modules/trim (Makefile.am): Likewise.
11792         * modules/unistd-safer (Makefile.am): Likewise.
11793         * modules/unlinkdir (Makefile.am): Likewise.
11794         * modules/unlocked-io (Makefile.am): Likewise.
11795         * modules/userspec (Makefile.am): Likewise.
11796         * modules/utime (Makefile.am): Likewise.
11797         * modules/utimecmp (Makefile.am): Likewise.
11798         * modules/utimens (Makefile.am): Likewise.
11799         * modules/vasnprintf (Makefile.am): Likewise.
11800         * modules/vasprintf (Makefile.am): Likewise.
11801         * modules/vsnprintf (Makefile.am): Likewise.
11802         * modules/xalloc (Makefile.am): Likewise.
11803         * modules/xgetcwd (Makefile.am): Likewise.
11804         * modules/xnanosleep (Makefile.am): Likewise.
11805         * modules/xreadlink (Makefile.am): Likewise.
11806         * modules/xstrtod (Makefile.am): Likewise.
11807         * modules/xstrtol (Makefile.am): Likewise.
11808         * modules/xstrtold (Makefile.am): Likewise.
11809         * modules/yesno (Makefile.am): Likewise.
11810         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
11811
11812 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
11813
11814         * modules/error (Makefile.am): Distribute files through
11815         EXTRA_DIST, not lib_SOURCES.
11816
11817 2006-10-12  Eric Blake  <ebb9@byu.net>
11818
11819         * modules/error (Makefile.am): Distribute files in /lib.
11820         * modules/obstack (Makefile.am): Likewise.
11821
11822 2006-10-12  Bruno Haible  <bruno@clisp.org>
11823
11824         * modules/acl (Makefile.am): Distribute all files in lib/ through
11825         EXTRA_DIST.
11826         * modules/arcfour (Makefile.am): Likewise.
11827         * modules/arctwo (Makefile.am): Likewise.
11828         * modules/argmatch (Makefile.am): Likewise.
11829         * modules/argz (Makefile.am): Likewise.
11830         * modules/atexit (Makefile.am): Likewise.
11831         * modules/backupfile (Makefile.am): Likewise.
11832         * modules/c-strtod (Makefile.am): Likewise.
11833         * modules/c-strtold (Makefile.am): Likewise.
11834         * modules/calloc (Makefile.am): Likewise.
11835         * modules/canon-host (Makefile.am): Likewise.
11836         * modules/canonicalize (Makefile.am): Likewise.
11837         * modules/chdir-long (Makefile.am): Likewise.
11838         * modules/chdir-safer (Makefile.am): Likewise.
11839         * modules/check-version (Makefile.am): Likewise.
11840         * modules/chown (Makefile.am): Likewise.
11841         * modules/cloexec (Makefile.am): Likewise.
11842         * modules/close-stream (Makefile.am): Likewise.
11843         * modules/closeout (Makefile.am): Likewise.
11844         * modules/crc (Makefile.am): Likewise.
11845         * modules/cycle-check (Makefile.am): Likewise.
11846         * modules/des (Makefile.am): Likewise.
11847         * modules/dirfd (Makefile.am): Likewise.
11848         * modules/dirname (Makefile.am): Likewise.
11849         * modules/dup2 (Makefile.am): Likewise.
11850         * modules/euidaccess (Makefile.am): Likewise.
11851         * modules/exclude (Makefile.am): Likewise.
11852         * modules/exitfail (Makefile.am): Likewise.
11853         * modules/fcntl-safer (Makefile.am): Likewise.
11854         * modules/file-type (Makefile.am): Likewise.
11855         * modules/fileblocks (Makefile.am): Likewise.
11856         * modules/filemode (Makefile.am): Likewise.
11857         * modules/filenamecat (Makefile.am): Likewise.
11858         * modules/fnmatch (Makefile.am): Likewise.
11859         * modules/fopen-safer (Makefile.am): Likewise.
11860         * modules/fpending (Makefile.am): Likewise.
11861         * modules/fprintftime (Makefile.am): Likewise.
11862         * modules/free (Makefile.am): Likewise.
11863         * modules/fsusage (Makefile.am): Likewise.
11864         * modules/ftruncate (Makefile.am): Likewise.
11865         * modules/fts (Makefile.am): Likewise.
11866         * modules/gc (Makefile.am): Likewise.
11867         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
11868         * modules/getaddrinfo (Makefile.am): Likewise.
11869         * modules/getcwd (Makefile.am): Likewise.
11870         * modules/getdelim (Makefile.am): Likewise.
11871         * modules/getdomainname (Makefile.am): Likewise.
11872         * modules/getgroups (Makefile.am): Likewise.
11873         * modules/gethostname (Makefile.am): Likewise.
11874         * modules/gethrxtime (Makefile.am): Likewise.
11875         * modules/getline (Makefile.am): Likewise.
11876         * modules/getloadavg (Makefile.am): Likewise.
11877         * modules/getlogin_r (Makefile.am): Likewise.
11878         * modules/getopt (Makefile.am): Likewise.
11879         * modules/getpass (Makefile.am): Likewise.
11880         * modules/getpass-gnu (Makefile.am): Likewise.
11881         * modules/getsubopt (Makefile.am): Likewise.
11882         * modules/gettime (Makefile.am): Likewise.
11883         * modules/gettimeofday (Makefile.am): Likewise.
11884         * modules/getugroups (Makefile.am): Likewise.
11885         * modules/getusershell (Makefile.am): Likewise.
11886         * modules/glob (Makefile.am): Likewise.
11887         * modules/group-member (Makefile.am): Likewise.
11888         * modules/hard-locale (Makefile.am): Likewise.
11889         * modules/hash (Makefile.am): Likewise.
11890         * modules/hmac-md5 (Makefile.am): Likewise.
11891         * modules/hmac-sha1 (Makefile.am): Likewise.
11892         * modules/human (Makefile.am): Likewise.
11893         * modules/idcache (Makefile.am): Likewise.
11894         * modules/imaxabs (Makefile.am): Likewise.
11895         * modules/imaxdiv (Makefile.am): Likewise.
11896         * modules/inet_ntop (Makefile.am): Likewise.
11897         * modules/inet_pton (Makefile.am): Likewise.
11898         * modules/inttostr (Makefile.am): Likewise.
11899         * modules/isapipe (Makefile.am): Likewise.
11900         * modules/lchown (Makefile.am): Likewise.
11901         * modules/long-options (Makefile.am): Likewise.
11902         * modules/lstat (Makefile.am): Likewise.
11903         * modules/malloc (Makefile.am): Likewise.
11904         * modules/mathl (Makefile.am): Likewise.
11905         * modules/mbchar (Makefile.am): Likewise.
11906         * modules/md2 (Makefile.am): Likewise.
11907         * modules/md4 (Makefile.am): Likewise.
11908         * modules/md5 (Makefile.am): Likewise.
11909         * modules/memcasecmp (Makefile.am): Likewise.
11910         * modules/memchr (Makefile.am): Likewise.
11911         * modules/memcmp (Makefile.am): Likewise.
11912         * modules/memcoll (Makefile.am): Likewise.
11913         * modules/memcpy (Makefile.am): Likewise.
11914         * modules/memmem (Makefile.am): Likewise.
11915         * modules/memmove (Makefile.am): Likewise.
11916         * modules/mempcpy (Makefile.am): Likewise.
11917         * modules/memrchr (Makefile.am): Likewise.
11918         * modules/memset (Makefile.am): Likewise.
11919         * modules/memxor (Makefile.am): Likewise.
11920         * modules/mkancesdirs (Makefile.am): Likewise.
11921         * modules/mkdir (Makefile.am): Likewise.
11922         * modules/mkdir-p (Makefile.am): Likewise.
11923         * modules/mkdtemp (Makefile.am): Likewise.
11924         * modules/mkstemp (Makefile.am): Likewise.
11925         * modules/mktime (Makefile.am): Likewise.
11926         * modules/modechange (Makefile.am): Likewise.
11927         * modules/mountlist (Makefile.am): Likewise.
11928         * modules/nanosleep (Makefile.am): Likewise.
11929         * modules/openat (Makefile.am): Likewise.
11930         * modules/pagealign_alloc (Makefile.am): Likewise.
11931         * modules/physmem (Makefile.am): Likewise.
11932         * modules/poll (Makefile.am): Likewise.
11933         * modules/posixtm (Makefile.am): Likewise.
11934         * modules/posixver (Makefile.am): Likewise.
11935         * modules/putenv (Makefile.am): Likewise.
11936         * modules/quote (Makefile.am): Likewise.
11937         * modules/quotearg (Makefile.am): Likewise.
11938         * modules/raise (Makefile.am): Likewise.
11939         * modules/read-file (Makefile.am): Likewise.
11940         * modules/readline (Makefile.am): Likewise.
11941         * modules/readlink (Makefile.am): Likewise.
11942         * modules/readtokens (Makefile.am): Likewise.
11943         * modules/readutmp (Makefile.am): Likewise.
11944         * modules/realloc (Makefile.am): Likewise.
11945         * modules/regex (Makefile.am): Likewise.
11946         * modules/rename (Makefile.am): Likewise.
11947         * modules/rename-dest-slash (Makefile.am): Likewise.
11948         * modules/rijndael (Makefile.am): Likewise.
11949         * modules/rmdir (Makefile.am): Likewise.
11950         * modules/rpmatch (Makefile.am): Likewise.
11951         * modules/safe-read (Makefile.am): Likewise.
11952         * modules/safe-write (Makefile.am): Likewise.
11953         * modules/same (Makefile.am): Likewise.
11954         * modules/save-cwd (Makefile.am): Likewise.
11955         * modules/savedir (Makefile.am): Likewise.
11956         * modules/setenv (Makefile.am): Likewise.
11957         * modules/settime (Makefile.am): Likewise.
11958         * modules/sha1 (Makefile.am): Likewise.
11959         * modules/sig2str (Makefile.am): Likewise.
11960         * modules/snprintf (Makefile.am): Likewise.
11961         * modules/stdlib-safer (Makefile.am): Likewise.
11962         * modules/stpcpy (Makefile.am): Likewise.
11963         * modules/stpncpy (Makefile.am): Likewise.
11964         * modules/strcase (Makefile.am): Likewise.
11965         * modules/strcasestr (Makefile.am): Likewise.
11966         * modules/strchrnul (Makefile.am): Likewise.
11967         * modules/strcspn (Makefile.am): Likewise.
11968         * modules/strdup (Makefile.am): Likewise.
11969         * modules/strerror (Makefile.am): Likewise.
11970         * modules/strftime (Makefile.am): Likewise.
11971         * modules/strndup (Makefile.am): Likewise.
11972         * modules/strnlen (Makefile.am): Likewise.
11973         * modules/strpbrk (Makefile.am): Likewise.
11974         * modules/strsep (Makefile.am): Likewise.
11975         * modules/strstr (Makefile.am): Likewise.
11976         * modules/strtod (Makefile.am): Likewise.
11977         * modules/strtoimax (Makefile.am): Likewise.
11978         * modules/strtok_r (Makefile.am): Likewise.
11979         * modules/strtol (Makefile.am): Likewise.
11980         * modules/strtoll (Makefile.am): Likewise.
11981         * modules/strtoul (Makefile.am): Likewise.
11982         * modules/strtoull (Makefile.am): Likewise.
11983         * modules/strtoumax (Makefile.am): Likewise.
11984         * modules/strverscmp (Makefile.am): Likewise.
11985         * modules/time_r (Makefile.am): Likewise.
11986         * modules/timegm (Makefile.am): Likewise.
11987         * modules/tmpfile-safer (Makefile.am): Likewise.
11988         * modules/unistd-safer (Makefile.am): Likewise.
11989         * modules/unlinkdir (Makefile.am): Likewise.
11990         * modules/userspec (Makefile.am): Likewise.
11991         * modules/utime (Makefile.am): Likewise.
11992         * modules/utimecmp (Makefile.am): Likewise.
11993         * modules/utimens (Makefile.am): Likewise.
11994         * modules/vasnprintf (Makefile.am): Likewise.
11995         * modules/vasprintf (Makefile.am): Likewise.
11996         * modules/vsnprintf (Makefile.am): Likewise.
11997         * modules/xalloc (Makefile.am): Likewise.
11998         * modules/xgetcwd (Makefile.am): Likewise.
11999         * modules/xnanosleep (Makefile.am): Likewise.
12000         * modules/xreadlink (Makefile.am): Likewise.
12001         * modules/xstrtod (Makefile.am): Likewise.
12002         * modules/xstrtol (Makefile.am): Likewise.
12003         * modules/xstrtold (Makefile.am): Likewise.
12004         * modules/yesno (Makefile.am): Likewise.
12005
12006 2006-10-12  Jim Meyering  <jim@meyering.net>
12007
12008         * m4/getloadavg.m4: Revert the change below.
12009
12010         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
12011         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
12012         fail with a symlink, which is what coreutils' ./bootstrap now
12013         creates by default.
12014
12015 2006-10-12  Bruno Haible  <bruno@clisp.org>
12016
12017         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
12018         mingw.
12019         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
12020         MSVC and mingw explicitly.
12021
12022 2006-10-11  Simon Josefsson  <jas@extundo.com>
12023             Bruno Haible  <bruno@clisp.org>
12024
12025         Add support for multiple gnulib-tool invocations in the scope of a
12026         single configure.ac file.
12027         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
12028         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
12029         with the same contents as the _LIBADD variable.
12030         (func_emit_initmacro_start, func_emit_initmacro_end,
12031         func_emit_initmacro_done): New functions.
12032         (func_import, func_create_testdir): Invoke them. Allow the identifiers
12033         gl_LIBOBJS and gl_LTLIBOBJS.
12034
12035 2006-10-11  Bruno Haible  <bruno@clisp.org>
12036
12037         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
12038         (func_create_testdir): Don't create po/Makefile.am, don't invoke
12039         autoreconf. Instead, invoke autopoint explicitly but move back the
12040         *.m4 files from gnulib.
12041
12042 2006-10-11  Bruno Haible  <bruno@clisp.org>
12043
12044         * gnulib-tool (func_usage): Make module names after --create-testdir
12045         optional.
12046         (func_create_testdir): If no module was specified, use nearly all
12047         modules.
12048
12049 2006-10-12  Jim Meyering  <jim@meyering.net>
12050
12051         Big performance improvement for fts-based tools that use FTS_NOSTAT.
12052         Avoid spurious inode-mismatch problems on non-POSIX file systems.
12053         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
12054         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
12055         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
12056         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
12057         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
12058         (fts_set_stat_required): New function.
12059         (fts_open): Defer the calls to fts_stat, if possible or requested.
12060         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
12061         into fts_stat itself.
12062         (fts_read): Perform any required (deferred) fts_stat call.
12063         (fts_build): Likewise, for the directory we're about to open and read.
12064         In the readdir loop, carefully decide whether each entry will require
12065         an eventual call to fts_stat, using dirent.d_type info if available.
12066         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
12067         a command line argument into this function.  Update all callers.
12068         Map a return value of FTS_DOT to FTS_D for a command line argument.
12069         * modules/fts (Depends-on): Add d-type.  Alphabetize.
12070         Thanks to Miklos Szeredi for his tenacity and for the initial
12071         bug report about "find" failing on a FUSE-based file system.
12072
12073         * lib/fts.c (fts_open): Use consistent indentation.
12074
12075 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12076
12077         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
12078         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
12079         reported by Jim Meyering.  All uses of cache variables renamed
12080         to match Autoconf's.
12081         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
12082         the other one.
12083
12084         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
12085         Fix misspelling in diagnostic.
12086
12087 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12088
12089         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
12090         defined.  Problem reported by Matthew Woehlke.
12091
12092         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
12093         Add support for Tandem NonStop R series.
12094         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
12095         Use new macro.
12096
12097         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
12098         (has_trailing_slash): Omit size arg; all callers changed.
12099         Omit 'inline', since it doesn't help performance and we'd
12100         need to configure it.
12101         Don't count //, ///, etc. as having a trailing slash.
12102         As a side effect, this removes a C99ism reported by Matthew Woehlke.
12103         (rpl_rename_dest_slash): On failure, use rename's errno rather
12104         than (in some cases) an incorrect or junk errno.
12105         Simplify code by removing need to compute length; this does
12106         cause it to make two passes instead of one over the file name,
12107         but it's worth it.
12108
12109         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
12110         change, since Autoconf's version may no longer be appropriate now
12111         that we are using CVS Autoconf's version.  Add support for Tandem.
12112
12113 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12114             Bruno Haible  <bruno@clisp.org>
12115
12116         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
12117         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
12118         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
12119         gl_AC_TYPE_LONG_LONG.
12120
12121         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
12122         instead of HAVE_LONG_LONG.
12123         * lib/printf-args.c (printf_fetchargs): Likewise.
12124         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
12125         * lib/vasnprintf.c (VASNPRINTF): Likewise.
12126         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
12127         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
12128         gl_AC_TYPE_LONG_LONG.
12129
12130 2006-10-11  Bruno Haible  <bruno@clisp.org>
12131
12132         * m4/longlong.m4: Add comments.
12133         * m4/ulonglong.m4: Likewise.
12134
12135 2006-10-10  Bruno Haible  <bruno@clisp.org>
12136
12137         Make it possible to #define stpcpy, strdup to aliases.
12138         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
12139         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
12140
12141 2006-10-10  Bruno Haible  <bruno@clisp.org>
12142
12143         Make it possible to #define gcd to an alias.
12144         * lib/gcd.c: Include config.h.
12145
12146 2006-10-10  Bruno Haible  <bruno@clisp.org>
12147
12148         Make it possible to #define c_isascii to an alias.
12149         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
12150         defined. Undefine the macros before defining them, to avoid gcc
12151         warnings.
12152         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
12153         define NO_C_CTYPE_MACROS early.
12154
12155 2006-10-10  Bruno Haible  <bruno@clisp.org>
12156
12157         Make it possible to #define set_program_name to an alias.
12158         * lib/progname.c: Don't undefine set_program_name; instead, undefine
12159         ENABLE_RELOCATABLE early.
12160
12161 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12162
12163         Port to Tandem NSK OSS, which has 64-bit signed int but at most
12164         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
12165         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
12166         More generally, don't assume that 64-bit signed int is available
12167         if unsigned int is, and vice versa.
12168         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
12169         unsigned symbols, not on their signed counterparts.
12170         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
12171         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
12172         (UINT64_C, UINTMAX_C):
12173         Likewise.
12174         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
12175         unsigned counterparts.
12176         (Have_long_long, Unsigned): New macros.
12177         (Int): Renamed from INT.
12178         (strtoimax): Use the new macros.
12179         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
12180         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
12181         * modules/inttypes (inttypes.h): Substitute
12182         HAVE_UNSIGNED_LONG_LONG_INT.
12183         * modules/stdint (stdint.h): Likewise.
12184         (Files): Add m4/ulonglong.m4.
12185
12186 2006-10-10  Bruno Haible  <bruno@clisp.org>
12187
12188         Fix a gcc -Wshadow warning.
12189         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
12190         to 'bucket'.
12191         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
12192         gl_linked_indexof_from_to): Likewise.
12193         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
12194         Likewise.
12195         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
12196         Likewise.
12197         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
12198         Reported by Eric Blake.
12199
12200 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
12201
12202         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
12203         for NetBSD.  Problem reported by Bruno Haible.
12204
12205 2006-10-09  Jim Meyering  <jim@meyering.net>
12206
12207         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
12208         Patch from Bruno Haible.
12209
12210 2006-10-09  Jim Meyering  <jim@meyering.net>
12211
12212         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
12213         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
12214         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
12215
12216 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
12217
12218         Don't include <config.h> twice; this doesn't work in some cases,
12219         e.g., when config.h has "#define intmax_t long long int" and
12220         we include <config.h>, <inttypes.h>, <config.h> in that order.
12221         Problem reported by Matthew Woehlke in:
12222         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
12223         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
12224         * lib/fts-cycle.c: Don't include config.h.
12225         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
12226         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
12227         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
12228         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
12229         inttypes.h.
12230         * lib/xstrtoumax.c: Likewise.
12231         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
12232         __strtol and the like, so that this module is more like its siblings.
12233         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
12234         Remove; no longer needed now that we assume gnulib inttypes.h.
12235
12236 2006-10-08  Bruno Haible  <bruno@clisp.org>
12237
12238         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
12239         option.
12240
12241 2006-10-07  Jim Meyering  <jim@meyering.net>
12242
12243         * modules/inttypes (inttypes.h): Revert what seems to have been
12244         an inadvertent part of today's change: use "|", not "/" in the
12245         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
12246
12247 2006-10-07  Bruno Haible  <bruno@clisp.org>
12248
12249         * modules/sublist: New file.
12250
12251 2006-10-07  Bruno Haible  <bruno@clisp.org>
12252
12253         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
12254         * modules/argz (argz.h): Likewise.
12255         * modules/arpa_inet (arpa/inet.h): Likewise.
12256         * modules/byteswap (byteswap.h): Likewise.
12257         * modules/configmake (configmake.h): Likewise.
12258         * modules/fcntl (fcntl.h): Likewise.
12259         * modules/fnmatch (fnmatch.h): Likewise.
12260         * modules/getopt (getopt.h): Likewise.
12261         * modules/glob (glob.h): Likewise.
12262         * modules/inttypes (inttypes.h): Likewise.
12263         * modules/netinet_in (netinet/in.h): Likewise.
12264         * modules/poll (poll.h): Likewise.
12265         * modules/stdbool (stdbool.h): Likewise.
12266         * modules/stdint (stdint.h): Likewise.
12267         * modules/sys_select (sys/select.h): Likewise.
12268         * modules/sys_socket (sys/socket.h): Likewise.
12269         * modules/sys_stat (sys/stat.h): Likewise.
12270         * modules/sysexits (sysexits.h): Likewise.
12271         * modules/unistd (unistd.h): Likewise.
12272         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
12273         Add a "DO NOT EDIT" comment to the generated file.
12274         (func_import): Likewise for gnulib-comp.m4.
12275
12276 2006-10-07  Bruno Haible  <bruno@clisp.org>
12277
12278         * lib/gl_sublist.h: New file.
12279         * lib/gl_sublist.c: New file.
12280
12281 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
12282
12283         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
12284         name (relative to the original working directory) and the file
12285         name component (relative to the temporary working directory).  All
12286         callers changed.
12287         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
12288         * lib/mkdir-p.c (make_dir_parents): Likewise.
12289         * lib/mkdir-p.h (make_dir_parents): Likewise.
12290
12291 2006-10-06  Eric Blake  <ebb9@byu.net>
12292
12293         Define several macros for use by the clean-temp module.
12294         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
12295         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
12296         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
12297
12298         * lib/clean-temp.h (close_stream_temp): New declaration.
12299         * lib/clean-temp.c (includes): Pull in headers according to what
12300         other modules are in use.
12301         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
12302
12303 2006-10-06  Bruno Haible  <bruno@clisp.org>
12304
12305         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
12306         instead of fopen, fwriteerror.
12307
12308 2006-10-06  Bruno Haible  <bruno@clisp.org>
12309
12310         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
12311         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
12312         int.
12313         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
12314         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
12315         Return an error indicator.
12316         Suggested by Eric Blake.
12317
12318 2006-10-06  Bruno Haible  <bruno@clisp.org>
12319
12320         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
12321         Reported by Eric Blake.
12322
12323 2006-10-06  Bruno Haible  <bruno@clisp.org>
12324
12325         * modules/closeout (Description): Mention stderr too.
12326
12327 2006-10-06  Bruno Haible  <bruno@clisp.org>
12328         and Paul Eggert  <eggert@cs.ucla.edu>
12329
12330         * lib/closeout.c (close_stdout): Also close stderr.
12331         * lib/closeout.h: Update comment.
12332
12333 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
12334
12335         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
12336         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
12337         * lib/dirchownmod.c: Include lchown.h.
12338         * lib/lchown.c: Don't include files that lchown.h now includes.
12339         Don't declare chown, since lchown.h now does that.
12340         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
12341         (lchown): Define to rpl_chown if lchown is declared but
12342         does not exist.  Declare using a prototype if lchown is not
12343         declared.  Add a copyright notice.
12344         * lib/mkstemp.h: Include <unistd.h>.
12345         * lib/openat.c: Include lchown.h.
12346
12347         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
12348         we now test for that separately.
12349         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
12350         rather than O_NOFOLLOW, when testing whether it's possible to
12351         avoid a race condition reliably.
12352         * lib/savewd.c (savewd_chdir): Likewise.
12353
12354         Remove macros that are no longer needed now that stdint.h is
12355         reliable.
12356         * lib/fsusage.c (UINTMAX_MAX): Remove.
12357         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
12358         * lib/utimecmp.c (SIZE_MAX): Remove.
12359
12360         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
12361
12362         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
12363         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
12364         O_NOATIME works.
12365
12366 2006-10-05  Bruno Haible  <bruno@clisp.org>
12367
12368         * lib/gl_list.h (gl_sortedlist_search_from_to,
12369         gl_sortedlist_indexof_from_to): New declarations.
12370         (gl_list_implementation): New fields sortedlist_search_from_to,
12371         sortedlist_indexof_from_to.
12372         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
12373         inline functions.
12374         * lib/gl_list.c (gl_sortedlist_search_from_to,
12375         gl_sortedlist_indexof_from_to): New functions.
12376         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
12377         function.
12378         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
12379         (gl_array_sortedlist_search_from_to): New function.
12380         (gl_array_list_implementation): Update.
12381         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
12382         function.
12383         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
12384         (gl_carray_sortedlist_search_from_to): New function.
12385         (gl_carray_list_implementation): Update.
12386         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
12387         gl_linked_sortedlist_indexof_from_to): New functions.
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_list2.h (gl_tree_sortedlist_search_from_to,
12391         gl_tree_sortedlist_indexof_from_to): New functions.
12392         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
12393         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
12394         Update.
12395         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
12396         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
12397         Update.
12398
12399 2006-10-05  Bruno Haible  <bruno@clisp.org>
12400
12401         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
12402         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
12403         (struct gl_list_implementation): Add fields search_from_to,
12404         indexof_from_to. Remove fields search, indexof.
12405         (gl_list_search): Use the search_from_to method.
12406         (gl_list_search_from, gl_list_search_from_to): New functions.
12407         (gl_list_indexof): Use the indexof_from_to method.
12408         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
12409         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
12410         (gl_list_search_from, gl_list_search_from_to): New functions.
12411         (gl_list_indexof): Use the indexof_from_to method.
12412         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
12413         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
12414         gl_array_indexof. Add start_index, end_index arguments.
12415         (gl_array_search_from_to): Renamed from gl_array_search. Add
12416         start_index, end_index arguments.
12417         (gl_array_remove, gl_array_list_implementation): Update.
12418         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
12419         gl_carray_indexof. Add start_index, end_index arguments.
12420         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
12421         start_index, end_index arguments.
12422         (gl_carray_remove, gl_carray_list_implementation): Update.
12423         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
12424         gl_linked_search. Add start_index, end_index arguments.
12425         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
12426         start_index, end_index arguments.
12427         (gl_linked_remove): Update.
12428         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
12429         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
12430         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
12431         field to 'size_t'.
12432         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
12433         gl_tree_search. Add start_index, end_index arguments.
12434         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
12435         start_index, end_index arguments.
12436         (gl_tree_remove): Update.
12437         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
12438         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
12439         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
12440         function.
12441         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
12442         gl_tree_search. Add start_index, end_index arguments.
12443         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
12444         start_index, end_index arguments.
12445         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
12446         Update.
12447         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
12448
12449 2006-10-05  Bruno Haible  <bruno@clisp.org>
12450
12451         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
12452
12453         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
12454         fwriteerror_temp): New declarations.
12455         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
12456         (descriptors): New variable.
12457         (cleanup): First, close the descriptors.
12458         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
12459         fclose_temp, fwriteerror_temp): New functions.
12460
12461 2006-10-04  Jim Meyering  <jim@meyering.net>
12462
12463         * lib/fts.c (fts_open): Tiny comment change.
12464
12465 2006-10-04  Bruno Haible  <bruno@clisp.org>
12466
12467         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
12468         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
12469         gl_LOCK_BODY.
12470         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
12471         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
12472         gl_LOCK_EARLY_BODY.
12473         (gl_LOCK): Require gl_LOCK_BODY.
12474
12475 2006-10-04  Bruno Haible  <bruno@clisp.org>
12476
12477         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
12478         (gl_oset_search_atleast): New declaration.
12479         (struct gl_oset_implementation): Add field 'search_atleast'.
12480         (gl_oset_search_atleast): New inline function.
12481         * lib/gl_oset.c (gl_oset_search_atleast): New function.
12482         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
12483         (gl_array_oset_implementation): Update.
12484         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
12485         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
12486         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
12487
12488 2006-10-04  Bruno Haible  <bruno@clisp.org>
12489
12490         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
12491
12492 2006-10-03  Bruno Haible  <bruno@clisp.org>
12493
12494         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
12495         from gl_avltreehash_list_implementation.
12496
12497 2006-10-03  Bruno Haible  <bruno@clisp.org>
12498
12499         * lib/gl_oset.c (gl_oset_add): Fix return type.
12500
12501 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
12502
12503         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
12504
12505 2006-10-02  Eric Blake  <ebb9@byu.net>
12506
12507         * modules/strnlen (Depends-on): Add extensions.
12508
12509 2006-10-02  Eric Blake  <ebb9@byu.net>
12510
12511         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
12512         definition in 2.60+.
12513
12514 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
12515
12516         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
12517         checks.
12518
12519 2006-10-02  Bruno Haible  <bruno@clisp.org>
12520
12521         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
12522         to the AUTOMAKE_OPTIONS.
12523         Reported by Jim Meyering.
12524
12525 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
12526
12527         Work around bug in Solaris 10 /proc file system:
12528         /proc/self/fd/NNN/.. isn't the parent directory of
12529         the directory whose file descriptor is NNN.  This needs to
12530         be worked around at run time, not compile time, since a
12531         program might be built on Solaris 8, where things work, and
12532         run on Solaris 10.
12533         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
12534         to use the following interface instead:
12535         (OPENAT_BUFFER_SIZE): New macro.
12536         (openat_proc_name): New function.
12537         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
12538         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
12539         Likewise.
12540         * lib/openat-proc.c: New file.
12541         * modules/openat (Files): Add lib/openat-proc.c.
12542         (Depends-on): Add same-inode, stdbool.
12543         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
12544
12545 2006-09-29  Bruno Haible  <bruno@clisp.org>
12546
12547         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
12548         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
12549         argument. Set stdout_closed before testing for ferror, not after.
12550         (fwriteerror, fwriteerror_no_ebadf): New functions.
12551
12552 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12553
12554         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
12555
12556 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
12557
12558         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
12559         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
12560
12561 2006-09-28  Jim Meyering  <jim@meyering.net>
12562
12563         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
12564         Include <unistd.h>.
12565
12566 2006-09-28  Bruno Haible  <bruno@clisp.org>
12567
12568         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
12569         * modules/linkedhash-list (Depends-on): Likewise.
12570         * modules/rbtreehash-list (Depends-on): Likewise.
12571
12572 2006-09-28  Bruno Haible  <bruno@clisp.org>
12573
12574         * lib/strndup.h: Simplify the redefinition of strndup.
12575         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
12576         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
12577
12578 2006-09-28  Bruno Haible  <bruno@clisp.org>
12579
12580         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
12581         * lib/gl_linkedhash_list.c: Likewise.
12582         * lib/gl_rbtreehash_list.c: Likewise.
12583
12584 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
12585
12586         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
12587         getaddrinfo.
12588
12589         * lib/__fpending.h: Don't include <stdio_ext.h> unless
12590         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
12591         it causes <stdio_ext.h> to cause a compile-time error.
12592         Problem reported by Nelson H. F. Beebe.
12593         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
12594         of HAVE_DECL___PENDING.
12595
12596         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
12597         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
12598         declaration.
12599
12600 2006-09-27  Jim Meyering  <jim@meyering.net>
12601
12602         This file could end up with a definition for a function
12603         named __strndup, rather than rpl_strndup on a system with
12604         incomplete weak_alias support.
12605         * lib/strndup.c (strndup): Rename from __strndup.
12606         Remove #defines that used to map __strndup to strndup.
12607         Don't use K&R prototypes.
12608         Remove LIBC-related code, since this file is not sync'd with glibc.
12609         * lib/strndup.h: Revamp, accordingly.
12610         * m4/strndup.m4: Modernize.
12611
12612 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
12613
12614         * modules/savewd (Depends-on): Add 'raise'.
12615         * lib/savewd.c: Include <signal.h>, for 'raise'.
12616
12617 2006-09-26  Jim Meyering  <jim@meyering.net>
12618
12619         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
12620         when we detect Darwin 8.7.0's acl_get_file bug.
12621         Rearrange to perform the new (below) run-test while $LIBS
12622         contains any acl-related library.  Set USE_ACL at the end.
12623         (gl_ACL_GET_FILE): New function.
12624
12625 2006-09-26  Eric Blake  <ebb9@byu.net>
12626
12627         * lib/verror.c: Include <config.h> unconditionally.
12628
12629 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
12630
12631         * modules/clock-time (Maintainer): Add self.
12632         * modules/getlogin_r (Depends-on): Add extensions.
12633
12634 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12635
12636         * modules/clock-time: New module.
12637         * modules/nanosleep (Depends-on): Add clock-time.
12638         * modules/gethrxtime (Depends-on): Likewise.
12639         * modules/gettime (Depends-on): Likewise.
12640         * modules/settime (Depends-on): Likewise.
12641
12642         * modules/fts-lgpl: Depend on openat.
12643         * modules/mkancesdirs: Depend on savewd.
12644         * modules/mkdir-p: Likewise.
12645
12646 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12647
12648         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
12649
12650         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
12651         `gl_have_arbitrary_file_name_length_limit' to
12652         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
12653         actually works between configure runs.
12654
12655 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12656             Bruno Haible  <bruno@clisp.org>
12657
12658         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
12659
12660 2006-09-25  Jim Meyering  <jim@meyering.net>
12661
12662         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
12663         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
12664
12665 2006-09-25  Eric Blake  <ebb9@byu.net>
12666
12667         * gnulib-tool (func_import, func_create_testdir): Fix typos in
12668         exec's in 2006-09-18 patch when shuffling fds.
12669
12670 2006-09-25  Bruno Haible  <bruno@clisp.org>
12671
12672         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
12673         Reported by Jim Meyering.
12674
12675 2006-09-24  Jim Meyering  <jim@meyering.net>
12676
12677         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
12678         compare a pointer against a literal "0".  That caused failures with
12679         at least HP-UX's hpcc.
12680
12681 2006-09-22  Simon Josefsson  <jas@extundo.com>
12682
12683         * modules/gc-sha1:
12684         * modules/gc-md4:
12685         * modules/gc-hmac-sha1:
12686         * modules/gc-hmac-md5:
12687         * modules/gc-des:
12688         * modules/gc-arcfour: Distribute more files.
12689
12690 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12691
12692         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
12693         (gl_linked_iterator_from_to): Initialize struct completely.
12694         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
12695         (gl_tree_iterator_from_to): Likewise
12696         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
12697         * lib/gl_array_list.c [lint] (gl_array_iterator)
12698         (gl_array_iterator_from_to): Likewise.
12699         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
12700         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
12701         (gl_carray_iterator_from_to): Likewise.
12702
12703         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
12704         * lib/md4.c (md4_process_block): Remove unused variable.
12705         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
12706         parentheses for clarity.
12707
12708 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12709
12710         * modules/bison-i18n (Depends-on): Add gettext.
12711
12712 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12713
12714         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
12715         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
12716         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
12717         also add missing comma that caused broken test.
12718         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
12719         stdlib.h, for `abort'.
12720         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
12721         variables.
12722         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
12723         include unistd.h if present, for `rmdir'.
12724         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
12725         variables.
12726         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
12727         in the process include standard headers for prototypes.
12728         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
12729         gets declared on GNU/Linux.
12730         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
12731         unistd.h, for `rmdir'.
12732         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
12733
12734         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
12735         always true.
12736         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
12737
12738         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
12739
12740 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12741
12742         * gnulib-tool (func_version): Create output all at once.  This
12743         may help avoid triggering unnecessary SIGPIPEs, and at any
12744         rate it doesn't hurt.
12745
12746 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12747             Bruno Haible  <bruno@clisp.org>
12748
12749         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
12750         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
12751         * m4/signed.m4 (bh_C_SIGNED): Likewise.
12752
12753         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
12754         (gl_FUNC_VASPRINTF): Invoke it.
12755
12756 2006-09-22  Bruno Haible  <bruno@clisp.org>
12757
12758         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
12759         getloadavg.c as first argument.
12760
12761 2006-09-22  Bruno Haible  <bruno@clisp.org>
12762
12763         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
12764         at the beginning of the gl_INIT macro.
12765         * modules/getloadavg (configure.ac): Pass $gl_source_base to
12766         gl_GETLOADAVG.
12767
12768 2006-09-22  Bruno Haible  <bruno@clisp.org>
12769
12770         * gnulib-tool (func_create_megatestdir): Don't include the config-h
12771         module.
12772         Suggested by Ralf Wildenhues.
12773
12774 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
12775
12776         Import this patch from libc:
12777
12778         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
12779
12780         * lib/regex_internal.c (re_string_reconstruct): Handle
12781         offset < pstr->valid_raw_len && pstr->offsets_needed case.
12782         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
12783         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
12784         re_string_context_at.
12785
12786         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
12787         now requires it.
12788         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
12789         gl_REGEX now does it for us.
12790         (gl_REGEX): Add test taken from
12791         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
12792
12793         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
12794         Check that large offsets work.  Modernize Autoconf usages.
12795         Prefer "yes" to mean a good thing rather than a bad.
12796         Don't put "#define mkstemp" in config.h, as this might interfere
12797         with standard system headers that "#define mkstemp mkstemp64".
12798
12799         * modules/mkstemp (Depends-on): Add extensions, so that
12800         mkstemp is visible on some platforms.
12801         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
12802         (Include): Change to "mkstemp.h" from <stdlib.h>.
12803         (Files): Add mkstemp.h.
12804
12805         * lib/mkstemp.h: New file, since some standard headers
12806         #define mkstemp.
12807         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
12808         Include "mkstemp.h".
12809         Make the _LIBC code resemble glibc original more,
12810         e.g., use K&R style.
12811         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
12812         (mkstemp): Remove, since mkstemp.h does this for us.
12813         * lib/stdlib--.h: Include mkstemp.h.
12814
12815         Import this patch from libc:
12816
12817         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
12818
12819         * lib/tempname.c (__gen_tempname): Change attempts_min
12820         into a macro.  Use preprocessor to decide how to initialize
12821         attempts [Coverity CID 67].
12822
12823 2006-09-20  Bruno Haible  <bruno@clisp.org>
12824
12825         * lib/mkdtemp.c: Import from libc.
12826         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
12827                 * sysdeps/posix/tempname.c (__gen_tempname): Change
12828                 attempts_min into a macro.  Use preprocessor to decide how to
12829                 initialize attempts [Coverity CID 67].
12830         2001-11-27  Paul Eggert  <eggert@twinsun.com>
12831                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
12832                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
12833
12834 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12835
12836         * gnulib-tool (func_exit): New function, to allow to pass the
12837         exit status portably through the trap.  Use everywhere.
12838         (--help, --version): Signal a write error.
12839         (trap): catch SIGPIPE, for write errors.
12840         Exit at the end of the trap, with the correct exit status.
12841
12842 2006-09-19  Karl Berry  <karl@gnu.org>
12843
12844         * doc/gnulib.texi: note about the license texinfo files.
12845
12846 2006-09-19  Eric Blake  <ebb9@byu.net>
12847
12848         * gnulib-tool: Avoid space-tab.
12849
12850 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
12851
12852         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
12853         that prevented coreutils 6.1 from building.  Problem reported
12854         by Petter Reinholdtsen.
12855
12856 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
12857
12858         * gnulib-tool (avoidlist): Fix typo that broke options like
12859         --avoid=lock that are used by coreutils bootstrap.
12860
12861 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
12862
12863         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
12864         more systematically.
12865
12866 2006-09-18  Jim Meyering  <jim@meyering.net>
12867
12868         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
12869
12870 2006-09-18  Bruno Haible  <bruno@clisp.org>
12871
12872         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
12873
12874 2006-09-18  Bruno Haible  <bruno@clisp.org>
12875
12876         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
12877         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
12878         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
12879         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
12880         * m4/gettext.m4: Require autoconf >= 2.52.
12881         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
12882         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
12883         of gl_cv_header_inttypes_h.
12884
12885 2006-09-18  Bruno Haible  <bruno@clisp.org>
12886
12887         * lib/javaversion.c: Include configmake.h.
12888
12889 2006-09-18  Bruno Haible  <bruno@clisp.org>
12890
12891         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
12892         avoid that the while loops be executed in a subshell.
12893
12894 2006-09-18  Bruno Haible  <bruno@clisp.org>
12895
12896         * MODULES.html.sh (func_module): Break long lines.
12897         Suggested by Bruce Korb <bkorb@gnu.org>.
12898
12899 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12900
12901         Speed up by a factor of 1.12.
12902         * gnulib-tool (nl): New variable.
12903         (func_import): Rewrite include directive extraction to only read each
12904         directive once.
12905
12906 2006-09-17  Bruno Haible  <bruno@clisp.org>
12907
12908         * modules/javaversion (Makefile.am): Remove DEFS setting.
12909         (Depends-on): Add configmake, for PKGDATADIR definition.
12910
12911 2006-09-17  Bruno Haible  <bruno@clisp.org>
12912
12913         * gnulib-tool (func_create_testdir): Rewrite all files at once.
12914
12915 2006-09-17  Bruno Haible  <bruno@clisp.org>
12916
12917         * gnulib-tool (func_append): New function, stolen from libtool.m4.
12918         (func_modules_transitive_closure, func_modules_add_dummy,
12919         func_modules_to_filelist, func_import, func_create_testdir,
12920         func_create_megatestdir, ...): Use it wherever possible.
12921         Suggested by Ralf Wildenhues.
12922
12923 2006-09-16  Karl Berry  <karl@gnu.org>
12924
12925         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
12926         to avoid sectioning errors.
12927         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
12928         [ifinfo]: blank line after @center-ed titles.
12929         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
12930         Spell FSF address consistently with others.
12931         (These changes approved by rms.)
12932
12933 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12934
12935         Speed up by a factor of 1.61.
12936         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
12937         already checked module names again.
12938
12939 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12940
12941         Speed up by a factor of 1.13.
12942         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
12943         for new_files, and the input to func_add_or_update.
12944
12945 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12946
12947         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
12948         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
12949
12950 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12951
12952         * modules/mkancesdirs (Depends-on): Add fcntl.
12953         * modules/savewd: New file.
12954         * MODULES.html.sh (File system functions): Add savewd.
12955
12956         * modules/configmake (Makefile.am): Add support for the
12957         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
12958
12959 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12960
12961         * m4/savewd.m4: New file.
12962
12963 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12964
12965         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
12966         (dirchownmod): New arg FD.  All callers changed.
12967         Use FD rather than opening the directory ourself, as opening is
12968         now the caller's responsibility.
12969         * lib/dirchownmod.h: Likewise.
12970         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
12971         hosts that require <sys/types.h> before <sys/stat.h>.  Include
12972         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
12973         (test_dir): Remove.
12974         (mkancesdirs): Return length of prefix of FILE that has already
12975         been made, or -2 if there is a child doing the work.  Redo
12976         algorithm so that it is O(N) rather than O(N**2).  Optimize away
12977         ".", and treat ".." specially since it might stray back into
12978         already-created areas.  Use a subprocess if necessary.  New arg
12979         WD; all users changed.  MAKE_DIR function should now return 1
12980         if it creates a directory that is not readable.  Return -2 if
12981         a child process is spun off.
12982         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
12983         Adjust signature to match code.
12984         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
12985         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
12986         all users changed.
12987         * lib/savewd.c, lib/savewd.h: New files.
12988
12989 2006-09-15  Jim Meyering  <jim@meyering.net>
12990
12991         * modules/rename-dest-slash: New module.
12992         * MODULES.html.sh (posix_compat): Add it here.
12993
12994         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
12995
12996 2006-09-15  Jim Meyering  <jim@meyering.net>
12997
12998         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
12999         file.
13000
13001         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
13002
13003 2006-09-15  Jim Meyering  <jim@meyering.net>
13004
13005         * lib/rename-dest-slash.c (has_trailing_slash): Use
13006         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
13007         (rpl_rename_dest_slash): Perform the cheaper trailing slash
13008         test before testing whether SRC is a directory.
13009         Suggestions from Bruno Haible.
13010
13011         Avoid a warning about an unused variable.
13012         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
13013         into the #ifdef block where it's used.
13014
13015         * lib/rename-dest-slash.c: New file.
13016
13017 2006-09-14  Bruno Haible  <bruno@clisp.org>
13018
13019         * lib/allocsa.c: Include <config.h> unconditionally.
13020         * lib/asnprintf.c: Likewise.
13021         * lib/asprintf.c: Likewise.
13022         * lib/c-strcasecmp.c: Likewise.
13023         * lib/c-strcasestr.c: Likewise.
13024         * lib/c-strncasecmp.c: Likewise.
13025         * lib/c-strstr.c: Likewise.
13026         * lib/classpath.c: Likewise.
13027         * lib/clean-temp.c: Likewise.
13028         * lib/concatpath.c: Likewise.
13029         * lib/copy-file.c: Likewise.
13030         * lib/csharpcomp.c: Likewise.
13031         * lib/csharpexec.c: Likewise.
13032         * lib/execute.c: Likewise.
13033         * lib/fatal-signal.c: Likewise.
13034         * lib/findprog.c: Likewise.
13035         * lib/fwriteerror.c: Likewise.
13036         * lib/gl_array_list.c: Likewise.
13037         * lib/gl_array_oset.c: Likewise.
13038         * lib/gl_avltree_list.c: Likewise.
13039         * lib/gl_avltree_oset.c: Likewise.
13040         * lib/gl_avltreehash_list.c: Likewise.
13041         * lib/gl_carray_list.c: Likewise.
13042         * lib/gl_linked_list.c: Likewise.
13043         * lib/gl_linkedhash_list.c: Likewise.
13044         * lib/gl_list.c: Likewise.
13045         * lib/gl_oset.c: Likewise.
13046         * lib/gl_rbtree_list.c: Likewise.
13047         * lib/gl_rbtree_oset.c: Likewise.
13048         * lib/gl_rbtreehash_list.c: Likewise.
13049         * lib/imaxabs.c: Likewise.
13050         * lib/imaxdiv.c: Likewise.
13051         * lib/javacomp.c: Likewise.
13052         * lib/javaexec.c: Likewise.
13053         * lib/javaversion.c: Likewise.
13054         * lib/linebreak.c: Likewise.
13055         * lib/localcharset.c: Likewise.
13056         * lib/lock.c: Likewise.
13057         * lib/mbchar.c: Likewise.
13058         * lib/mbswidth.c: Likewise.
13059         * lib/mkdtemp.c: Likewise.
13060         * lib/pipe.c: Likewise.
13061         * lib/printf-args.c: Likewise.
13062         * lib/printf-parse.c: Likewise.
13063         * lib/progname.c: Likewise.
13064         * lib/progreloc.c: Likewise.
13065         * lib/readlink.c: Likewise.
13066         * lib/sh-quote.c: Likewise.
13067         * lib/stpcpy.c: Likewise.
13068         * lib/stpncpy.c: Likewise.
13069         * lib/strcasecmp.c: Likewise.
13070         * lib/strcasestr.c: Likewise.
13071         * lib/strcspn.c: Likewise.
13072         * lib/striconv.c: Likewise.
13073         * lib/strncasecmp.c: Likewise.
13074         * lib/strnlen1.c: Likewise.
13075         * lib/strstr.c: Likewise.
13076         * lib/strtok_r.c: Likewise.
13077         * lib/tls.c: Likewise.
13078         * lib/tmpdir.c: Likewise.
13079         * lib/unicodeio.c: Likewise.
13080         * lib/unsetenv.c: Likewise.
13081         * lib/vasnprintf.c: Likewise.
13082         * lib/vasprintf.c: Likewise.
13083         * lib/wait-process.c: Likewise.
13084         * lib/xallocsa.c: Likewise.
13085         * lib/xsetenv.c: Likewise.
13086         * lib/xstriconv.c: Likewise.
13087
13088 2006-09-13  Simon Josefsson  <jas@extundo.com>
13089
13090         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
13091         that internally, suggested by Ralf Wildenhues
13092         <Ralf.Wildenhues@gmx.de>.
13093
13094 2006-09-13  Simon Josefsson  <jas@extundo.com>
13095
13096         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
13097         @LIBOBJS@.
13098         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13099
13100 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
13101
13102         * lib/_fpending.c: Include <config.h> unconditionally, since we no
13103         longer worry about uses that don't define HAVE_CONFIG_H.
13104         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
13105         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
13106         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
13107         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
13108         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
13109         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
13110         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
13111         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
13112         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
13113         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
13114         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
13115         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
13116         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
13117         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
13118         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
13119         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
13120         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
13121         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
13122         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
13123         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
13124         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
13125         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
13126         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
13127         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
13128         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
13129         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
13130         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
13131         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
13132         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
13133         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
13134         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
13135         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
13136         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
13137         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
13138         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
13139         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
13140         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
13141         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
13142         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
13143         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
13144         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
13145         Likewise.
13146
13147 2006-09-13  Eric Blake  <ebb9@byu.net>
13148
13149         * lib/getopt.c: Fix typo in last commit.
13150
13151 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
13152
13153         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
13154         dgettext.
13155
13156 2006-09-12  Jim Meyering  <jim@meyering.net>
13157
13158         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
13159         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
13160         Reported by Nelson H. F. Beebe.
13161
13162 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
13163
13164         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
13165         program_invocation_name and program_invocation_short_name are
13166         initialized.
13167         * lib/argp-namefrob.h: Move declarations of program_invocation_name
13168         and program_invocation_short_name to argp.h, so they are visible
13169         to user programs.
13170         * lib/argp.h: Likewise
13171
13172 2006-09-10  Bruno Haible  <bruno@clisp.org>
13173
13174         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
13175         m4/inttypes_h.m4, m4/uintmax_t.m4.
13176
13177 2006-09-10  Bruno Haible  <bruno@clisp.org>
13178
13179         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
13180         gl_AC_TYPE_UINTMAX_T.
13181
13182 2006-09-10  Bruno Haible  <bruno@clisp.org>
13183
13184         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
13185
13186 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
13187
13188         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
13189         convention.  Text proposed by Bruno Haible.
13190         (struct argp_option): Document the use of N_() wrappers.
13191
13192         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
13193         '\v', and translate the two parts separately, instead of feeding
13194         the whole string to gettext.  This allows to exclude
13195         '\v' from the strings visible to the translator by writing doc
13196         strings as N_("..") "\v" N_("..").
13197
13198 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
13199
13200         * config/srclist.txt: Undo latest change; the bug was fixed.
13201
13202 2006-09-09  Bruno Haible  <bruno@clisp.org>
13203
13204         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
13205         assignments if building a library without libtool.
13206         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
13207         in func_emit_lib_Makefile_am.
13208         (func_import): When building a static library libfoo.a, arrange to
13209         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
13210         (func_create_testdir): Likewise.
13211         * modules/gc (configure.ac, Makefile.am): If building statically,
13212         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
13213         * modules/iconvme (configure.ac, Makefile.am): Likewise.
13214         * modules/striconv (configure.ac, Makefile.am): Likewise.
13215         Based on a suggestion by Ralf Wildenhues.
13216
13217 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13218
13219         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
13220         Check for unistd.h too, since Autoconf doesn't assume POSIX.
13221         Also:
13222
13223         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13224         Add year_2050_test to catch glibc bug 2821
13225         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
13226
13227         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
13228         Prefer #ifdef to #if.
13229
13230         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
13231         Return from 'main' instead of calling 'exit'.
13232
13233 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13234
13235         * lib/mktime.c (guess_time_tm): Fix bug where mktime
13236         returned the maximum time_t value rather than (time_t) -1.
13237         Problem originally reported by William Bardwell
13238         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
13239
13240         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
13241         Moved to here ...
13242         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
13243         ... from here.
13244
13245 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13246
13247         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
13248         2821 is fixed.
13249
13250 2006-09-08  Jim Meyering  <jim@meyering.net>
13251
13252         Don't make generated files read-only.  That would bother too many
13253         people.  However, do retain the ability to work when targets are
13254         read-only: remove the destination and temporary files before writing
13255         them (when generated via sed or echo), or by using the -f option for
13256         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
13257         * modules/alloca-opt, modules/argz, modules/arpa_inet:
13258         * modules/byteswap, modules/configmake, modules/fcntl:
13259         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
13260         * modules/localcharset, modules/netinet_in, modules/poll:
13261         * modules/stdbool, modules/stdint, modules/sys_select:
13262         * modules/sys_socket, modules/sys_stat, modules/sysexits:
13263
13264 2006-09-08  Jim Meyering  <jim@meyering.net>
13265
13266         Avoid new build failure on FreeBSD 6.0.
13267         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
13268         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
13269         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
13270
13271 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13272
13273         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
13274
13275 2006-09-07  Jim Meyering  <jim@meyering.net>
13276
13277         Fix global typo in last change: use chmod u-w, not chmod u-x.
13278         Spotted by Paul Eggert and Bruce Korb.
13279         * modules/alloca-opt, modules/argz, modules/arpa_inet:
13280         * modules/byteswap, modules/configmake, modules/fcntl:
13281         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
13282         * modules/localcharset, modules/netinet_in, modules/poll:
13283         * modules/stdbool, modules/stdint, modules/sys_select:
13284         * modules/sys_socket, modules/sys_stat, modules/sysexits:
13285
13286 2006-09-06  Jim Meyering  <jim@meyering.net>
13287
13288         Make generated files be read-only.
13289         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
13290         Ensure that each generated file is now read-only.
13291         * modules/argz: Likewise.
13292         * modules/arpa_inet: Likewise.
13293         * modules/byteswap: Likewise.
13294         * modules/configmake: Likewise.
13295         * modules/fcntl: Likewise.
13296         * modules/fnmatch: Likewise.
13297         * modules/getopt: Likewise.
13298         * modules/glob: Likewise.
13299         * modules/inttypes: Likewise.
13300         * modules/netinet_in: Likewise.
13301         * modules/poll: Likewise.
13302         * modules/stdbool: Likewise.
13303         * modules/stdint: Likewise.
13304         * modules/sys_select: Likewise.
13305         * modules/sys_socket: Likewise.
13306         * modules/sys_stat: Likewise.
13307         * modules/sysexits: Likewise.
13308         * modules/localcharset: Same as above, but continue using temporary
13309         file named "t-$@" (why different?) rather than the "$@-t" used
13310         everywhere else.
13311
13312         * modules/sysexits (Makefile.am): Replace literal occurrences
13313         of "sysexit.h" more readable, and more consistent, "$@".
13314
13315 2006-09-06  Bruno Haible  <bruno@clisp.org>
13316
13317         * modules/striconv: New file.
13318         * modules/xstriconv: New file.
13319         * MODULES.html.sh (Internationalization functions): Add striconv,
13320         xstriconv.
13321
13322 2006-09-06  Bruno Haible  <bruno@clisp.org>
13323
13324         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
13325         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
13326         not using libtool correctly.
13327
13328 2006-09-06  Bruno Haible  <bruno@clisp.org>
13329
13330         * lib/striconv.h: New file.
13331         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
13332         iconvstring.c.
13333         * lib/xstriconv.h: New file.
13334         * lib/xstriconv.c: New file.
13335
13336 2006-09-06  Bruno Haible  <bruno@clisp.org>
13337
13338         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
13339         lib_..._LDFLAGS.
13340
13341 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13342
13343         * lib/argz_.h: Sync from Libtool.
13344
13345         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
13346                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13347
13348         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
13349
13350 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
13351
13352         * modules/trim: New file.
13353
13354 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
13355
13356         * lib/trim.h: New file.
13357         * lib/trim.c: New file.
13358
13359 2006-09-05  Bruno Haible  <bruno@clisp.org>
13360
13361         * MODULES.html.sh (String handling): Add trim.
13362
13363 2006-09-04  Karl Berry  <karl@gnu.org>
13364
13365         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
13366         until next release.
13367
13368 2006-09-03  Bruno Haible  <bruno@clisp.org>
13369
13370         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
13371         correctly.
13372
13373 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13374
13375         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
13376         not gl_GETLOADAVG.  Omit unneeded semicolons.
13377         Problems reported by Ralf Wildenhues in
13378         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
13379         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
13380         at the end, which is the usual gnulib style.
13381
13382         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
13383         of doing all the work ourselves.
13384         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
13385         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
13386
13387 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13388
13389         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
13390         Problem reported by Ralf Wildenhues in
13391         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
13392
13393         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
13394         HAVE_STRUCT_STATFS_F_FSTYPENAME.
13395
13396 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13397
13398         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
13399         yesterday's patch by changing test -n to test -z.
13400
13401 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13402
13403         * modules/getloadavg (Files): Add m4/getloadavg.m4.
13404         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
13405         the former is now obsolescent.
13406
13407         * modules/chdir-long (Depends-on): Add fcntl.
13408
13409 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13410
13411         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
13412         obsolescent, and programs should use gnulib instead.
13413         * m4/getloadavg.m4: New file, with contents taken from Autoconf
13414         but with prefixes changed.
13415
13416 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13417
13418         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
13419         or stdbool.h, because they might not exist while configuring.
13420
13421         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
13422         Don't include unistd.h or limits.h; not needed, since chdir-long.h
13423         does that for us.
13424         (O_DIRECTORY): Remove.
13425
13426 2006-08-31  Eric Blake  <ebb9@byu.net>
13427
13428         * gnulib-tool: Don't let emacs change spaces to TAB.
13429
13430 2006-08-31  Bruno Haible  <bruno@clisp.org>
13431
13432         * gnulib-tool: When calling func_import more than once, do it in a
13433         subshell.
13434         Reported by Eric Blake <ebb9@byu.net>.
13435
13436 2006-08-31  Bruno Haible  <bruno@clisp.org>
13437
13438         * gnulib-tool (nl): Remove variable.
13439         (sed_transform_lib_file): Use more robust test for config-h module.
13440         (func_import): Fix typo in 2006-08-25 patch.
13441
13442 2006-08-31  Bruno Haible  <bruno@clisp.org>
13443
13444         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
13445         specified, augment Makefile.am variables instead of assigning them.
13446
13447 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13448
13449         Work around a bug in both the Linux and SunOS 64-bit kernels:
13450         nanosleep mishandles sleeps for longer than 2**31 seconds.
13451         Problem reported by Frank v Waveren in
13452         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
13453         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
13454         Check for nanosleep bug.
13455         (LIB_NANOSLEEP): Append clock_gettime library if needed.
13456
13457 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13458
13459         Work around a bug in both the Linux and SunOS 64-bit kernels:
13460         nanosleep mishandles sleeps for longer than 2**31 seconds.
13461         Problem reported by Frank v Waveren in
13462         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
13463         * lib/nanosleep.c (BILLION): New constant.
13464         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
13465         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
13466         implementation.
13467
13468 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13469
13470         * modules/nanosleep (Depends-on): Add gettime.
13471
13472 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13473         and Simon Josefsson  <jas@extundo.com>
13474         and Oskar Liljeblad  <oskar@osk.mine.nu>
13475
13476         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
13477         * gnulib-tool (func_import): New license type 'unmodifiable license
13478         text'.
13479         * modules/fdl: Use it.  Longer description.
13480         * module/gpl, module/lgpl: New files.
13481
13482 2006-08-30  Jim Meyering  <jim@meyering.net>
13483
13484         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
13485         shadowing the parameter.
13486
13487 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13488
13489         Sync from Libtool:
13490
13491         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13492
13493         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
13494         sharing with gnulib.  Report by Eric Blake.
13495
13496 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13497
13498         * modules/isapipe: New file.
13499         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
13500
13501 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13502
13503         * modules/configmake (Makefile.am): Add a comment, and omit
13504         the CONFIGMAKE_ prefix from generated macro names.  Suggested
13505         by Bruno Haible.
13506
13507 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13508
13509         * m4/isapipe.m4: New file.
13510
13511 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13512
13513         * lib/isapipe.c, lib/isapipe.h: New files.
13514
13515 2006-08-29  Jim Meyering  <jim@meyering.net>
13516
13517         * modules/configmake (Makefile.am): Make configmake.h depend on
13518         Makefile.  Otherwise, a stale configmake.h could hang around.
13519
13520 2006-08-29  Eric Blake  <ebb9@byu.net>
13521
13522         * lib/error.c (error_at_line, print_errno_message): Match libc, after
13523         resolution of upstream bug 3044.
13524
13525 2006-08-29  Bruno Haible  <bruno@clisp.org>
13526
13527         * modules/localcharset (Depends-on): Add configmake.
13528         (Makefile.am): Remove setting of LIBDIR through DEFS.
13529
13530 2006-08-29  Bruno Haible  <bruno@clisp.org>
13531
13532         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
13533         defined.
13534
13535 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13536
13537         * modules/fcntl: New file.
13538         * modules/chdir-safer (Depends-on): Add fcntl.
13539         * modules/fts: Likewise.
13540         * modules/mkdir-p: Likewise.
13541
13542         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
13543         This undoes the most recent change, since we're now addressing the
13544         problem in a different way.
13545
13546         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
13547         into output, since the output might be called Makefile.am even
13548         if $makefile_name is something different.
13549         (func_import): Use $makefile_am rather than
13550         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
13551         empty.
13552
13553         * modules/inttypes (Files): Add m4/inttypes-h.m4.
13554
13555 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13556
13557         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
13558         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
13559         recent change to stdint.m4, since we're now addressing the problem in a
13560         different way.
13561
13562 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13563
13564         * m4/fcntl_h.m4: New file.
13565
13566 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13567
13568         * lib/fcntl_.h: New file.
13569         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
13570         the fcntl module.
13571         * lib/dirchownmod.c: Likewise.
13572         * lib/fts.c: Likewise.
13573
13574         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
13575         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
13576         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
13577         just before including <inttypes.h>, to avoid circular inclusion.
13578
13579 2006-08-28  Jim Meyering  <jim@meyering.net>
13580
13581         * doc/visibility.texi: Actually read and correct the grammar of the
13582         sentence affected by yesterday's change.
13583
13584 2006-08-28  Eric Blake  <ebb9@byu.net>
13585
13586         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
13587         needs wrapper.
13588
13589 2006-08-28  Eric Blake  <ebb9@byu.net>
13590
13591         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
13592
13593 2006-08-28  Eric Blake  <ebb9@byu.net>
13594
13595         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
13596
13597 2006-08-28  Bruno Haible  <bruno@clisp.org>
13598
13599         * modules/c-strstr: New file, from GNU gettext.
13600         * MODULES.html.sh (String handling): Add c-strstr.
13601
13602 2006-08-28  Bruno Haible  <bruno@clisp.org>
13603
13604         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
13605         macros.
13606         Reported by Eric Blake.
13607
13608 2006-08-28  Bruno Haible  <bruno@clisp.org>
13609
13610         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
13611         (VASNPRINTF): Return a string of length > INT_MAX without failing.
13612         * lib/vasprintf.c: Include errno.h, limits.h.
13613         (EOVERFLOW): New fallback definition.
13614         (vasprintf): Test here whether the string length is > INT_MAX.
13615         * lib/vsnprintf.c: Include errno.h, limits.h.
13616         (EOVERFLOW): New fallback definition.
13617         (vsnprintf): Fix bug when generated string was too long for the buffer.
13618         Test here whether the string length is > INT_MAX.
13619
13620 2006-08-28  Bruno Haible  <bruno@clisp.org>
13621
13622         * lib/inttypes_.h (SCNX*): Remove definitions.
13623         Reported by Eric Blake.
13624
13625 2006-08-28  Bruno Haible  <bruno@clisp.org>
13626
13627         * lib/c-strstr.h: New file, from GNU gettext.
13628         * lib/c-strstr.c: New file, from GNU gettext.
13629
13630 2006-08-28  Bruno Haible  <bruno@clisp.org>
13631
13632         * gnulib-tool: Reorder some statements.
13633
13634 2006-08-28  Bruno Haible  <bruno@clisp.org>
13635
13636         * gnulib-tool: New option --makefile-name.
13637         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
13638         $makefile_name.
13639         (func_import): Write $makefile_name to the cache file, and read it from
13640         there unless explicitly specified. Use $makefile_name as file name
13641         instead of Makefile.am. Adjust the recommendations accordingly.
13642
13643 2006-08-28  Bruno Haible  <bruno@clisp.org>
13644
13645         * gnulib-tool (func_verify_module): Check against misapplying patch.
13646
13647 2006-08-28  Bruno Haible  <bruno@clisp.org>
13648
13649         * gnulib-tool (func_relativize, func_relconcat): New functions.
13650         Give an error if --local-dir is given with --update.
13651         Remove trailing slashes from $local_gnulib_dir.
13652         (func_import): Store the relativized $local_gnulib_dir in
13653         gnulib-cache.m4, and read it from there if not specified explicitly.
13654
13655 2006-08-28  Bruno Haible  <bruno@clisp.org>
13656
13657         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
13658         is the current directory. Respect also $local_gnulib_dir.
13659
13660 2006-08-28  Bruno Haible  <bruno@clisp.org>
13661             Simon Josefsson  <jas@extundo.com>
13662
13663         BeOS portability.
13664         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
13665
13666 2006-08-27  Jim Meyering  <jim@meyering.net>
13667
13668         * doc/visibility.texi: Remove duplicate word: "pointer".
13669
13670 2006-08-26  Bruno Haible  <bruno@clisp.org>
13671
13672         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
13673         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
13674         (Makefile.am): Create inttypes.h from inttypes_.h.
13675         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
13676
13677         * modules/imaxabs: New file.
13678
13679         * modules/imaxdiv: New file.
13680
13681 2006-08-26  Bruno Haible  <bruno@clisp.org>
13682
13683         * m4/inttypes.m4: New file.
13684         * m4/_inttypes_h.m4: Remove file.
13685         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
13686         PRI_MACROS_BROKEN.
13687         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
13688
13689         * m4/imaxabs.m4: New file.
13690
13691         * m4/imaxdiv.m4: New file.
13692
13693 2006-08-26  Bruno Haible  <bruno@clisp.org>
13694
13695         * lib/inttypes_.h: New file.
13696         * lib/inttypes.h: Remove file.
13697         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
13698
13699         * lib/imaxabs.c: New file.
13700
13701         * lib/imaxdiv.c: New file.
13702
13703 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
13704
13705         New config-h module, so that "make" output needn't be cluttered
13706         by -DHAVE_CONFIG_H.
13707         * MODULES.html.sh (Support for building libraries and executables):
13708         Add config-h.
13709         * modules/config-h: New file.
13710         * gnulib-tool (nl, sed_transform_lib_file): New vars.
13711         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
13712         the config-h module is used.
13713
13714         New configmake module, so that "make" output needn't be cluttered
13715         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
13716         * MODULES.html.sh (Support for building libraries and executables):
13717         Add configmake.
13718         * modules/configmake: New file.
13719
13720 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
13721
13722         * m4/config-h.m4: New file.
13723
13724 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
13725
13726         * config/srclist.txt: Add elisp-comp.
13727
13728 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
13729
13730         * MODULES.html.sh (Support for building libraries and executables):
13731         Add elisp-comp.
13732         * build-aux/elisp-comp: New file.
13733         * modules/elisp-comp: New file.
13734
13735 2006-08-24  Bruno Haible  <bruno@clisp.org>
13736
13737         * gnulib-tool (func_create_testdir): Use non-default values of
13738         sourcebase and m4base.
13739
13740 2006-08-24  Bruno Haible  <bruno@clisp.org>
13741
13742         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
13743         HTML structure.
13744
13745 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
13746
13747         * modules/openat (Depends-on): Add lchown.
13748
13749 2006-08-23  Bruno Haible  <bruno@clisp.org>
13750
13751         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
13752         of gl_LOCK_EARLY instead of gl_LOCK.
13753
13754 2006-08-23  Bruno Haible  <bruno@clisp.org>
13755
13756         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
13757         on OSF/1 to no.
13758         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
13759
13760 2006-08-23  Bruno Haible  <bruno@clisp.org>
13761
13762         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
13763         as unusable.
13764
13765         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
13766         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
13767         (gl_LOCK): New macro.
13768
13769 2006-08-22  Simon Josefsson  <jas@extundo.com>
13770
13771         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
13772         to md5 module.
13773
13774 2006-08-22  Simon Josefsson  <jas@extundo.com>
13775
13776         * MODULES.html.sh: Add "Support for maintaining and release
13777         projects".
13778
13779         * build-aux/gnupload: New file, from coreutils.
13780
13781 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13782
13783         Avoid the need for AC_LIBSOURCES in m4 macros.
13784         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
13785         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
13786         * modules/check-version (EXTRA_DIST): Add check-version.h.
13787         * modules/crc (EXTRA_DIST): Add crc.h.
13788         * modules/des (EXTRA_DIST): Add des.h.
13789         * modules/gc (EXTRA_DIST): Add gc.h.
13790         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
13791         * modules/getline (EXTRA_DIST): Add getline.h.
13792         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
13793         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
13794         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
13795         * modules/md2 (EXTRA_DIST): Add md2.h.
13796         * modules/md4 (EXTRA_DIST): Add md4.h.
13797         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
13798         * modules/read-file (EXTRA_DIST): Add read-file.h.
13799         * modules/readline (EXTRA_DIST): Add readline.h.
13800         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
13801         rijndael-api-fst.h.
13802
13803 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13804
13805         * m4/rijndael.m4 (gl_ARCFOUR):
13806         * m4/arctwo.m4 (gl_ARCTWO):
13807         * m4/check-version.m4 (gl_CHECK_VERSION):
13808         * m4/crc.m4 (gl_CRC):
13809         * m4/des.m4 (gl_DES):
13810         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
13811         * m4/gc.m4 (gl_GC):
13812         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
13813         * m4/getline.m4 (gl_FUNC_GETLINE):
13814         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
13815         * m4/hmac-md5.m4 (gl_HMAC_MD5):
13816         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
13817         * m4/md2.m4 (gl_MD2):
13818         * m4/md4.m4 (gl_MD4):
13819         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
13820         * m4/read-file.m4 (gl_FUNC_READ_FILE):
13821         * m4/readline.m4 (gl_FUNC_READLINE):
13822         * m4/rijndael.m4 (gl_RIJNDAEL):
13823         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
13824         to get the necessary .h files and whatnot.
13825
13826 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
13827
13828         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
13829         gnulib rather than the other way around.
13830         * config/srclistvars.sh (COREUTILS): Remove.
13831
13832 2006-08-22  Jim Meyering  <jim@meyering.net>
13833
13834         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
13835
13836         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
13837
13838 2006-08-22  Eric Blake  <ebb9@byu.net>
13839
13840         * modules/regexprops-generic: New file.
13841         * MODULES.html.sh (Support for building documentation): List it.
13842
13843 2006-08-22  Eric Blake  <ebb9@byu.net>
13844
13845         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
13846         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
13847         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
13848         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
13849
13850 2006-08-22  Bruno Haible  <bruno@clisp.org>
13851
13852         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
13853         and lib_LTLIBRARIES like the other lib_* variables.
13854
13855 2006-08-22  Bruno Haible  <bruno@clisp.org>
13856
13857         * build-aux/x-to-1.in: New file, from GNU gettext.
13858
13859 2006-08-22  Bruno Haible  <bruno@clisp.org>
13860
13861         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
13862         <utmpx.h> exists.
13863
13864 2006-08-22  Bruno Haible  <bruno@clisp.org>
13865
13866         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
13867         <utmpx.h> exists.
13868
13869 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13870
13871         BeOS portability.
13872         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
13873         exist.
13874         Problem reported by Bruno Haible.
13875
13876 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13877
13878         Avoid the need for AC_LIBSOURCES in m4 macros.
13879         * modules/acl (EXTRA_DIST): Add acl.h.
13880         * modules/argmatch (Files): Add m4/argmatch.m4.
13881         (configure.ac): Add gl_ARGMATCH.
13882         (EXTRA_DIST): Renamed from lib_SOURCES, for
13883         consistency with the other modules.  Remove argmatch.c.
13884         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
13885         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
13886         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
13887         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
13888         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
13889         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
13890         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
13891         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
13892         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
13893         * modules/closeout (EXTRA_DIST): Add closeout.h.
13894         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
13895         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
13896         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
13897         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
13898         dirname.h; remove basename.c and stripslash.c.
13899         * modules/exclude (EXTRA_DIST): Add exclude.h.
13900         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
13901         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
13902         * modules/file-type (EXTRA_DIST): Add file-type.h.
13903         * modules/filemode (EXTRA_DIST): Add filemode.h.
13904         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
13905         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
13906         * modules/fpending (EXTRA_DIST): Add __fpending.h.
13907         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
13908         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
13909         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
13910         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
13911         * modules/getdate (EXTRA_DIST): Add getdate.c.
13912         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
13913         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
13914         * modules/getpass (EXTRA_DIST): Add getpass.h.
13915         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
13916         * modules/group-member (EXTRA_DIST): Add group-member.h.
13917         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
13918         * modules/hash (EXTRA_DIST): Add hash.h.
13919         * modules/human (EXTRA_DIST): Add human.h.
13920         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
13921         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
13922         * modules/lchown (EXTRA_DIST): Add lchown.h.
13923         * modules/long-options (EXTRA_DIST): Add long-options.h.
13924         * modules/lstat (EXTRA_DIST): Add lstat.h.
13925         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
13926         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
13927         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
13928         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
13929         * modules/memxor (EXTRA_DIST): Add memxor.h.
13930         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
13931         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
13932         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
13933         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
13934         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
13935         * modules/physmem (EXTRA_DIST): Add physmem.h.
13936         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
13937         * modules/posixver (EXTRA_DIST): Add posixver.h.
13938         * modules/quote (EXTRA_DIST): Add quote.h.
13939         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
13940         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
13941         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
13942         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
13943         regex_internal.h regexec.c.
13944         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
13945         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
13946         * modules/same (EXTRA_DIST): Add same.h.
13947         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
13948         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
13949         * modules/savedir (EXTRA_DIST): Add savedir.h.
13950         * modules/sha1 (EXTRA_DIST): Add sha1.h.
13951         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
13952         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
13953         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
13954         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
13955         * modules/strdup (EXTRA_DIST): Add strdup.h.
13956         * modules/strftime (EXTRA_DIST): Add strftime.h.
13957         * modules/strndup (EXTRA_DIST): Add strndup.h.
13958         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
13959         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
13960         * modules/time_r (EXTRA_DIST): Add time_r.h.
13961         * modules/timespec (EXTRA_DIST): Add timespec.h.
13962         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
13963         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
13964         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
13965         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
13966         * modules/userspec (EXTRA_DIST): Add userspec.h.
13967         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
13968         * modules/utimens (EXTRA_DIST): Add utimens.h.
13969         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
13970         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
13971         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
13972         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
13973         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
13974         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
13975         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
13976         * modules/yesno (EXTRA_DIST): Add yesno.h.
13977
13978 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13979
13980         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
13981
13982         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
13983         * m4/dev-ino.m4, same-inode.m4: Remove.
13984
13985         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
13986         * m4/acl.m4 (AC_FUNC_ACL):
13987         * m4/backupfile.m4 (gl_BACKUPFILE):
13988         * m4/c-strtod.m4 (gl_C99_STRTOLD):
13989         * m4/canon-host.m4 (gl_CANON_HOST):
13990         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
13991         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
13992         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
13993         * m4/cloexec.m4 (gl_CLOEXEC):
13994         * m4/close-stream.m4 (gl_CLOSE_STREAM):
13995         * m4/closeout.m4 (gl_CLOSEOUT):
13996         * m4/dirfd.m4 (gl_FUNC_DIRFD):
13997         * m4/dirname.m4 (gl_DIRNAME):
13998         * m4/exclude.m4 (gl_EXCLUDE):
13999         * m4/exitfail.m4 (gl_EXITFAIL):
14000         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
14001         * m4/file-type.m4 (gl_FILE_TYPE):
14002         * m4/filemode.m4 (gl_FILEMODE):
14003         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
14004         * m4/fpending.m4 (gl_FUNC_FPENDING):
14005         * m4/fprintftime.m4 (gl_FPRINTFTIME):
14006         * m4/fts.m4 (gl_FUNC_FTS):
14007         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
14008         * m4/getdate.m4 (gl_GETDATE):
14009         * m4/gethrxtime.m4 (gl_GETHRXTIME):
14010         * m4/getpagesize.m4 (gl_GETPAGESIZE):
14011         * m4/getpass.m4 (gl_FUNC_GETPASS):
14012         * m4/gettime.m4 (gl_GETTIME):
14013         * m4/getugroups.m4 (gl_GETUGROUPS):
14014         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
14015         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
14016         * m4/hard-locale.m4 (gl_HARD_LOCALE):
14017         * m4/hash.m4 (gl_HASH):
14018         * m4/idcache.m4 (gl_IDCACHE):
14019         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
14020         * m4/lchown.m4 (gl_FUNC_LCHOWN):
14021         * m4/long-options.m4 (gl_LONG_OPTIONS):
14022         * m4/lstat.m4 (gl_FUNC_LSTAT):
14023         * m4/md5.m4 (gl_MD5):
14024         * m4/memcasecmp.m4 (gl_MEMCASECMP):
14025         * m4/memcoll.m4 (gl_MEMCOLL):
14026         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
14027         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
14028         * m4/memxor.m4 (gl_MEMXOR):
14029         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
14030         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
14031         * m4/modechange.m4 (gl_MODECHANGE):
14032         * m4/mountlist.m4 (gl_MOUNTLIST):
14033         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
14034         * m4/openat.m4 (gl_FUNC_OPENAT):
14035         * m4/pathmax.m4 (gl_PATHMAX):
14036         * m4/physmem.m4 (gl_PHYSMEM):
14037         * m4/posixtm.m4 (gl_POSIXTM):
14038         * m4/posixver.m4 (gl_POSIXVER):
14039         * m4/quote.m4 (gl_QUOTE):
14040         * m4/quotearg.m4 (gl_QUOTEARG):
14041         * m4/readtokens.m4 (gl_READTOKENS):
14042         * m4/readutmp.m4 (gl_READUTMP):
14043         * m4/regex.m4 (gl_REGEX):
14044         * m4/safe-read.m4 (gl_SAFE_READ):
14045         * m4/safe-write.m4 (gl_SAFE_WRITE):
14046         * m4/same.m4 (gl_SAME):
14047         * m4/save-cwd.m4 (gl_SAVE_CWD):
14048         * m4/savedir.m4 (gl_SAVEDIR):
14049         * m4/settime.m4 (gl_SETTIME):
14050         * m4/sha1.m4 (gl_SHA1):
14051         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
14052         * m4/stat-macros.m4 (gl_STAT_MACROS):
14053         * m4/stat-time.m4 (gl_STAT_TIME):
14054         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
14055         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
14056         * m4/strdup.m4 (gl_FUNC_STRDUP):
14057         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
14058         * m4/strndup.m4 (gl_FUNC_STRNDUP):
14059         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
14060         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
14061         * m4/time_r.m4 (gl_TIME_R):
14062         * m4/timespec.m4 (gl_TIMESPEC):
14063         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
14064         * m4/unlinkdir.m4 (gl_UNLINKDIR):
14065         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
14066         * m4/userspec.m4 (gl_USERSPEC):
14067         * m4/utimecmp.m4 (gl_UTIMECMP):
14068         * m4/utimens.m4 (gl_UTIMENS):
14069         * m4/xalloc.m4 (gl_XALLOC):
14070         * m4/xgetcwd.m4 (gl_XGETCWD):
14071         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
14072         * m4/xreadlink.m4 (gl_XREADLINK):
14073         * m4/xstrtod.m4 (gl_XSTRTOD):
14074         * m4/yesno.m4 (gl_YESNO):
14075         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14076         to get the necessary .h files and whatnot.
14077
14078 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
14079             Bruno Haible  <bruno@clisp.org>
14080
14081         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
14082         /bin/sh understanding of '!' conditional negation.
14083
14084 2006-08-21  Jim Meyering  <jim@meyering.net>
14085
14086         * modules/openat (Depends-on): Really alphabetize.
14087
14088         * modules/acl (Depends-on): Add error and quote.
14089
14090         * check-module (find_included_lib_files): Add at-func.c to the
14091         ok-to-include-more-than-once white list.
14092
14093         * modules/openat (Depends-on): Add lstat.  Alphabetize.
14094
14095 2006-08-21  Bruno Haible  <bruno@clisp.org>
14096
14097         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14098         Emit a pkgdata_DATA variable only if some snippets add contents to it.
14099         Reported by Martin Lambers <marlam@marlam.de>.
14100
14101 2006-08-21  Bruno Haible  <bruno@clisp.org>
14102
14103         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
14104         specify an installation location, don't emit a noinst_LIBRARIES or
14105         noinst_LTLIBRARIES assignment.
14106
14107 2006-08-21  Bruno Haible  <bruno@clisp.org>
14108
14109         BeOS portability.
14110         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
14111         BeOS has mbrtowc() but no <wctype.h>.
14112
14113 2006-08-21  Bruno Haible  <bruno@clisp.org>
14114
14115         BeOS portability.
14116         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
14117         exist.
14118
14119 2006-08-21  Bruno Haible  <bruno@clisp.org>
14120
14121         BeOS portability.
14122         * lib/mbchar.h: Include <wctype.h> only if it exists.
14123
14124 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14125
14126         Remove files that are no longer needed by their respective modules.
14127         * m4/obstack.m4: Remove.
14128         * m4/strerror_r.m4: Remove.
14129         * m4/uint32_t.m4: Remove.
14130         * m4/uintptr_t.m4: Remove.
14131         * m4/ullong_max.m4: Remove.
14132         * m4/xstrtoimax.m4: Remove.
14133         * m4/xstrtoumax.m4: Remove.
14134
14135         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
14136         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
14137         dependencies now capture this.
14138
14139         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
14140         Do not use AC_LIBSOURCES, since gnulib modules now do this.
14141         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
14142         * m4/human.m4 (gl_HUMAN): Likewise.
14143         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
14144         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
14145
14146         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
14147
14148         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
14149         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
14150         stdint.
14151         * m4/human.m4 (gl_HUMAN): Likewise.
14152         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
14153         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
14154         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14155         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14156         * m4/xstrtol (gl_XSTRTOL): Likewise.
14157
14158         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
14159         AC_TYPE_LONG_LONG_INT.
14160         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14161         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
14162         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
14163         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14164
14165         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
14166         on stdbool.
14167
14168         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
14169         (gl_PREREQ_XSTRTOUL): Remove.
14170
14171         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
14172
14173         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
14174         mode.
14175
14176 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14177
14178         Add and change modules to make it easier for coreutils to use
14179         gnulib-tool.
14180         * modules/backupfile (Files): Remove m4/d-ino.m4.
14181         (Depends-on): Add d-ino.
14182         * modules/cycle-check (Depends-on): Add stdint.
14183         (lib_SOURCES): Add cycle-check.h.
14184         * modules/d-ino: New module.
14185         * modules/d-type: New module.
14186         * modules/error (Files): Remove m4/strerror_r.m4.
14187         * modules/filemode (Files): Add m4/st_dm_mode.m4.
14188         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
14189         m4/inttypes_h.m4, m4/uintmax_t.m4.
14190         (Depends-on): Add stdint.
14191         (lib_SOURCES): Add fsusage.h.
14192         * modules/getcwd (Files): Remove d-ino.m4.
14193         (Depends-on): Add d-ino.
14194         * modules/getndelim2 (Depends-on): Add stdint.
14195         * modules/glob (Files): Remove m4/d-type.m4.
14196         (Depends-on): Add d-type.
14197         * modules/host-os: New module.
14198         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
14199         m4/inttypes_h.m4, m4/uintmax_t.m4.
14200         * Depends-on: Add stdint.
14201         (lib_SOURCES): Add human.h.
14202         * modules/inttostr (Files): Remove m4/intmax_t.m4,
14203         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
14204         m4/uintmax_t.m4, m4/ulonglong.m4.
14205         (Depends-on): Add stdint.
14206         (EXTRA_DIST): Add inttostr.h.
14207         * modules/lchmod: New module.
14208         * modules/link-follow: New module.
14209         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
14210         (Depends-on): Add lchmod.
14211         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
14212         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
14213         (Depends-on): Add stdint.
14214         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
14215         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
14216         (Depends-on): Add stdint.
14217         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
14218         * modules/perl: New module.
14219         * modules/regex (Depends-on): Add stdint.
14220         * modules/rmdir-errno: New module.
14221         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
14222         m4/intmax_t.m4.
14223         (Depends-on): Add stdint.
14224         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
14225         m4/uintmax_t.m4.
14226         (Depends-on): Add stdint.
14227         * modules/unlink-busy: New module.
14228         * modules/utimecmp (Depends-on): Add stdint.
14229         * modules/uptime: New module.
14230         * modules/winsz-ioctl: New module.
14231         * modules/winsz-termios: New module.
14232         * modules/xnanosleep (Depends-on): Add nanosleep.
14233         * modules/ullong_max: Remove.
14234         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
14235         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
14236         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
14237         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
14238         (Depends-on): Add inttypes.
14239         (lib_SOURCES): Add xstrtol.h.
14240         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
14241         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
14242         * MODULES.html.sh: Move 'assert' into the assert section.
14243         Move 'dummy' into the linking section.
14244         Remove ullong_max.
14245         Add section for compatibility checks for POSIX:2001 functions,
14246         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
14247         winsz-ioctl, and winsz-termios into it.
14248         Add lchmod.
14249         Add top-level Misc section and put host-os, perl, and uptime
14250         into it.
14251
14252 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14253
14254         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
14255         now assume the stdint module.  Do not include inttypes.h.
14256         * lib/fsusage.h: Likewise.
14257         * lib/getndelim2.c: Likewise.
14258         * lib/human.h: Likewise.
14259         * lib/inttostr.h: Likewise.
14260         * lib/obstack.c: Likewise.
14261         * lib/regex_internal.h: Likewise.
14262         * lib/tempname.c: Likewise.
14263         * lib/utimecmp.c: Likewise.
14264         * lib/xstrtol.h: Likewise.
14265
14266         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
14267
14268         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
14269         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
14270         * lib/xtime.h: Likewise.
14271
14272 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
14273
14274         * modules/openat (Files): Add lib/fchmodat.c.
14275         Fixes problem reported by Jay Youngman.
14276
14277 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
14278
14279         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
14280         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
14281
14282 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
14283             Bruno Haible  <bruno@clisp.org>
14284
14285         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
14286         and is a script that invokes bison. Tighten the code. Add comments.
14287
14288 2006-08-18  Jim Meyering  <jim@meyering.net>
14289
14290         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
14291         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
14292         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
14293         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
14294
14295 2006-08-18  Bruno Haible  <bruno@clisp.org>
14296
14297         * modules/bison-i18n: New file.
14298         * MODULES.html.sh (Internationalization functions): Add it.
14299
14300 2006-08-18  Bruno Haible  <bruno@clisp.org>
14301
14302         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
14303         sys/statvfs.h. When getmntinfo was found, check its declaration and
14304         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
14305
14306 2006-08-18  Bruno Haible  <bruno@clisp.org>
14307
14308         * m4/bison-i18n.m4: New file, from bison.
14309
14310 2006-08-18  Bruno Haible  <bruno@clisp.org>
14311
14312         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
14313         (ME_DUMMY): Treat "kernfs" as a dummy.
14314         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
14315
14316 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
14317
14318         Update from coreutils.
14319
14320         2006-08-15  Jim Meyering  <jim@meyering.net>
14321
14322         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
14323
14324         2006-01-17  Jim Meyering  <jim@meyering.net>
14325
14326         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
14327
14328         2006-01-11  Jim Meyering  <jim@meyering.net>
14329
14330         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
14331         Check for the lchmod function.
14332
14333 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
14334
14335         Update from coreutils.
14336
14337         * lib/__fpending.h: Add copyright notice.
14338         * lib/fprintftime.h: Likewise.
14339         * lib/savedir.c: Use (C) in copyright notice.
14340         * lib/savedir.h: Likewise.
14341
14342         2006-08-15  Jim Meyering  <jim@meyering.net>
14343
14344         * lib/at-func.c: New file, with the logic of all emulated at-functions.
14345         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
14346         in support of the EXPECTED_ERRNO macro.
14347         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
14348         definitions.  Instead, define the appropriate symbols and include
14349         "at-func.c".
14350         * lib/mkdirat.c (mkdirat): Likewise.
14351         * lib/fchmodat.c (fchmodat): Likewise.
14352         (ENOSYS): Remove definition.
14353         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
14354         it.  Don't include "unistd--.h" -- it wasn't ever used.
14355
14356         2006-01-17  Jim Meyering  <jim@meyering.net>
14357
14358         Rewrite fts.c not to change the current working directory,
14359         by using openat, fstatat, fdopendir, etc..
14360
14361         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
14362         (HAVE_OPENAT_SUPPORT): Define.
14363         [_LIBC] (fchdir): Don't undef or define; no longer used.
14364         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
14365         Now, this `function' always succeeds, and consumes its file descriptor
14366         parameter -- so callers must not close such FDs.  Update callers.
14367         (diropen_fd, opendirat, cwd_advance_fd): New functions.
14368         (diropen): Add parameter, SP.  Adjust all callers.
14369         Implement using diropen_fd, rather than open.
14370         (fts_open): Initialize new member, fts_cwd_fd.
14371         Remove fts_rft-setting code.
14372         (fts_close): Close fts_cwd_fd, if necessary.
14373         (__opendir2): Define in terms of opendir or opendirat,
14374         depending on whether the FST_NOCHDIR flag is set.
14375         (fts_build): Since fts_safe_changedir consumes its FD, and since
14376         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
14377         and close the dup'd file descriptor upon failure.
14378         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
14379         (fts_safe_changedir): Tweak semantics to reflect that this function
14380         now calls cwd_advance_fd and hence consumes its FD argument.
14381         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
14382         [struct FTS] (fts_rft): Remove now-unused member.
14383         [struct FTS] (fts_cycle.state): Improve comment.
14384
14385         * lib/openat.c (openat_needs_fchdir): New function.
14386         * lib/openat.h (openat_needs_fchdir): Declare it.
14387
14388 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
14389
14390         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
14391         Problem and fix reported by Pádraig Brady in
14392         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
14393
14394 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14395
14396         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
14397
14398 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14399
14400         * lib/memcoll.c (memcoll): Optimize for the common case where the
14401         arguments are bytewise equal.
14402
14403 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14404
14405         * doc/regexprops-generic.texi: Add a copyright notice.
14406
14407 2006-08-15  Bruno Haible  <bruno@clisp.org>
14408
14409         * modules/tmpdir (License): Change to LGPL.
14410
14411 2006-08-15  Bruno Haible  <bruno@clisp.org>
14412
14413         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
14414         module.
14415
14416 2006-08-14  Simon Josefsson  <jas@extundo.com>
14417
14418         * config/srclist.txt: Add gnupload.
14419
14420 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14421
14422         Change copyright notice from LGPL 2 to GPL 2, since that's the
14423         standard form used in the gnulib repository.
14424         * tests/test-lock.c: Likewise.
14425         * tests/test-stdint.c: Likewise.
14426         * tests/test-tls.c: Likewise.
14427
14428         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
14429         prelude-manager.  User shorter URLs for GNU projects, without '?'.
14430         Add copyright notice.
14431
14432         * check-module: Add copyright notice.  Output a copyright
14433         notice if "--version" is specified.
14434         * modules/COPYING: New file.
14435         * tests/test-getaddrinfo.c: Add copyright notice.
14436         * tests/test-verify.c: Likewise.
14437
14438 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14439
14440         Change copyright notice from LGPL 2 to GPL 2, since that's the
14441         standard form used in the gnulib repository.
14442         * lib/lock.c: LGPL -> GPL.
14443         * lib/lock.h: Likewise.
14444         * lib/strnlen1.c: Likewise.
14445         * lib/strnlen1.h: Likewise.
14446         * lib/tls.c: Likewise.
14447         * lib/tls.h: Likewise.
14448         * lib/tmpdir.c: Likewise.
14449
14450         * lib/TODO: Remove; this belongs only in coreutils.
14451
14452 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14453
14454         Add copyright notices to long-enough files that lack them, since
14455         otherwise the files aren't clearly free.  Use the same notice that
14456         getdate.texi already uses.
14457         * doc/alloca-opt.texi: Add copyright notice.
14458         * doc/alloca.texi: Likewise.
14459         * doc/ctime.texi: Likewise.
14460         * doc/functions.texi: Likewise.
14461         * doc/gcd.texi: Likewise.
14462         * doc/gnulib-tool.texi: Likewise.
14463         * doc/inet_ntoa.texi: Likewise.
14464         * doc/visibility.texi: Likewise.
14465
14466         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
14467         * doc/quote.texi: Add copyright notice.
14468
14469         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
14470         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
14471         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
14472         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
14473         is now obsolete, and give a pointer to the Sun list.
14474         Add copyright notice.
14475
14476 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14477
14478         * config/srclistvars.sh: Add copyright notice.
14479
14480 2006-08-14  Eric Blake  <ebb9@byu.net>
14481
14482         Import the following change from libc:
14483
14484         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
14485
14486         Upstream bug 2997.
14487         * lib/misc/error.c: Add space between program name and message if file
14488         name is missing.
14489
14490 2006-08-12  Karl Berry  <karl@gnu.org>
14491
14492         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
14493         remove, these originate in gnulib now.
14494
14495 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14496
14497         * doc/Makefile (standards.info standards.html standards.dvi):
14498         Also depend on make-stds.texi.
14499
14500 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
14501
14502         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
14503         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
14504
14505         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
14506         in wchar_t.  Problem reported by Eric Blake.
14507
14508         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
14509         LEN is smaller than SIZE.  Suggested by Bruno Haible.
14510         Also, help the compiler to keep LEN in a register.
14511
14512 2006-08-11  Eric Blake  <ebb9@byu.net>
14513
14514         * users.txt: Sort.  Add tar.
14515
14516 2006-08-11  Bruno Haible  <bruno@clisp.org>
14517
14518         * users.txt: New file.
14519
14520 2006-08-11  Bruno Haible  <bruno@clisp.org>
14521
14522         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
14523         before <wchar.h>. Needed for OSF/1 and BSD/OS.
14524
14525 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14526
14527         * modules/snprintf (Depends-on): Remove minmax.
14528         (Maintainer): Add self and Bruno.
14529
14530 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14531
14532         * lib/.cppi-disable: Add snprintf.h, socket_.h.
14533         * lib/snprintf.c: Include <errno.h> and <limits.h>.
14534         (EOVERFLOW): Define if the system does not.
14535         Do not include "minmax.h"; it wasn't used.
14536         (snprintf): Don't assume size_t promotes to an unsigned type.
14537         Fix bug when generated string was too long for the buffer: the
14538         buffer's contents are supposed to be the initial prefix of the
14539         output.  Don't assume vasnprintf returns EOVERFLOW if the size
14540         exceeds INT_MAX; do the check ourselves.
14541
14542         Import the following changes from libc:
14543
14544         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
14545
14546         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
14547         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
14548         set wc to the byte which couldn't be converted.
14549         (re_string_reconstruct): Don't clear valid_raw_len before calling
14550         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
14551         tip_context using re_string_context_at.
14552
14553         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
14554
14555         * lib/posix/regex.h: g++ still cannot handled [restrict].
14556
14557         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
14558
14559         * lib/posix/regex.h: Remove special handling for VMS.
14560
14561 2006-08-10  Jim Meyering  <jim@meyering.net>
14562
14563         * modules/same-inode: New module.
14564         * modules/dev-ino: New module.
14565         * modules/cycle-check: Depend on these modules, rather than simply
14566         including their .h files.
14567         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
14568         required via m4/cycle-check.m4.
14569         * modules/same: Depend on new same-inode module, rather than
14570         including same-inode.h.
14571         * modules/chdir-safer: New file.
14572
14573         * modules/chown (Depends-on): Add stat-macros.
14574
14575 2006-08-10  Jim Meyering  <jim@meyering.net>
14576
14577         * m4/cycle-check.m4: New file.
14578         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
14579         * m4/dev-ino.m4, m4/same-inode.m4: New files.
14580
14581 2006-08-10  Eric Blake  <ebb9@byu.net>
14582
14583         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
14584         in from original proposal.
14585
14586 2006-08-10  Eric Blake  <ebb9@byu.net>
14587         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14588
14589         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
14590         namespace.
14591
14592 2006-08-10  Bruno Haible  <bruno@clisp.org>
14593
14594         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
14595         as well.
14596
14597 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14598
14599         Sync from coreutils.
14600
14601         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
14602
14603         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
14604         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
14605
14606 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14607
14608         * modules/restrict: Remove; no longer needed now that we assume
14609         Autoconf 2.59 or later.
14610         * MODULES.html.sh: Remove 'restrict'.
14611         * modules/argp (Depends-on): Remove 'restrict'.
14612         * modules/base64 (Depends-on): Likewise.
14613         * modules/gc (Depends-on): Likewise.
14614         * modules/getaddrinfo (Depends-on): Likewise.
14615         * modules/glob (Depends-on): Likewise.
14616         * modules/inet_ntop (Depends-on): Likewise.
14617         * modules/inet_pton (Depends-on): Likewise.
14618         * modules/memxor (Depends-on): Likewise.
14619         * modules/regex (Depends-on): Likewise.
14620         * modules/strtok_r (Depends-on): Likewise.
14621         * modules/time_r (Depends-on): Likewise.
14622
14623 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14624
14625         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
14626         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
14627         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
14628         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
14629         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
14630         * m4/memxor.m4 (gl_MEMXOR): Likewise.
14631         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
14632         gl_C_RESTRICT replaced by AC_C_RESTRICT.
14633
14634         Merge from coreutils.
14635         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
14636         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
14637         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
14638         * m4/time_r.m4 (gl_TIME_R): Likewise.
14639
14640 2006-08-09  Karl Berry  <karl@gnu.org>
14641
14642         * config/srclist.txt: no more gettext-tools, per Bruno.
14643
14644 2006-08-08  Eric Blake  <ebb9@byu.net>
14645
14646         * modules/verror: New module.
14647         * MODULES.html.sh: Document it.
14648
14649 2006-08-08  Eric Blake  <ebb9@byu.net>
14650
14651         * lib/verror.h, lib/verror.c: New files.
14652
14653 2006-08-08  Eric Blake  <ebb9@byu.net>
14654
14655         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
14656         verror_at_line output complies with GNU Coding Standards even when
14657         file is NULL.
14658
14659 2006-08-07  Bruno Haible  <bruno@clisp.org>
14660
14661         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
14662         versions of AIX.
14663         Reported by Ralf Wildenhues.
14664
14665 2006-08-07  Bruno Haible  <bruno@clisp.org>
14666
14667         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
14668         in an AC_DEFUN. Needed so that the autoconf snippets can use
14669         AC_REQUIRE.
14670
14671 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14672
14673         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14674         Initialize pkgdata_DATA.
14675         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
14676         overriding it.
14677
14678 2006-08-06  Eric Blake  <ebb9@byu.net>
14679
14680         * lib/error.h: Fold in some upstream changes from glibc.
14681         * lib/error.c: Likewise.
14682
14683 2006-08-04  Bruno Haible  <bruno@clisp.org>
14684
14685         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14686         Make the mostlyclean-local rule depend on mostlyclean-generic.
14687         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
14688
14689 2006-07-31  Bruno Haible  <bruno@clisp.org>
14690
14691         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
14692         <stdlib.h>, <string.h>.
14693
14694 2006-07-30  Bruno Haible  <bruno@clisp.org>
14695
14696         * modules/readlink (License): Change to LGPL.
14697
14698 2006-07-30  Bruno Haible  <bruno@clisp.org>
14699
14700         * modules/javaversion (Makefile.am): Distribute javaversion.java and
14701         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
14702         set PKGDATADIR to point to it.
14703
14704 2006-07-30  Bruno Haible  <bruno@clisp.org>
14705
14706         * modules/csharpexec (configure.ac): Comment out macro invocation.
14707         * modules/javaexec (configure.ac): Likewise.
14708         * modules/javacomp-script (configure.ac): Likewise.
14709
14710         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
14711
14712 2006-07-30  Bruno Haible  <bruno@clisp.org>
14713
14714         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
14715         linked-list.
14716
14717 2006-07-30  Bruno Haible  <bruno@clisp.org>
14718
14719         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
14720
14721 2006-07-30  Bruno Haible  <bruno@clisp.org>
14722
14723         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14724         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
14725         get removed.
14726
14727 2006-07-29  Bruno Haible  <bruno@clisp.org>
14728
14729         Make it possible for gnulib-tool to work with locally modified or
14730         augmented gnulib repositories.
14731         * gnulib-tool (func_usage): Document --local-dir option.
14732         (local_gnulib_dir): New variable.
14733         Handle --local-dir option.
14734         (func_lookup_file): New function.
14735         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
14736         (func_get_description, func_get_filelist, func_get_description,
14737         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
14738         func_get_automake_snippet, func_get_include_directive,
14739         func_get_license, func_get_maintainer): Use func_lookup_file.
14740         (func_import, func_create_testdir): Use func_lookup_file.
14741
14742 2006-07-29  Bruno Haible  <bruno@clisp.org>
14743
14744         * modules/setenv (Depends-on): Add unistd.
14745
14746 2006-07-29  Bruno Haible  <bruno@clisp.org>
14747
14748         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
14749
14750 2006-07-29  Bruno Haible  <bruno@clisp.org>
14751
14752         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
14753
14754 2006-07-29  Bruno Haible  <bruno@clisp.org>
14755
14756         * gnulib-tool (import, update): If there is no Makefile.am, look at
14757         aclocal.m4, instead of bailing out.
14758
14759 2006-07-29  Bruno Haible  <bruno@clisp.org>
14760
14761         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
14762         Categorize the options by when they are useful.
14763
14764 2006-07-29  Bruno Haible  <bruno@clisp.org>
14765
14766         * gnulib-tool (func_usage): Document option --no-libtool.
14767         Handle option --no-libtool.
14768         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
14769         for changed semantics of $libtool variable.
14770         (func_import): Likewise. If libtool is not used, show this through
14771         an option --no-libtool.
14772         (func_create_testdir): Update.
14773
14774 2006-07-29  Bruno Haible  <bruno@clisp.org>
14775
14776         * gnulib-tool (func_import): Extend error message about missing
14777         --doc-base.
14778
14779 2006-07-29  Bruno Haible  <bruno@clisp.org>
14780
14781         * gnulib-tool (func_import): Don't create the $docbase directory if
14782         there is no file to store there.
14783
14784 2006-07-29  Bruno Haible  <bruno@clisp.org>
14785
14786         * gnulib-tool (autoconf_minversion): If a --dir option is given and
14787         relevant, look for configure.ac there, not in the current directory.
14788         Also use a simple search for AC_PREREQ, not "autoconf --trace".
14789
14790 2006-07-29  Bruno Haible  <bruno@clisp.org>
14791
14792         * gnulib-tool (SORT): New variable.
14793         (func_usage): Undocument --assume-autoconf option.
14794         Remove --assume-autoconf option handling.
14795         (autoconf_minversion): Determine from the contents of configure.ac.
14796         (func_import): Remove autoconf_minversion handling.
14797         Suggested by Eric Blake.
14798
14799 2006-07-29  Bruno Haible  <bruno@clisp.org>
14800
14801         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
14802
14803 2006-07-29  Bruno Haible  <bruno@clisp.org>
14804
14805         * config/srclist.txt (*setenv.[ch]): Remove rules.
14806
14807 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14808
14809         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
14810
14811 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14812
14813         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
14814         arpa/inet.h.
14815
14816 2006-07-28  Simon Josefsson  <jas@extundo.com>
14817
14818         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
14819         * modules/inet_pton (Depends-on): Likewise.
14820
14821 2006-07-28  Simon Josefsson  <jas@extundo.com>
14822
14823         * m4/netinet_in_h.m4: New file.
14824
14825 2006-07-28  Simon Josefsson  <jas@extundo.com>
14826
14827         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
14828         #include's.
14829
14830 2006-07-28  Simon Josefsson  <jas@extundo.com>
14831
14832         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
14833         #include's.
14834
14835 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
14836
14837         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
14838         setgid on directories only if they set these bits.
14839         * lib/modechange.h: Remove obsolete comment about masks.
14840
14841 2006-07-28  Eric Blake  <ebb9@byu.net>
14842
14843         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
14844         macro expansion.
14845
14846 2006-07-28  Bruno Haible  <bruno@clisp.org>
14847
14848         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
14849
14850 2006-07-28  Bruno Haible  <bruno@clisp.org>
14851
14852         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
14853
14854 2006-07-28  Bruno Haible  <bruno@clisp.org>
14855
14856         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
14857         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
14858         Define fallbacks.
14859         Avoids link error on FreeBSD 4.x.
14860         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
14861
14862         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
14863         encoding.
14864         * lib/mbswidth.c (iswcntrl): Likewise.
14865
14866 2006-07-27  Bruno Haible  <bruno@clisp.org>
14867
14868         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
14869         test.
14870
14871 2006-07-27  Bruno Haible  <bruno@clisp.org>
14872
14873         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
14874         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
14875         defined.
14876
14877 2006-07-26  Eric Blake  <ebb9@byu.net>
14878
14879         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
14880
14881 2006-07-26  Eric Blake  <ebb9@byu.net>
14882
14883         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
14884         like mingw that lack mkstemp.
14885         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
14886         avoid compilation warning on mingw.
14887
14888 2006-07-26  Bruno Haible  <bruno@clisp.org>
14889
14890         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
14891         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
14892         INT_FAST*_MIN, INTPTR_MIN.
14893
14894 2006-07-25  Bruno Haible  <bruno@clisp.org>
14895
14896         * modules/version-etc (Depends-on): Add stdarg.
14897
14898 2006-07-25  Bruno Haible  <bruno@clisp.org>
14899
14900         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
14901         complex commands.
14902
14903 2006-07-25  Bruno Haible  <bruno@clisp.org>
14904
14905         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
14906         defined in <stdarg.h> or config.h.
14907
14908 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
14909
14910         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
14911         (gl_STDIO_SAFER): Remove.
14912
14913 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
14914
14915         * MODULES.html.sh (File stream based Input/Output):
14916         Add fopen-safer, tmpfile-safer; remove stdio-safer.
14917         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
14918         * modules/fopen-safer, modules/tmpfile-safer: New files.
14919         * modules/stdio-safer: Remove.
14920
14921 2006-07-24  Bruno Haible  <bruno@clisp.org>
14922
14923         * modules/tmpdir: New file.
14924         * MODULES.html.sh (File system functions): Add it.
14925
14926 2006-07-24  Bruno Haible  <bruno@clisp.org>
14927
14928         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
14929         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
14930
14931 2006-07-24  Bruno Haible  <bruno@clisp.org>
14932
14933         * modules/clean-temp: New file.
14934
14935 2006-07-24  Bruno Haible  <bruno@clisp.org>
14936
14937         * m4/tmpdir.m4: New file, from GNU gettext.
14938
14939 2006-07-24  Bruno Haible  <bruno@clisp.org>
14940
14941         * lib/tmpdir.h: New file, from GNU gettext.
14942         * lib/tmpdir.c: New file, from GNU gettext.
14943
14944 2006-07-24  Bruno Haible  <bruno@clisp.org>
14945
14946         * lib/clean-temp.h: New file, from GNU gettext.
14947         * lib/clean-temp.c: New file, from GNU gettext.
14948
14949 2006-07-23  Eric Blake  <ebb9@byu.net>
14950
14951         * modules/stdio-safer (Files): Add tmpfile-safer.c.
14952         (Depends-on): Add binary-io.
14953
14954 2006-07-23  Eric Blake  <ebb9@byu.net>
14955
14956         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
14957
14958 2006-07-23  Eric Blake  <ebb9@byu.net>
14959
14960         * lib/tmpfile-safer.c: New file.
14961         * lib/stdio-safer.h (fopen_safer): Add prototype.
14962         * lib/stdio--.h (tmpfile): Make safer.
14963
14964 2006-07-23  Bruno Haible  <bruno@clisp.org>
14965
14966         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
14967         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
14968         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
14969         gl_linked_remove_at): Use it.
14970
14971 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14972         and Simon Josefsson <jas@extundo.com>
14973
14974         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
14975
14976         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
14977
14978 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14979
14980         * modules/close-stream: New file.
14981         * modules/closeout (Description): Make it clear that it exits
14982         with a diagnostic on error.
14983         (Depends-on): Add close-stream.  Remove fpending, stdbool.
14984         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
14985
14986 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14987
14988         * m4/close-stream.m4: New file.
14989
14990 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14991
14992         * lib/close-stream.c, lib/close-stream.h: New files.
14993
14994 2006-07-22  Bruno Haible  <bruno@clisp.org>
14995
14996         Merge from GNU gettext 0.15.
14997
14998         2006-05-01  Bruno Haible  <bruno@clisp.org>
14999
15000                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
15001
15002         2006-07-22  Bruno Haible  <bruno@clisp.org>
15003
15004                 * modules/javaversion: New file.
15005                 * MODULES.html.sh (Java): Add javaversion.
15006
15007         2006-03-12  Bruno Haible  <bruno@clisp.org>
15008
15009                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
15010
15011         2005-12-04  Bruno Haible  <bruno@clisp.org>
15012
15013                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
15014                 (untested).
15015
15016         2006-06-21  Bruno Haible  <bruno@clisp.org>
15017
15018                 Avoid warnings from recent versions of mcs.
15019                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
15020                 -o, -L, -r any more. Use options documented since mcs-1.0
15021                 instead. Similarly for -g.
15022
15023         2005-12-04  Bruno Haible  <bruno@clisp.org>
15024
15025                 * build-aux/csharpcomp.sh.in: Suffix for resources is
15026                 .resources, not .resource.
15027
15028         2005-07-09  Bruno Haible  <bruno@clisp.org>
15029
15030                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
15031                 add a .dll suffix.
15032                 Reported by Mark Junker <mjscod@gmx.de>.
15033
15034         2006-07-22  Bruno Haible  <bruno@clisp.org>
15035
15036                 * modules/gettext: Upgrade to gettext-0.15.
15037                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
15038                 m4/visibility.m4.
15039                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
15040
15041 2006-07-22  Bruno Haible  <bruno@clisp.org>
15042
15043         Merge from GNU gettext 0.15.
15044
15045         2006-03-25  Bruno Haible  <bruno@clisp.org>
15046
15047                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
15048
15049         2006-07-21  Bruno Haible  <bruno@clisp.org>
15050
15051                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
15052                 "1.1".
15053
15054         2006-05-09  Bruno Haible  <bruno@clisp.org>
15055
15056                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
15057                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
15058                 for the conftestver execution.
15059
15060         2006-05-01  Bruno Haible  <bruno@clisp.org>
15061
15062                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
15063                 optional target-version argument. Verify that the compiler
15064                 groks source of the specified source-version, or add -source
15065                 option as necessary. Verify that the compiler produces
15066                 bytecode in the specified target-version, or add -target and
15067                 -source options as necessary. Make the result of the test
15068                 available as variable CONF_JAVAC. Also log error output in
15069                 config.log.
15070
15071         2006-03-11  Bruno Haible  <bruno@clisp.org>
15072
15073                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
15074
15075         2006-05-09  Bruno Haible  <bruno@clisp.org>
15076
15077                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
15078                 CLASSPATH_SEPARATOR to a semicolon.
15079
15080         2006-03-12  Bruno Haible  <bruno@clisp.org>
15081
15082                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
15083                 available as variable CONF_JAVA, for subsequent autoconf
15084                 tests. Also log error output in config.log.
15085
15086         2006-07-19  Bruno Haible  <bruno@clisp.org>
15087
15088                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
15089                 that getline works on glibc2 systems. Needed to avoid trouble
15090                 in relocatable.c.
15091                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
15092
15093         2005-12-04  Bruno Haible  <bruno@clisp.org>
15094
15095                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
15096                 launcher (untested).
15097
15098         2005-12-04  Bruno Haible  <bruno@clisp.org>
15099
15100                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
15101
15102         2006-07-22  Bruno Haible  <bruno@clisp.org>
15103
15104                 * gettext.m4: Update from GNU gettext-0.15.
15105                 * nls.m4: Likewise.
15106                 * po.m4: Likewise.
15107                 * inttypes-pri.m4: Likewise.
15108                 * inttypes-h.m4: Renamed from inttypes.m4.
15109                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
15110
15111 2006-07-22  Bruno Haible  <bruno@clisp.org>
15112
15113         Merge from GNU gettext 0.15.
15114
15115         2005-07-05  Bruno Haible  <bruno@clisp.org>
15116
15117                 * printf-args.c (printf_fetchargs): Work around broken
15118                 definition of wint_t on mingw.
15119
15120         2005-02-12  Bruno Haible  <bruno@clisp.org>
15121
15122                 * xallocsa.h: Add extern "C" for C++.
15123
15124         2006-05-17  Bruno Haible  <bruno@clisp.org>
15125
15126                 Cygwin portability.
15127                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
15128
15129         2006-04-30  Bruno Haible  <bruno@clisp.org>
15130
15131                 * progreloc.c: Include <mach-o/dyld.h> if available.
15132                 (find_executable): Use _NSGetExecutablePath when possible.
15133
15134         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15135
15136                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
15137                 function.
15138
15139         2005-12-29  Bruno Haible  <bruno@clisp.org>
15140
15141                 * progreloc.c (set_program_name_and_installdir): Fix
15142                 compilation error.
15143
15144         2005-12-04  Bruno Haible  <bruno@clisp.org>
15145
15146                 Cygwin portability.
15147                 * progreloc.c: Include <windows.h> also on Cygwin.
15148                 (find_executable): Add support for Cygwin.
15149                 (set_program_name_and_installdir): Handle also platforms with
15150                 nonempty EXEEXT.
15151
15152         2006-07-11  Bruno Haible  <bruno@clisp.org>
15153
15154                 * javacomp.c: Fix a comment.
15155                 Reported by Jim Meyering.
15156
15157         2006-04-30  Bruno Haible  <bruno@clisp.org>
15158
15159                 * javacomp.h (compile_java_class): Add source_version,
15160                 target_version arguments.
15161                 * javacomp.c: Rewritten to choose only a compiler that
15162                 respects the specified source_version and target_version.
15163
15164         2006-06-27  Bruno Haible  <bruno@clisp.org>
15165
15166                 Assume correct S_ISDIR macro.
15167                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
15168
15169         2006-07-22  Bruno Haible  <bruno@clisp.org>
15170
15171                 * javaversion.h: New file, from GNU gettext.
15172                 * javaversion.c: New file, from GNU gettext.
15173                 * javaversion.java: New file, from GNU gettext.
15174                 * javaversion.class: New file, from GNU gettext.
15175
15176         2006-05-17  Bruno Haible  <bruno@clisp.org>
15177
15178                 Cygwin portability.
15179                 * javaexec.c (execute_java_class): Test for jview program
15180                 also on Cygwin.
15181
15182         2006-04-09  Bruno Haible  <bruno@clisp.org>
15183
15184                 * fatal-signal.c: Don't include string.h.
15185                 (at_fatal_signal): Use a copying loop instead of memcpy.
15186
15187         2005-12-04  Bruno Haible  <bruno@clisp.org>
15188
15189                 * csharpexec.c: Add support for 'clix' launcher (untested).
15190                 (execute_csharp_using_sscli): New function.
15191                 (execute_csharp_program): Call it.
15192
15193         2006-06-21  Bruno Haible  <bruno@clisp.org>
15194
15195                 Avoid warnings from recent versions of mcs.
15196                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
15197                 -o, -L, -r any more. Use options documented since mcs-1.0
15198                 instead. Similarly for -g.
15199
15200         2005-07-09  Bruno Haible  <bruno@clisp.org>
15201
15202                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
15203                 add a .dll suffix.
15204                 Reported by Mark Junker <mjscod@gmx.de>.
15205
15206         2006-06-17  Bruno Haible  <bruno@clisp.org>
15207
15208                 * config.charset: Update for NetBSD 3.0.
15209
15210         2006-05-17  Bruno Haible  <bruno@clisp.org>
15211
15212                 Cygwin portability.
15213                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
15214
15215         2006-05-16  Bruno Haible  <bruno@clisp.org>
15216
15217                 * localcharset.c [CYGWIN]: Include <windows.h>.
15218                 (get_charset_aliases): For Cygwin, return the same CPxxx
15219                 aliases list as under WIN32.
15220                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
15221                 the environment variables. Fall back to GetACP().
15222
15223         2006-04-05  Bruno Haible  <bruno@clisp.org>
15224
15225                 * config.charset: Update Juan Manuel Guerrero's address.
15226
15227         2005-02-12  Bruno Haible  <bruno@clisp.org>
15228
15229                 * allocsa.h: Add extern "C" for C++.
15230
15231         2005-02-10  Bruno Haible  <bruno@clisp.org>
15232
15233                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
15234                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
15235
15236         2006-07-22  Bruno Haible  <bruno@clisp.org>
15237
15238                 * gettext.h: Update to GNU gettext-0.15.
15239
15240 2006-07-22  Bruno Haible  <bruno@clisp.org>
15241
15242         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
15243         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
15244         lib-prefix.m4, longdouble.m4, ssize_t.m4.
15245
15246 2006-07-21  Eric Blake  <ebb9@byu.net>
15247
15248         * modules/stdlib-safer: New file.
15249         * MODULES.html.sh (File stream based Input/Output): Add
15250         stdlib-safer.
15251
15252 2006-07-21  Eric Blake  <ebb9@byu.net>
15253
15254         * lib/stdlib-safer.h: New file from coreutils, required by
15255         stdlib--.h.
15256
15257 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
15258
15259         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
15260
15261 2006-07-20  Bruno Haible  <bruno@clisp.org>
15262
15263         * gnulib-tool: Recognize new option --assume-autoconf.
15264         (autoconf_minversion): New variable.
15265         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
15266
15267 2006-07-20  Bruno Haible  <bruno@clisp.org>
15268
15269         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
15270
15271 2006-07-19  Derek R. Price  <derek@ximbiot.com>
15272
15273         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
15274         Reindent and repaginate.
15275
15276 2006-07-19  Derek Price  <derek@ximbiot.com>
15277
15278         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
15279         Correct grammar.
15280
15281 2006-07-17  Bruno Haible  <bruno@clisp.org>
15282
15283         * modules/list: New file.
15284         * modules/array-list: New file.
15285         * modules/carray-list, modules/carray-list-tests: New files.
15286         * modules/linked-list, modules/linked-list-tests: New files.
15287         * modules/avltree-list, modules/avltree-list-tests: New files.
15288         * modules/rbtree-list, modules/rbtree-list-tests: New files.
15289         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
15290         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
15291         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
15292         * modules/oset: New file.
15293         * modules/array-oset: New file.
15294         * modules/avltree-oset, modules/avltree-oset-tests: New files.
15295         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
15296         * tests/test-carray_list.c: New file.
15297         * tests/test-linked_list.c: New file.
15298         * tests/test-avltree_list.c: New file.
15299         * tests/test-rbtree_list.c: New file.
15300         * tests/test-linkedhash_list.c: New file.
15301         * tests/test-avltreehash_list.c: New file.
15302         * tests/test-rbtreehash_list.c: New file.
15303         * tests/test-avltree_oset.c: New file.
15304         * tests/test-rbtree_oset.c: New file.
15305         * MODULES.html.sh (Container data structures): New section.
15306
15307 2006-07-17  Bruno Haible  <bruno@clisp.org>
15308
15309         * m4/gl_list.m4: New file.
15310
15311 2006-07-17  Bruno Haible  <bruno@clisp.org>
15312
15313         * lib/gl_list.h: New file.
15314         * lib/gl_list.c: New file.
15315         * lib/gl_array_list.h: New file.
15316         * lib/gl_array_list.c: New file.
15317         * lib/gl_carray_list.h: New file.
15318         * lib/gl_carray_list.c: New file.
15319         * lib/gl_linked_list.h: New file.
15320         * lib/gl_linked_list.c: New file.
15321         * lib/gl_anylinked_list1.h: New file.
15322         * lib/gl_anylinked_list2.h: New file.
15323         * lib/gl_avltree_list.h: New file.
15324         * lib/gl_avltree_list.c: New file.
15325         * lib/gl_anyavltree_list1.h: New file.
15326         * lib/gl_anyavltree_list2.h: New file.
15327         * lib/gl_rbtree_list.h: New file.
15328         * lib/gl_rbtree_list.c: New file.
15329         * lib/gl_anyrbtree_list1.h: New file.
15330         * lib/gl_anyrbtree_list2.h: New file.
15331         * lib/gl_anytree_list1.h: New file.
15332         * lib/gl_anytree_list2.h: New file.
15333         * lib/gl_linkedhash_list.h: New file.
15334         * lib/gl_linkedhash_list.c: New file.
15335         * lib/gl_anyhash_list1.h: New file.
15336         * lib/gl_anyhash_list2.h: New file.
15337         * lib/gl_avltreehash_list.h: New file.
15338         * lib/gl_avltreehash_list.c: New file.
15339         * lib/gl_rbtreehash_list.h: New file.
15340         * lib/gl_rbtreehash_list.c: New file.
15341         * lib/gl_anytreehash_list1.h: New file.
15342         * lib/gl_anytreehash_list2.h: New file.
15343
15344         * lib/gl_oset.h: New file.
15345         * lib/gl_oset.c: New file.
15346         * lib/gl_array_oset.h: New file.
15347         * lib/gl_array_oset.c: New file.
15348         * lib/gl_avltree_oset.h: New file.
15349         * lib/gl_avltree_oset.c: New file.
15350         * lib/gl_rbtree_oset.h: New file.
15351         * lib/gl_rbtree_oset.c: New file.
15352         * lib/gl_anytree_oset.h: New file.
15353
15354 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15355
15356         * m4/mkancesdirs.m4: New file.
15357         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
15358         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
15359         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
15360         it.
15361
15362 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15363
15364         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
15365         * lib/mkancesdirs.h: New files.
15366         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
15367         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
15368         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
15369         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
15370         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
15371         callers changed.  Revamp internals significantly, by not
15372         attempting to create directories that are temporarily more
15373         permissive than the final results.  Do not attempt to use
15374         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
15375         This removes some race conditions, fixes some bugs, and simplifies
15376         things.  Use new dirchownmod function to do owner and mode changes.
15377         * lib/mkdir-p.h: Likewise.
15378         * lib/modechange.c (octal_to_mode): New function.
15379         (struct mode_change): New member mentioned.
15380         (make_node_op_equals): New arg mentioned.  All callers changed.
15381         (mode_compile): Keep track of which mode bits the user has explicitly
15382         mentioned.
15383         (mode_adjust): New arg DIR, so that we implement the X op correctly.
15384         New arg PMODE_BITS, to keep track of which mode bits the user
15385         mentioned; it treats S_ISUID and S_ISGID speciall.
15386         All callers changed.
15387         * lib/modechange.h: Likewise.
15388
15389 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15390
15391         * MODULES.html.sh: Add mkancestors.
15392         * modules/mkancesdirs: New module.
15393         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
15394         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
15395         The chdir-safer and afs files are now orphans; I'll remove them
15396         unless someone speaks up.
15397         Add lib/dirchownmod.c, lib/dirchownmod.h.
15398         (Depends-on): Remove alloca, chown, save-cwd, dirname.
15399         Add lchown, mkancesdirs.
15400         (Maintainer): Add self.
15401
15402 2006-07-15  Karl Berry  <karl@gnu.org>
15403
15404         * gnulib-tool: help message wording/arrangement.
15405
15406 2006-07-14  Simon Josefsson  <jas@extundo.com>
15407
15408         * doc/gnulib.texi (Libtool and Windows): New section.
15409
15410 2006-07-12  Simon Josefsson  <jas@extundo.com>
15411
15412         * modules/gendocs (License): Fix license, approved by Karl.
15413
15414 2006-07-12  Eric Blake  <ebb9@byu.net>
15415
15416         * MODULES.html.sh: Add gendocs.
15417
15418 2006-07-11  Eric Blake  <ebb9@byu.net>
15419
15420         * modules/fdl: New module, to install doc/fdl.texi.
15421         * MODULES.html.sh: Add new section for documentation modules.
15422         * gnulib-tool: Avoid space-tab.
15423         (--doc-base): New option, to manage files from doc.
15424
15425 2006-07-11  Eric Blake  <ebb9@byu.net>
15426
15427         * m4/absolute-header.m4: Fix comments to match recent change.
15428
15429 2006-07-11  Eric Blake  <ebb9@byu.net>
15430
15431         * gnulib-tool: List --doc-base before --tests-base.
15432
15433 2006-07-11  Derek R. Price  <derek@ximbiot.com>
15434
15435         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
15436
15437 2006-07-11  Bruno Haible  <bruno@clisp.org>
15438
15439         * README: Mention where to put documentation.
15440
15441 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15442
15443         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
15444
15445 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
15446
15447         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
15448         to stdint.m4.
15449
15450 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
15451
15452         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
15453         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
15454         "no/such/file/stdint.h" when there is no such file, so that
15455         the resulting C code can be parsed by dodgy compilers.
15456         Problems reported by Bob Proulx.
15457
15458 2006-07-10  Derek R. Price  <derek@ximbiot.com>
15459
15460         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
15461         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
15462         macros into the GNU _D_EXACT_NAMLEN.
15463         * lib/savedir.c:  Likewise.
15464         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
15465
15466 2006-07-10  Derek R. Price  <derek@ximbiot.com>
15467         and Paul Eggert  <eggert@cs.ucla.edu>
15468
15469         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
15470         * m4/savedir.m4:
15471         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
15472         macros into the GNU _D_EXACT_NAMLEN.
15473
15474 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15475
15476         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
15477         around the absolute name, to work around a problem with the HP-UX
15478         11.23 native C compiler, reported by Bob Proulx.
15479
15480 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15481
15482         * doc/maintain.texi, make-stds.texi: Sync from
15483         <http://savannah.gnu.org/projects/gnustandards>.
15484
15485 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15486
15487         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
15488
15489 2006-07-09  Jim Meyering  <jim@meyering.net>
15490
15491         * m4/glob.m4: Remove a doubled word in a comment.
15492
15493 2006-07-09  Jim Meyering  <jim@meyering.net>
15494
15495         * lib/argp-pv.c: Remove a doubled word in a comment.
15496         * lib/check-version.c (check_version): Likewise.
15497         * lib/javacomp.c (compile_java_class): Likewise.
15498
15499 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
15500
15501         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
15502         for the benefit of people using Autoconf 2.60.  If you want to
15503         support older Autoconf versions you can copy m4/onceonly_2_57.m4
15504         (or m4/onceonly.m4, if pre-2.57) manually.
15505
15506 2006-07-08  Jim Meyering  <jim@meyering.net>
15507
15508         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
15509         comment.
15510         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
15511         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
15512         comment.
15513
15514 2006-07-08  Jim Meyering  <jim@meyering.net>
15515
15516         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
15517
15518 2006-07-07  Simon Josefsson  <jas@extundo.com>
15519
15520         * tests/test-crc.c: Change expected crc value, the test vector
15521         were probably computed using the old broken crc.c?
15522
15523 2006-07-06  Simon Josefsson  <jas@extundo.com>
15524
15525         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
15526         now the canonical place for the M4 file).
15527
15528         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
15529         from the sys_socket dependency now.
15530
15531         * modules/inet_pton (Files): Ditto.
15532
15533         * modules/inet_ntop (Files): Ditto.
15534
15535 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
15536
15537         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
15538         not gl_PREREQ_GETUSERSHELL.
15539
15540 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15541
15542         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
15543         with only one argument, for Autoconf 2.60.
15544         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
15545         expand to nothing, so add a shell command to avoid syntax error.
15546         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
15547
15548 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15549
15550         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
15551
15552 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15553
15554         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
15555         no longer needed.  Check for isblank decl.
15556         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
15557         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
15558         of existence.
15559
15560 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15561
15562         * lib/getloadavg.c: Use __VMS, not VMS.
15563         * lib/getopt.c: Likewise.
15564         * lib/getpagesize.h: Likewise.
15565         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
15566         and probably does not work.
15567
15568 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15569
15570         * lib/.cppi-disable: Add wcwidth.
15571         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
15572         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
15573         (ISGRAPH): Remove.  All uses changed to isgraph.
15574         (FOLD) [!defined _LIBC]: Remove special case.
15575         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
15576         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
15577         HAVE_ISBLANK.
15578         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
15579         case.
15580
15581 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
15582
15583         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
15584         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
15585         brackets.  Other minor changes to suppress some compiler
15586         warnings.
15587
15588 2006-07-06  Derek R. Price  <derek@ximbiot.com>
15589         and Paul Eggert  <eggert@cs.ucla.edu>
15590
15591         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
15592         of invoking obsolescent AC_HEADER_DIRENT macro.
15593         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
15594         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
15595         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
15596         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
15597         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
15598         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
15599         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
15600         * m4/readdir.m4: Remove; no longer needed.
15601
15602 2006-07-06  Derek R. Price  <derek@ximbiot.com>
15603         and Paul Eggert  <eggert@cs.ucla.edu>
15604
15605         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
15606         Don't worry about this obsolete case any more.
15607         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
15608         directories.
15609         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
15610         worry about this obsolete case any more.
15611         * lib/fts.c: Likewise.
15612         * lib/getcwd.c: Likewise.
15613         * lib/glob.h: Likewise.
15614         * lib/savedir.c: Likewise.
15615
15616 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
15617
15618         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
15619         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
15620         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
15621         needed.
15622         All uses removed.
15623         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15624         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
15625         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
15626         needed.
15627         * m4/getdate.m4 (gl_GETDATE): Likewise.
15628         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
15629         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
15630         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
15631         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15632         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
15633         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
15634         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
15635         needed.
15636
15637 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
15638
15639         * lib/memcasecmp.c: Include <limits.h>.
15640         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
15641         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
15642         Don't assume isdigit succeeds only on '0' through '9'.
15643
15644 2006-07-05  Eric Blake  <ebb9@byu.net>
15645
15646         * modules/getaddrinfo (Depends-on): Add snprintf.
15647
15648 2006-07-05  Eric Blake  <ebb9@byu.net>
15649
15650         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
15651         to avoid 'header present but could not be compiled' on cygwin.
15652
15653 2006-07-05  Eric Blake  <ebb9@byu.net>
15654
15655         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
15656         missing from netdb.h.
15657         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
15658
15659 2006-07-05  Derek R. Price  <derek@ximbiot.com>
15660
15661         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
15662         no longer needed.
15663         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
15664         * m4/getdate.m4 (gl_GETDATE): Likewise.
15665         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
15666         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
15667         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
15668         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15669         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
15670
15671 2006-07-05  Derek R. Price  <derek@ximbiot.com>
15672
15673         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
15674         All uses of is_space replaced by isspace.
15675         * lib/exit.h: Don't talk about STDC_HEADERS.
15676         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
15677         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
15678         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
15679         replaced by isprint etc.
15680         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
15681         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
15682         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
15683         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
15684         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
15685         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
15686
15687 2006-07-05  Bruno Haible  <bruno@clisp.org>
15688
15689         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
15690         the function exists, before testing against AIX.
15691         Reported by Martin Lambers <marlam@marlam.de>.
15692
15693 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
15694
15695         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
15696         From Mark D. Baushke.
15697
15698 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
15699
15700         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
15701         to the absolute name, not just one, to bypass Sun C 5.8's
15702         "warning: #include of /usr/include/... may be non-portable".
15703
15704 2006-07-04  Eric Blake  <ebb9@byu.net>
15705
15706         * modules/dirname-tests: New test module.
15707         * tests/test-dirname.c: New file, replacing dirname.c
15708         TEST_DIRNAME section that was recently deleted.
15709
15710 2006-07-04  Bruno Haible  <bruno@clisp.org>
15711
15712         Assume ANSI C header files and <ctype.h> functions.
15713         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
15714         (mbsnwidth): Use isprint, iscntrl instead.
15715
15716 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15717
15718         Merge from coreutils.
15719         * MODULES.html.sh: Add xstrtold.
15720         * modules/xstrtold: New file.
15721         * modules/cycle-check (Files): Add lib/same-inode.h.
15722         * modules/dirname (Files): Add m4/double-slash-root.m4.
15723         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
15724         * modules/mkdir-p (Files): Add lib/same-inode.h.
15725         * modules/same (Files): Add lib/same-inode.h.
15726
15727 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15728
15729         * m4/absolute-header.m4: Renamed from full-header-path.m4.
15730         This is to keep the terminology clean; POSIX talks about
15731         "absolute pathnames", not "full pathnames", but the GNU
15732         Coding Standards say to use "path" for something else;
15733         so use "absolute" to keep both sides happy.
15734         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
15735         Set gl_absolute_header, not gl_full_header_path.
15736         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
15737         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
15738         All uses changed.
15739
15740         Merge from coreutils.
15741
15742         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
15743
15744         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
15745         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
15746         want to require the building of c-strtod.o.
15747         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
15748         needs -lm directly.
15749         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
15750
15751         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
15752
15753         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
15754         --as-needed option if available.  Problem reported by Albert Chin in
15755         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
15756         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
15757         cc merely issues a bunch of annoying warnings for --as-needed
15758         (this problem was reported by Bob Proulx).  Also, try linking with
15759         -lm to detect a bug in binutils 2.16 (this problem was reported
15760         by Ralf Wildenhues).
15761
15762         2006-06-18  Jim Meyering  <jim@meyering.net>
15763
15764         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
15765         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
15766         macro.
15767         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
15768         also check for glibc-2.4's abort-inducing bug.
15769
15770         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
15771         Low-probability clean-up should be to use rmdir to get rid of
15772         the just-created directory, not unlink.
15773
15774         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
15775         configure fail, and request a bug report to inform us about it.
15776         Add a comment that, barring reports to the contrary, in 2007 we'll
15777         assume ftruncate is universally available.
15778
15779         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
15780
15781         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
15782
15783         2006-03-12  Jim Meyering  <jim@meyering.net>
15784
15785         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
15786         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
15787         * m4/same.m4 (gl_SAME): Likewise.
15788         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
15789
15790         2006-03-11  Eric Blake  <ebb9@byu.net>
15791
15792         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
15793         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
15794         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
15795         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
15796
15797 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
15798
15799         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
15800         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
15801         reported by Mark D. Baushke, one in
15802         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
15803
15804         Merge from coreutils.
15805
15806         * lib/.cppi-disable: Add stdint_.h.
15807         * lib/.cvsignore: Add stdint.h.
15808
15809         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
15810
15811         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
15812         both double and long double versions.
15813         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
15814         * lib/xstrtold.c: New file.
15815         * lib/xstrtod.h (xstrtold): New decl.
15816
15817         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
15818
15819         * lib/filemode.c (setst): Remove.
15820         (strmode): Rewrite to avoid setst.  This makes the code shorter,
15821         (arguably) clearer, and the generated code is a bit smaller on my
15822         Debian GNU/Linux stable x86 host.
15823
15824         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
15825
15826         * lib/filemode.c: Include "filemode.h" first, to test the interface.
15827         Assume that filemode.h includes sys/types.h and sys/stat.h.
15828         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
15829         (ftypelet): Reorder to put common cases first, for efficiency.
15830         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
15831         to do 'M'.
15832         (strmode): Renamed from mode_string, and now stores 12 bytes instead
15833         of 10, for compatibility with FreeBSD.  All callers changed.
15834         (filemodestring): Now stores 12 bytes instead of 10, and sets file
15835         types that can't be deduced solely from st_mode.  First arg is now a
15836         const pointer.
15837         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
15838         (strmode): Renamed from mode_string.
15839         (filemodestring): New decl.
15840         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
15841         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
15842         needed.
15843         (S_ISPORT, S_ISWHT): New macros, if not already defined.
15844
15845         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
15846
15847         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
15848         fsusage.h now does that.  Include fsusage.h first, to test interface.
15849         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
15850         at most one method (the old code could have generated decls that
15851         didn't conform to C89, not that this was ever exercised).
15852         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
15853
15854         2006-03-19  Jim Meyering  <jim@meyering.net>
15855
15856         Work even in a chroot where d_ino values for entries in "/"
15857         don't match the stat.st_ino values for the same names.
15858         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
15859         number, iterate through all entries again, using lstat instead.
15860         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
15861         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
15862
15863         * lib/getcwd.c (__getcwd): Clarify a comment.
15864         Use memcpy in place of a call to strcpy.
15865
15866         2006-03-12  Jim Meyering  <jim@meyering.net>
15867
15868         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
15869         matches that of the current directory (which we're about to chdir ".."
15870         out of), then save the dev-ino of the parent, instead.
15871
15872         * lib/same-inode.h (SAME_INODE): New file/macro.
15873         * lib/chdir-safer.c (SAME_INODE): Remove definition.
15874         Include "same-inode.h", instead.
15875         * lib/same.c: Likewise.
15876         * lib/cycle-check.h: Include "same-inode.h".
15877         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
15878         * lib/cycle-check.c (SAME_INODE): Remove definition.
15879         * lib/root-dev-ino.h: Include "same-inode.h".
15880
15881         2006-03-11  Eric Blake  <ebb9@byu.net>
15882
15883         * lib/same.c (same_name): s/base_name/last_component/
15884         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
15885         * lib/filenamecat.c (file_name_concat): Likewise.
15886
15887         2006-03-11  Eric Blake  <ebb9@byu.net>,
15888                     Paul Eggert  <eggert@cs.ucla.edu>
15889
15890         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
15891         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
15892         drive prefix.
15893         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
15894         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
15895         (last_component): New method.
15896         * lib/dirname.c (dir_len): Determine when drive letters need a
15897         subsequent slash.  Preserve // when it is special.
15898         (dir_name): Don't append dot when drive letter is absolute.
15899         [TEST_DIRNAME]: Move into a full-blown gnulib test.
15900         * lib/basename.c (base_name): New semantics - malloc the result.
15901         Preserve // when it is special.  Preserve relative files that look
15902         like drive letters.
15903         (base_len): Preserve // when it is special.
15904         (last_component): New method, similar to old base_name semantics.
15905         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
15906         base_name.  Strip redundant slashes from ///.
15907
15908 2006-07-03  Jim Meyering  <jim@meyering.net>
15909
15910         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
15911         macro is used before the first cycle_check call.
15912
15913 2006-07-03  Eric Blake  <ebb9@byu.net>
15914
15915         * modules/dirname (Depends-on): Add xstrndup.
15916
15917 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
15918
15919         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
15920         test cases, so that config.log is a bit easier to follow.
15921
15922 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
15923
15924         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
15925         both are 64 bits, since this seems to be the tradition, and this
15926         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
15927         we ever run into a host that prefers long long to long in this
15928         case, we'll need another configure-time test.  Problem reported by
15929         Jim Meyering.
15930
15931 2006-07-02  Eric Blake  <ebb9@byu.net>
15932
15933         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
15934
15935 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15936
15937         * modules/inttypes (Depends-on): No longer depends on stdint.
15938         * modules/stdint (Description): Say more about assumptions.
15939         Say that the fast types might differ.  Say macros are used.
15940         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
15941         (Makefile.am): Revise list of substituted symbols to match
15942         new stdint.m4.
15943         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
15944         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
15945         * tests/test-stdint.c (verify_same_types)
15946         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
15947         the code conforms to C99/C89.
15948         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
15949         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
15950
15951 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15952
15953         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
15954         but fix a bug, by requiring at least 64 bits.
15955         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
15956         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
15957         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
15958         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
15959
15960         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
15961         changes.  Make 2.59 a prerequisite.  Check and substitute for
15962         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
15963         inttypes.h.  Do not use special include files; just use the
15964         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
15965         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
15966         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
15967         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
15968         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
15969         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
15970         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
15971         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
15972         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
15973         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
15974         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
15975         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
15976         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
15977         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
15978         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
15979         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
15980         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
15981         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
15982         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
15983         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
15984         WINT_MAX.  Check for C99 conformance more strictly, by detecting
15985         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
15986         not check for things that C99 does not require, e.g., int8_t.  If
15987         a test isn't needed unless <stdint.h> isn't working, and is
15988         unlikely to be needed for any other reason, then don't do it
15989         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
15990         size_t, since we assume C89 freestanding at least.  Do not check
15991         for sig_atomic_t, wchar_t, or wint_t, since the code now does
15992         the right thing even if the types are not defined.  Instead use:
15993         (gl_STDINT_TYPE_PROPERTIES): New macro.
15994         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
15995         testing whether <sys/types.h> clashes, as Autoconf does this for
15996         us now.  All uses removed.
15997         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
15998         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
15999         (gl_CHECK_TYPE_SAME):
16000         Remove; no longer needed.
16001         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
16002         exists, since we'll return 0 anyway in that case.
16003         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
16004
16005 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16006
16007         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
16008         possible collision with system files.
16009         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
16010         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
16011         WCHAR_MIN and WCHAR_MAX in this case.
16012         (<stddef.h>): Do not include; no longer needed.
16013         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
16014         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
16015         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
16016         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
16017         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
16018         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
16019         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
16020         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
16021         !defined(__c99))]: Include in this case too, since it's harmless
16022         now.
16023         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
16024         dangerous to do so.
16025         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
16026         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
16027         (_STDINT_MIN, _STDINT_MAX): New macros.
16028         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
16029         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
16030         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
16031         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
16032         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
16033         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
16034         macros, not typedefs; this simplifies things quite a bit.
16035         Use long int for all types narrower than int64_t.
16036         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
16037         Define in terms of long long int or int64_t or long int,
16038         not int64_t or int32_t.  This saves some compile-time testing.
16039         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
16040         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
16041         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
16042         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
16043         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
16044         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
16045         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
16046         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
16047         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
16048         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
16049         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16050         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16051         undef any previous version and define our own version, for
16052         simplicity and consistency with the new macros for types.
16053         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16054         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16055         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
16056         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
16057         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
16058         @WINT_T_SUFFIX@ to keep things simple here.
16059         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
16060         Simplify by assuming typical 8/16/32/64 host, since we're
16061         already doing that elsewhere anyway.
16062         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
16063         and assume long long int is 64 bits if available.  This
16064         speeds up 'configure'.
16065
16066 2006-07-01  Eric Blake  <ebb9@byu.net>
16067
16068         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
16069         Reported by Andreas Buening.
16070
16071 2006-07-01  Eric Blake  <ebb9@byu.net>
16072
16073         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
16074
16075 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
16076
16077         * lib/getaddrinfo.c: fixed typo
16078
16079 2006-06-29  Jim Meyering  <jim@meyering.net>
16080
16081         * modules/strftime (Maintainer): Add my name, since with the
16082         FPRINTFTIME changes strftime.c has forked from glibc.
16083
16084 2006-06-29  Eric Blake  <ebb9@byu.net>
16085
16086         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
16087
16088 2006-06-29  Eric Blake  <ebb9@byu.net>
16089
16090         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
16091
16092 2006-06-29  Eric Blake  <ebb9@byu.net>
16093
16094         * lib/stat_.h: New file.
16095
16096 2006-06-29  Eric Blake  <ebb9@byu.net>
16097
16098         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
16099         unused static function.
16100
16101 2006-06-29  Eric Blake  <ebb9@byu.net>
16102
16103         * doc/functions.texi (Function Portability): Document missing lstat
16104         on mingw.
16105
16106 2006-06-29  Eric Blake  <ebb9@byu.net>
16107
16108         * MODULES.html.sh: Add sys_stat.
16109         * modules/sys_stat: New module.
16110         * modules/mkstemp (Depends-on): Add sys_stat.
16111
16112 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16113
16114         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
16115
16116 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16117
16118         * m4/c-bs-a.m4: Removed.
16119
16120 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16121
16122         * lib/strftime.c: Assume strftime() exists.
16123
16124 2006-06-29  Derek Price  <derek@ximbiot.com>
16125
16126         * modules/c-bs-a: Removed - \a is C89.
16127         * MODULES.html.sh: Remove c-bs-a.
16128
16129 2006-06-29  Bruno Haible  <bruno@clisp.org>
16130
16131         * modules/wcwidth (License): Change to LGPL.
16132
16133 2006-06-28  Simon Josefsson  <jas@extundo.com>
16134
16135         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
16136         on _WIN32.
16137
16138         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
16139         getnameinfo.
16140
16141 2006-06-28  Simon Josefsson  <jas@extundo.com>
16142
16143         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
16144
16145 2006-06-28  Simon Josefsson  <jas@extundo.com>
16146
16147         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
16148         functions there.  It will succeed on Windows XP, but on Windows
16149         2000 and (presumably) earlier, it will fail, and use the internal
16150         re-implementation.
16151         (use_win32_p): New function.
16152         (getaddrinfo): Use strtoul on servname, to support numeric ports.
16153         Support AI_NUMERICSERV to disable getservbyname.
16154         (getnameinfo): New function, only supports
16155         NI_NUMERICHOST|NI_NUMERICSERV for now.
16156
16157         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
16158         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
16159         getnameinfo.
16160
16161 2006-06-28  Eric Blake  <ebb9@byu.net>
16162
16163         * modules/wcwidth: New file.
16164         * modules/mbchar (Depends-on): Add wcwidth.
16165         * modules/mbswidth (Depends-on): Add wcwidth.
16166         * MODULES.html.sh: Add wcwidth.
16167
16168 2006-06-28  Eric Blake  <ebb9@byu.net>
16169
16170         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
16171         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
16172
16173 2006-06-28  Eric Blake  <ebb9@byu.net>
16174
16175         * lib/xvasprintf.h: Fix comments.
16176
16177 2006-06-28  Eric Blake  <ebb9@byu.net>
16178
16179         * lib/mbchar.h (wcwidth): Include wcwidth.h.
16180         * lib/mbswidth.c (wcwidth): Move from here...
16181         * lib/wcwidth.h: ...to this new file.
16182
16183 2006-06-28  Derek R. Price  <derek@ximbiot.com>
16184
16185         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
16186
16187         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
16188         it's obsolete.
16189         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
16190
16191 2006-06-28  Derek R. Price  <derek@ximbiot.com>
16192
16193         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
16194         Autoconf 2.60 says this stuff was obsolete.
16195
16196 2006-06-28  Bruno Haible  <bruno@clisp.org>
16197
16198         * modules/wcwidth (Files): Add m4/wchar_t.m4.
16199
16200 2006-06-28  Bruno Haible  <bruno@clisp.org>
16201
16202         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
16203         gt_TYPE_WCHAR_T.
16204
16205 2006-06-28  Bruno Haible  <bruno@clisp.org>
16206
16207         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
16208         declaration for wcwidth.
16209         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
16210
16211 2006-06-28  Bruno Haible  <bruno@clisp.org>
16212
16213         * lib/mkdtemp.c [MINGW]: Include <io.h>.
16214         (mkdir): Define using _mkdir.
16215
16216 2006-06-28  Bruno Haible  <bruno@clisp.org>
16217
16218         * lib/getaddrinfo.h: Fix POSIX URL.
16219         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
16220         _WIN32.
16221         (use_win32_p): Make static.
16222         (getaddrinfo): Reject service name if it is empty or does not consist
16223         solely of decimal digits, or if its value is > 65535.
16224         (getnameinfo): Remove useless casts.
16225
16226 2006-06-27  Simon Josefsson  <jas@extundo.com>
16227
16228         * modules/sys_select: New file, suggested by Bruno Haible, Paul
16229         Eggert and Martin Lambers.
16230
16231 2006-06-27  Simon Josefsson  <jas@extundo.com>
16232
16233         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
16234         Eggert and Martin Lambers.
16235
16236 2006-06-27  Bruno Haible  <bruno@clisp.org>
16237
16238         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
16239         result to 0, not to empty.
16240         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
16241
16242 2006-06-27  Bruno Haible  <bruno@clisp.org>
16243
16244         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
16245
16246 2006-06-26  Simon Josefsson  <jas@extundo.com>
16247
16248         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
16249         present.
16250
16251 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
16252
16253         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
16254         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
16255         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
16256
16257 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
16258
16259         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
16260
16261 2006-06-26  Bruno Haible  <bruno@clisp.org>
16262
16263         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
16264
16265 2006-06-26  Bruno Haible  <bruno@clisp.org>
16266
16267         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
16268
16269 2006-06-26  Bruno Haible  <bruno@clisp.org>
16270
16271         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
16272         SGI C compiler in pre-C99 mode.
16273         Suggested by Mark D. Baushke and Larry Jones.
16274
16275 2006-06-26  Bruno Haible  <bruno@clisp.org>
16276
16277         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
16278         WCHAR_MAX.
16279         Reported by Mark D. Baushke and Larry Jones.
16280
16281 2006-06-26  Bruno Haible  <bruno@clisp.org>
16282
16283         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
16284         in pre-C99 mode.
16285         Suggested by Mark D. Baushke and Larry Jones.
16286
16287 2006-06-23  Simon Josefsson  <jas@extundo.com>
16288             Bruno Haible  <bruno@clisp.org>
16289
16290         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
16291         Emit mostlyclean-local rule.
16292         (func_emit_tests_Makefile_am): Likewise.
16293         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
16294
16295 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
16296
16297         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
16298
16299 2006-06-23  Bruno Haible  <bruno@clisp.org>
16300
16301         * tests/test-stdint.c: Update to match ISO C 99 Technical
16302         Corrigendum 1.
16303
16304 2006-06-23  Bruno Haible  <bruno@clisp.org>
16305
16306         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
16307
16308 2006-06-23  Bruno Haible  <bruno@clisp.org>
16309
16310         * lib/stdint_.h: Treat IRIX like OpenBSD.
16311
16312 2006-06-23  Bruno Haible  <bruno@clisp.org>
16313
16314         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
16315         ISO C 99 Technical Corrigendum 1.
16316
16317 2006-06-22  Simon Josefsson  <jas@extundo.com>
16318
16319         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
16320         MinGW.
16321
16322 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
16323
16324         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
16325         needed.  Some compiler complained about some of them.  Problem reported
16326         by Larry Jones in
16327         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
16328
16329 2006-06-21  Simon Josefsson  <jas@extundo.com>
16330
16331         * tests/test-getaddrinfo.c: New file.
16332
16333         * modules/getaddrinfo-tests: New file.
16334
16335         * MODULES.html.sh: Add inet_pton.
16336
16337         * modules/inet_pton: New file.
16338
16339 2006-06-21  Simon Josefsson  <jas@extundo.com>
16340
16341         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
16342         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
16343         of using the (limited) gnulib implementation on Windows XP.
16344
16345         * m4/inet_pton.m4: New file.
16346
16347 2006-06-21  Simon Josefsson  <jas@extundo.com>
16348
16349         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
16350         variable.
16351
16352         * lib/socket_.h: Don't define WINVER.
16353
16354         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
16355         slightly modified to work in gnulib.
16356
16357 2006-06-21  Simon Josefsson  <jas@extundo.com>
16358
16359         * doc/gnulib.texi (Windows sockets): Add.
16360
16361 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
16362
16363         * lib/read-file.c (fread_file): Start with buffer allocation of
16364         0 bytes rather than 1 byte; this simplifies the code.
16365         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
16366         code to free buffer and save/restore errno.
16367         (internal_read_file): Remove unused local.
16368
16369 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
16370
16371         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
16372         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
16373         Problem reported by Denis Excoffier in
16374         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
16375
16376 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16377
16378         * modules/sys_socket, modules/socklen: Include sys/types since
16379         FreeBSD 4.x's sys/socket.h needs it.
16380
16381 2006-06-19  Simon Josefsson  <jas@extundo.com>
16382
16383         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
16384
16385 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
16386
16387         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
16388
16389 2006-06-19  Bruno Haible  <bruno@clisp.org>
16390
16391         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
16392         and FULL_PATH_INTTYPES_H in angle brackets.
16393         Reported by Mark D. Baushke <mdb@gnu.org>.
16394
16395 2006-06-17  Eric Blake  <ebb9@byu.net>
16396
16397         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
16398         errno.
16399
16400 2006-06-17  Bruno Haible  <bruno@clisp.org>
16401
16402         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
16403         <sys/inttypes.h>.
16404
16405 2006-06-17  Bruno Haible  <bruno@clisp.org>
16406
16407         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
16408         whether errno is declared. Assume <errno.h> declares errno.
16409
16410 2006-06-17  Bruno Haible  <bruno@clisp.org>
16411
16412         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
16413
16414 2006-06-17  Bruno Haible  <bruno@clisp.org>
16415
16416         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
16417         problem on Solaris 2.5.1.
16418
16419 2006-06-16  Eric Blake  <ebb9@byu.net>
16420
16421         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
16422         * lib/unicodeio.c [!defined errno]: Likewise.
16423         * lib/strtol.c [!defined errno]: Likewise.
16424         * lib/strtod.c [!defined errno]: Likewise.
16425
16426 2006-06-15  Eric Blake  <ebb9@byu.net>
16427
16428         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
16429
16430 2006-06-15  Eric Blake  <ebb9@byu.net>
16431
16432         * config/srclist.txt (ssize_t.m4): Lose sync.
16433
16434 2006-06-15  Bruno Haible  <bruno@clisp.org>
16435
16436         * modules/stdint (Files): Include m4/full-header-path.m4,
16437         m4/size_max.m4, m4/wchar_t.m4.
16438         (Makefile.am): Many more substitutions.
16439         * modules/stdint-tests: New file.
16440         * tests/test-stdint.c: New file.
16441
16442 2006-06-15  Bruno Haible  <bruno@clisp.org>
16443
16444         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
16445         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
16446         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
16447         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
16448         gl_CHECK_TYPE_SAME): New macros.
16449
16450 2006-06-15  Bruno Haible  <bruno@clisp.org>
16451
16452         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
16453
16454 2006-06-15  Bruno Haible  <bruno@clisp.org>
16455
16456         * lib/stdint_.h: Rewritten to be fully auto-configured.
16457         Fixes bug on HP-UX/IA64.
16458
16459 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
16460
16461         * lib/getdate.y (__attribute__): Don't define if already defined.
16462         Problem reported by Larry Jones.
16463         * lib/utimens.c (__attribute__): Likewise.
16464
16465 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
16466
16467         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
16468         reported by Andreas Schwab.
16469
16470 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16471             Bruno Haible  <bruno@clisp.org>
16472
16473         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
16474         check for the declaration of strnlen and a run test that exposes the
16475         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
16476         rpl_strndup.
16477
16478 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16479             Bruno Haible  <bruno@clisp.org>
16480
16481         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
16482
16483 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16484
16485         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
16486         compile test, for Tru64 4.0D.
16487
16488 2006-05-28  Karl Berry  <karl@gnu.org>
16489
16490         * config/srclist.txt (printf-args.c): lose sync.
16491
16492 2006-05-26  Martin Lambers  <marlam@marlam.de>
16493
16494         * lib/getpass.c: Updates the test for the native W32 API, and adds
16495         missing includes, thus fixing compilation warnings.
16496
16497 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
16498
16499         * lib/exclude.c (exclude_fnmatch): New function.
16500         (excluded_file_name): Call exclude_fnmatch.
16501         * lib/exclude.h (excluded_file_name): New prototype
16502
16503 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
16504
16505         * lib/tempname.c (small_open, large_open): New macros.
16506         (__open, __open64) [!_LIBC]: Remove.
16507         (__gen_tempname): Use small_open and large_open instead of __open
16508         and __open64.  This fixes a portability bug on HP-UX 11.11i
16509         reported by Simon Wing-Tang in
16510         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
16511
16512 2006-05-24  Bruno Haible  <bruno@clisp.org>
16513
16514         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
16515         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
16516         Reported by Thorsten Maerz <torte@netztorte.de> via
16517         Aaron Stone <aaron@serendipity.cx>.
16518
16519 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16520
16521         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
16522         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
16523         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
16524         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
16525         not really conditional on the cache.
16526         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
16527
16528 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16529
16530         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
16531         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
16532         (my_usleep): Don't mishandle maximum value.
16533
16534 2006-05-19  Jim Meyering  <jim@meyering.net>
16535
16536         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
16537
16538 2006-05-17  Bruno Haible  <bruno@clisp.org>
16539
16540         Cygwin portability.
16541         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
16542
16543 2006-05-17  Bruno Haible  <bruno@clisp.org>
16544
16545         * lib/stdint_.h: Fix recognition of Cygwin.
16546
16547 2006-05-15  Bruno Haible  <bruno@clisp.org>
16548
16549         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
16550         on libtool patch by Ralf Wildenhues.
16551
16552 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
16553
16554         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
16555         test for C99 conformance; (bool) 0.5 is an integer constant
16556         expression, but (bool) -0.5 is not.  Problem reported by Fedor
16557         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
16558
16559 2006-05-11  Simon Josefsson  <jas@extundo.com>
16560
16561         * m4/xvasprintf.m4: Fix obvious typo.
16562
16563 2006-05-11  Jim Meyering  <jim@meyering.net>
16564
16565         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
16566         James Lemley.
16567
16568 2006-05-10  Simon Josefsson  <jas@extundo.com>
16569
16570         * lib/md4.c: Typo fix, update copyright years.
16571         (K1, K2): Don't use L because it turn computations into 64-bit on
16572         64-bit platforms.
16573
16574 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
16575
16576         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
16577         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
16578         unwanted sign propagation, e.g., on hosts with 64-bit int.
16579         There still are some problems with reeelly weird theoretical hosts
16580         (e.g., 33-bit int) but it's not worth worrying about now.
16581         * lib/sha1.c (rol): Likewise.
16582         (K1, K2, K3, K4): Remove unnecessary L suffix.
16583
16584 2006-05-10  Bruno Haible  <bruno@clisp.org>
16585
16586         * lib/des.c: Cast to avoid warnings.
16587
16588 2006-05-09  Bruno Haible  <bruno@clisp.org>
16589
16590         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
16591         (Depends-on): Depend also on xsize, stdarg.
16592         (configure.ac): Add gl_XVASPRINTF.
16593
16594 2006-05-09  Bruno Haible  <bruno@clisp.org>
16595
16596         * m4/xvasprintf.m4: New file.
16597
16598 2006-05-09  Bruno Haible  <bruno@clisp.org>
16599
16600         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
16601         (EOVERFLOW): Define fallback value.
16602         (xstrcat): New function.
16603         (xvasprintf): Recognize the special case of a string concatenation.
16604
16605 2006-05-08  Eric Blake  <ebb9@byu.net>
16606
16607         * gnulib-tool (func_version): Base copyright year on CVS date.
16608         (func_emit_copyright_notice): New function.
16609         (func_emit_lib_Makefile_am): Use it.
16610         (func_emit_tests_Makefile_am): Likewise.
16611         (func_import): Likewise.
16612
16613 2006-05-08  Bruno Haible  <bruno@clisp.org>
16614
16615         * modules/stdarg: New file.
16616         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
16617
16618 2006-05-08  Bruno Haible  <bruno@clisp.org>
16619
16620         * m4/stdarg.m4: New file, from GNU gettext.
16621
16622 2006-05-08  Bruno Haible  <bruno@clisp.org>
16623
16624         * config/srclist.txt (build-aux/config.rpath): different from latest
16625         release.
16626
16627 2006-05-08  Bruno Haible  <bruno@clisp.org>
16628
16629         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
16630
16631 2006-05-05  Jim Meyering  <jim@meyering.net>
16632
16633         * m4/warning.m4: New file, derived from bison's file by the same name.
16634
16635 2006-05-03  Bruno Haible  <bruno@clisp.org>
16636
16637         * lib/stdint_.h: Shorter URL.
16638         * lib/inttypes.h: Likewise.
16639
16640 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16641
16642         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
16643
16644 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16645
16646         * lib/verify.h: Document the internals better.  Most of this change
16647         was written by Bruno Haible.
16648
16649 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16650
16651         * doc/verify.texi: New file, partly based on a proposal by
16652         Bruno Haible.
16653
16654 2006-05-02  Bruno Haible  <bruno@clisp.org>
16655
16656         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
16657         test from here...
16658         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
16659
16660 2006-04-29  Bruno Haible  <bruno@clisp.org>
16661
16662         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
16663         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
16664
16665 2006-04-29  Bruno Haible  <bruno@clisp.org>
16666
16667         * gnulib-tool: Make --update option actually work.
16668
16669 2006-04-29  Bruno Haible  <bruno@clisp.org>
16670
16671         * doc/gcd.texi: New file.
16672         * doc/gnulib.texi: Include it.
16673
16674 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
16675
16676         * lib/getdate.y (get_date): When adding relative date, start with the
16677         initial time, not with the result of the first mktime call.
16678
16679 2006-04-25  Bruno Haible  <bruno@clisp.org>
16680
16681         * gnulib-tool (func_import): Output the include directives in three
16682         blocks, sorted separately.
16683         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16684
16685 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
16686
16687         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
16688         to define main with arguments, for C++.  Reported by Eric Blake.
16689         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
16690         Prefer 'int main ()' to 'int main (void)', for C++.
16691         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
16692         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
16693         for 'main', for C99 and C++.
16694
16695 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
16696
16697         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
16698         Don't assume that exit status -1 is valid.
16699         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
16700         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
16701         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
16702         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
16703         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
16704         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
16705         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
16706         functions can be used without declaring them, or that you can
16707         exit with status -1.
16708         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
16709
16710 2006-04-24  Karl Berry  <karl@gnu.org>
16711
16712         * config/srclist.txt (longdouble.m4): sync lost.
16713
16714 2006-04-24  Eric Blake  <ebb9@byu.net>
16715
16716         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
16717
16718 2006-04-24  Bruno Haible  <bruno@clisp.org>
16719
16720         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
16721         poll() implementation in AIX.
16722         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16723
16724 2006-04-24  Bruno Haible  <bruno@clisp.org>
16725
16726         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
16727         assigned exactly once.
16728
16729 2006-04-23  Claudio Fontana  <claudio@gnu.org>
16730             Bruno Haible  <bruno@clisp.org>
16731
16732         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
16733         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
16734         for AM_CPPFLAGS.
16735
16736 2006-04-23  Bruno Haible  <bruno@clisp.org>
16737
16738         * modules/copy-file: Depend on unistd.
16739         * modules/execute: Likewise.
16740         * modules/fatal-signal: Likewise.
16741         * modules/findprog: Likewise.
16742         * modules/mkdtemp : Likewise.
16743         * modules/pipe: Likewise.
16744         * modules/wait-process: Likewise.
16745
16746 2006-04-23  Bruno Haible  <bruno@clisp.org>
16747
16748         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
16749         condition was already detected.
16750         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16751
16752 2006-04-23  Bruno Haible  <bruno@clisp.org>
16753
16754         * lib/copy-file.c: Include <unistd.h> unconditionally.
16755         * lib/execute.c: Likewise.
16756         * lib/fatal-signal.c: Likewise.
16757         * lib/findprog.c: Likewise.
16758         * lib/mkdtemp.c: Likewise.
16759         * lib/pipe.h: Likewise.
16760         * lib/pipe.c: Likewise.
16761         * lib/wait-process.h: Likewise.
16762
16763 2006-04-23  Bruno Haible  <bruno@clisp.org>
16764
16765         * gnulib-tool (func_usage): Fix --import description. Document
16766         --update.
16767         (func_import): Create temporary file in a temporary directory, if
16768         --dry-run is specified. Silence errors from 'grep' when there are no
16769         m4 files in $m4dir.
16770         (func_create_testdir): Silence errors from 'grep' when there are no
16771         m4 files in $m4dir.
16772         Reported by Karl Berry <karl@freefriends.org>.
16773
16774 2006-04-20  Bruno Haible  <bruno@clisp.org>
16775
16776         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
16777         one argument, so that the code will be portable to Autoconf 2.60.
16778         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
16779         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
16780         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
16781
16782 2006-04-19  Derek Price  <derek@ximbiot.com>
16783             Eric Blake  <ebb9@byu.net>
16784
16785         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
16786         rather than "/full/path.h".  Update comment to match.  Shorten &
16787         generalize m4_translit call via AS_TR_CPP.
16788
16789 2006-04-19  Derek Price  <derek@ximbiot.com>
16790             Eric Blake  <ebb9@byu.net>
16791
16792         * lib/inttypes.h: Correct grammar in comment.
16793
16794 2006-04-18  Derek Price  <derek@ximbiot.com>
16795             Paul Eggert  <eggert@cs.ucla.edu>
16796
16797         * modules/inttypes: New file.
16798         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
16799
16800 2006-04-18  Derek Price  <derek@ximbiot.com>
16801             Paul Eggert  <eggert@cs.ucla.edu>
16802
16803         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
16804         New files.
16805
16806 2006-04-18  Derek Price  <derek@ximbiot.com>
16807             Paul Eggert  <eggert@cs.ucla.edu>
16808
16809         * lib/inttypes.h: New file.
16810         * lib/strtoimax.c: Assume <inttypes.h>.
16811
16812 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
16813
16814         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
16815         isn't mounted.  Problem reported by Kir Kolyshkin.
16816
16817 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
16818
16819         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
16820         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
16821         Derek R. Price.
16822         * lib/regex.h (RE_DUP_MAX): Update comment to match current
16823         implementation.
16824
16825 2006-04-12  Eric Blake  <ebb9@byu.net>
16826
16827         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
16828         is now done automatically by the corresponding Autoconf macro.
16829
16830 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
16831
16832         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
16833         time_r.h.
16834
16835 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16836
16837         Merge regex changes from libc, removing some of our
16838         POSIX-conformance changes that were rejected and redoing them in a
16839         less-intrusive way.
16840
16841         * lib/regcomp.c (re_compile_internal, init_dfa):
16842         Length arg is now size_t, not Idx.  All uses changed.
16843         (peek_token): Forward decl now says internal_function.
16844         (__re_error_msgid, __re_error_msgid_idx):
16845         Now static rather than extern with attribute_hidden.
16846         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
16847         For some reason libc prefers K&R style defns for external functions.
16848         (regerror) [!defined _LIBC]: Likewise.
16849         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
16850         (seek_collating_symbol_entry, lookup_collation_sequence_value):
16851         (build_range_exp, build_collating_symbol):
16852         Use K&R-style defn.
16853         (re_compile_fastmap): Use '\0' to memset, not 0.
16854         (utf8_sb_map): Make the calculations more obvious.
16855         (init_dfa, parse_bracket_exp, build_charclass_op):
16856         Call calloc and cast result, as glibc does.
16857         (init_word_char, fetch_token, peek_token, peek_token_bracket):
16858         (build_range_exp, build_collating_symbol):
16859         Now internal functions.
16860
16861         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
16862
16863         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
16864         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
16865         Don't depend on VMS; depend on __VMS instead, for POSIX
16866         namespace cleanness.
16867         (regoff_t): Define to ssize_t, not long int.
16868
16869         Remove the REG_ macros named below.  Instead, make the old names
16870         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
16871         __USE_GNU_REGEX.
16872         (REG_BACKSLASH_ESCAPE_IN_LISTS):
16873         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
16874         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
16875         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
16876         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
16877         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
16878         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
16879         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
16880         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
16881         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
16882         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
16883         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
16884         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
16885         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
16886         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
16887         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
16888         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
16889         (REG_NREGS):
16890         Remove.  All uses replaced by the old RE_* names.
16891         (RE_BACKSLASH_ESCAPE_IN_LISTS):
16892         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
16893         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
16894         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
16895         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
16896         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
16897         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
16898         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
16899         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
16900         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
16901         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
16902         Don't bother having these macros be independent of each others'
16903         values, since they no longer exist in the POSIX name space.
16904
16905         Rename the following member names back to their old names,
16906         unless !__USE_GNU_REGEX.  All uses changed back.
16907         (buffer): Renamed from re_buffer.
16908         (allocated): Renamed from re_allocated.
16909         (used): Renamed from re_used.
16910         (syntax): Renamed from re_syntax.
16911         (fastmap): Renamed from re_fastmap.
16912         (translate): Renamed from re_translate.
16913         (can_be_null): Renamed from re_can_be_null.
16914         (regs_allocated): Renamed from re_regs_allocated.
16915         (fastmap_accurate): Renamed from re_fastmap_accurate.
16916         (no_sub): Renamed from re_no_sub.
16917         (not_bol): Renamed from re_not_bol.
16918         (not_eol): Renamed from re_not_eol.
16919         (newline_anchor): Renamed from re_newline_anchor.
16920         (num_regs): Renamed from rm_num_regs.
16921         (start): Renamed from rm_start.
16922         (end): Renamed from rm_end.
16923
16924         (free_state): Move up a bit.
16925
16926         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
16927         #define to be empty.
16928         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
16929         when that is what is intended.
16930         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
16931         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
16932         (MAX): New macro.
16933         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
16934         All uses changed back to re_malloc, etc.  It's now the caller's
16935         responsibility to check for overflow; all callers changed.
16936         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
16937         (re_x2nrealloc): Remove.
16938         (free_state): Remove decl.
16939
16940         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
16941         (re_set_registers, re_exec):
16942         Use K&R-style defn.
16943
16944         2006-01-31  Roland McGrath  <roland@redhat.com>
16945
16946         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
16947         Reported by Mike Frysinger <vapier@gentoo.org>.
16948
16949         2006-01-15  Andreas Jaeger  <aj@suse.de>
16950
16951         [BZ #1950]
16952         * lib/regex_internal.c (re_string_reconstruct): Adjust for
16953         build_wcs_upper_buffer change.
16954         (build_wcs_upper_buffer): Change return type.
16955
16956         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
16957
16958         * lib/regex_internal.h: Include <stdint.h> if available.
16959
16960         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
16961
16962         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
16963
16964         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
16965
16966         * lib/regcomp.c: Adjust for changed secondary hash function.
16967
16968         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
16969
16970         * lib/regex.h: Pretty printing.
16971         Clean up namespace a bit.
16972
16973         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
16974
16975         * lib/regexec.c (update_cur_sifted_state, check_arrival,
16976         check_arrival_add_next_nodes): Avoid using uninitialized variable.
16977
16978         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
16979                     Ulrich Drepper  <drepper@redhat.com>
16980
16981         [BZ #1302]
16982         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
16983         changed.
16984         (bitset_word_t): Renamed from bitset_word.  All uses changed.
16985
16986         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
16987
16988         [BZ #281]
16989         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
16990         * lib/regcomp.c: Remove unnecessary uses of
16991         unsigned RE_TRANSLATE_TYPE.
16992         * lib/regex_internal.h: Likewise.
16993         * lib/regex_internal.c: Likewise.
16994         * lib/regexec.c: Likewise.
16995         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
16996
16997         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
16998
16999         * lib/regexec.c (find_recover_state): Remove unnecessary
17000         initialization.
17001         (transit_state_bkref): Make DFA a const pointer.
17002         (get_subexp): Likewise.
17003         (check_arrival): Likewise.
17004         (update_cur_sifted_state): Likewise.
17005         (re_search_internal): Likewise.
17006         (prune_impossible_nodes): Likewise.
17007         (acquire_init_state_context): Likewise.
17008         (proceed_next_node): Likewise.
17009         (set_regs): Likewise.
17010         (free_fail_stack_return): Likewise.
17011         (check_arrival_expand_ecl): Mark DFA parameter as const.
17012         (check_arrival_expand_ecl_sub): Likewise.
17013         (check_subexp_limits): Likewise.
17014         (sub_epsilon_src_nodes):  Likewise.
17015         (add_epsilon_src_nodes):  Likewise.
17016         (merge_state_array): Likewise.
17017         (update_regs): Likewise.
17018         (build_trtable): Likewise.
17019         (sift_states_backward): Mark MCTX parameter as const.
17020         (build_sifted_states): Likewise.
17021         (update_cur_sifted_state): Likewise.
17022         (sift_states_mkref): Likewise.
17023         (check_arrival_expand_ecl): Mark eclosure as const.
17024         (check_dst_limits_calc_pos_1): Likewise.
17025         * lib/regex_internal.h (re_match_context_t): Make dfa a const
17026         pointer.
17027
17028         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
17029
17030         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
17031         (transit_state_sb): Likewise.
17032         (transit_state_mb): Likewise.
17033         (sift_states_iter_mb): Likewise.
17034         (check_arrival_add_next_nodes): Likewise.
17035         (check_node_accept_bytes): Change first parameter to pointer-to-const.
17036         [_LIBC] (re_search_2_stub): Use mempcpy.
17037
17038         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
17039         mbrtowc for very simple UTF-8 case.
17040
17041         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
17042         a pointer-to-const.
17043         (re_acquire_state_context): Likewise.
17044         * lib/regex_internal.h: Adjust prototypes.
17045
17046         * lib/regex.c: Prevent using C++ compilers.
17047
17048         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
17049         (re_acquire_state_context): Likewise.
17050
17051 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17052
17053         * modules/regex (Depends-on): Add ssize_t.
17054
17055 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17056
17057         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
17058         translation table.
17059
17060 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17061
17062         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
17063
17064 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
17065             Bruno Haible  <bruno@clisp.org>
17066
17067         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
17068         <sys/types.h> and <inttypes.h>.
17069
17070 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17071
17072         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
17073         `__error_t_defined', so argp.h will not typedef the former.
17074
17075 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
17076
17077         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
17078         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
17079         glibc names.  Even if glibc is changed to conform to POSIX, the
17080         traditional names will be available anyway, since regex depends on
17081         the extensions module.  Also, fix a longstanding typo in the
17082         implementation of Spencer ERE test #75 from grep 2.3.  Problems
17083         reported by Emanuele Giaquinta.  Also, change sense of cached
17084         variable, so that the message makes sense.
17085
17086 2006-03-24  Simon Josefsson  <jas@extundo.com>
17087
17088         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
17089         including some doc fixes.
17090         (base64_encode_alloc): Fix +1 bug on allocation failures.
17091
17092 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17093
17094         * lib/base64.c (base64_encode): Do not read past end of array with
17095         unsanitized input on systems with CHAR_BIT > 8.
17096
17097 2006-03-24  Eric Blake  <ebb9@byu.net>
17098
17099         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
17100
17101 2006-03-22  Karl Berry  <karl@gnu.org>
17102
17103         * config/srclist.txt (*setenv.[ch]): get from coreutils.
17104         * config/srclistvars.sh (COREUTILS): new var.
17105
17106 2006-03-17  Jim Meyering  <jim@meyering.net>
17107
17108         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
17109         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
17110
17111 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17112
17113         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
17114         no longer needs it.  Instead, check that regoff_t is as least
17115         as wide as ptrdiff_t.
17116
17117         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
17118         so that our regex.h stays compatible with the installed regex.
17119         This is helpful for installers who configure --without-included-regex.
17120         Problem reported by Emanuele Giaquinta.
17121
17122 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17123
17124         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
17125         Typedef to long int, not to off_, as POSIX will likely change
17126         in that direction.
17127
17128 2006-03-15  Eric Blake  <ebb9@byu.net>
17129
17130         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
17131
17132 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17133
17134         * lib/argp-help.c (validate_uparams): Fix typo
17135         * lib/argp-parse.c (argp_default_options): Consistently begin help
17136         messages with a lowercase letter.
17137
17138 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
17139
17140         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
17141         overrun buffers and shouldn't be used (much as gets shouldn't be
17142         used).
17143         * lib/time_r.c (asctime_r, ctime_r): Likewise.
17144
17145 2006-03-08  Simon Josefsson  <jas@extundo.com>
17146
17147         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
17148         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17149
17150 2006-03-08  Simon Josefsson  <jas@extundo.com>
17151
17152         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
17153         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17154
17155 2006-03-08  Simon Josefsson  <jas@extundo.com>
17156
17157         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
17158         signal that configure disabled the device.
17159
17160 2006-03-08  Simon Josefsson  <jas@extundo.com>
17161
17162         * build-aux/maint.mk: Fix refresh-po, to handle no translated
17163         languages.
17164
17165 2006-03-07  Simon Josefsson  <jas@extundo.com>
17166
17167         * modules/getopt (Depends-on): Add unistd.
17168
17169         * modules/unistd: New file.
17170
17171 2006-03-07  Simon Josefsson  <jas@extundo.com>
17172
17173         * modules/gc-random: New file.
17174
17175 2006-03-07  Simon Josefsson  <jas@extundo.com>
17176
17177         * m4/unistd_h.m4: New file.
17178
17179 2006-03-07  Simon Josefsson  <jas@extundo.com>
17180
17181         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
17182         test to be side-effect free by storing the result in the cache
17183         variable gl_cv_lib_readline, and moving the assignment of
17184         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
17185         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17186
17187 2006-03-07  Simon Josefsson  <jas@extundo.com>
17188
17189         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
17190         error on missing devices (the functions will return an error).
17191
17192         * m4/gc.m4: Move random stuff to gc-random.m4
17193
17194 2006-03-07  Simon Josefsson  <jas@extundo.com>
17195
17196         * lib/unistd_.h: New file.
17197
17198 2006-03-07  Simon Josefsson  <jas@extundo.com>
17199
17200         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
17201
17202 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17203
17204         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
17205         Problem reported by Juan Manuel Guerrero.
17206
17207 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17208
17209         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
17210         the unistd module.
17211         * lib/getlogin_r.c: Likewise.
17212         * lib/getlogin_r.h: Likewise.
17213         * lib/glob.c: Likewise.
17214         * lib/pagealign_alloc.c: Likewise.
17215         * lib/unistd_.h: Remove; no longer needed.
17216
17217 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17218
17219         * MODULES.html.sh (Support for systems lacking POSIX:2001):
17220         Add unistd.
17221         * modules/c-stack (Depends-on): Add unistd.
17222         * modules/getlogin_r: Likewise.
17223         * modules/glob: Likewise.
17224         * modules/pagealign_alloc: Likewise.
17225         * modules/unistd (Files): Remove lib/unistd_.h.
17226         (EXTRA_DIST): Remove.
17227         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
17228         need unistd_.h.
17229         (MOSTLYCLEANFILES): Remove unistd.h-t.
17230
17231 2006-03-03  Simon Josefsson  <jas@extundo.com>
17232
17233         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
17234
17235 2006-03-03  Simon Josefsson  <jas@extundo.com>
17236
17237         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
17238         libidn and bison.
17239
17240 2006-03-03  Simon Josefsson  <jas@extundo.com>
17241
17242         * build-aux/maint.mk: Add indent target.
17243
17244 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
17245
17246         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
17247         our replacement poll.h in any case, to avoid a differing
17248         declaration from a system header.  Seen on AIX.
17249
17250 2006-03-01  Simon Josefsson  <jas@extundo.com>
17251
17252         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
17253         <kasal@ucw.cz>.
17254
17255 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17256
17257         * modules/gettime (Depends-on): Add extensions module.
17258         * modules/nanosleep (Depends-on): Likewise.
17259         * modules/settime (Depends-on): Likewise.
17260
17261 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17262
17263         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
17264         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
17265         pedantically.
17266         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17267         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
17268
17269         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
17270         not "==".  Reported by Ralf Wildenhues.
17271
17272 2006-03-01  Karl Berry  <karl@gnu.org>
17273
17274         * doc/Copyright/request-*: new files, synced from gnuorg.
17275
17276 2006-03-01  Karl Berry  <karl@gnu.org>
17277
17278         * config/srclist.txt (Copyright/*): new entries.
17279
17280 2006-02-28  Simon Josefsson  <jas@extundo.com>
17281
17282         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
17283
17284 2006-02-27  Simon Josefsson  <jas@extundo.com>
17285
17286         * lib/base64.h: Indent #define's.  From Jim Meyering
17287         <jim@meyering.net>.
17288
17289 2006-02-27  Jim Meyering  <jim@meyering.net>
17290
17291         Revert the change of 2006-02-24, so these files can continue
17292         to be sync'd from gettext.
17293         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
17294         of `config.h'.
17295
17296 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
17297
17298         * modules/intprops: New file.
17299         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
17300         Add intprops.
17301         * modules/getloadavg (Files): Remove lib/intprops.h.
17302         (Depends-on): Add intprops.
17303         * modules/human: Likewise.
17304         * modules/inttostr: Likewise.
17305         * modules/openat: Likewise.
17306         * modules/sig2str: Likewise.
17307         * modules/userspec: Likewise.
17308         * modules/utimecmp: Likewise.
17309         * modules/xnanosleep: Likewise.
17310         * modules/xstrtol: Likewise.
17311
17312 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
17313
17314         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
17315         * modules/lock-tests (TESTS): Use $(EXEEXT).
17316         * modules/tls-tests: Likewise.
17317         * modules/argp-tests: Likewise.
17318         (check_PROGRAMS): New var, replacing...
17319         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
17320
17321 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17322
17323         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
17324         `config.h'.
17325
17326 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
17327
17328         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
17329
17330 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17331
17332         Sync from coreutils.
17333         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
17334         gl_CHDIR_SAFER.
17335
17336 2006-02-22  Jim Meyering  <jim@meyering.net>
17337
17338         Sync from coreutils.
17339         * m4/chdir-safer.m4: New file.
17340
17341 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
17342
17343         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
17344         AT_FDCWD exceeds INT_MAX.
17345         * lib/openat.h (AT_FDCWD): Likewise.
17346
17347 2006-02-17  Eric Blake  <address@hidden>
17348
17349         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
17350
17351 2006-02-16  Simon Josefsson  <jas@extundo.com>
17352
17353         * modules/getaddrinfo (Depends-on): Add sys_socket.
17354
17355 2006-02-15  Simon Josefsson  <jas@extundo.com>
17356
17357         * build-aux/maint.mk: Add dsyntax-check rule.
17358
17359 2006-02-15  Eric Blake  <ebb9@byu.net>
17360
17361         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
17362         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
17363         'present but cannot compile' warnings on cygwin.
17364         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
17365         use ws2tcpip.h if sys/socket.h works.
17366         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
17367         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
17368
17369 2006-02-14  Simon Josefsson  <jas@extundo.com>
17370
17371         * modules/maintainer-makefile (Files): Rename.
17372
17373         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
17374         and (the local) Makefile.cfg to maint-cfg.mk.
17375
17376         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
17377         to the latter.
17378
17379         * modules/maintainer-makefile: New module.
17380
17381         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
17382         severaly stripped to make it possible to build it up from scratch
17383         with reliable tests.
17384
17385         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
17386         fixes to permit overriding the default actions when configure and
17387         makefile are not available.
17388
17389 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
17390
17391         Sync from coreutils.
17392         * modules/lstat (Depends-on): Don't depend on xalloc.
17393         (License): Change from GPL to LGPL, since this is now simply a
17394         replacement for a libc function.
17395
17396 2006-02-14  Jim Meyering  <jim@meyering.net>
17397
17398         Sync from coreutils.
17399
17400         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
17401         failure on deficient systems, and simplify gnulib lgpl dependencies.
17402         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
17403         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
17404
17405         * lib/xalloc-die.c: Remove unused definition of N_.
17406
17407 2006-02-14  Jim Meyering  <jim@meyering.net>
17408
17409         Sync from coreutils.
17410         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
17411         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
17412         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
17413         double-quote uses of that variable, to accommodate the rare case in
17414         which getmntent is available in none of the libraries checked.  This
17415         happens at least on FreeBSD 5.0.
17416
17417 2006-02-13  Simon Josefsson  <jas@extundo.com>
17418
17419         * gnulib-tool (Usage): Fix --import, from
17420         karl@freefriends.org (Karl Berry).
17421
17422 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17423
17424         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
17425
17426 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
17427
17428         * lib/argp-namefrob.h: Restore changes accidentally lost during the
17429         "autoupdate" on 2005-12-12.
17430
17431 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
17432
17433         * modules/closeout (Depends-on): Remove atexit.
17434
17435 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
17436
17437         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
17438         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
17439
17440 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
17441
17442         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
17443         __EXTENSIONS__ if this causes compilation to fail.  Problem
17444         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
17445         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
17446
17447 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
17448
17449         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
17450         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
17451         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
17452         All uses changed.
17453
17454 2006-01-26  Simon Josefsson  <jas@extundo.com>
17455
17456         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
17457         prototype is visible on mingw32.
17458
17459         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
17460         for mingw32.
17461
17462         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
17463         mingw32).
17464
17465 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
17466
17467         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
17468         attempt to open for write; this always fails, at least on POSIX
17469         hosts.  This reinstates the 2006-01-09 change, which was
17470         inadvertently removed.
17471
17472 2006-01-26  Bruno Haible  <bruno@clisp.org>
17473
17474         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
17475         Reported by Paul Eggert.
17476
17477 2006-01-26  Bruno Haible  <bruno@clisp.org>
17478             Paul Eggert  <eggert@cs.ucla.edu>
17479
17480         * lib/stdbool_.h (_Bool)
17481         [(! (defined __cplusplus || defined __BEOS__)
17482           && !defined __GNUC__
17483           && !(defined __HP_cc || defined __xlc__
17484                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
17485                || defined __sgi))]:
17486         #define to signed char in these cases too; this simplifies
17487         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
17488         etc., separately) and makes it more conservative.
17489
17490 2006-01-25  Simon Josefsson  <jas@extundo.com>
17491
17492         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
17493         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
17494         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
17495
17496 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
17497
17498         * lib/argp-namefrob.h: Bugfix. Remove stray #
17499
17500 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
17501
17502         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
17503         so that we test the test.
17504         Check for yet another HP-UX cc bug involving *bool |= bool.
17505
17506 2006-01-25  Karl Berry  <karl@gnu.org>
17507
17508         * config/srclist.txt (vasnprintf.c): sync lost.
17509
17510 2006-01-25  Jim Meyering  <jim@meyering.net>
17511
17512         Sync from the stable (b5) branch of coreutils:
17513
17514         * lib/fts.c (fts_children): Don't let close() clobber errno from
17515         failed fchdir().
17516
17517         * lib/fts.c (fts_stat): When following a symlink-to-directory,
17518         don't necessarily interpret stat-fails+lstat-succeeds as indicating
17519         a dangling symlink.  That can also happen at least for ELOOP.
17520         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
17521         FYI, this bug predates the inclusion of fts.c in coreutils.
17522
17523         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
17524         in their own block, so pre-c99 compilers don't object.
17525
17526         Avoid the double-free (first in fts_read, second in fts_close) that
17527         would occur when an `active' directory is made inaccessible (e.g.,
17528         via chmod a-x) during a traversal.
17529         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
17530         before returning.  Reproduce this failure by
17531         mkdir -p a/b; cd a; chmod a-x . b
17532         Reported by Stavros Passas.
17533
17534 2006-01-25  Jim Meyering  <jim@meyering.net>
17535
17536         * lib/fileblocks.c: Remove more useless parentheses.
17537         * lib/readutmp.h: Likewise.
17538
17539 2006-01-25  Bruno Haible  <bruno@clisp.org>
17540
17541         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
17542         warnings.
17543         Reported by Paul Eggert.
17544
17545 2006-01-25  Bruno Haible  <bruno@clisp.org>
17546
17547         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
17548         rid of a trap command. For Solaris sh.
17549         Reported by Mark D. Baushke <mdb@gnu.org>.
17550
17551 2006-01-24  Simon Josefsson  <jas@extundo.com>
17552
17553         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
17554         Bruno.
17555
17556 2006-01-24  Karl Berry  <karl@gnu.org>
17557
17558         * config/srclist.txt (argp-namefrob.h): sync lost.
17559
17560 2006-01-24  Jim Meyering  <jim@meyering.net>
17561
17562         * modules/openat (Files): Add lib/intprops.h.
17563         From Mark D. Baushke.
17564
17565 2006-01-24  Jim Meyering  <jim@meyering.net>
17566
17567         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
17568         Reported by Mark D. Baushke.
17569
17570 2006-01-24  Jim Meyering  <jim@meyering.net>
17571
17572         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
17573
17574 2006-01-24  Bruno Haible  <bruno@clisp.org>
17575
17576         * modules/strnlen (Maintainer): Change from glibc to all.
17577
17578 2006-01-24  Bruno Haible  <bruno@clisp.org>
17579
17580         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
17581         Patch by Paul Eggert.
17582
17583 2006-01-24  Bruno Haible  <bruno@clisp.org>
17584
17585         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
17586         already has it.
17587         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
17588         2005-11-26.
17589
17590         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
17591         'signed char' to avoid problems with the built-in _Bool type.
17592         Reported by Paul Eggert on 2005-11-26.
17593
17594 2006-01-24  Bruno Haible  <bruno@clisp.org>
17595
17596         * gnulib-tool (func_import): Avoid constructing complicated sed
17597         expressions inside backquote.
17598         Report and solution by Mark D. Baushke <mdb@gnu.org>.
17599
17600 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
17601
17602         These changes imported from libc.
17603         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
17604         test and two separate function calls.
17605         * lib/strndup.c (__strndup): Add libc_hidden_def.
17606
17607 2006-01-23  Simon Josefsson  <jas@extundo.com>
17608
17609         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
17610         Remove the test_*_SOURCES variable: automake infers it by default.
17611         * modules/tls-tests: Likewise.
17612
17613 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17614
17615         Work around porting bugs reported by Dieter in
17616         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
17617         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
17618         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
17619         Include "getopt.h" first, to check interface.
17620         (getenv): Declare only if defined HAVE_DECL_GETENV &&
17621         !HAVE_DECL_GETENV.
17622         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
17623         (__strndup): Revert to K&R-style function dfns, the glibc style.
17624         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
17625         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
17626         Include strnlen.h first, to get prototype properly.
17627         (strnlen): Renamed from __strnlen.
17628         Remove weak alias.
17629
17630 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17631
17632         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
17633
17634 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17635
17636         * config/srclist.txt: Adjust to reflect glibc reorganization.
17637         This affects only comments.
17638
17639 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
17640
17641          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
17642          Reported by Bruce Korb <bkorb@gnu.org>.
17643
17644 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
17645
17646         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
17647         to pacify gcc -Wswitch-default.
17648
17649 2006-01-22  Bruno Haible  <bruno@clisp.org>
17650
17651         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
17652         temporary buffer for sprintf, take into account the precision also
17653         for 'd', 'i', 'u', 'o', 'x', 'X'.
17654
17655 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
17656
17657         * modules/argp-tests: New module
17658         * tests/test-argp.c: New file
17659         * tests/test-argp-2.sh: New file
17660
17661 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
17662
17663         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
17664         (__argp_base_name): Removed
17665         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
17666         typo.
17667         (__argp_base_name): Provide macro definition or extern declaration
17668         depending on the configuration
17669
17670 2006-01-20  Simon Josefsson  <jas@extundo.com>
17671
17672         * modules/inet_ntop (Depends-on): Depend on sys_socket.
17673
17674 2006-01-20  Simon Josefsson  <jas@extundo.com>
17675
17676         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
17677
17678 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
17679
17680         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
17681         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
17682         Suggested by Bruno Haible.
17683
17684 2006-01-20  Karl Berry  <karl@gnu.org>
17685
17686         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
17687         until changes propagate, I guess.
17688
17689 2006-01-19  Simon Josefsson  <jas@extundo.com>
17690
17691         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
17692
17693 2006-01-19  Simon Josefsson  <jas@extundo.com>
17694
17695         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
17696
17697 2006-01-19  Simon Josefsson  <jas@extundo.com>
17698
17699         * gnulib-tool: Set check_PROGRAMS.
17700
17701         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
17702         modules/des-tests, modules/gc-arcfour-tests,
17703         modules/gc-arctwo-tests, modules/gc-des-tests,
17704         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
17705         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
17706         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
17707         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
17708         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
17709         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
17710         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
17711         test_*_SOURCES.
17712
17713 2006-01-18  Simon Josefsson  <jas@extundo.com>
17714
17715         * modules/socklen (Depends-on): Depend on sys_socket.
17716
17717 2006-01-18  Simon Josefsson  <jas@extundo.com>
17718
17719         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
17720         modules/des-tests, modules/gc-arcfour-tests,
17721         modules/gc-arctwo-tests, modules/gc-des-tests,
17722         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
17723         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
17724         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
17725         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
17726         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
17727         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
17728         $(EXEEXT) to automake TESTS variable, for mingw32.
17729
17730 2006-01-17  Simon Josefsson  <jas@extundo.com>
17731
17732         * modules/socklen (Include): Need sys/socket.h.
17733
17734 2006-01-17  Bruno Haible  <bruno@clisp.org>
17735
17736         * modules/ssize_t (Include): Add <sys/types.h>.
17737
17738 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
17739
17740         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
17741         it's not portable and it doesn't work with cross-compiles.
17742         Problem reported by Bruno Haible.  Fix missing-$ typo in
17743         'test "gl_cv_ignore_unused_libraries" ...' that prevented
17744         -zignore from being used with Sun's C compiler.
17745
17746 2006-01-12  Simon Josefsson  <jas@extundo.com>
17747
17748         * lib/base64.c: Fix warning, reported by Bruno Haible
17749         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
17750
17751 2006-01-12  Bruno Haible  <bruno@clisp.org>
17752
17753         * modules/ldd: New file.
17754         * build-aux/ldd.sh.in: New file.
17755         * MODULES.html.sh (Support for building libraries and executables): Add
17756         ldd.
17757
17758 2006-01-12  Bruno Haible  <bruno@clisp.org>
17759
17760         * m4/ldd.m4: New file.
17761
17762 2006-01-12  Bruno Haible  <bruno@clisp.org>
17763
17764         * gnulib-tool (func_import, func_create_testdir): Don't go into an
17765         endless loop while replacing $auxdir with build-aux.
17766
17767 2006-01-11  Simon Josefsson  <jas@extundo.com>
17768
17769         * lib/stdint_.h (SIZE_MAX): Add missing (.
17770
17771 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
17772
17773         Sync from coreutils.
17774         * lib/md5.c: Fix commentary typos.
17775         (alignof, UNALIGNED_P): No need for a GCC-specific version.
17776         * lib/md5.h (__attribute__): Remove; unused.
17777         * lib/sha1.c: Fix commentary to match md5 better.
17778         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
17779         so that we don't need to worry about alignment.  All uses changed.
17780         This merges the 2005-10-28 md5 change into sha1.
17781
17782 2006-01-11  Jim Meyering  <jim@meyering.net>
17783
17784         Sync from coreutils.
17785         * lib/md5.c (OP): Fix spacing.
17786
17787 2006-01-11  Bruno Haible  <bruno@clisp.org>
17788
17789         Ensure automatic ordering between gl_LOCK and gl_ARGP.
17790         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
17791         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
17792
17793 2006-01-11  Bruno Haible  <bruno@clisp.org>
17794
17795         Ensure automatic ordering between gl_LOCK and gl_ARGP.
17796         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
17797         the "early" section as well.
17798
17799 2006-01-11  Bruno Haible  <bruno@clisp.org>
17800
17801         Avoid "ar: no archive members specified" error on MacOS X.
17802         * gnulib-tool (func_modules_add_dummy): New function.
17803         (func_import, func_create_testdir): Invoke it.
17804
17805 2006-01-11  Bruno Haible  <bruno@clisp.org>
17806
17807         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
17808         with $auxdir in AC_CONFIG_FILES statements.
17809
17810 2006-01-11  Bruno Haible  <bruno@clisp.org>
17811
17812         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17813         Initialize also noinst_HEADERS to empty.
17814
17815 2006-01-11  Bruno Haible  <bruno@clisp.org>
17816
17817         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
17818         variables.
17819         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
17820         autoreconf.
17821
17822 2006-01-11  Bruno Haible  <bruno@clisp.org>
17823
17824         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
17825         overridable by the user.
17826         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17827
17828 2006-01-10  Simon Josefsson  <jas@extundo.com>
17829
17830         * modules/sys_socket: New file.
17831
17832 2006-01-10  Simon Josefsson  <jas@extundo.com>
17833
17834         * m4/sys_socket_h.m4: New file.
17835
17836 2006-01-10  Simon Josefsson  <jas@extundo.com>
17837
17838         * lib/socket_.h: New file.
17839
17840 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17841
17842         * modules/readutmp (Maintainer): Add myself.
17843
17844 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17845
17846         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
17847         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
17848         People who are still concerned with buggy memcmp implementations
17849         can invoke gl_FUNC_MEMCMP themselves.
17850
17851 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
17852
17853         * lib/regex_internal.h (BITSET_WORD_BITS):
17854         Work around a bug in 64-bit PGC (before version 6.1-2), where the
17855         preprocessor mishandles large unsigned values as if they were signed.
17856         Problem reported by Claudio Fontana in
17857         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
17858
17859 2006-01-10  Jim Meyering  <jim@meyering.net>
17860
17861         Avoid the double-free (first in fts_read, second in fts_close) that
17862         would occur when an `active' directory is made inaccessible (e.g.,
17863         via chmod a-x) during a traversal.
17864         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
17865         before returning.  Reproduce this failure by
17866         mkdir -p a/b; cd a; chmod a-x . b
17867         Reported by Stavros Passas.
17868
17869         Sync from coreutils.
17870         * lib/sha1.c: Tweak grammar in a comment.
17871
17872 2006-01-10  Jim Meyering  <jim@meyering.net>
17873
17874         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
17875         Patch by Joerg Sonnenberger.
17876
17877 2006-01-10  Bruno Haible  <bruno@clisp.org>
17878
17879         * modules/readutmp: Depend on module free.
17880         * modules/strtok_r: Depend on module restrict.
17881
17882 2006-01-10  Bruno Haible  <bruno@clisp.org>
17883
17884         * modules/gettext (configure.ac): Add an invocation of
17885         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
17886
17887 2006-01-10  Bruno Haible  <bruno@clisp.org>
17888
17889         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
17890         Reported by Werner Lemberg <wl@gnu.org>.
17891
17892 2006-01-10  Bruno Haible  <bruno@clisp.org>
17893
17894         * lib/localcharset.c: Update from GNU gettext.
17895
17896 2006-01-10  Bruno Haible  <bruno@clisp.org>
17897
17898         * lib/argp.h (__const): Remove macro. Use const instead.
17899         * lib/argp-fmtstream.h (__const): Likewise.
17900         * lib/glob_.h (__const): Remove macro.
17901         * lib/glob-libc.h: Use const instead of __const.
17902
17903 2006-01-10  Bruno Haible  <bruno@clisp.org>
17904
17905         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
17906         variable.
17907         Needed to avoid an automake error regarding the 'gettext' module.
17908
17909 2006-01-09  Simon Josefsson  <jas@extundo.com>
17910
17911         * modules/inet_ntop (Depends-on): Add restrict.
17912
17913 2006-01-09  Simon Josefsson  <jas@extundo.com>
17914
17915         * modules/gc-rijndael-tests (License): Put under LGPL.
17916
17917         * modules/gc-des-tests (License): Likewise.
17918
17919         * modules/gc-arcfour-tests (License): Likewise.
17920
17921         * modules/gc-arctwo-tests (License): Likewise.
17922
17923         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
17924
17925         * modules/gc-hmac-sha1-tests (Files): Likewise.
17926
17927         * modules/gc-hmac-md5-tests (License): Likewise.
17928
17929         * modules/gc-sha1-tests (License): Likewise.
17930
17931         * modules/gc-md5-tests (License): Likewise.
17932
17933         * modules/gc-md4-tests (License): Likewise.
17934
17935         * modules/gc-md2-tests (License): Likewise.
17936
17937         * modules/gc-tests (License): Likewise.
17938
17939         * modules/des-tests (License): Likewise.
17940
17941         * modules/md4-tests (License): Likewise.
17942
17943         * modules/md2-tests (License): Likewise.
17944
17945 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17946
17947         Sync from coreutils:
17948
17949         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
17950         * modules/lib-ignore: New file.
17951         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
17952         chdir-safer.m4, lchmod.m4.
17953         * modules/openat: Add mkdirat.c, openat-priv.h.
17954
17955 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17956
17957         Sync from coreutils.
17958         * m4/lib-ignore.m4: New file.
17959         * m4/lchmod.m4: New file.
17960
17961 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17962
17963         Sync from coreutils.
17964         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
17965         for write access: POSIX says that must fail.
17966         * lib/fts.c (diropen): Likewise.
17967         * lib/save-cwd.c (save_cwd): Likewise.
17968         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
17969         well, for minor improvements on hosts that lack O_DIRECTORY.
17970         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
17971         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
17972         Fall back on chown if open failed with EACCES.
17973
17974         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
17975         Report an error at compile-time if only a 1-second nominal clock
17976         resolution is found.
17977
17978         * lib/lchmod.h: New file.
17979         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
17980         (make_dir_parents): Use lchown rather than chown, and
17981         lchmod rather than chmod.
17982
17983         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
17984         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
17985         "proc" reported by n0dalus.
17986
17987         * lib/mountlist.c: Include <limits.h>.
17988         (dev_from_mount_options)
17989         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
17990         New function.  It no longer assumes "dev=" has the System V meaning
17991         on Linux (since it doesn't).  It also parses "dev=" more carefully.
17992         (read_file_system_list)
17993         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
17994         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
17995         dev= in that case.
17996
17997         * lib/posixtm.h (PDS_PRE_2000): New macro.
17998         * lib/posixtm.c (year): Arg is now syntax_bits rather than
17999         allow_century.  All usages changed.  Reject dates outside the range
18000         1969-1999 if PDS_PRE_2000 is used.
18001
18002 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18003
18004         Sync from coreutils.
18005         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
18006         (Time of day items): Mention the possibility of leap seconds.
18007         Problem reported by Dr. David Alan Gilbert.
18008
18009 2006-01-09  Jim Meyering  <jim@meyering.net>
18010
18011         Sync from coreutils.
18012
18013         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
18014
18015         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
18016
18017         * lib/modechange.c (mode_compile): Reject an invalid mode string
18018         that starts with an octal digit.  From Andreas Gruenbacher.
18019
18020         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
18021         and dup to open_safer and dup_safer, respectively.
18022         (openat_permissive): Fix typo in comment.
18023
18024         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
18025         "gettext.h"; either no longer needed or are guaranteed by openat.h.
18026         (_): Remove; no longer needed.
18027         (openat): Renamed from rpl_openat; no need for rpl_openat
18028         since openat.h renames openat for us.
18029         Replace most of the body with a call to openat_permissive,
18030         to avoid duplicate code.
18031         Port to (probably hypothetical) environments were mode_t is
18032         wider than int.
18033         (openat_permissive): Require mode arg, so that we can check
18034         types better.  Put it just after flags.  Change cwd failure
18035         indicator from pointer-to-bool to pointer-to-errno-value.
18036         All callers changed.
18037         Invoke openat_save_fail and/or openat_restore_fail if
18038         cwd_errno is null, so that openat can call us.
18039         (openat_permissive, fdopendir, fstatat, unlinkat):
18040         Simplify errno handling to avoid some duplicate code,
18041         as it's OK to set errno on success.
18042         * lib/openat.h: Revamp code so that function macros depend on
18043         __OPENAT_PREFIX only, not also on AT_FDCWD.
18044         (openat_ro): Remove.  Caller changed to use openat_permissive.
18045         (openat_permissive): Now a macro, if not a function.
18046         (openat_restore_fail, openat_save_fail): Now always functions,
18047         since mkdirat needs them even if __OPENAT_PREFIX is defined.
18048
18049         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
18050         and openat.c.
18051         * lib/mkdirat.c: Include openat-priv.h.
18052         Remove definitions of macros defined therein.
18053         * lib/openat.c: Likewise.
18054
18055         * lib/mkdirat.c (mkdirat): New file and function.
18056         * lib/openat.h (mkdirat): Declare.
18057
18058         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
18059
18060         * lib/openat.h (openat_permissive): Declare.
18061         (openat_ro): Define.
18062
18063         * lib/openat.c (EXPECTED_ERRNO): New macro.
18064         (openat_permissive): New function -- used in remove.c rewrite.
18065         (all functions): Set errno just before returning, only if there
18066         was an actual failure.
18067         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
18068
18069         Emulate openat-family functions using Linux's procfs, if possible.
18070         Idea and some code based on Ulrich Drepper's glibc changes.
18071
18072         * lib/openat.c: (BUILD_PROC_NAME): New macro.
18073         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
18074         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
18075         before falling back on save_cwd and restore_cwd.
18076         (fdopendir, fstatat, unlinkat): Likewise.
18077
18078         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
18079         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
18080
18081         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
18082         as second argument to va_arg.  Otherwise, some versions of gcc
18083         warn that `if this code is reached, the program will abort'.
18084
18085 2006-01-09  Jim Meyering  <jim@meyering.net>
18086
18087         Sync from coreutils.
18088         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
18089         Require openat-priv.h.
18090
18091 2006-01-09  Bruno Haible  <bruno@clisp.org>
18092
18093         * modules/strnlen (Include): Use strnlen.h.
18094
18095 2006-01-09  Bruno Haible  <bruno@clisp.org>
18096
18097         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
18098
18099 2006-01-09  Bruno Haible  <bruno@clisp.org>
18100
18101         * lib/sysexit_.h (EX_OK): New macro.
18102         Suggested by Martin Lambers <marlam@marlam.de>.
18103
18104 2006-01-09  Bruno Haible  <bruno@clisp.org>
18105
18106         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
18107         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
18108
18109 2006-01-09  Bruno Haible  <bruno@clisp.org>
18110
18111         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
18112         numbers.
18113
18114 2006-01-09  Bruno Haible  <bruno@clisp.org>
18115
18116         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
18117         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
18118         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
18119         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
18120
18121 2006-01-09  Bruno Haible  <bruno@clisp.org>
18122
18123         * build-aux/javacomp.sh.in: New file, moved from lib/.
18124         * modules/javacomp-script (Files): Update.
18125         (configure.ac): Add AC_CONFIG_FILES invocation.
18126         (EXTRA_DIST): Remove variable.
18127
18128         * build-aux/javaexec.sh.in: New file, moved from lib/.
18129         * modules/javaexec (Files): Update.
18130         (configure.ac): Add AC_CONFIG_FILES invocation.
18131         (EXTRA_DIST): Remove javaexec.sh.in.
18132
18133         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
18134         * modules/csharpcomp-script (Files): Update.
18135         (configure.ac): Add AC_CONFIG_FILES invocation.
18136         (EXTRA_DIST): Remove variable.
18137
18138         * build-aux/csharpexec.sh.in: New file, moved from lib/.
18139         * modules/csharpexec (Files): Update.
18140         (configure.ac): Add AC_CONFIG_FILES invocation.
18141         (EXTRA_DIST): Remove csharpexec.sh.in.
18142
18143 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18144
18145         Sync from coreutils.
18146
18147         Add POSIX ACL support
18148         * lib/acl.h (copy_acl, set_acl): Add declarations.
18149         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
18150         systems other than Linux.
18151         (chmod_or_fchmod): New function: use fchmod when possible,
18152         and chmod otherwise.
18153         (file_has_acl): Add a POSIX ACL implementation, with a
18154         Linux-specific subcase.
18155         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
18156         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
18157         acls are unsupported.
18158         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
18159         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
18160         are unsupported.
18161
18162 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18163
18164         Sync from coreutils.
18165         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
18166
18167 2006-01-07  Bruno Haible  <bruno@clisp.org>
18168
18169         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
18170         gl_EARLY.
18171
18172 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18173
18174         * lib/strftime.c (tzname): Don't declare if it is already #defined.
18175         Problem reported for Mingw by Mark Junker.
18176
18177 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18178
18179         * README: Gnulib normally doesn't generate a tarball.
18180
18181 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
18182
18183         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
18184         long int, not int, for nanosecond counts, so that people who are
18185         used to POSIX struct timespec won't be surprised.  Reported by Jim
18186         Meyering.
18187
18188 2005-12-28  Bruno Haible  <bruno@clisp.org>
18189
18190         * build-aux/config.rpath: Update from GNU gettext.
18191
18192 2005-12-16  Jim Meyering  <jim@meyering.net>
18193
18194         * modules/fprintftime: New module.
18195         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
18196
18197 2005-12-16  Jim Meyering  <jim@meyering.net>
18198
18199         * m4/fprintftime.m4: New file.
18200
18201 2005-12-16  Jim Meyering  <jim@meyering.net>
18202
18203         * lib/fprintftime.c, lib/fprintftime.h: New files.
18204
18205 2005-12-15  Simon Josefsson  <jas@extundo.com>
18206
18207         * modules/socklen (configure.ac): Fix M4 macro name, to align with
18208         new m4/socklen.m4.
18209
18210 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
18211
18212         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
18213         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
18214
18215 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
18216
18217         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
18218         * lib/argp-help.c (fill_in_uparams): Check if the constructed
18219         struct uparams is valid. Fall back to the default values if it is
18220         not.
18221
18222 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18223
18224         * modules/argp (Files): Add argp-pin.c
18225         (Depends-on): dirname
18226         (lib_SOURCES): Add argp-pin.c
18227
18228 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18229
18230         * m4/argp.m4:  Check if program_invocation_name and
18231         program_invocation_short_name are declared and define appropriate
18232         macros if they are not.
18233
18234 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18235
18236         * lib/argp-help.c (__argp_base_name): New function
18237         (__argp_short_program_name): Rewrite using __argp_base_name
18238         * lib/argp-namefrob.h: Define program_invocation_name and
18239         program_invocation_short_name if requested
18240         (__argp_base_name): Add prototype
18241         * lib/argp-parse.c (argp_def): Use gettext wrappers
18242         (argp_default_parser): Use __argp_base_name
18243         * lib/argp-pin.c: New file. Defines program_invocation_name and
18244         program_invocation_short_name on systems that lack them.
18245
18246 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
18247
18248         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
18249         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
18250         porting problem reported by Georg Schwarz in
18251         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
18252
18253 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
18254
18255         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
18256         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
18257         porting problem reported by Georg Schwarz in
18258         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
18259
18260 2005-12-05  Bruno Haible  <bruno@clisp.org>
18261
18262         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
18263         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
18264         Reported by Mark Junker <mjscod@gmx.de>.
18265
18266 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
18267
18268         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
18269         Use implementation from Albert Chin, with some
18270         comments/corrections by Stepan Kasal and myself.
18271
18272 2005-12-02  Bruno Haible  <bruno@clisp.org>
18273
18274         * gnulib-tool (func_import): Accept GPLed build tool modules when
18275         --lgpl is given.
18276         * modules/csharpcomp-script: New file.
18277         * modules/csharpcomp: Depend on it.
18278         * modules/javacomp-script: New file.
18279         * modules/javacomp: Depend on it.
18280         Suggested by Simon Josefsson.
18281
18282 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
18283
18284         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
18285         statement, to work around an HP-UX 10.20 compiler bug reported by
18286         Peter O'Gorman.
18287
18288 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
18289
18290         * modules/savedir (Depends-on): Add openat.
18291
18292 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
18293
18294         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
18295         (uintmax_t) [defined uintmax_t]: Do not declare.
18296         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
18297         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
18298         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
18299         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
18300         sake of portability to weird hosts that C allows (though we don't
18301         know of any practical examples).
18302
18303         * lib/savedir.h (fdsavedir): New decl.
18304         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
18305         contains most of the former guts of savedir.
18306         (savedir): Use savedirstream.
18307         Include "openat.h".
18308
18309 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
18310
18311         * modules/obstack (Files): Add m4/ulonglong.m4.
18312         Problem reported by Davide Angelocola.
18313
18314 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
18315
18316         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
18317         coreutils no longer futzes with rounding modes.
18318
18319 2005-11-14  Jim Meyering  <jim@meyering.net>
18320
18321         * lib/mkstemp-safer.c: Include <config.h>, required for possible
18322         replacement of mkstemp.
18323
18324 2005-11-10  Simon Josefsson  <jas@extundo.com>
18325
18326         * lib/readline.c: Remove EOL.
18327
18328 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18329
18330         * modules/gethrxtime (Depends-on): Add gettime.
18331
18332 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18333
18334         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
18335         or gettimeofday; no longer needed.
18336
18337 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18338
18339         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
18340         time business.
18341         (gethrxtime) [! (HAVE_NANOUPTIME
18342         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
18343         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
18344         our own approximation.
18345
18346 2005-11-08  Eric Blake  <ebb9@byu.net>
18347
18348         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
18349
18350 2005-11-08  Eric Blake  <ebb9@byu.net>
18351
18352         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
18353
18354 2005-11-04  Bruno Haible  <bruno@clisp.org>
18355
18356         * gnulib-tool: Implement --update mode.
18357
18358 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18359
18360         Fix porting problem reported by Theodoros V. Kalamatianos.
18361         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
18362         Don't assume that futimes failing means we must fail.
18363
18364 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18365
18366         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
18367         variables to suggest the intended function of the PATH_MAX check.
18368
18369 2005-10-30  Kean Johnston  <jkj@sco.com>
18370
18371         Trivial changes to support SCO systems.
18372         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
18373         as PATH_MAX.
18374         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
18375         where __ptr is null when no I/O is pending.
18376
18377 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
18378
18379         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
18380         leave errno alone.  Problem reported by Dmitry V. Levin.
18381
18382 2005-10-28  Simon Josefsson  <jas@extundo.com>
18383
18384         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
18385         Test more.
18386
18387         * tests/test-gc-md2.c, tests/test-md2.c: New files.
18388
18389         * modules/md2, modules/md2-tests: New files.
18390
18391 2005-10-28  Simon Josefsson  <jas@extundo.com>
18392
18393         * m4/inet_ntop.m4: More tests.
18394
18395         * m4/gc-md2.m4, md2.m4: New file.
18396
18397 2005-10-28  Simon Josefsson  <jas@extundo.com>
18398
18399         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
18400         "restrict" keywords, as per POSIX.  Protect the function
18401         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
18402         Don't use K&R prototypes.  Check the sprintf return values.
18403         Re-define EAFNOSUPPORT if not present.  Indent.
18404
18405         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
18406         suggested by Bruno Haible <bruno@clisp.org>.
18407
18408         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
18409
18410         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
18411
18412         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
18413         libgcrypt).
18414
18415         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
18416
18417         * lib/md2.h, lib/md2.c: New files.
18418
18419 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18420
18421         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
18422         errno alone.  Problem reported by Frederic Jolliton.
18423
18424 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
18425
18426         * modules/verify (License): Change from GPL to LGPL.  This is a
18427         tiny module and there are apparently near-equivalents that are
18428         under the BSD license.
18429
18430 2005-10-24  Simon Josefsson  <jas@extundo.com>
18431
18432         * modules/sha1: Relicense to LGPL.
18433
18434 2005-10-24  Simon Josefsson  <jas@extundo.com>
18435
18436         * lib/md4.h: Shrink buffer size, now that we changed the type.
18437
18438 2005-10-23  Simon Josefsson  <jas@extundo.com>
18439
18440         * gnulib-tool (func_import): Fix --tests-base.
18441
18442 2005-10-22  Simon Josefsson  <jas@extundo.com>
18443
18444         * modules/arcfour (Depends-on): Need stdint.
18445
18446 2005-10-22  Simon Josefsson  <jas@extundo.com>
18447
18448         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
18449         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
18450
18451 2005-10-22  Simon Josefsson  <jas@extundo.com>
18452
18453         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
18454         suggested by Bruno Haible <bruno@clisp.org>.
18455
18456 2005-10-22  Simon Josefsson  <jas@extundo.com>
18457
18458         * lib/crc.h: Include stddef.h, for size_t.
18459
18460 2005-10-22  Simon Josefsson  <jas@extundo.com>
18461
18462         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
18463         arcfour_context struct (simplify test vector testing in GNU
18464         Shishi).
18465
18466 2005-10-21  Simon Josefsson  <jas@extundo.com>
18467
18468         * modules/des, modules/des-tests: New files.
18469
18470         * modules/gc-des, modules/gc-des-tests: New files.
18471
18472         * tests/test-des.c, tests/test-gc-des.c: New file.
18473
18474 2005-10-21  Simon Josefsson  <jas@extundo.com>
18475
18476         * modules/arctwo, modules/arctwo-tests: New files.
18477
18478         * tests/test-arctwo.c: New file.
18479
18480         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
18481
18482         * tests/test-gc-arctwo.c: New file.
18483
18484 2005-10-21  Simon Josefsson  <jas@extundo.com>
18485
18486         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
18487         Bruno Haible <bruno@clisp.org>.
18488
18489         * m4/gc-des.m4: New file.
18490
18491 2005-10-21  Simon Josefsson  <jas@extundo.com>
18492
18493         * m4/arctwo.m4: New file.
18494
18495         * m4/gc-arctwo.m4: New file.
18496
18497 2005-10-21  Simon Josefsson  <jas@extundo.com>
18498
18499         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
18500         block.
18501
18502 2005-10-21  Simon Josefsson  <jas@extundo.com>
18503
18504         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
18505         <bruno@clisp.org>.
18506
18507         * lib/hmac-sha1.c (hmac_sha1): Likewise.
18508
18509         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
18510         Bruno Haible <bruno@clisp.org>.
18511
18512         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
18513         <bruno@clisp.org>.
18514
18515 2005-10-21  Simon Josefsson  <jas@extundo.com>
18516
18517         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
18518
18519 2005-10-21  Simon Josefsson  <jas@extundo.com>
18520
18521         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
18522
18523 2005-10-21  Simon Josefsson  <jas@extundo.com>
18524
18525         * lib/des.h, lib/des.c: New files.
18526
18527         * lib/gc-gnulib.c: Support DES.c
18528
18529 2005-10-21  Simon Josefsson  <jas@extundo.com>
18530
18531         * lib/arctwo.h, lib/arctwo.c: New files.
18532
18533         * lib/gc-gnulib.c: Support ARCTWO.
18534
18535 2005-10-21  Simon Josefsson  <jas@extundo.com>
18536
18537         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
18538         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18539
18540 2005-10-21  Simon Josefsson  <jas@extundo.com>
18541
18542         * gnulib-tool (func_import, func_create_testdir): Define automake
18543         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
18544         Makefile.am snippet),
18545         suggested by Bruno Haible <bruno@clisp.org>.
18546
18547         * modules/gc (Makefile.am): Use it.
18548
18549 2005-10-21  Bruno Haible  <bruno@clisp.org>
18550
18551         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
18552         patch.
18553
18554 2005-10-19  Simon Josefsson  <jas@extundo.com>
18555
18556         * tests/test-gc-rijndael.c: New file.
18557
18558         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
18559
18560 2005-10-19  Simon Josefsson  <jas@extundo.com>
18561
18562         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
18563         interface too.
18564
18565 2005-10-19  Simon Josefsson  <jas@extundo.com>
18566
18567         * tests/test-gc-arcfour.c: New file.
18568
18569         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
18570
18571 2005-10-19  Simon Josefsson  <jas@extundo.com>
18572
18573         * modules/gc-md4, modules/gc-md4-tests: New file.
18574
18575         * tests/test-gc-md4.c: New file.
18576
18577 2005-10-19  Simon Josefsson  <jas@extundo.com>
18578
18579         * m4/gc-md4.m4: New file.
18580
18581 2005-10-19  Simon Josefsson  <jas@extundo.com>
18582
18583         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
18584         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
18585         <kasal@ucw.cz>.
18586
18587 2005-10-19  Simon Josefsson  <jas@extundo.com>
18588
18589         * m4/gc-arcfour.m4: New file.
18590
18591         * m4/gc-rijndael.m4: New file.
18592
18593 2005-10-19  Simon Josefsson  <jas@extundo.com>
18594
18595         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
18596
18597 2005-10-19  Simon Josefsson  <jas@extundo.com>
18598
18599         * lib/gc-gnulib.c: Support ARCFOUR.
18600
18601 2005-10-19  Simon Josefsson  <jas@extundo.com>
18602
18603         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
18604         support.
18605
18606         * lib/gc.h: Add ECB enum type.
18607
18608         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
18609
18610 2005-10-18  Simon Josefsson  <jas@extundo.com>
18611
18612         * tests/test-md5.c: New file.
18613
18614         * modules/md5-tests: New file.
18615
18616 2005-10-18  Simon Josefsson  <jas@extundo.com>
18617
18618         * tests/test-md4.c: New file.
18619
18620         * modules/md4, modules/md4-tests: New files.
18621
18622 2005-10-18  Simon Josefsson  <jas@extundo.com>
18623
18624         * m4/md4.m4: New file.
18625
18626 2005-10-18  Simon Josefsson  <jas@extundo.com>
18627
18628         * lib/md4.h, lib/md4.c: New files, based on md5.?.
18629
18630 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
18631
18632         * gnulib-tool (func_create_testdir): Omit the second check whether
18633         BUILT_SOURCES in nonempty.
18634
18635 2005-10-17  Simon Josefsson  <jas@extundo.com>
18636
18637         * tests/test-rijndael.c: New file.
18638
18639 2005-10-17  Simon Josefsson  <jas@extundo.com>
18640
18641         * modules/sha1: Depend on stdint instead of md5.
18642
18643         * modules/md5: Depend on stdint, remove uint32_t.
18644
18645 2005-10-17  Simon Josefsson  <jas@extundo.com>
18646
18647         * modules/gc-sha1-tests: New file.
18648
18649         * tests/test-gc-sha1.c: New file.
18650
18651 2005-10-17  Simon Josefsson  <jas@extundo.com>
18652
18653         * m4/md5.m4: Remove call to uint32_t.m4.
18654
18655 2005-10-17  Simon Josefsson  <jas@extundo.com>
18656
18657         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
18658
18659         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
18660         md5.h.
18661
18662         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
18663
18664         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
18665
18666 2005-10-17  Simon Josefsson  <jas@extundo.com>
18667
18668         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
18669
18670 2005-10-17  Simon Josefsson  <jas@extundo.com>
18671
18672         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
18673
18674 2005-10-17  Simon Josefsson  <jas@extundo.com>
18675
18676         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
18677
18678         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
18679
18680 2005-10-17  Bruno Haible  <bruno@clisp.org>
18681
18682         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
18683         that it can also be used in a test.
18684
18685 2005-10-16  Bruno Haible  <bruno@clisp.org>
18686
18687         * gnulib-tool (func_emit_tests_Makefile_am): Also define
18688         TESTS_ENVIRONMENT, so that individual tests can augment it.
18689
18690         * gnulib-tool (func_create_testdir): Use an intermediate target for
18691         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
18692         macros, like $(ALLOCA_H), which cannot be passed through the command
18693         line.
18694
18695 2005-10-15  Simon Josefsson  <jas@extundo.com>
18696
18697         * modules/rijndael-tests: New file.
18698
18699         * modules/rijndael: New file.
18700
18701 2005-10-15  Simon Josefsson  <jas@extundo.com>
18702
18703         * m4/rijndael.m4: New file.
18704
18705 2005-10-15  Simon Josefsson  <jas@extundo.com>
18706
18707         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
18708
18709         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
18710
18711 2005-10-14  Simon Josefsson  <jas@extundo.com>
18712
18713         * tests/test-arcfour.c: New file.
18714
18715         * modules/arcfour, modules/arcfour-tests: New files.
18716
18717 2005-10-14  Simon Josefsson  <jas@extundo.com>
18718
18719         * m4/arcfour.m4: New file.
18720
18721 2005-10-14  Simon Josefsson  <jas@extundo.com>
18722
18723         * lib/arcfour.h, lib/arcfour.c: New files.
18724
18725 2005-10-14  Roland McGrath  <roland@redhat.com>
18726
18727         Import from libc.  [BZ #1331]
18728         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
18729         macro argument.
18730         Reported by Matej Vela <vela@debian.org>.
18731
18732 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18733
18734         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
18735         include <wchar.h>; no longer needed.
18736
18737 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18738
18739         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
18740
18741 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
18742         and  Ulrich Drepper  <drepper@redhat.com>
18743
18744         Import from libc.
18745         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
18746         instead of inline stream orientation test and two separate
18747         function calls.  Pay no attention to USE_IN_LIBIO.
18748
18749 2005-10-13  Simon Josefsson  <jas@extundo.com>
18750
18751         * modules/gc-hmac-md5-tests: New file.
18752
18753         * tests/test-gc-hmac-sha1.c: New file.
18754
18755         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
18756
18757         * modules/gc-hmac-md5-tests: New file.
18758
18759         * tests/test-gc-md5.c: New file.
18760
18761         * modules/gc-md5-tests: New file.
18762
18763 2005-10-13  Simon Josefsson  <jas@extundo.com>
18764
18765         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
18766         Move memory allocation outside of loop.
18767
18768 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
18769
18770         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
18771         intermediate directory is in a read-only file system.  Problem
18772         reported by Eric Blake.
18773
18774 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
18775
18776         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
18777
18778 2005-10-12  Simon Josefsson  <jas@extundo.com>
18779
18780         * tests/test-hmac-sha1.c: New file.
18781
18782         * modules/hmac-sha1-tests: New file.
18783
18784         * modules/hmac-sha1: New file.
18785
18786 2005-10-12  Simon Josefsson  <jas@extundo.com>
18787
18788         * modules/gc-sha1: New file.
18789
18790 2005-10-12  Simon Josefsson  <jas@extundo.com>
18791
18792         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
18793
18794         * tests/test-gc-pbkdf2-sha1.c: New file.
18795
18796 2005-10-12  Simon Josefsson  <jas@extundo.com>
18797
18798         * modules/gc-md5, modules/gc-hmac-md5: New files.
18799
18800         * modules/gc (Files): Remove md5, memxor and hmac files.
18801
18802 2005-10-12  Simon Josefsson  <jas@extundo.com>
18803
18804         * m4/gc-pbkdf2-sha1.m4: New file.
18805
18806         * m4/gc-hmac-sha1.m4: New file.
18807
18808         * m4/gc-sha1: New file.
18809
18810         * m4/hmac-sha1.m4: New file.
18811
18812 2005-10-12  Simon Josefsson  <jas@extundo.com>
18813
18814         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
18815
18816         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
18817
18818 2005-10-12  Simon Josefsson  <jas@extundo.com>
18819
18820         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
18821         suggested by Bruno Haible <bruno@clisp.org>.
18822
18823 2005-10-12  Simon Josefsson  <jas@extundo.com>
18824
18825         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
18826
18827 2005-10-12  Simon Josefsson  <jas@extundo.com>
18828
18829         * lib/gc-pbkdf2-sha1.c: New file.
18830
18831         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
18832
18833 2005-10-12  Simon Josefsson  <jas@extundo.com>
18834
18835         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
18836
18837         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
18838
18839 2005-10-12  Simon Josefsson  <jas@extundo.com>
18840
18841         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
18842         GC_USE_HMAC_MD5, respectively.
18843
18844         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
18845         (gc_md5): Fix typo.
18846
18847         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
18848
18849         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
18850
18851         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
18852
18853 2005-10-12  Bruno Haible  <bruno@clisp.org>
18854
18855         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
18856         Reported by Stepan Kasal <kasal@ucw.cz>.
18857
18858 2005-10-11  Simon Josefsson  <jas@extundo.com>
18859
18860         * tests/test-crc.c: New file.
18861
18862         * modules/crc, modules/crc-tests: New files.
18863
18864 2005-10-11  Simon Josefsson  <jas@extundo.com>
18865
18866         * m4/crc.m4: New file.
18867
18868 2005-10-11  Simon Josefsson  <jas@extundo.com>
18869
18870         * lib/gc.h: Add gc_hash and gc_hash_buffer.
18871
18872         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
18873
18874         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
18875
18876 2005-10-11  Simon Josefsson  <jas@extundo.com>
18877
18878         * lib/crc.h, lib/crc.c: New files.
18879
18880         * lib/gc.h (gc_hash_buffer): Add doc.
18881
18882 2005-10-11  Bruno Haible  <bruno@clisp.org>
18883
18884         * modules/c-strcasestr: New file.
18885         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
18886
18887 2005-10-11  Bruno Haible  <bruno@clisp.org>
18888
18889         * modules/c-strcase: New file.
18890         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
18891
18892 2005-10-11  Bruno Haible  <bruno@clisp.org>
18893
18894         * lib/strcasecmp.c: Include limits.h.
18895         (strcasecmp): Avoid integer overflow on exotic platforms.
18896         * lib/strncasecmp.c: Include limits.h.
18897         (strncasecmp): Avoid integer overflow on exotic platforms.
18898         Reported by Paul Eggert.
18899
18900 2005-10-11  Bruno Haible  <bruno@clisp.org>
18901
18902         * lib/c-strcasestr.h: New file, from GNU gettext.
18903         * lib/c-strcasestr.c: New file, from GNU gettext.
18904
18905 2005-10-11  Bruno Haible  <bruno@clisp.org>
18906
18907         * lib/c-strcase.h: New file, from GNU gettext.
18908         * lib/c-strcasecmp.c: New file, from GNU gettext.
18909         * lib/c-strncasecmp.c: New file, from GNU gettext.
18910
18911 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
18912
18913         * modules/mempcpy (License): GPL -> LGPL.
18914         * modules/strchrnul (License): Likewise.
18915         * modules/sysexits (License): Likewise.
18916
18917 2005-10-08  Simon Josefsson  <jas@extundo.com>
18918
18919         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
18920
18921 2005-10-07  Simon Josefsson  <jas@extundo.com>
18922
18923         * m4/memxor.m4: Remove gl_C_RESTRICT call.
18924
18925 2005-10-06  Simon Josefsson  <jas@extundo.com>
18926
18927         * tests/test-hmac-md5.c: New file.
18928
18929         * modules/hmac-md5-tests: New file.
18930
18931         * modules/hmac-md5: New file.
18932
18933 2005-10-06  Simon Josefsson  <jas@extundo.com>
18934
18935         * m4/hmac-md5.m4: New file.
18936
18937         * m4/memxor.m4: Require gl_C_RESTRICT.
18938
18939 2005-10-06  Simon Josefsson  <jas@extundo.com>
18940
18941         * lib/memxor.c (memxor): Avoid casts and warnings.
18942
18943 2005-10-06  Simon Josefsson  <jas@extundo.com>
18944
18945         * lib/hmac-md5.c: New file.
18946
18947         * lib/hmac.h: New file.
18948
18949 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18950
18951         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
18952         promotes to int, not unsigned int, to catch the AIX 5.3
18953         compiler bug.
18954
18955 2005-10-05  Simon Josefsson  <jas@extundo.com>
18956
18957         * modules/memxor: New file.
18958
18959         * modules/iconv (Files): Move config.rpath to havelib, it is used
18960         there.
18961
18962         * modules/havelib (Files): Add config.rpath.
18963
18964 2005-10-05  Simon Josefsson  <jas@extundo.com>
18965
18966         * m4/memxor.m4: New file.
18967
18968 2005-10-05  Simon Josefsson  <jas@extundo.com>
18969
18970         * lib/memxor.c (memxor): Fix compiler error.
18971
18972         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
18973         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
18974
18975         * lib/memxor.h, lib/memxor.c: New files.
18976
18977         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
18978         we assume all systems have it, suggested by Jim Meyering
18979         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
18980         any systems lack sys/socket.h; mingw32 is known to lack it, but we
18981         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
18982         same reasons.
18983
18984 2005-10-05  Simon Josefsson  <jas@extundo.com>
18985
18986         * config/srclist.txt: Add glibc bug 1423 for md5.h.
18987
18988 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
18989
18990         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
18991         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
18992         needed, since the source code now assumes these .h files.
18993
18994 2005-10-05  Derek Price  <derek@ximbiot.com>
18995
18996         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
18997
18998 2005-10-05  Bruno Haible  <bruno@clisp.org>
18999
19000         * modules/stdint (License): Change to LGPL.
19001
19002 2005-10-04  Simon Josefsson  <jas@extundo.com>
19003
19004         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
19005         D. Baushke" <mdb@gnu.org>.
19006
19007 2005-10-04  Bruno Haible  <bruno@clisp.org>
19008
19009         * lib/verify.h (verify_true): Provide alternative definition for C++.
19010
19011 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
19012
19013         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
19014         (SSIZE_MAX): New macro, if not already defined.
19015         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
19016         than 2 GiB.
19017
19018 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19019
19020         Sync from coreutils.
19021         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
19022         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
19023         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
19024         ULLONG_MAX doesn't work with 2.7.2.1.
19025
19026 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19027
19028         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
19029         From Ben Pfaff.
19030
19031         * modules/exclude (Depends-on): Depend on verify.
19032         * modules/strtoimax (Depends-on): Likewise.
19033         * modules/utimecmp (Depends-on): Likewise.
19034
19035 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19036
19037         * lib/exclude.c: Include verify.h.
19038         (verify): Remove.  All callers changed to use verify.h's version.
19039         * lib/strtoimax.c: Likewise.
19040         * lib/utimecmp.c: Likewis.e
19041
19042         Sync from coreutils.
19043         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
19044         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
19045         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
19046         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
19047         bother returning ENOSYS if settimeofday or stime fails; just let
19048         them return whatever errno they want to return.
19049         * lib/utimens.c: Include unistd.h, for dup2.
19050         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
19051         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
19052
19053 2005-10-02  Jim Meyering  <jim@meyering.net>
19054
19055         Sync from coreutils.
19056         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
19057         from glibc-2.2.5 that fails for read-only files.
19058
19059 2005-10-02  Jim Meyering  <jim@meyering.net>
19060
19061         Sync from coreutils.
19062         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
19063         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
19064         `#if HAVE_CONFIG_H'.
19065         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
19066         Remove AT_FDCWD test.
19067         Do not consume the fd unless successful.
19068         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
19069         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
19070         block, so that we don't even try to compile it if settimeofday is
19071         available.  This works around a compilation failure on OSF1 V5.1,
19072         due to stime requiring a `long int*' while tv_sec is `int'.
19073
19074 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
19075
19076         Sync from coreutils.
19077         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
19078         against `yes', rather than just testing for nonempty.
19079
19080 2005-10-01  Simon Josefsson  <jas@extundo.com>
19081
19082         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
19083         and Darwin.
19084
19085         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
19086         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
19087         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
19088         freeaddrinfo and gai_strerror are declared by the POSIX headers.
19089         Check if struct addrinfo is declared.
19090
19091 2005-10-01  Simon Josefsson  <jas@extundo.com>
19092
19093         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
19094         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
19095         AI_* and EAI_* definitions.  Protect function declarations.
19096
19097 2005-10-01  Jim Meyering  <jim@meyering.net>
19098
19099         Sync from coreutils.
19100
19101         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
19102         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
19103         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
19104         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19105         in the inet and nsl libraries.  Required on Solaris 5.7.
19106
19107 2005-10-01  Jim Meyering  <jim@meyering.net>
19108
19109         Sync from coreutils.
19110         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19111         in the inet and nsl libraries.  Required on Solaris 5.7.
19112
19113 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
19114
19115         * lib/getdelim.c (getdelim): Remove unused variables.
19116
19117 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
19118
19119         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
19120         so that the code works even with ancient cpp.  Portability problem
19121         with GCC 2.7.2.1 reported by Thomas M.Ott.
19122
19123 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
19124
19125         * modules/regex (Depends-on): Add strcase.
19126
19127         * modules/gethostname (Licence): Change from GPL to LGPL, since
19128         gethostname.c is a trivial implementation of a standard library
19129         function.
19130         * modules/poll (License): Change from GPL to LGPL, since it's
19131         derived from LGPL code.
19132
19133 2005-09-27  Jim Meyering  <jim@meyering.net>
19134
19135         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
19136         HAVE_CONFIG_H.
19137
19138         * lib/intprops.h (signed_type_or_expr__): Define.
19139         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
19140         for unsigned types.
19141
19142 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19143
19144         * lib/verify.h (verify_expr): Remove, replacing with:
19145         (verify_true): New macro that returns true instead of void.
19146         (verify_type__): Remove.
19147         (verify): Use verify_true rather than verify_type__.
19148
19149 2005-09-26  Bruno Haible  <bruno@clisp.org>
19150
19151         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
19152         is necessary.
19153         (lib_SOURCES): Remove mbchar.c.
19154         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
19155         (Files): Add m4/mbrtowc.m4.
19156         * modules/mbiter: Likewise.
19157         * modules/mbuiter: Likewise.
19158
19159 2005-09-26  Bruno Haible  <bruno@clisp.org>
19160
19161         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
19162         compile mbchar.c if they are not both present.
19163         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
19164         * m4/mbiter.m4 (gl_MBITER): Likewise.
19165         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
19166         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
19167         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
19168
19169 2005-09-25  Jim Meyering  <jim@meyering.net>
19170
19171         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
19172         also uses socklen_t.
19173
19174 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19175
19176         * lib/utimens.c (ENOSYS): Define if not already defined.
19177         (futimens): Support having a null PATH if the file descriptor
19178         is nonnegative.
19179
19180         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
19181         Remove.
19182         (__attribute): Define to empty unless GCC 3.1 or later.
19183         This works around a core dump on OpenBSD 3.4, which has GCC
19184         2.95.3, which dumps core when given __attribute__(()).  It also
19185         simplifies other tests, since we really don't want to bother with
19186         worrying about which ancient version of GCC supported what.
19187         Original problem reported by Yoann Vandoorselaere, with part of
19188         the fix suggested by Derek Price.
19189
19190 2005-09-24  Jim Meyering  <jim@meyering.net>
19191
19192         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
19193         so we can once again use a positive bitfield width of 1 -- now we
19194         don't have to explain why we were using a bitfield width of 2.
19195
19196 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19197
19198         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
19199         and similarly for the other external symbols.  Problem reported
19200         by James Gallager.
19201
19202         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
19203         bug reported by Jim Meyering.
19204
19205         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
19206         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
19207         not needed, since socklen is a prerequisite module.
19208
19209 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19210
19211         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
19212         Problem reported by Eric Blake.
19213         (getaddrinfo): Initialize se so that it's not garbage.
19214         Redo internal storage allocation so that it doesn't make unportable
19215         assumptions about alignment.
19216         Fix a memory leak.
19217
19218         * lib/utimens.c (futimens): Use futimesat if available.
19219         Prefer it to futimes since it doesn't have the futimes bug.
19220
19221         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
19222         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
19223         Instead, declare a function that returns a pointer to an array,
19224         and use verify_type__ to declare the size of the array.
19225         Problem and germ of a solution reported by Bruno Haible.
19226         (verify_type__): Use 2, not 1, for bitfield size, to avoid
19227         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
19228
19229 2005-09-23  Jim Meyering  <jim@meyering.net>
19230
19231         Sync from coreutils.
19232         Correct build failure (socklen_t not defined) on at least
19233         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
19234         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
19235
19236 2005-09-23  Jim Meyering  <jim@meyering.net>
19237
19238         * modules/getaddrinfo (Depends-on): Add socklen.
19239
19240 2005-09-23  Bruno Haible  <bruno@clisp.org>
19241
19242         * tests/test-verify.c: New file.
19243
19244 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19245
19246         Sync from coreutils.
19247
19248         * modules/argmatch (Depends-on): Add verify.
19249         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
19250         unistd-safer.
19251         * modules/save-cwd (Depends-on): Likewise.
19252
19253         * modules/openat (Files): Add lib/openat-die.c.
19254         (Depends-on): Remove error, exitfail.
19255         Add dirname.
19256
19257         * modules/verify: New file.
19258         * MODULES.html.sh (Diagnostics <assert.h>): New section,
19259         with "verify" module.
19260
19261 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19262
19263         Sync from coreutils.
19264
19265         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
19266         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
19267         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
19268         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
19269         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
19270         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
19271         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
19272         Don't bother checking for string.h, stdlib.h, unistd.h.
19273         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
19274         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
19275         module's job.
19276         * m4/jm-macros.m4 (gl_MACROS): Likewise.
19277         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
19278
19279         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
19280         (gl_GETDATE): Use it.
19281
19282         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
19283
19284 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19285
19286         Sync from coreutils.
19287
19288         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
19289         stat-time.h.
19290         * lib/argmatch.h: Include verify.h
19291         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
19292         (ARGMATCH_ASSERT): Remove; unused.
19293         * lib/canonicalize.c: Assume STDC_HEADERS.
19294         * lib/exclude.c: Include "strcase.h".
19295         * lib/regex_internal.h [!defined _LIBC]: Likewise.
19296         * lib/getusershell.c: Include stdio--.h rather than stdio.h
19297         and stdio-safer.h.
19298         (getusershell): Call fopen, not fopen_safer.
19299         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
19300         Do not include unistd-safer.h.
19301         (save_cwd): Don't call fd_safer; no longer needed
19302         now that we include fcntl--.h.
19303
19304         * lib/getdate.y (relative_time): New type.
19305         (RELATIVE_TIME_0): New constant.
19306         (parser_control): Use relative_time instead of doing it ourselves.
19307         (%union): Add new relative_time rel member.
19308         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
19309         Now typeless.
19310         (relunit, relunit_snumber): Now of type rel.
19311         (zone, rel, relunit, get_date): Adjust to above changes.
19312
19313         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
19314         Do not include unistd-safer.h.
19315         (getloadavg): Don't call fd_safer; no longer needed
19316         now that we include fcntl--.h.
19317
19318         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
19319         (make_dir_parents): Treat ENOSYS like EEXIST.
19320
19321         Improve quality of diagnostics on restore_cwd failure.
19322         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
19323         (make_dir_parents): Last arg is now int * (for errno), not bool *.
19324         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
19325         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
19326         each time through the loop.  Do not diagnose restore_cwd failure;
19327         that is the caller's job (and perhaps the caller does not care).
19328
19329         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
19330         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
19331         If the file already exists but is not a directory, don't bother
19332         to try to make its parents.
19333         Close potential file descriptor leak if we can't chdir("/") (!).
19334         Don't always return true if chdir($PWD) fails; return true only
19335         if the requested action was done successfully (except for the
19336         chdir($PWD)).
19337         Don't log final directory unless we actually made it.
19338         Refactor to avoid duplicate code to fix up permissions.
19339         Don't attempt to fix up parent permissions if chdir($PWD) fails.
19340
19341         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
19342         to make it a bit faster and (I hope) clearer.
19343         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
19344         Fix bug in formats like %2N.
19345
19346         * lib/verify.h: New file.
19347
19348 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19349
19350         Sync from coreutils.
19351         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
19352
19353 2005-09-22  Jim Meyering  <jim@meyering.net>
19354
19355         Sync from coreutils.
19356
19357         * m4/lstat.m4 (gl_FUNC_LSTAT):
19358         Use AC_LIBSOURCES to require lstat.c and lstat.h.
19359         Remove obsolete comment.
19360         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
19361         * m4/xstrtod.m4: Likewise.
19362
19363         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
19364
19365 2005-09-22  Jim Meyering  <jim@meyering.net>
19366
19367         Sync from coreutils.
19368
19369         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
19370
19371         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
19372         the .tm_year member, since otherwise gcc-4.0 would now warn about
19373         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
19374
19375         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
19376         order to avoid an unsuppressible warning from gcc on 64-bit systems.
19377
19378         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
19379         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
19380         when run in a time zone for which daylight savings time is in effect
19381         for the starting date.
19382
19383         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
19384         stop us from restricting permissions of just-created absolute-named
19385         directories.
19386         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
19387         to restore initial working directory.
19388         * lib/mkdir-p.c (make_dir_parents): New parameter:
19389         different_working_dir, to tell caller if/when we change the working
19390         directory and are unable to return to the initial one.
19391         * lib/mkdir-p.h (make_dir_parents): Update prototype.
19392         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
19393         `return false'.  This fixes a bug introduced on 2004-07-30.
19394
19395         * lib/openat.c (fdopendir): Be sure to close the supplied
19396         file descriptor before returning.  This makes our replacement
19397         implementation a little closer to Solaris's, where fdopendir
19398         ties the file descriptor to the returned DIR* pointer.
19399         * lib/openat.c (unlinkat): New function.
19400         * lib/openat.h (unlinkat): Add prototype.
19401         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
19402         (openat_restore_fail): Rename from openat_restore_die.
19403         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
19404
19405         Provide an alternative to exiting immediately upon save_cwd or
19406         restore_cwd failure.  Now, an application can arrange e.g.,
19407         to perform a longjump in that case.
19408         * lib/openat.c: Include dirname.h.
19409         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
19410         (rpl_openat, fdopendir, fstatat): Call openat_save_die
19411         and openat_restore_die rather than calling error directly.
19412         Don't include "error.h" or "exitfail.h"; they're no longer needed.
19413
19414         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
19415         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
19416         define.
19417
19418         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
19419         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
19420                             int utc, int nanoseconds);
19421         Background:
19422         date should not have to allocate a megabyte of virtual memory to
19423         handle a format argument like +%1048575T.  When implemented with
19424         strftime, it must allocate such a buffer, use strftime to fill it
19425         in, print it, then free it.
19426         With fprintftime, it simply prints everything and exits.
19427         With no need for memory allocation, that's one fewer way to fail.
19428         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
19429         optional field width, not before, so we accept %9:z, not %:9z.
19430         (my_strftime): Be sure to use L_('x') for literals.
19431
19432         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
19433         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
19434         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
19435         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
19436         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
19437         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
19438         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
19439         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
19440         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
19441         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
19442         * lib/xgethostname.c, lib/xreadlink.c:
19443         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
19444
19445         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
19446         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
19447         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
19448         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
19449         and don't include <sys/file.h>).
19450
19451 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
19452
19453         Sync from coreutils.
19454
19455         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
19456         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
19457         [!LDAV_DONE]: Avoid unused variable warning.
19458
19459 2005-09-21  Bruno Haible  <bruno@clisp.org>
19460
19461         * lib/unicodeio.h (unicode_to_mb): New declaration.
19462
19463 2005-09-20  Derek Price  <derek@ximbiot.com>
19464
19465         * lib/getaddrinfo.c: Don't include <netdb.h> included from
19466         getaddrinfo.h.
19467
19468 2005-09-20  Bruno Haible  <bruno@clisp.org>
19469
19470         * gnulib-tool: Remove trailing slashes from the values specified for
19471         --source-base, --m4-base, --tests-base, --aux-dir.
19472         Suggested by Simon Josefsson <jas@extundo.com>.
19473
19474 2005-09-20  Bruno Haible  <bruno@clisp.org>
19475
19476         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
19477         func_modules_to_filelist, func_import, func_create_testdir): Make all
19478         sorting results locale-independent, so that gnulib-cache.m4 doesn't
19479         change when gnulib-tool is invoked in a different locale.
19480
19481 2005-09-19  Simon Josefsson  <jas@extundo.com>
19482
19483         * m4/socklen.m4: Fix typo.
19484
19485 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19486
19487         Use a consistent style for including <config.h>.
19488         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
19489         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
19490         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
19491         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
19492         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
19493         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
19494         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
19495         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
19496         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
19497         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
19498         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
19499         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
19500         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
19501         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
19502         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
19503         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
19504         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
19505         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
19506         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
19507         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
19508         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
19509         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
19510         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
19511         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
19512         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
19513         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
19514         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
19515         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
19516         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
19517         lib/xstrtoumax.c, lib/yesno.c:
19518         Standardize inclusion of config.h.
19519         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
19520         lib/inttostr.h:  Removed inclusion of config.h from header files.
19521         * lib/inttostr.c:  Adjusted in-tree users.
19522         * lib/timespec.h: Remove superfluous warning to include config.h.
19523         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
19524         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
19525         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
19526         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
19527         config.h with HAVE_CONFIG_H.
19528
19529 2005-09-19  Jim Meyering  <jim@meyering.net>
19530
19531         * modules/pathmax (License): Change to LGPL.
19532
19533 2005-09-19  Derek Price  <derek@ximbiot.com>
19534
19535         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
19536
19537 2005-09-19  Bruno Haible  <bruno@clisp.org>
19538
19539         * gnulib-tool (import): Provide default for --tests-base.
19540
19541 2005-09-19  Bruno Haible  <bruno@clisp.org>
19542
19543         * doc/quote.texi: New file, extracted from gnulib.texi.
19544         * doc/ctime.texi: New file, extracted from gnulib.texi.
19545         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
19546         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
19547         * doc/gnulib.texi: Include them.
19548
19549 2005-09-18  Bruno Haible  <bruno@clisp.org>
19550
19551         Portability fix.
19552         * gnulib-tool (func_readlink): New function.
19553         (func_ln_if_changed): Use it.
19554
19555 2005-09-18  Bruno Haible  <bruno@clisp.org>
19556
19557         * gnulib-tool: Support --with-tests also with --import.
19558         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
19559         (func_import): Use variables $testsbase and $inctests. Emit a
19560         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
19561         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
19562         SUBDIRS += $testsdir.
19563         (func_create_testdir): Update.
19564
19565 2005-09-18  Bruno Haible  <bruno@clisp.org>
19566
19567         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
19568         instead of $dry_run.
19569         (func_cp_if_changed, func_mv_if_changed): Remove functions.
19570         (func_ln_if_changed): Don't handle dry-run here.
19571         (func_import): In dry-run mode, detect more precisely which actions
19572         would be performed, and don't use "...ing" verbs.
19573
19574 2005-09-18  Bruno Haible  <bruno@clisp.org>
19575
19576         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
19577         (func_import): Use join on two temporary files instead of three nested
19578         loops, in order to determine which files are new or old.
19579
19580 2005-09-18  Bruno Haible  <bruno@clisp.org>
19581
19582         * gnulib-tool (func_import): Comment out code that spits out the
19583         new files with --dry-run.
19584
19585 2005-09-18  Bruno Haible  <bruno@clisp.org>
19586
19587         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
19588
19589 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19590
19591         * lib/stat-time.h: New file.
19592         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
19593         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
19594         in a different way.
19595         (timespec_cmp): New function.
19596         * lib/utimecmp.c: Include stat-time.h.
19597         (SYSCALL_RESOLUTION): Depend on whether various struct stat
19598         members exist, not on the obsolescent ST_MTIM_NSEC.
19599         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
19600
19601 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19602
19603         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
19604
19605 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19606
19607         * MODULES.html.sh (File system functions): Add stat-time.
19608         * modules/stat-time: New file.
19609         * modules/timespec (Files): Remove m4/st_mtim.m4; this
19610         is now done in a different way, by the stat-time module.
19611         * modules/utimecmp (Depends-on): Add stat-time.
19612
19613 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19614
19615         * m4/st_mtim.m4: Remove.  Superseded by...
19616         * m4/stat-time.m4: New file.
19617         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
19618         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
19619
19620 2005-09-15  Derek Price  <derek@ximbiot.com>
19621
19622         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
19623
19624 2005-09-15  Derek Price  <derek@ximbiot.com>
19625
19626         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
19627         * lib/regex_internal.c: Ditto, using this...
19628         (__GNUC_PREREQ): ...new macro.
19629         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
19630         using...
19631         (__GNUC_PREREQ): ...this new macro.
19632
19633         * lib/strstr.h: Include string.h. Define strstr as a macro here.
19634
19635 2005-09-15  Derek Price  <derek@ximbiot.com>
19636             Paul Eggert  <eggert@cs.ucla.edu>
19637
19638         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
19639         changes, consolidating in...
19640         * lib/regex_internal.h: ...this file.
19641
19642 2005-09-13  Jim Meyering  <jim@meyering.net>
19643
19644         * lib/canon-host.c: Filter through gnu indent and reword comments
19645         slightly.
19646         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
19647
19648 2005-09-13  Derek Price  <derek@ximbiot.com>
19649
19650         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
19651         failure.
19652         Reported by Jim Meyering  <jim@meyering.net>.
19653
19654 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
19655
19656         * lib/base64.c: Typo.
19657         (base64_encode): Put b64str in initialized data section.
19658
19659 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
19660
19661         Merge glibc and coreutils changes into gnulib, plus a few
19662         extra fixes.
19663         * lib/md5.c: Use #error rather than a string.
19664         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
19665         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
19666         (__attribute__): Define to empty for non recent-GCC.
19667         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
19668         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
19669         Renamed from their non-__ counterparts, with new macros replacing
19670         them if not _LIBC.  Add __THROW attribute.
19671         (rol): Remove.
19672         (struct md5_ctx): Align buffer if using GCC.
19673         * lib/sha1.h (struct sha1_ctx): Likewise.
19674         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
19675         The old name was backwards.
19676         (NOTSWAP): Remove; not used.
19677         (rol): New macro, moved here from md5.h.
19678         (sha1_process_block): Remove a FIXME that doesn't make sense.
19679
19680 2005-09-12  Derek Price  <derek@ximbiot.com>
19681
19682         Return usable errors from canon-host.
19683         * lib/canon-host.h: New file.
19684         * lib/canon-host.c (canon_host): Wrap...
19685         (canon_host_r): ...this new function, which now relies exclusively on
19686         getaddrinfo.
19687         (ch_strerror): New function.
19688         (last_cherror): New global.
19689         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
19690         interface.
19691         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
19692         void *.
19693         (freeaddrinfo): Free ai->ai_canonname when set.
19694
19695 2005-09-12  Derek Price  <derek@ximbiot.com>
19696
19697         Make canon-host require getaddrinfo.
19698         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
19699         AC_LIBSOURCE canon-host.h.  Call...
19700         (gl_PREREQ_CANON_HOST): ...this new function, which requires
19701         gl_GETADDRINFO.
19702         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
19703
19704 2005-09-12  Derek Price  <derek@ximbiot.com>
19705
19706         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
19707         LGPL.
19708         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
19709
19710 2005-09-12  Derek Price  <derek@ximbiot.com>
19711
19712         * lib/gai_strerror.c: Include config.h when available.  Include
19713         getaddrinfo.h before other headers to test interface.
19714         Reported by Larry Jones <lawrence.jones@ugs.com>.
19715
19716 2005-09-12  Derek Price  <derek@ximbiot.com>
19717             Paul Eggert  <eggert@cs.ucla.edu>
19718
19719         * modules/glob (Files): Add glob-libc.h.
19720
19721 2005-09-12  Derek Price  <derek@ximbiot.com>
19722             Paul Eggert  <eggert@cs.ucla.edu>
19723
19724         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
19725         glob_.h, glob-libc.h.
19726         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
19727
19728 2005-09-12  Derek Price  <derek@ximbiot.com>
19729             Paul Eggert  <eggert@cs.ucla.edu>
19730
19731         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
19732         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
19733         protecting things that should be done only in gnulib contexts.
19734         * lib/glob_.h: New file, containing only the glob things needed for
19735         gnulib.
19736         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
19737         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
19738         (glob, globfree, glob_pattern_p): Now defined simply in terms of
19739         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
19740         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
19741         and to respect the namespace rules better.
19742
19743 2005-09-08  Simon Josefsson  <jas@extundo.com>
19744
19745         * modules/socklen: New file.
19746
19747 2005-09-08  Simon Josefsson  <jas@extundo.com>
19748
19749         * m4/socklen.m4: New file.
19750
19751 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19752
19753         * modules/utimens (Files): Add m4/utimbuf.m4, since
19754         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
19755         Reported by Sergey Poznyakoff.
19756
19757 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19758
19759         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
19760         definitions, since that's the preferred style in glibc.
19761         Fix a minor spacing issue, and update copyright notice to match
19762         glibc's.
19763
19764 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
19765
19766         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
19767
19768 2005-09-06  Simon Josefsson  <jas@extundo.com>
19769
19770         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
19771         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
19772
19773 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19774
19775         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
19776         warning.
19777
19778 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19779
19780         * config/srclist.txt: Add glibc bug 1302.
19781
19782 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
19783
19784         Change bitset word type from unsigned int to unsigned long int,
19785         as this has better performance on typical 64-bit hosts.
19786         Port bitset code to hosts with unusual word sizes.
19787         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
19788         (build_collating_symbol):
19789         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
19790         argument is a bitset.  This is merely a style issue, but it makes
19791         it clearer that an entire array is expected.
19792         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
19793         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
19794         Port to the case where bitset_word is not the same as unsigned int.
19795         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
19796         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
19797         Likewise.
19798         * lib/regexec.c (check_dst_limits_calc_pos_1,
19799         check_subexp_matching_top):
19800         (build_trtable, group_nodes_into_DFAstates):
19801         Likewise.
19802         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
19803         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
19804         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
19805         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
19806         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
19807         * lib/regcomp.c (optimize_subexps, lower_subexp):
19808         Work even if bitset_word has holes in its bitwise representation.
19809         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
19810         * lib/regexec.c (check_dst_limits_calc_pos_1,
19811         check_subexp_matching_top):
19812         Likewise.
19813         * lib/regex_internal.c (re_string_reconstruct):
19814         Don't assume UCHAR_MAX == 255.
19815         * lib/regex_internal.h (bitset_set_all): Likewise.
19816         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
19817         All uses changed.
19818         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
19819         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
19820         All uses changed.
19821         (BITSET_WORD_MAX): New macro.
19822         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
19823         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
19824         (bitset_empty, bitset_copy):
19825         Prefer sizeof (bitset) to multiplying it out ourselves.
19826         (bitset_not_merge): Remove; unused.
19827         (bitset_contain): Return bool, not unsigned int with one bit on.
19828         All callers changed.
19829         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
19830         alignment than re_node_set; do this by defining a new internal
19831         type struct dests_alloc and using it to allocate memory.
19832
19833 2005-09-05  Bruno Haible  <bruno@clisp.org>
19834
19835         * gnulib-tool (func_import): Fix comparison in handling of symbolic
19836         links.
19837
19838 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
19839
19840         * modules/size_max (Makefile.am): Add size_max.h
19841
19842 2005-09-04  Derek Price  <derek@ximbiot.com>
19843
19844         * gnulib-tool (func_import): Fix reversed $symbolic logic.
19845
19846 2005-09-03  Simon Josefsson  <jas@extundo.com>
19847
19848         * gnulib-tool: Fix typo.
19849
19850 2005-09-03  Simon Josefsson  <jas@extundo.com>
19851
19852         * config/srclist.txt: Add glibc bug 1293.
19853
19854 2005-09-03  Derek Price  <derek@ximbiot.com>
19855
19856         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
19857         From Larry Jones <lawrence.jones@ugs.com>.
19858
19859 2005-09-02  Simon Josefsson  <jas@extundo.com>
19860
19861         * modules/socklen: New file.
19862
19863 2005-09-02  Simon Josefsson  <jas@extundo.com>
19864
19865         * modules/havelib: New module.
19866
19867         * modules/gettext, modules/iconv, modules/lock, modules/readline:
19868         Use havelib.
19869
19870 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
19871
19872         Check for arithmetic overflow when calculating sizes, to prevent
19873         some buffer-overflow issues.  These patches are conservative, in the
19874         sense that when I couldn't determine whether an overflow was possible,
19875         I inserted a run-time check.
19876         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
19877         macros.
19878         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
19879         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
19880         (re_xnrealloc, re_x2nrealloc): New inline functions.
19881         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
19882         parse_bracket_exp):
19883         (build_equiv_class, build_charclass): Check for arithmetic overflow
19884         in size expression calculations.
19885         * lib/regex_internal.c (re_string_realloc_buffers):
19886         (build_wcs_upper_buffer, re_node_set_add_intersect):
19887         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
19888         (re_dfa_add_node, register_state): Likewise.
19889         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
19890         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
19891         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
19892         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
19893
19894 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
19895
19896         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
19897         m4/ulonglong.m4.  Problem reported by Martin Lambers.
19898
19899 2005-09-02  Bruno Haible  <bruno@clisp.org>
19900
19901         Support for lib vs. lib64 distinction on biarch platforms.
19902         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
19903         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
19904         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
19905
19906 2005-09-02  Bruno Haible  <bruno@clisp.org>
19907
19908         * gnulib-tool (import): In the other first-use case, provide defaults
19909         as well.
19910
19911 2005-09-02  Bruno Haible  <bruno@clisp.org>
19912
19913         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
19914         patches not yet found in the latest gettext release.
19915
19916 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19917
19918         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
19919         to avoid a collision with bits/local_lim.h in glibc.
19920         All uses changed.  Problem reported by Dmitry V. Levin in
19921         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
19922
19923         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
19924         bugs in int versus size_t comparisons.
19925         (re_string_context_at): Fix bug where the code assumed that
19926         Idx is signed.
19927
19928         Use bool where appropriate.
19929         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
19930         All callers changed.
19931         (calc_eclosure_iter): Likewise, for ROOT arg.
19932         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
19933         (build_charclass_op): Likewise, for NON_MATCH arg.
19934         * lib/regex_internal.c (re_string_allocate, re_string_construct):
19935         (re_string_construct_common): Likewise, for ICASE arg.
19936         * lib/regexec.c (re_search_2_stub, re_search_stub):
19937         Likewise, for RET_LEN arg.
19938         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
19939         (set_regs): Likewise, for FL_BACKTRACK arg.
19940         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
19941         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
19942         (calc_eclosure_iter, parse_bracket_exp):
19943         Use bool for internal variables that are booleans.
19944         * lib/regexec.c (re_search_internal, check_matching,
19945         proceed_next_node):
19946         (set_regs, build_sifted_states, sift_states_bkref):
19947         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
19948         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
19949         (find_collation_sequence_value):
19950         Likewise.
19951         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
19952         (re_node_set_compare):
19953         Return bool, not int. All callers changed.
19954         * lib/regexec.c (check_halt_node_context, check_dst_limits):
19955         (build_trtable, check_node_accept): Likewise.
19956         * lib/regex_internal.h: Include stdbool.h.
19957
19958         Fix bugs uncovered when converting to bool.
19959         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
19960         failure instead of charging ahead blindly.
19961         * lib/regex_internal.c (register_state): Likewise.
19962         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
19963         for freeing internal storage.
19964         (group_nodes_into_DFA_states): Use unsigned int, not int, for
19965         bitset pieces used as boolean, to avoid undefined behavior
19966         on hosts that do int overflow checking.
19967
19968 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19969
19970         * config/srclist.txt: Add glibc bugs 1285-1287.
19971
19972 2005-09-01  Jim Meyering  <jim@meyering.net>
19973
19974         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
19975         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
19976         Require gl_STAT_MACROS, too.
19977
19978 2005-09-01  Bruno Haible  <bruno@clisp.org>
19979
19980         * gnulib-tool (import): In the first-use case, provide defaults.
19981
19982 2005-09-01  Bruno Haible  <bruno@clisp.org>
19983
19984         * gnulib-tool (func_import): Remove the .tmp files.
19985
19986 2005-09-01  Bruno Haible  <bruno@clisp.org>
19987
19988         * gnulib-tool (func_import): Fix handling of symbolic links.
19989
19990 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19991
19992         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
19993         old glibc regex code mishandles strings longer than 2**31 bytes.
19994         This patch fixes this when the regex code is used in gnulib
19995         (i.e., outside glibc).
19996
19997         This patch should not affect the use of the regex code inside
19998         glibc.  No doubt this problem also needs to be handled for glibc
19999         as well, but the result will be an incompatible change to the
20000         glibc ABI, and the old ABI will have to be supported too.  That
20001         can be the the subject for another patch.
20002
20003         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
20004         governing whether the rest of this patch is active.  By default,
20005         the macro is disabled and the patch has no effect.
20006         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
20007         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
20008         (struct re_pattern_buffer, re_search, re_search_2, re_match):
20009         (re_match_2, re_set_registers): Use the new types.
20010         * lib/regex_internal.h (Idx, re_hashval_t): New types.
20011         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
20012         New macros.
20013         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
20014         (re_string_context_at, bin_tree_t, re_dfastate_t):
20015         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
20016         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
20017         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
20018         (re_string_char_size_at, re_string_wchar_at):
20019         (re_string_elem_size_at):
20020         Use the new types and macros to port to 64-bit hosts.
20021         Use unsigned types for internal values, so that the code
20022         mostly works even for arrays larger than SSIZE_MAX.
20023         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
20024         (search_duplicated_node, calc_eclosure_iter, fetch_number):
20025         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
20026         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
20027         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
20028         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
20029         (calc_inveclosure, parse_dup_op, build_range_exp):
20030         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
20031         (fetch_number, create_token_tree, mark_opt_subexp):
20032         Likewise.
20033         * lib/regex_internal.c (re_string_construct_common,
20034         create_ci_newstate):
20035         (create_cd_newstate, re_string_allocate, re_string_construct):
20036         (re_string_realloc_buffers, build_wcs_upper_buffer):
20037         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
20038         (re_string_reconstruct, re_string_peek_byte_case):
20039         (re_string_fetch_byte_case, re_string_context_at):
20040         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
20041         (re_node_set_init_copy, re_node_set_add_intersect):
20042         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20043         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20044         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
20045         (re_acquire_state, re_acquire_state_context, register_state):
20046         Likewise.
20047         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
20048         search_cur_bkref_entry):
20049         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
20050         (re_search_internal, re_search_2_stub, re_search_stub)
20051         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
20052         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
20053         (update_cur_sifted_state, check_dst_limits):
20054         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20055         (check_subexp_limits, sift_states_bkref, merge_state_array):
20056         (check_subexp_matching_top, get_subexp, get_subexp_sub):
20057         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
20058         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20059         (expand_bkref_cache, check_node_accept_bytes):
20060         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
20061         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
20062         (acquire_init_state_context, check_halt_node_context):
20063         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
20064         (sift_states_backward, clean_state_log_if_needed):
20065         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
20066         (find_recover_state, transit_state_sb, transit_state_mb):
20067         (transit_state_bkref, build_trtable, match_ctx_clean):
20068         Likewise.
20069         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
20070         to work around an assumption that REG_MISSING is negative.
20071
20072         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
20073         (seek_collating_symbol_entry) [defined _LIBC]:
20074         (lookup_collation_sequence_value) [defined _LIBC]:
20075         (build_range_exp, build_collating_symbol) [defined _LIBC]:
20076         Use prototypes rather than old-style function definitions.
20077         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
20078         (transit_state_sb) [0]:
20079         (find_collation_sequence_value) [defined _LIBC]: Likewise.
20080
20081         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
20082         rm_eo.
20083
20084         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
20085         (optimize_subexps, lower_subexp):
20086         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
20087         since the signed shift might overflow.  Use 1u<<31 instead.
20088         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20089         Likewise.
20090         * lib/regexec.c (check_dst_limits_calc_pos_1,
20091         check_subexp_matching_top): Likewise.
20092
20093         * lib/regcomp.c (optimize_subexps, lower_subexp):
20094         Use CHAR_BIT rather than 8, for clarity.
20095         * lib/regexec.c (check_dst_limits_calc_pos_1):
20096         (check_subexp_matching_top): Likewise.
20097         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
20098         have to worry about portability issues when shifting it left.
20099         Remove no-longer-needed test for table_size > 0.
20100         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
20101         in a word, as the resulting behavior is undefined.
20102         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
20103         in one case, a <= should have been an <, and in another case the
20104         whole test was missing.
20105         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
20106         the standard name CHAR_BIT.
20107         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
20108         this is not true on one's complement and signed-magnitude hosts.
20109
20110         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
20111         next_last_offset.
20112         (struct re_dfa_t): Remove unused member states_alloc.
20113         * lib/regcomp.c (init_dfa): Don't initialize unused members.
20114
20115 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20116
20117         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
20118         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
20119         and large-file glibc and in 32-bit large-file Solaris.
20120
20121 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20122
20123         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
20124         lengths fit in regoff_t; this isn't true if regoff_t is the same
20125         width as size_t.
20126         * lib/regex.c (re_search_internal): 5th arg is LAST_START
20127         (= START + RANGE) instead of RANGE.  This avoids overflow
20128         problems when regoff_t is the same width as size_t.
20129         All callers changed.
20130         (re_search_2_stub): Check for overflow when adding the
20131         sizes of the two strings.
20132         (re_search_stub): Check for overflow when adding START
20133         to RANGE; if it occurs, substitute the extreme value.
20134
20135 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20136
20137         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
20138
20139 2005-08-31  Jim Meyering  <jim@meyering.net>
20140
20141         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
20142         a pointer-to-const.
20143         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
20144         (register_state): Likewise.
20145         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
20146         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20147         (group_nodes_into_DFAstates): Likewise.
20148
20149 2005-08-31  Jim Meyering  <jim@meyering.net>
20150
20151         * check-module: Add a FIXME comment.
20152
20153 2005-08-31  Eric Blake  <ebb9@byu.net>
20154
20155         * modules/unistd-safer (Files): Add unistd--.h.
20156         * modules/stdio-safer (Files): Add stdio--.h.
20157
20158 2005-08-31  Derek Price  <derek@ximbiot.com>
20159
20160         * lib/getdelim.c (getdelim): Return EOF on EOF.
20161         Reported by Larry Jones <lawrence.jones@ugs.com>.
20162
20163 2005-08-31  Bruno Haible  <bruno@clisp.org>
20164
20165         Avoid unnecessary diffs in the generated lib/Makefile.am.
20166         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
20167         the generated files.
20168         (func_import): Don't set cmd.
20169
20170 2005-08-31  Bruno Haible  <bruno@clisp.org>
20171
20172         * lib/strstr.c: Include <stddef.h>, for NULL.
20173         * lib/strcasestr.c: Likewise.
20174         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
20175
20176 2005-08-31  Bruno Haible  <bruno@clisp.org>
20177
20178         * gnulib-tool: New option --macro-prefix.
20179         (func_import): Use macro_prefix.
20180         (import): Handle option --macro-prefix.
20181
20182 2005-08-31  Bruno Haible  <bruno@clisp.org>
20183
20184         * gnulib-tool (import): Rename most ac_* variables to cached_*.
20185         Also use new variables cached_lgpl, cached_libtool.
20186
20187 2005-08-31  Bruno Haible  <bruno@clisp.org>
20188
20189         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
20190         always instantiating them.
20191
20192 2005-08-31  Bruno Haible  <bruno@clisp.org>
20193
20194         * gnulib-tool (func_import): Read the previous cached settings
20195         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
20196         earlier added by gnulib but are now dropped. Warn when a gnulib file
20197         overwrites a non-gnulib file.
20198
20199 2005-08-31  Bruno Haible  <bruno@clisp.org>
20200
20201         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
20202         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
20203         projects that don't keep autogenerated files in CVS. Put into
20204         actioncmd only the specified modules, not the transitive closure.
20205
20206 2005-08-31  Bruno Haible  <bruno@clisp.org>
20207
20208         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
20209         Create directories that shall be filled.
20210         (import): Don't look for gl_* macros in configure.ac. Recurse across
20211         all directories containing a gnulib-cache.m4 files, if meaningful.
20212
20213 2005-08-31  Bruno Haible  <bruno@clisp.org>
20214
20215         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
20216         (import): Set seen_libtool when we see gl_LIBTOOL.
20217
20218 2005-08-31  Bruno Haible  <bruno@clisp.org>
20219
20220         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
20221         declaration macro definitions from generated gnulib.m4.
20222
20223 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
20224
20225         * lib/iconvme.h: Add prototype for iconv_alloc.
20226
20227 2005-08-29  Simon Josefsson  <jas@extundo.com>
20228
20229         * lib/iconvme.c: Fix errno.
20230
20231 2005-08-29  Bruno Haible  <bruno@clisp.org>
20232
20233         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
20234         that it works when the directory contains spaces.
20235
20236 2005-08-29  Bruno Haible  <bruno@clisp.org>
20237
20238         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
20239
20240 2005-08-29  Bruno Haible  <bruno@clisp.org>
20241
20242         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
20243         Emit more advice.
20244
20245 2005-08-29  Bruno Haible  <bruno@clisp.org>
20246         and Stepan Kasal  <kasal@ucw.cz>
20247
20248         * check-module: If more parameters are given, check each of them
20249         separately; add more exceptions, as noted by Jim Meyering.
20250         (check_module): New procedure.
20251         (%exempt_header): Now contains all exceptions.
20252
20253 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
20254
20255         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
20256
20257 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
20258
20259         * lib/iconvme.c: Split iconv_string into iconv_alloc.
20260
20261 2005-08-28  Bruno Haible  <bruno@clisp.org>
20262
20263         * m4/gnulib-tool.m4: New file.
20264
20265 2005-08-27  Jim Meyering  <jim@meyering.net>
20266
20267         * modules/unistd-safer (Files): Add pipe-safer.c.
20268         * modules/fcntl-safer (Files): Add creat-safer.c.
20269
20270 2005-08-27  Jim Meyering  <jim@meyering.net>
20271
20272         * m4/stdlib-safer.m4: New file.  From coreutils.
20273         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
20274         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
20275         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
20276         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
20277         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
20278
20279 2005-08-27  Jim Meyering  <jim@meyering.net>
20280
20281         * lib/fopen-safer.c: Merge minor changes from coreutils.
20282         * lib/dup-safer.c: Likewise.
20283         * lib/fd-safer.c: Likewise.
20284
20285         Merge from coreutils.
20286         * lib/stdio--.h: New file.
20287         * lib/stdlib--.h: New file.
20288         * lib/mkstemp-safer.c: New file.
20289
20290         GNU tar needs these.
20291         * lib/pipe-safer.c: New file.
20292         * lib/creat-safer.c: New file.
20293         * lib/fcntl--.h (creat): Define to creat_safer.
20294         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
20295         * lib/unistd--.h (pipe): Define to pipe_safer.
20296         * lib/unistd-safer.h: Declare pipe_safer.
20297
20298 2005-08-26  Simon Josefsson  <jas@extundo.com>
20299
20300         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
20301         Haible <bruno@clisp.org>.
20302
20303 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
20304
20305         * lib/regex_internal.h: Remove all references to
20306         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
20307         or better.
20308         (bitset_not, bitset_merge, bitset_not_merge):
20309         (bitset_mask, re_string_allocate, re_string_construct):
20310         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
20311         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
20312         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
20313         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
20314         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20315         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20316         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
20317         (re_acquire_state_context):
20318         Remove unnecessary forward decls.
20319         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
20320         Put __attribute at function definition,
20321         now that the function decl has been removed.
20322         * lib/regex_internal.c (re_string_peek_byte_case):
20323         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
20324         Likewise.
20325
20326 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
20327
20328         * m4/regex.m4: Add AC_PREREQ(2.50).
20329         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
20330
20331 2005-08-25  Simon Josefsson  <jas@extundo.com>
20332
20333         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
20334         __fsetlocking.
20335
20336 2005-08-25  Simon Josefsson  <jas@extundo.com>
20337
20338         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
20339         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
20340         GLIBC specific code.
20341
20342 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20343
20344         Make regex safe for g++.  This fixes one real bug (an "err"
20345         that should have been "*err").  g++ problem reported by
20346         Sam Steingold.
20347         * lib/regex_internal.h (re_calloc): New macro, consistent with
20348         re_malloc etc.  All callers of calloc changed to use re_calloc.
20349         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
20350         not int.  All callers changed.
20351         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
20352         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
20353         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
20354         (find_recover_state): Change "err" to "*err"; this fixes what
20355         appears to be a real bug.
20356         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
20357         versus int.
20358
20359 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20360
20361         * modules/regex (Depends-on): Add malloc, since the code
20362         assumes that !malloc(0) means failure.
20363
20364 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20365
20366         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
20367
20368         alloca modernization/simplification for regex.
20369         * lib/regex.c: Remove portability cruft for alloca.  This no longer
20370         needs to be at the start of the file, and can be moved into
20371         regex_internal.h and simplified.
20372         * lib/regex_internal.h: Include <alloca.h>.
20373         (__libc_use_alloca) [!defined _LIBC]: New macro.
20374         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
20375         now works outside glibc.
20376
20377 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20378
20379         * config/srclist.txt: Add glibc bugs 1241, 1245.
20380
20381 2005-08-25  Jim Meyering  <jim@meyering.net>
20382
20383         * lib/open-safer.c: Include <config.h>.
20384         Otherwise, we'd lose LARGEFILE support in any file using
20385         e.g. "fcntl--.h"
20386
20387 2005-08-25  Bruno Haible  <bruno@clisp.org>
20388
20389         * m4/minmax.m4: Require autoconf 2.52.
20390         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
20391         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
20392         alternatives of translit over the alphabet.
20393         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
20394
20395 2005-08-24  Simon Josefsson  <jas@extundo.com>
20396
20397         * tests/test-getpass.c: New file.
20398
20399 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20400
20401         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
20402         for GNU regex features.
20403
20404 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20405
20406         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
20407         * lib/regex.h (regerror): Likewise.
20408
20409         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
20410         requires this.  (The code never needed it.)
20411
20412         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
20413         All uses of recently-renamed identifiers changed to use the new,
20414         POSIX-compliant names.  The code will build and run just fine
20415         without these changes, but it's better to eat our own dog food
20416         and use the standard-conforming names.
20417
20418         * lib/regex.h: Fix a multitude of POSIX name space violations.
20419         These changes have an effect only for programs that define
20420         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
20421         do not change anything for programs compiled in the normal way.
20422         Also, there is no effect on the ABI.
20423
20424         (_REGEX_SOURCE): New macro.
20425         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
20426         defined and _GNU_SOURCE is not; this fixes a name space violation.
20427
20428         Rename the following macros to obey POSIX requirements.
20429         The old names are still visible as macros if _REGEX_SOURCE is defined.
20430         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
20431         RE_BACKSLASH_ESCAPE_IN_LISTS.
20432         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
20433         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
20434         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
20435         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
20436         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
20437         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
20438         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
20439         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
20440         (REG_INTERVALS): renamed from RE_INTERVALS.
20441         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
20442         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
20443         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
20444         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
20445         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
20446         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
20447         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
20448         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
20449         RE_UNMATCHED_RIGHT_PAREN_ORD.
20450         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
20451         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
20452         (REG_DEBUG): renamed from RE_DEBUG.
20453         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
20454         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
20455         unusual, since we can't clash with the POSIX REG_ICASE.
20456         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
20457         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
20458         (REG_NO_SUB): renamed from RE_NO_SUB.
20459         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
20460         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
20461         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
20462         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
20463         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
20464         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
20465         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
20466         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
20467         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
20468         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
20469         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
20470         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
20471         RE_SYNTAX_POSIX_MINIMAL_BASIC.
20472         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
20473         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
20474         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
20475         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
20476         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
20477         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
20478         (REG_FIXED): Renamed from REGS_FIXED.
20479         (REG_NREGS): Renamed from RE_NREGS.
20480
20481         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
20482         of other REG_* macros, since POSIX says the user is allowed to
20483         #undef these macros selectively.
20484
20485         (reg_errcode_t): Update comment stating what other tables need
20486         to be consistent.
20487
20488         Rename the following enum values to obey POSIX requirements.
20489         The old names are still visible as macros.
20490         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
20491         is not defined, since GNU is supposed to be a superset of POSIX as
20492         much as possible, and since we want reg_errcode_t to be a signed
20493         type for implementation consistency.
20494         (_REG_NOERROR): Renamed from REG_NOERROR.
20495         (_REG_NOMATCH): Renamed from REG_NOMATCH.
20496         (_REG_BADPAT): Renamed from REG_BADPAT.
20497         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
20498         (_REG_ECTYPE): Renamed from REG_ECTYPE.
20499         (_REG_EESCAPE): Renamed from REG_EESCAPE.
20500         (_REG_ESUBREG): Renamed from REG_ESUBREG.
20501         (_REG_EBRACK): Renamed from REG_EBRACK.
20502         (_REG_EPAREN): Renamed from REG_EPAREN.
20503         (_REG_EBRACE): Renamed from REG_EBRACE.
20504         (_REG_BADBR): Renamed from REG_BADBR.
20505         (_REG_ERANGE): Renamed from REG_ERANGE.
20506         (_REG_ESPACE): Renamed from REG_ESPACE.
20507         (_REG_BADRPT): Renamed from REG_BADRPT.
20508         (_REG_EEND): Renamed from REG_EEND.
20509         (_REG_ESIZE): Renamed from REG_ESIZE.
20510         (_REG_ERPAREN): Renamed from REG_ERPAREN.
20511         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
20512         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
20513         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
20514         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
20515
20516         (_REG_RE_NAME, _REG_RM_NAME): New macros.
20517         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
20518         changed.  But support the old name if the new one is not defined
20519         and if _REGEX_SOURCE.
20520
20521         Change the following member names in struct re_pattern_buffer.
20522         The old names are still supported if !_REGEX_SOURCE.
20523         The new names are always supported, regardless of _REGEX_SOURCE.
20524         (re_buffer): Renamed from buffer.
20525         (re_allocated): Renamed from allocated.
20526         (re_used): Renamed from used.
20527         (re_syntax): Renamed from syntax.
20528         (re_fastmap): Renamed from fastmap.
20529         (re_translate): Renamed from translate.
20530         (re_can_be_null): Renamed from can_be_null.
20531         (re_regs_allocated): Renamed from regs_allocated.
20532         (re_fastmap_accurate): Renamed from fastmap_accurate.
20533         (re_no_sub): Renamed from no_sub.
20534         (re_not_bol): Renamed from not_bol.
20535         (re_not_eol): Renamed from not_eol.
20536         (re_newline_anchor): Renamed from newline_anchor.
20537
20538         Change the following member names in struct re_registers.
20539         The old names are still supported if !_REGEX_SOURCE.
20540         The new names are always supported, regardless of _REGEX_SOURCE.
20541         (rm_num_regs): Renamed from num_regs.
20542         (rm_start): Renamed from start.
20543         (rm_end): Renamed from end.
20544
20545         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
20546         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
20547         Prepend __ to parameter names.
20548
20549         Undo yesterday's changes.
20550
20551 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20552
20553         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
20554         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
20555         lib/regex.c.
20556
20557 2005-08-24  Jim Meyering  <jim@meyering.net>
20558
20559         Sync from coreutils.
20560         * m4/fcntl-safer.m4: New file.
20561
20562         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
20563         and object files for this module.
20564
20565 2005-08-24  Jim Meyering  <jim@meyering.net>
20566
20567         Sync from coreutils.
20568         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
20569
20570 2005-08-24  Jim Meyering  <jim@meyering.net>
20571
20572         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
20573         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
20574
20575 2005-08-24  Jim Meyering  <jim@meyering.net>
20576
20577         * modules/fcntl-safer: New module.
20578         * modules/fts (Depends-on): Add fcntl-safer.
20579         * MODULES.html.sh (File descriptor based Input/Output):
20580         Add fcntl-safer.
20581
20582 2005-08-24  Bruno Haible  <bruno@clisp.org>
20583
20584         Support for unit test modules.
20585         * modules/README: Mention tests modules.
20586         * modules/TEMPLATE-TESTS: New file.
20587         * gnulib-tool: New options --extract-tests-module, --with-tests and
20588         --tests-base (unused for the moment).
20589         (testsbase, inctests): New variables.
20590         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
20591         (func_verify_module): Exclude TEMPLATE-TESTS.
20592         (func_verify_nontests_module, func_verify_tests_module): New functions.
20593         (func_get_dependencies): Add implicit dependency for tests modules.
20594         (func_get_tests_module): New function.
20595         (func_modules_transitive_closure): When --with-tests was specified,
20596         include the unit tests as well, unless explicitly avoided.
20597         (func_emit_lib_Makefile_am): Ignore the tests modules here.
20598         (func_emit_tests_Makefile_am): New function.
20599         (func_create_testdir): When --with-tests was specified, emit a
20600         tests/ directory.
20601         * MODULES.html.sh (Future developments): Update.
20602
20603 2005-08-24  Bruno Haible  <bruno@clisp.org>
20604
20605         * modules/tls-tests: New file.
20606         * tests/test-tls.c: New file, from GNU gettext.
20607
20608 2005-08-24  Bruno Haible  <bruno@clisp.org>
20609
20610         * modules/lock-tests: New file.
20611         * tests/test-lock.c: New file, from GNU gettext.
20612
20613 2005-08-24  Bruno Haible  <bruno@clisp.org>
20614
20615         * lib/lock.h: Add multiple inclusion guard.
20616         * lib/tls.h: Add multiple inclusion guard.
20617
20618 2005-08-24  Bruno Haible  <bruno@clisp.org>
20619
20620         * gnulib-tool: Add support for the --aux-dir option to
20621         --create-testdir, --create-megatestdir, --test, --megatest.
20622         (func_create_testdir, func_create_megatestdir): Optionally emit a
20623         AC_CONFIG_AUX_DIR directive.
20624         (create-testdir, create-megatestdir, test, megatest): Provide a
20625         default value for $auxdir.
20626
20627 2005-08-24  Bruno Haible  <bruno@clisp.org>
20628
20629         * gnulib-tool (import): Use compound statement instead of subshell
20630         where possible.
20631
20632 2005-08-24  Bruno Haible  <bruno@clisp.org>
20633
20634         * gnulib-tool (import): Change --aux-dir default to "build-aux".
20635
20636 2005-08-24  Bruno Haible  <bruno@clisp.org>
20637
20638         * gnulib-tool (func_version): Update.
20639
20640 2005-08-24  Bruno Haible  <bruno@clisp.org>
20641
20642         * gnulib-tool (func_import, func_create_testdir,
20643         func_create_megatestdir): Quote all autoconf macro arguments.
20644
20645 2005-08-24  Bruno Haible  <bruno@clisp.org>
20646
20647         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
20648         option --force, because --force causes the aclocal.m4 of each
20649         subdirectory to be newer than the corresponding config.h.in.
20650
20651 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20652
20653         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
20654         All contents moved to gl_REGEX.
20655         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
20656         assume that it does.
20657
20658 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20659
20660         * lib/regex.h (REG_NOSYS)
20661         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
20662         Define, since POSIX requires it as of 2001.
20663         (_REG_ENOSYS)
20664         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
20665         New private symbol, used to keep the enum signed in all cases.
20666         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
20667         Youngman in
20668         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
20669
20670         * lib/regex_internal.c (re_string_skip_chars, register_state):
20671         (calc_state_hash):
20672         Remove forward decls; no longer needed now that we use prototypes.
20673         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
20674         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
20675         (clean_state_log_if_needed): Likewise.
20676
20677 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
20678
20679         * config/srclist.txt: Add glibc bugs 1231-1233.
20680
20681 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20682
20683         Fix problems reported by Sam Steingold in
20684         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
20685         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
20686         assumed that reg_errcode_t is a signed type, which is not
20687         necessarily true if _XOPEN_SOURCE is not defined.
20688         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
20689         since some compilers warn about it otherwise.
20690
20691 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20692
20693         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
20694         (init_word_char, create_initial_state, duplicate_node_closure):
20695         (fetch_token, peek_token_bracket, build_range_exp):
20696         (build_collating_symbol): Remove forward decls; no longer needed
20697         now that we use prototypes.
20698
20699         * lib/regcomp.c:
20700         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
20701         (re_compile_fastmap_iter, regcomp, regerror, regfree):
20702         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
20703         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
20704         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
20705         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
20706         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
20707         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
20708         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
20709         (build_range_exp, build_collating_symbol, parse_bracket_exp):
20710         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
20711         (build_charclass, build_charclass_op, fetch_number, create_tree):
20712         (create_token_tree, mark_opt_subexp, duplicate_tree):
20713         Use prototypes rather than old-style definitions.
20714
20715         * lib/regex_internal.c:
20716         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
20717         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
20718         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
20719         (re_string_reconstruct, re_string_peek_byte_case):
20720         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
20721         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
20722         (re_node_set_init_copy, re_node_set_add_intersect):
20723         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20724         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20725         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
20726         (re_acquire_state, re_acquire_state_context, register_state):
20727         (create_ci_newstate, create_cd_newstate, free_state):
20728         Likewise.
20729         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
20730         re_search_2):
20731         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
20732         (re_search_internal, prune_impossible_nodes):
20733         (acquire_init_state_context, check_matching, static):
20734         (check_halt_node_context, check_halt_state_context, proceed_next_node):
20735         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
20736         (update_regs, sift_states_backward, build_sifted_states):
20737         (clean_state_log_if_needed, merge_state_array):
20738         (update_cur_sifted_state, add_epsilon_src_nodes):
20739         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
20740         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
20741         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
20742         (find_recover_state, check_subexp_matching_top, transit_state_mb):
20743         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
20744         (check_arrival, check_arrival_add_next_nodes):
20745         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20746         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
20747         (check_node_accept_bytes, check_node_accept, extend_buffers):
20748         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
20749         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
20750         (sift_ctx_init):
20751         Likewise.
20752
20753         * lib/regex_internal.h:
20754         (re_string_allocate, re_string_construct, re_string_reconstruct):
20755         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
20756         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
20757         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
20758         (re_string_context_at, re_string_peek_byte_case):
20759         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
20760         is defined, since we now use prototypes always.
20761
20762         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
20763         C89 or better.  All uses removed.
20764
20765 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
20766
20767         * config/srclist.txt: Add glibc bugs 1220-1227.
20768
20769 2005-08-20  Jim Meyering  <jim@meyering.net>
20770
20771         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
20772         of unused local, dfa.
20773
20774 2005-08-20  Bruno Haible  <bruno@clisp.org>
20775
20776         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
20777
20778 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20779
20780         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
20781         (re_node_set_insert_last, re_dfa_add_node):
20782         Rename local variables to avoid GCC shadowing warnings.
20783
20784 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20785
20786         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
20787         [defined lint]: Suppress bogus uninitialized-variable warnings.
20788
20789         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
20790         and let the caller return REG_ESPACE if out of space.  This
20791         removes an uninitialied-variable warning with GCC 4.0.1, and also
20792         avoids taking the address of a local variable.  All callers
20793         changed.
20794
20795 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
20796
20797         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
20798         $LIBCSRC/posix/regexec.c.
20799         Add glibc bug 1217 for regcomp.c.
20800
20801 2005-08-19  Jim Meyering  <jim@meyering.net>
20802
20803         * lib/regexec.c (proceed_next_node): Redo local variables to
20804         avoid GCC shadowing warnings.
20805
20806 2005-08-18  Bruno Haible  <bruno@clisp.org>
20807
20808         * lib/strstr.c (strstr): Fix return value in multibyte case.
20809         * lib/strcasestr.c (strcasestr): Likewise.
20810
20811 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
20812
20813         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
20814
20815 2005-08-17  Jim Meyering  <jim@meyering.net>
20816
20817         Make the %s format (seconds since the epoch) work for a negative
20818         number and when used with a zero-padded field width, e.g. %015s.
20819
20820         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
20821         label so that it precedes the code to set `digits'.  Otherwise,
20822         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
20823         print `00-22'.  Now, it prints `-0022', as it should.
20824
20825 2005-08-17  Bruno Haible  <bruno@clisp.org>
20826
20827         * modules/strstr (Files): Add m4/mbrtowc.m4.
20828         (Depends-on): Add mbuiter.
20829
20830 2005-08-17  Bruno Haible  <bruno@clisp.org>
20831
20832         * modules/strcasestr: New file.
20833         * MODULES.html.sh (String handling, based on ANSI C 89): Add
20834         strcasestr.
20835
20836 2005-08-17  Bruno Haible  <bruno@clisp.org>
20837
20838         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
20839
20840 2005-08-17  Bruno Haible  <bruno@clisp.org>
20841
20842         * modules/mbuiter: New file.
20843         * MODULES.html.sh (Extended multibyte and wide character utilities):
20844         Add mbuiter.
20845
20846 2005-08-17  Bruno Haible  <bruno@clisp.org>
20847
20848         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
20849         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
20850
20851 2005-08-17  Bruno Haible  <bruno@clisp.org>
20852
20853         * m4/strcasestr.m4: New file.
20854
20855 2005-08-17  Bruno Haible  <bruno@clisp.org>
20856
20857         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
20858         * lib/strstr.c: Completely rewritten, with multibyte locale support.
20859
20860 2005-08-17  Bruno Haible  <bruno@clisp.org>
20861
20862         * lib/strcasestr.h: New file.
20863         * lib/strcasestr.c: New file.
20864
20865 2005-08-17  Bruno Haible  <bruno@clisp.org>
20866
20867         * lib/strcasecmp.c: Use mbuiter.h.
20868
20869 2005-08-17  Bruno Haible  <bruno@clisp.org>
20870
20871         * lib/mbuiter.h: New file.
20872
20873 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
20874
20875         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
20876         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
20877         and gl_GETOPT are both invoked via different paths (as happens
20878         with GNU tar CVS because it uses both argp and getopt), the former
20879         wins.
20880
20881 2005-08-16  Bruno Haible  <bruno@clisp.org>
20882
20883         * modules/tls: New file.
20884         * MODULES.html.sh (Multithreading): Add tls.
20885
20886 2005-08-16  Bruno Haible  <bruno@clisp.org>
20887
20888         * modules/strnlen1: New file.
20889         * MODULES.html.sh (String handling): Add strnlen1.
20890
20891 2005-08-16  Bruno Haible  <bruno@clisp.org>
20892
20893         * modules/strcase (Files): Add m4/mbrtowc.m4.
20894         (Depends-on): Add strnlen1, mbchar.
20895
20896 2005-08-16  Bruno Haible  <bruno@clisp.org>
20897
20898         * modules/mbiter: New file.
20899         * MODULES.html.sh (Extended multibyte and wide character utilities):
20900         Add mbiter.
20901
20902 2005-08-16  Bruno Haible  <bruno@clisp.org>
20903
20904         * modules/mbfile: New file.
20905         * MODULES.html.sh (Extended multibyte and wide character utilities):
20906         Add mbfile.
20907
20908 2005-08-16  Bruno Haible  <bruno@clisp.org>
20909
20910         * modules/mbchar: New file.
20911         * MODULES.html.sh (Extended multibyte and wide character utilities):
20912         New section.
20913
20914 2005-08-16  Bruno Haible  <bruno@clisp.org>
20915
20916         * m4/tls.m4: New file, from GNU gettext.
20917
20918 2005-08-16  Bruno Haible  <bruno@clisp.org>
20919
20920         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
20921         always.
20922         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
20923
20924 2005-08-16  Bruno Haible  <bruno@clisp.org>
20925
20926         * m4/mbiter.m4: New file.
20927
20928 2005-08-16  Bruno Haible  <bruno@clisp.org>
20929
20930         * m4/mbfile.m4: New file.
20931
20932 2005-08-16  Bruno Haible  <bruno@clisp.org>
20933
20934         * m4/mbchar.m4: New file.
20935
20936 2005-08-16  Bruno Haible  <bruno@clisp.org>
20937
20938         * lib/tls.h: New file, from GNU gettext.
20939         * lib/tls.c: New file, from GNU gettext.
20940
20941 2005-08-16  Bruno Haible  <bruno@clisp.org>
20942
20943         * lib/strnlen1.h: New file.
20944         * lib/strnlen1.c: New file.
20945
20946 2005-08-16  Bruno Haible  <bruno@clisp.org>
20947
20948         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
20949         (mbi_init): Update.
20950         (mbi_avail, mbi_advance): Let the iteration end before the terminating
20951         NUL byte, not after it.
20952
20953 2005-08-16  Bruno Haible  <bruno@clisp.org>
20954
20955         * lib/strcase.h (strcasecmp): Add note in comments.
20956         * lib/strncasecmp.c: Use code from strcasecmp.c.
20957         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
20958         (strcasecmp): Work correctly in multibyte locales.
20959
20960 2005-08-16  Bruno Haible  <bruno@clisp.org>
20961
20962         * lib/mbiter.h: New file.
20963
20964 2005-08-16  Bruno Haible  <bruno@clisp.org>
20965
20966         * lib/mbfile.h: New file.
20967
20968 2005-08-16  Bruno Haible  <bruno@clisp.org>
20969
20970         * lib/mbchar.h: New file.
20971         * lib/mbchar.c: New file.
20972
20973 2005-08-16  Bruno Haible  <bruno@clisp.org>
20974
20975         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
20976         the valid ones. Makes the comparison operations transitive:
20977         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
20978         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
20979
20980 2005-08-15  Simon Josefsson  <jas@extundo.com>
20981
20982         * modules/ssize_t (License): Change to 'unlimited'.
20983
20984         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
20985
20986 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20987
20988         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
20989         Add comments for each pending glibc patch.
20990
20991 2005-08-15  Bruno Haible  <bruno@clisp.org>
20992
20993         * lib/regex.h (__restrict_arr): Don't define to __restrict if
20994         __cplusplus is defined.
20995
20996 2005-08-14  Jim Meyering  <jim@meyering.net>
20997
20998         Sync from coreutils.
20999
21000         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
21001         Use the hash-table-based cycle-detection code not just when
21002         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
21003         Reported by James Youngman in
21004         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
21005         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
21006         FTS_TIGHT_CYCLE_CHECK.
21007         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
21008         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
21009         once again.
21010         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
21011         * lib/fts.c (fd_safer): Remove decl.
21012         Include fcntl--.h rather than unistd-safer.h
21013         (fts_safe_changedir): Don't call fd_safer; no longer needed
21014         now that we include fcntl--.h.
21015
21016 2005-08-12  Simon Josefsson  <jas@extundo.com>
21017
21018         * modules/getndelim2: Use ssize_t module.
21019         * modules/getnline: Likewise.
21020         * modules/safe-read: Likewise.
21021         * modules/xreadlink: Likewise.
21022
21023         * modules/ssize_t: New file.
21024
21025 2005-08-12  Simon Josefsson  <jas@extundo.com>
21026
21027         * m4/readline.m4: Look for termcap, curses or ncurses if required.
21028
21029 2005-08-12  Simon Josefsson  <jas@extundo.com>
21030
21031         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21032         ssize_t.
21033
21034 2005-08-12  Simon Josefsson  <jas@extundo.com>
21035
21036         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
21037         readline, getdelim and check_version.
21038         (Support for systems lacking ISO C 99: Sizes of integer types):
21039         Add size_max.
21040
21041 2005-08-12  Bruno Haible  <bruno@clisp.org>
21042
21043         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
21044
21045 2005-08-11  Simon Josefsson  <jas@extundo.com>
21046
21047         * modules/readline: New file.
21048
21049         * modules/strnlen (Files): Add strnlen.h.
21050
21051 2005-08-11  Simon Josefsson  <jas@extundo.com>
21052
21053         * m4/readline.m4: New file.
21054
21055 2005-08-11  Simon Josefsson  <jas@extundo.com>
21056
21057         * lib/readline.h, readline.c: New file.
21058
21059 2005-08-11  Simon Josefsson  <jas@extundo.com>
21060
21061         * doc/gnulib.texi (Initial import, Finishing touches): Mention
21062         gl_AVOID.
21063
21064 2005-08-11  Bruno Haible  <bruno@clisp.org>
21065
21066         * lib/strnlen.h (strnlen): Change parameter name to match comment.
21067
21068 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
21069
21070         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
21071
21072 2005-08-10  Simon Josefsson  <jas@extundo.com>
21073
21074         * tests/test-iconvme.c: New file.
21075
21076 2005-08-10  Simon Josefsson  <jas@extundo.com>
21077
21078         * m4/strnlen.m4: New file.
21079
21080         * m4/strndup.m4: Don't check for strnlen declaration, done in
21081         strnlen.m4.
21082
21083 2005-08-10  Simon Josefsson  <jas@extundo.com>
21084
21085         * lib/strndup.c: Use strnlen.h.
21086
21087         * lib/strnlen.h: New file.
21088
21089 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21090
21091         * README: Typos.
21092
21093 2005-08-02  Simon Josefsson  <jas@extundo.com>
21094
21095         * modules/readline: New file.
21096
21097 2005-08-02  Simon Josefsson  <jas@extundo.com>
21098
21099         * modules/getdelim: New file.
21100
21101         * modules/getline: Rewrite, don't use getndelim2.
21102
21103 2005-08-02  Simon Josefsson  <jas@extundo.com>
21104
21105         * m4/getline.m4: Separate out getdelim stuff into separate module.
21106
21107         * m4/getdelim.m4: New file.
21108
21109 2005-08-02  Simon Josefsson  <jas@extundo.com>
21110
21111         * lib/getline.h, getline.c: Rewrite.
21112
21113         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
21114
21115 2005-07-31  Bruno Haible  <bruno@clisp.org>
21116
21117         * lib/lock.h (gl_lock_initializer): New macro.
21118         (gl_lock_define_initialized): Use it.
21119         (gl_rwlock_initializer): New macro.
21120         (gl_rwlock_define_initialized): Use it.
21121         (gl_recursive_lock_initializer): New macro.
21122         (gl_recursive_lock_define_initialized): Use it.
21123
21124 2005-07-30  Karl Berry  <karl@gnu.org>
21125
21126         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
21127         Report from Ben Pfaff, regarding getopt.
21128
21129 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
21130
21131         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
21132         normal way.
21133         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
21134         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
21135         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
21136         (gl_GETOPT): Use the new macros.  Most of the implementation
21137         is moved to the new macros.  This is for programs like Emacs
21138         that don't want all the functionality of gl_GETOPT.
21139
21140 2005-07-26  Bruno Haible  <bruno@clisp.org>
21141
21142         * m4/lock.m4: Update from GNU gettext.
21143
21144 2005-07-26  Bruno Haible  <bruno@clisp.org>
21145
21146         * lib/lock.h: Update from GNU gettext.
21147         * lib/lock.c: Update from GNU gettext.
21148
21149 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
21150
21151         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
21152         obsolescent AC_TRY_RUN.  Include the default includes files, for
21153         'exit'.
21154
21155 2005-07-24  Bruno Haible  <bruno@clisp.org>
21156
21157         * modules/visibility: New file.
21158         * MODULES.html.sh (Misc): Add visibility.
21159
21160 2005-07-24  Bruno Haible  <bruno@clisp.org>
21161
21162         * m4/visibility.m4: New file.
21163
21164 2005-07-24  Bruno Haible  <bruno@clisp.org>
21165
21166         * doc/visibility.texi: New file.
21167
21168 2005-07-22  Bruno Haible  <bruno@clisp.org>
21169
21170         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
21171         $(ALLOCA_H), redundant through BUILT_SOURCES.
21172         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
21173         redundant through BUILT_SOURCES.
21174         * modules/byteswap (Makefile.am): Remove explicit dependency on
21175         $(BYTESWAP_H), redundant through BUILT_SOURCES.
21176         * modules/fnmatch (Makefile.am): Remove explicit dependency on
21177         $(FNMATCH_H), redundant through BUILT_SOURCES.
21178         * modules/getopt (Makefile.am): Remove explicit dependency on
21179         $(GETOPT_H), redundant through BUILT_SOURCES.
21180         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
21181         redundant through BUILT_SOURCES.
21182         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
21183         redundant through BUILT_SOURCES.
21184         * modules/stdbool (Makefile.am): Remove explicit dependency on
21185         $(STDBOOL_H), redundant through BUILT_SOURCES.
21186         * modules/stdint (Makefile.am): Remove explicit dependency on
21187         $(STDINT_H), redundant through BUILT_SOURCES.
21188         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
21189         Remove explicit dependency on $(SYSEXITS_H).
21190         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
21191
21192 2005-07-18  Simon Josefsson  <jas@extundo.com>
21193
21194         * lib/check-version.c (check_version): Accept identical versions too.
21195
21196 2005-07-18  Bruno Haible  <bruno@clisp.org>
21197
21198         * modules/lock: New file.
21199         * MODULES.html.sh (Multithreading): New section.
21200
21201 2005-07-18  Bruno Haible  <bruno@clisp.org>
21202
21203         * m4/lock.m4: New file, from GNU gettext.
21204
21205 2005-07-18  Bruno Haible  <bruno@clisp.org>
21206
21207         * lib/lock.h: New file, from GNU gettext.
21208         * lib/lock.c: New file, from GNU gettext.
21209
21210 2005-07-18  Bruno Haible  <bruno@clisp.org>
21211
21212         * lib/lock.h (gl_once_t): New type.
21213         (gl_once_define, gl_once): New macros.
21214         * lib/lock.c (fresh_once): New variable.
21215         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
21216         functions.
21217
21218 2005-07-16  Simon Josefsson  <jas@extundo.com>
21219
21220         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
21221         workaround, suggested by Bruno.
21222
21223 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
21224
21225         * modules/xalloc (Depends-on): Add xalloc-die.
21226         * modules/xvasprintf (Depends-on): Add xalloc-die.
21227
21228 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
21229
21230         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
21231         with a minor change.
21232
21233 2005-07-15  Bruno Haible  <bruno@clisp.org>
21234
21235         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
21236         When using lib/poll.c, define poll as rpl_poll.
21237
21238 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
21239
21240         * modules/argp (Depends-on): Remove unlocked-io.
21241
21242 2005-07-14  Derek Price  <derek@ximbiot.com>
21243
21244         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
21245         for glob symlink bug.
21246
21247 2005-07-14  Bruno Haible  <bruno@clisp.org>
21248
21249         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
21250         Instead, test for *_unlocked function declarations directly.
21251
21252 2005-07-11  Simon Josefsson  <jas@extundo.com>
21253
21254         * modules/size_max: New file.
21255
21256         * modules/xsize: Depend on size_max module for size_max.m4.
21257
21258 2005-07-11  Simon Josefsson  <jas@extundo.com>
21259
21260         * lib/size_max.h: New file.
21261
21262 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
21263
21264         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
21265         copyright symbol and the year.
21266         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
21267         (version_etc_va): Use parameterized copyright notice.
21268         Reword to conform to the current GNU coding standards.
21269
21270 2005-07-11  Karl Berry  <karl@gnu.org>
21271
21272         * doc/gnulib.texi (Quoting): new node.
21273         (Initial import): more info, from Patrice.
21274
21275 2005-07-11  Bruno Haible  <bruno@clisp.org>
21276
21277         * gnulib-tool (func_usage): Document option --avoid.
21278         (Command line options): Handle --avoid.
21279         (func_acceptable): New function.
21280         (func_modules_transitive_closure): Use it.
21281
21282 2005-07-11  Bruno Haible  <bruno@clisp.org>
21283
21284         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
21285         Reported by Jim Meyering.
21286
21287 2005-07-10  Bruno Haible  <bruno@clisp.org>
21288
21289         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
21290         Needed when size_t is smaller than 'unsigned int'.
21291         Reported by Paul Eggert.
21292
21293 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21294
21295         * modules/argp (Depends-on): Add unlocked-io
21296
21297 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21298
21299         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
21300         block of defines.
21301
21302 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
21303
21304         * config/srclist.txt: Comment out regcomp.c, since we have a porting
21305         fix now.
21306
21307 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
21308         and Paul Eggert  <eggert@cs.ucla.edu>
21309
21310         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
21311         in wint_t, not wchar_t.  Remove now-unnecessary cast.
21312
21313 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21314
21315         * modules/regex (Files): Add lib/regex_internal.c,
21316         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
21317         (Depends-on): Add extensions.
21318         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
21319
21320 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21321
21322         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
21323         pathconf.
21324         * m4/same.m4 (gl_SAME): Likewise.
21325         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
21326
21327         * m4/regex.m4: Adjust to new libc regex implementation.
21328         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
21329         all the .c and .h parts of (the new) regex.
21330         Quote the m4 stuff better.
21331         Check for RE_ICASE bug of old gnulib.
21332         Check for REG_STARTEND of recent libc.
21333         Rename local variables from jm_* to gl_*.
21334         Quote operand of "test -f".
21335         Say "recent enough" version of libc, not "version 2".
21336         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
21337         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
21338         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
21339         Remove check for btowc, isascii.
21340         Require AM_LANGINFO_CODESET.
21341
21342 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21343
21344         * lib/regex.c, regex.h: Sync from libc.
21345         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
21346         * lib/regexec.c:
21347         New files, synced from libc, except that regex_internal.h
21348         currently has a small porting fix.
21349
21350 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21351
21352         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
21353         regex_internal.c, regexec.c.
21354         Add regex_internal.h too, but as a comment, since the libc version
21355         is currently broken in gnulib mode.
21356
21357 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
21358
21359         Support programs like Emacs that use gnulib but not gettext.
21360         * MODULES.html.sh (Internationalization functions): Add gettext-h.
21361         * modules/gettext-h: New file.
21362         * modules/gettext (Files): Remove lib/gettext.h.
21363         (Depends-on): Add gettext-h.
21364         (Makefile.am): Remove lib_SOURCES.
21365         * modules/argmatch, modules/c-stack, modules/closeout:
21366         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
21367         * modules/execute, modules/file-type, modules/getaddrinfo:
21368         * modules/getopt, modules/human, modules/javacomp:
21369         * modules/javaexec, modules/mkdir-p, modules/obstack:
21370         * modules/openat, modules/pagealign_alloc, modules/pipe:
21371         * modules/quotearg, modules/regex, modules/rpmatch:
21372         * modules/unicodeio, modules/userspec, modules/version-etc:
21373         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
21374         * modules/xsetenv:
21375         Depend on gettext-h, not gettext.
21376
21377 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21378
21379         * gnulib-tool (func_import): Add support for 'public domain' license.
21380         * modules/alloca, modules/atexit, modules/memmove:
21381         Now public domain, not GPL.
21382         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
21383         * modules/realloc, modules/strerror, modules/strtod:
21384         Now LGPL, not GPL.
21385
21386 2005-07-05  Bruno Haible  <bruno@clisp.org>
21387
21388         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
21389         autoconf CVS. Needed for mingw.
21390
21391 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21392
21393         Remove the dependency of the strftime module on the tzset module.
21394         * modules/strftime (Depends-on): Remove dependency on tzset.
21395
21396 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21397
21398         Remove the dependency of the strftime module on the tzset module.
21399         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
21400         gl_FUNC_TZSET_CLOBBER.
21401
21402 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21403
21404         Remove the dependency of the strftime module on the tzset module.
21405         * lib/strftime.c (my_strftime)
21406         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
21407         Copy the input structure, to work around some of the bug with
21408         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
21409         Solaris releases, you should also use the tzset module, but we won't
21410         require it as a dependency any more since we don't want LGPLed code
21411         to depend on GPLed code.
21412
21413 2005-07-02  Jim Meyering  <jim@meyering.net>
21414
21415         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
21416         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
21417         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
21418         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
21419
21420 2005-07-02  Jim Meyering  <jim@meyering.net>
21421
21422         * lib/backupfile.c (backup_args): Change a `0' to NULL.
21423
21424 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
21425
21426         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
21427         declares only 'struct timespec;' (!).
21428
21429 2005-07-01  Jim Meyering  <jim@meyering.net>
21430
21431         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
21432         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
21433         * lib/save-cwd.c, tempname.c:
21434         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
21435         and don't include <sys/file.h>).
21436
21437 2005-06-29  Jim Meyering  <jim@meyering.net>
21438
21439         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
21440         type name.  Use the variable name instead.
21441         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
21442         Likewise.
21443
21444 2005-06-28  Simon Josefsson  <jas@extundo.com>
21445
21446         * modules/check-version (Files): Add check-version.m4.
21447
21448 2005-06-28  Simon Josefsson  <jas@extundo.com>
21449
21450         * m4/check-version.m4: New file, suggested by Jim Meyering
21451         <jim@meyering.net>.
21452
21453 2005-06-28  Simon Josefsson  <jas@extundo.com>
21454
21455         * lib/check-version.h, lib/check-version.c: New files.
21456
21457 2005-06-28  Simon Josefsson  <jas@extundo.com>
21458
21459         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
21460         collision with global variable.  Better indentation.  Don't
21461         increment buffer pointer beyond buffer end.  Based on comments
21462         from Paul Eggert <eggert@cs.ucla.edu>.
21463
21464         * lib/base64.h: Indent.
21465
21466 2005-06-28  Simon Josefsson  <jas@extundo.com>
21467
21468         * doc/gnulib.texi (Library version handling): New section.
21469
21470 2005-06-28  Jim Meyering  <jim@meyering.net>
21471
21472         * check-module (find_included_lib_files): Hard-code another
21473         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
21474         but modules/fts-lgpl (correctly) does not list those files.
21475
21476         * modules/canonicalize (Files): Add lib/pathmax.h.
21477
21478 2005-06-25  Simon Josefsson  <jas@extundo.com>
21479
21480         * modules/check-version: New file.
21481
21482 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
21483
21484         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
21485         initializer of struct addrinfo, as an indication that we don't
21486         care how many members the structure has.
21487
21488 2005-06-24  Derek Price  <derek@ximbiot.com>
21489         and Bruno Haible  <bruno@clisp.org>
21490
21491         Remove stat module & update lstat.
21492         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
21493         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
21494         * m4/stat.m4: Remove this file.
21495
21496 2005-06-24  Derek Price  <derek@ximbiot.com>
21497         and Bruno Haible  <bruno@clisp.org>
21498
21499         Remove stat module & update lstat.
21500         * lib/stat.c: Remove this file...
21501         (slash_aware_lstat): ...moving this content and its support...
21502         * lib/lstat.c (rpl_lstat): ...into here.
21503         * lib/lstat.h: New file.
21504
21505 2005-06-24  Derek Price  <derek@ximbiot.com>
21506         and Bruno Haible  <bruno@clisp.org>
21507
21508         Remove stat module & update lstat.
21509         * config/srclist.txt (libc sources): Remove stat.
21510
21511 2005-06-24  Derek Price  <derek@ximbiot.com>
21512         and Bruno Haible  <bruno@clisp.org>
21513
21514         Remove stat module & update lstat.
21515         * MODULES.html.sh (stat): Remove.
21516         * MODULES.html: Regenerated.
21517         * modules/lstat (Description): Correct function name.
21518         (Files): Add "lstat.h".
21519         (Depends-on): Remove stat, add xalloc, stat-macros.
21520         * modules/stat: Remove this file.
21521         (Include): Add "lstat.h", remove <sys/stat.h>.
21522
21523 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
21524
21525         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
21526         (ranged_convert): Don't save conversion in a temporary struct.
21527         This causes a warning with GCC 4.0.0, and anyway in the typical
21528         case it's not worth the extra 100 bytes or so of code.
21529         (ranged_convert, __mktime_internal): When calling a function via a
21530         pointer P, use P () rather than (*P) (), as we now assume C89 or
21531         better.
21532
21533 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
21534
21535         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
21536         "who -r" failed to give output.  Problem reported by Tim Waugh.
21537
21538         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
21539         (xcalloc): Use it to avoid needless tests.
21540         Problem reported by Jim Meyering.
21541
21542 2005-06-20  Derek Price  <derek@ximbiot.com>
21543
21544         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
21545         unnecessary for Autoconfs > 2.59c.
21546
21547 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21548
21549         * lib/argp.h (__option_is_short): Check upper limit of
21550         __key. Isprint() requires its argument to have the value
21551         of an unsigned char or EOF.
21552
21553 2005-06-16  Jim Meyering  <jim@meyering.net>
21554
21555         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
21556         when either N or S is zero.
21557
21558 2005-06-16  Derek Price  <derek@ximbiot.com>
21559
21560         * m4/bison.m4: Declare YACC & YFLAGS precious.
21561
21562 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
21563
21564         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
21565         multibyte string or pattern, fall back on unibyte matching.
21566         Problem reported by James Youngman.
21567
21568 2005-06-08  Bruno Haible  <bruno@clisp.org>
21569
21570         * modules/csharpcomp: New file.
21571         * MODULES.html.sh (C#): Add csharpcomp.
21572
21573 2005-06-08  Bruno Haible  <bruno@clisp.org>
21574
21575         * m4/csharpcomp.m4: New file, from GNU gettext.
21576
21577 2005-06-08  Bruno Haible  <bruno@clisp.org>
21578
21579         * lib/csharpcomp.h: New file, from GNU gettext.
21580         * lib/csharpcomp.c: New file, from GNU gettext.
21581         * lib/csharpcomp.sh.in: New file, from GNU gettext.
21582
21583 2005-06-08  Bruno Haible  <bruno@clisp.org>
21584
21585         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
21586         warning on mingw.
21587
21588 2005-06-07  Derek Price  <derek@ximbiot.com>
21589
21590         Sync from CVS.
21591         * lib/glob_.h: Indent nested #ifdef.
21592
21593 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21594
21595         Sync from coreutils.
21596         Use "file name" when talking about file names, instead of "filename"
21597         or "path", as per the GNU coding standards.
21598         * lib/mkdir-p.c: Renamed from makepath.c.
21599         (make_dir_parents): Renamed from make_path.  All callers changed.
21600         * lib/mkdir-p.h: Likewise.  All includers changed.
21601         * lib/filenamecat.c: Renamed from path-concat.c.
21602         (file_name_concat): Renamed from path_concat.  All callers changed.
21603         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
21604         * lib/filenamecat.h: Likewise.  All includers changed.
21605         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
21606         in comments or local variable names.
21607         * lib/basename.c: Likewise.
21608         * lib/canonicalize.c, canonicalize.h: Likewise.
21609         * lib/dirname.c, dirname.h: Likewise.
21610         * lib/euidaccess.c: Likewise.
21611         * lib/exclude.c: Likewise
21612         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
21613         * lib/fsusage.c, fsuage.h: Likewise.
21614         * lib/fts.c, fts_.h: Likewise.
21615         * lib/getcwd.c: Likewise.
21616         * lib/getloadavg.c: Likewise.
21617         * lib/mkstemp.c: Likewise.
21618         * lib/mountlist.c, mountlist.h: Likewise.
21619         * lib/openat.c, openat.h: Likewise.
21620         * lib/readlink-stub.c: Likewise.
21621         * lib/readutmp.c, readutmp.h: Likewise.
21622         * lib/rename.c: Likewise.
21623         * lib/rmdir.c: Likewise.
21624         * lib/same.c: Likewise.
21625         * lib/savedir.c: Likewise.
21626         * lib/stripslash.c: Likewise.
21627         * lib/tempname.c: Likewise.
21628         * lib/xreadlink.c: Likewise.
21629         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
21630         All uses changed.
21631         * lib/exclude.h: Likewise.
21632
21633         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
21634         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21635         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
21636         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21637         * lib/pathmax.h: Include <limits.h> unconditionally, since other
21638         files have been getting away with it for years (MORE/BSD 4.3
21639         is extinct now).
21640         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
21641         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21642
21643         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
21644         Define to 256, not 255, as per modern POSIX.
21645
21646 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21647
21648         Sync from coreutils.
21649         Use "file name" when talking about file names, instead of "filename"
21650         or "path", as per the GNU coding standards.
21651         * MODULES.html.sh: mkdir-p renamed from makepath.
21652         filenamecat renamed from path-concat.
21653         * modules/filenamecat: Renamed from modules/path-concat.
21654         (Files): filenamecat.h and filenamecat.c renamed from
21655         path-concat.h and path-concat.c.
21656         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
21657         (Include): filenamecat.h, not path-concat.h.
21658         * modules/mkdir-p: Renamed from modules/makepath.
21659         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
21660         makepath.c.
21661         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
21662         (Include): mkdir-p.h, not makepath.h.
21663
21664 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21665
21666         Sync from coreutils.
21667         * m4/mkdir-p.m4: Renamed from makepath.m4.
21668         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
21669         Rename files from makepath.c to mkdir-p.c, and from
21670         makepath.h to mkdir-p.h.
21671         * m4/filenamecat.m4: Renamed from path-concat.m4.
21672         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
21673         Rename files from path-concat.c to filenamecat.c,
21674         and from path-concat.h to filenamecat.h.
21675         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
21676         "file name" in local variables or comments.
21677         * m4/rename.m4: Likewise.
21678
21679 2005-06-01  Bruno Haible  <bruno@clisp.org>
21680
21681         * modules/csharpexec: New file.
21682         * MODULES.html.sh (C#): New section.
21683
21684 2005-06-01  Bruno Haible  <bruno@clisp.org>
21685
21686         * m4/csharp.m4: New file, from GNU gettext.
21687         * m4/csharpexec.m4: New file, from GNU gettext.
21688
21689 2005-06-01  Bruno Haible  <bruno@clisp.org>
21690
21691         * lib/csharpexec.h: New file, from GNU gettext.
21692         * lib/csharpexec.c: New file, from GNU gettext.
21693         * lib/csharpexec.sh.in: New file, from GNU gettext.
21694
21695 2005-05-31  Derek Price  <derek@ximbiot.com>
21696             Paul Eggert  <eggert@cs.ucla.edu>
21697
21698         Sync from cvs.
21699         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
21700
21701 2005-05-31  Derek Price  <derek@ximbiot.com>
21702             Paul Eggert  <eggert@cs.ucla.edu>
21703
21704         Sync from cvs.
21705         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
21706
21707 2005-05-29  Derek Price  <derek@ximbiot.com>
21708
21709         * config/srclist.txt (glob_.h, glob.c): Add these files.
21710
21711 2005-05-29  Derek Price  <derek@ximbiot.com>
21712
21713         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
21714         * modules/glob: New file.
21715         * modules/getlogin_r: Add link to POSIX spec in description.
21716
21717 2005-05-29  Derek Price  <derek@ximbiot.com>
21718             Paul Eggert  <eggert@cs.ucla.edu>
21719
21720         * m4/glob.m4: New file.
21721
21722 2005-05-29  Derek Price  <derek@ximbiot.com>
21723             Paul Eggert  <eggert@cs.ucla.edu>
21724
21725         * lib/glob_.h, lib/glob.c: New files.
21726
21727 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21728
21729         * modules/fts (Files): Remove m4/inttypes-pri.m4.
21730         * modules/fts-lgpl (Depends-on): Remove gettext.
21731
21732 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21733
21734         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
21735         and don't require gt_INTTYPES_PRI.
21736
21737 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
21738
21739         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
21740
21741         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
21742         the configuration hassle isn't worth it.
21743         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
21744         (LONGEST_MODIFIER, PRIuMAX): Remove.
21745
21746 2005-05-27  Bruno Haible  <bruno@clisp.org>
21747
21748         * lib/getlogin_r.h: Remove second include of <stddef.h>.
21749
21750 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
21751
21752         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
21753         _POSIX_PTHREAD_SEMANTICS for Solaris.
21754
21755 2005-05-25  Derek Price  <derek@ximbiot.com>
21756
21757         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
21758
21759 2005-05-25  Derek Price  <derek@ximbiot.com>
21760             Paul Eggert  <eggert@cs.ucla.edu>
21761
21762         * modules/getlogin_r, m4/getlogin_r.m4: New files.
21763         * lib/getlogin_r.c, getlogin_r.h: New files.
21764
21765 2005-05-25  Bruno Haible  <bruno@clisp.org>
21766             Derek Price  <derek@ximbiot.com>
21767
21768         * lib/getlogin_r.h: Simplify API documentation.
21769
21770 2005-05-23  Derek Price  <derek@ximbiot.com>
21771
21772         * modules/minmax (Files): Add m4/minmax.m4.
21773         (configure.ac): Add gl_MINMAX.
21774
21775 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
21776
21777         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
21778         so that unistd-safer.h (GPL'ed code) need not be included.
21779
21780 2005-05-22  Bruno Haible  <bruno@clisp.org>
21781
21782         * m4/minmax.m4: New file.
21783         Based on a patch by Derek Price <derek@ximbiot.com>.
21784
21785 2005-05-22  Bruno Haible  <bruno@clisp.org>
21786
21787         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
21788         (INT64_MIN): Fix definition.
21789         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
21790
21791         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
21792         NEED_SIGNED_INT_TYPES.
21793
21794         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
21795         HAVE_SYSTEM_INTTYPES.
21796
21797 2005-05-22  Bruno Haible  <bruno@clisp.org>
21798
21799         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
21800         Also include <sys/param.h> if it defines MIN, MAX.
21801         Based on a patch by Derek Price <derek@ximbiot.com>.
21802
21803 2005-05-21  Jim Meyering  <jim@meyering.net>
21804
21805         * modules/fts (Files): Add m4/inttypes-pri.m4.
21806         (Depends-on): Add lstat and remove gettext.  Alphabetize.
21807
21808 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21809
21810         New fts module.
21811         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
21812         (setup_dir, free_dir): New functions.
21813         (enter_dir, leave_dir): Define trivial
21814         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
21815         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
21816         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
21817         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
21818         Move to fts-cycle.c.
21819         (fts_open): Use setup_dir.
21820         (fts_close): Use free_dir.
21821         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
21822         This adds a label and some gotos, but the alternatives were messier.
21823         Check for memory allocation failure when entering a dir.
21824         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
21825         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
21826         (FTS): New member fts_cycle, that is a union that contains the
21827         old active_dir_ht and cycle_state.  All uses changed to mention
21828         fts_cycle.ht and fts_cycle.state.
21829         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
21830         fts.c, with the following changes:
21831         (setup_dir, free_dir): New functions.
21832         (enter_dir): Now returns bool.  Return true if successful, false
21833         if memory exhausted.  All callers changed.
21834         Do not bother partly cleaning up on
21835         memory allocation failure; that is free_dir's job.
21836         However, free ad if hash_insert fails, to avoid memory leak.
21837         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
21838         fts->fts_options to see which union member to use.
21839
21840 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21841
21842         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
21843         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
21844
21845 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
21846
21847         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
21848
21849 2005-05-20  Jim Meyering  <jim@meyering.net>
21850
21851         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
21852         Now a macro, to pacify GCC.
21853
21854 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
21855
21856         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
21857         of -1.
21858
21859 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
21860
21861         * lib/chown.c (rpl_chown): Return -1 on failure.
21862
21863 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
21864
21865         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
21866         Don't check for stddef.h.
21867         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
21868         don't use its results.
21869         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
21870         since we include them unconditionally.  Don't require
21871         AM_STDBOOL_H, since stdbool is a prerequisite.
21872         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
21873         since we assume C89 or better.
21874         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
21875         as we don't use their results.
21876         Don't check for fchdir, memmove, memset, strrchr, as we use
21877         them unconditionally.
21878         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
21879         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
21880
21881 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
21882
21883         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
21884         Include <stddef.h> unconditionally, since we assume C89 now.
21885         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
21886         * lib/fts.c: Include fts_.h first, to check interface.
21887         Do not include intprops.h; no longer needed.
21888         Include cycle-check.h and hash.h, since fts_.h no longer does.
21889         Remove unnecessary casts of closedir to void.
21890         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
21891         decide whether to decrement nlinks.
21892         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
21893         (FTS): Use struct hash_table * instead of Hash_table, so that
21894         we no longer need to include hash.h here.
21895
21896 2005-05-18  Jim Meyering  <jim@meyering.net>
21897
21898         * modules/dirfd (License): Change to LGPL.  Most of the code
21899         is already in the public domain.
21900
21901 2005-05-18  Jim Meyering  <jim@meyering.net>
21902
21903         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
21904         Reported by Yoann Vandoorselaere.
21905
21906 2005-05-17  Jim Meyering  <jim@meyering.net>
21907
21908         * m4/fts.m4: New file, from coreutils.
21909
21910 2005-05-17  Jim Meyering  <jim@meyering.net>
21911
21912         * lib/fts.c, lib/fts_.h: New files, from coreutils.
21913
21914 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21915
21916         Sync from coreutils.
21917         * m4/unlinkdir.m4: New file.
21918
21919 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21920
21921         Sync from coreutils.
21922         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
21923         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
21924         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
21925         White space changes only.
21926         * lib/makepath.c (make_path): Port to hosts where leading "//" is
21927         special.
21928         * lib/yesno.c: Include getline.h, not ctype.h.
21929         (yesno): Don't remove leading white space; POSIX doesn't allow it.
21930         Use getline to remove arbitrary restriction on response length.
21931
21932 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21933
21934         * config/srclist-update: Spell out "Street" in FSF postal
21935         mail address; this is the style the FSF seems to prefer.
21936
21937         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
21938         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
21939         this updates FSF postal mail address.
21940
21941         Sync from coreutils.
21942         * modules/unlinkdir: New file.
21943         * modules/yesno (Depends-on): Add getline.
21944         * MODULES.html.sh (File system functions): Add unlinkdir.
21945
21946 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
21947
21948         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
21949         lib/strsep.h:
21950         Change the initial comment to refer to GPL, not LGPL.
21951         gnulib-tool will change it to LGPL as needed.
21952
21953         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
21954         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
21955         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
21956         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
21957         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
21958         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
21959         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
21960         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
21961         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
21962         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
21963         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
21964         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
21965         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
21966         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
21967         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
21968         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
21969         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
21970         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
21971         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
21972         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
21973         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
21974         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
21975         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
21976         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
21977         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
21978         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
21979         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
21980         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
21981         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
21982         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
21983         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
21984         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
21985         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
21986         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
21987         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
21988         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
21989         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
21990         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
21991         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
21992         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
21993         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
21994         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
21995         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
21996         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
21997         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
21998         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
21999         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
22000         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
22001         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
22002         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
22003         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
22004         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
22005         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
22006         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
22007         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
22008         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
22009         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
22010         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
22011         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
22012         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
22013         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
22014         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
22015         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
22016         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
22017         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
22018         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
22019         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
22020         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
22021         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
22022         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
22023         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
22024         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
22025         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
22026         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
22027         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
22028         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
22029         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
22030         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
22031         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
22032         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
22033         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
22034         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
22035         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
22036         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
22037         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
22038         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
22039         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
22040         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
22041         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
22042         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
22043         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
22044         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
22045         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
22046         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
22047         lib/yesno.c, lib/yesno.h:
22048         Update FSF postal mail address.
22049
22050 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
22051
22052         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
22053         tests/test-memmem.c, tests/test-stpncpy.c:
22054         Update FSF postal mail address.
22055
22056 2005-05-13  Bruno Haible  <bruno@clisp.org>
22057
22058         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
22059         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
22060         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
22061         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
22062         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
22063         Add support for 64-bit integers in the MSVC compiler.
22064
22065 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22066
22067         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
22068
22069 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
22070
22071         * gnulib-tool (func_import): Sort and uniquify recommended includes.
22072
22073 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
22074
22075         * doc/getdate.texi (General date syntax): Don't say that date
22076         date --iso-8601=ns generates acceptable dates; it doesn't yet.
22077         Problem reported by Nic Ferrier.
22078
22079 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22080
22081         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
22082         specified in ai_socktype. Fix invalid ai_protocol
22083         check. ai_protocol is usually set to 0 or depending on
22084         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
22085         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
22086         ai_socktype / ai_protocol in the returned addrinfo structure.
22087
22088 2005-05-10  Simon Josefsson  <jas@extundo.com>
22089
22090         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
22091         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22092
22093 2005-05-10  Karl Berry  <karl@gnu.org>
22094
22095         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
22096         (from http://www.gnu.org/licenses).
22097         * doc/COPYING.LIB: also rename to COPYING.LESSER.
22098         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
22099         fdl.texi suffices.
22100
22101 2005-05-10  Karl Berry  <karl@gnu.org>
22102
22103         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
22104         (COPYING.DOC): remove.
22105
22106         * config/srclist-update: new FSF address.
22107
22108 2005-05-10  Derek Price  <derek@ximbiot.com>
22109
22110         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
22111         possible.
22112
22113 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22114             Bruno Haible  <bruno@clisp.org>
22115
22116         * modules/inet_ntop: New file.
22117         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22118         inet_ntop.
22119
22120 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22121             Bruno Haible  <bruno@clisp.org>
22122
22123         * m4/inet_ntop.m4: New file.
22124
22125 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22126             Bruno Haible  <bruno@clisp.org>
22127
22128         * lib/inet_ntop.h: New file.
22129         * lib/inet_ntop.c: New file, from glibc with modifications.
22130
22131 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
22132
22133         * modules/time_r (License): Change to LGPL.
22134         * modules/extensions (License): Change to LGPL.  Actually,
22135         the license is more permissive than that, but currently gnulib-tool
22136         doesn't know how to handle more-permissive licenses.
22137
22138         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
22139         Problem reported by Dave Love.
22140
22141 2005-05-08  Jim Meyering  <jim@meyering.net>
22142
22143         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
22144         blank.
22145
22146 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
22147
22148         * modules/argmatch (Depends-on): Add stdbool.
22149         * modules/backupfile (Depends-on): Likewise.
22150         * modules/chdir-long (Depends-on): Likewise.
22151         * modules/closeout (Depends-on): Likewise.
22152         * modules/cycle-check (Depends-on): Likewise.
22153         * modules/dirname (Depends-on): Likewise.
22154         * modules/fnmatch (Depends-on): Likewise.
22155         * modules/fsusage (Depends-on): Likewise.
22156         * modules/fwriteerror (Depends-on): Likewise.
22157         * modules/getcwd (Depends-on): Likewise.
22158         * modules/getloadavg (Depends-on): Likewise.
22159         * modules/hard-locale (Depends-on): Likewise.
22160         * modules/makepath (Depends-on): Likewise.
22161         * modules/mountlist (Depends-on): Likewise.
22162         * modules/nanosleep (Depends-on): Likewise.
22163         * modules/posixtm (Depends-on): Likewise.
22164         * modules/quotearg (Depends-on): Likewise.
22165         * modules/readtokens (Depends-on): Likewise.
22166         * modules/readtokens0 (Depends-on): Likewise.
22167         * modules/readutmp (Depends-on): Likewise.
22168         * modules/save-cwd (Depends-on): Likewise.
22169         * modules/strftime (Depends-on): Likewise.
22170         * modules/userspec (Depends-on): Likewise.
22171         * modules/utimecmp (Depends-on): Likewise.
22172         * modules/xgetcwd (Depends-on): Likewise.
22173         * modules/xnanosleep (Depends-on): Likewise.
22174         * modules/xstrtod (Depends-on): Likewise.
22175         * modules/yesno (Depends-on): Likewise.
22176
22177 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
22178
22179         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
22180         needless checks.
22181
22182 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22183
22184         Merge from coreutils.  Among other things,
22185         add bulletproofing for cases where stdin, stdout, or stderr are closed.
22186         * lib/fd-safer.c: New file.
22187         * lib/fcntl-safer.h, open-safer.c: Remove.
22188         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
22189         * lib/dup-safer.c: Include unistd-safer.h first.
22190         Don't include errno.h.
22191         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
22192         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
22193         * lib/file-type.c: Rely on file-type.h change.
22194         * lib/getloadavg.c: Include unistd-safer.h.
22195         (getloadavg): Use safer open.
22196         * lib/getusershell.c: Include "stdio-safer.h".
22197         (getusershell): Use safer fopen.
22198         * lib/long-options.c (long_options): Use NULL rather than 0.
22199         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
22200         'free'.
22201         * lib/modechange.c: Likewise.
22202         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
22203         (MODE_DONE): New constant.
22204         (struct mode_change): Remove 'next' member.
22205         (make_node_op_equals): New function; like the old one of the
22206         same name, except it allocates an array.
22207         (mode_compile, mode_create_from_ref): Use it.
22208         (mode_compile): Allocate result as an array, not a linked list.
22209         Parse octal string ourself, so that we catch mistakes like "+0".
22210         (mode_adjust): Arg is an array, not a linked list.
22211         * lib/modechange.c: Include stat-macros.h, xalloc.h.
22212         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
22213         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
22214         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
22215         Remove.  This is now stat-macros.h's job.
22216         (talloc): Remove.  All callers replaced by xalloc, so that
22217         our invokers don't have to worry about reporting memory failures.
22218         (make_node_op_equals): Remove.
22219         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
22220         New constants.
22221         (struct mode_change): Moved here from modechange.h.
22222         (mode_append_entry): Remove.
22223         (mode_compile): Remove MASKED_OPS arg, since it encouraged
22224         apps to have incorrect behavior.  Use simpler algorithm for head
22225         and tail.  Don't futz with umask; that's now the job of mode_adjust.
22226         Detect more invalid usages rather than having somewhat-random behavior.
22227         Don't insert an "a=" action, as that leads to incorrect behavior.
22228         (mode_compile, mode_create_from_ref): Return NULL on error instead
22229         of an enum, since now there's only one way to have an error.  All
22230         callers changed.
22231         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
22232         at the correct time.  Simplify calculation of "+u" and its ilk.
22233         Don't mishandle "+X".
22234         (mode_free): Remove "register" and localize decls.
22235         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
22236         (struct mode_change): Move to modechange.c; callers don't
22237         need to see this stuff.
22238         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
22239         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
22240         (mode_change, mode_adjust): Reflect the new signatures noted above.
22241         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
22242         that might redefine system include files.
22243         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
22244         (my_usleep): Use NULL rather than (void *) 0.
22245         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
22246         Use siginterrupt to specify that system calls should be interrupted.
22247         (rpl_nanosleep): Move initialization of suspended closer to call of
22248         my_usleep.
22249         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
22250         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
22251         (desirable_utmp_entry): New function.
22252         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
22253         using x2nrealloc, to simplify logic.
22254         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
22255         size calculation.  Do not assume utmp file is a regular file.
22256         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
22257         (READ_UTMP_CHECK_PIDS): New constant.
22258         * lib/save-cwd.c: Include unistd-safer.h.
22259         (save_cwd): Use fd_safer.
22260         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
22261         [!_LIBC] Include "stat-macros.h" instead.
22262         * lib/unistd-safer.h (fd_safer): New decl.
22263
22264 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22265
22266         * modules/getloadavg (Depends-on): Add unistd-safer.
22267         * modules/getusershell (Depends-on): Add stdio-safer.
22268         * modules/lstat (Depends-on): Remove xalloc.
22269         * modules/mkstemp (Depends-on): Add stat-macros.
22270         * modules/modechange (Depends-on): Remove xstrtol.
22271         Add stat-macros, xalloc.
22272         * modules/save-cwd (Depends-on): Add unistd-safer.
22273         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
22274         * modules/unistd-safer (Files): Add lib/fd-safer.c
22275         (Makefile.am): Remove lib_SOURCES.
22276
22277         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
22278         Remove fcntl-safer; unistd-safer supersedes it.
22279
22280 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22281
22282         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
22283         AC_HEADER_STAT.
22284         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
22285         (gl_PREREQ_CHOWN): Remove.
22286         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
22287         it.  Don't require AC_HEADER_STAT.
22288         (gl_PREREQ_LSTAT): Remove.
22289         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
22290         Don't require AC_HEADER_STAT.
22291         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
22292         (gl_PREREQ_RMDIR): Remove.
22293         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
22294         mention stat-macros.h or AC_HEADER_STAT, since we'll make
22295         the stat-macros module a prerequisite.
22296         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
22297         * m4/filemode.m4 (gl_FILEMODE): Likewise.
22298         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
22299         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
22300         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
22301         variable names.
22302         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
22303         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
22304         variable prefixes.
22305         * m4/fcntl-safer.m4: Remove.
22306         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
22307         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
22308         Invoke gl_PREREQ_FD_SAFER.
22309         (gl_PREREQ_FD_SAFER): New macro.
22310         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
22311         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
22312         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
22313         Remove duplicate call to AC_LIBOBJ(readutmp).
22314         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
22315
22316         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
22317         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
22318
22319 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22320
22321         * MODULES.html.sh (Misc): Add byteswap.
22322
22323 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22324
22325         * modules/getcwd (Depends-on): Add extensions.
22326         * modules/openat (Depends-on): Likewise.
22327
22328 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22329
22330         * modules/byteswap: New file.
22331
22332 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22333
22334         * m4/byteswap.m4: New file.
22335
22336 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22337
22338         * lib/byteswap_.h: New file.
22339
22340 2005-04-25  Karl Berry  <karl@gnu.org>
22341
22342         * m4/gettext.m4: Update from GNU gettext 0.14.4.
22343
22344 2005-04-25  Albert Chin  <china@thewrittenword.com>
22345
22346         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
22347         Toolkit C bug.
22348
22349 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
22350
22351         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
22352         (func_ln_if_changed) Remove forcibly for no error message
22353         in case file does not exist.
22354
22355 2005-04-19  Simon Josefsson  <jas@extundo.com>
22356
22357         * gnulib-tool (Options): Make --symlink mean --symbolic.
22358
22359 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
22360
22361         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
22362
22363 2005-04-16  Simon Josefsson  <jas@extundo.com>
22364
22365         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
22366
22367 2005-04-15  Simon Josefsson  <jas@extundo.com>
22368
22369         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
22370
22371 2005-04-15  Simon Josefsson  <jas@extundo.com>
22372
22373         * gnulib-tool: Rename --symlink to --symbolic.
22374
22375 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
22376
22377         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
22378         symbolic links to files instead of copying/moving.  Add --aux-dir,
22379         specifying directory relative --dir where auxiliary build tools
22380         are placed.
22381
22382 2005-04-14  Bruno Haible  <bruno@clisp.org>
22383
22384         * modules/allocsa (License): Change to LGPL.
22385         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
22386
22387 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
22388
22389         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
22390         that "UTC +1 second" continues to work.  Problem reported
22391         by Dmitry V. Levin.
22392         (relunit_snumber): New rule.
22393         (relunit): Use it.
22394
22395 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
22396
22397         * lib/getdate.y (universal_time_zone_table): New constant.
22398         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
22399         universal_time_zone_table.
22400         (lookup_zone): Prefer universal_time_zone_table to
22401         local_time_zone_table, so that "GMT" time stamps are allowed in
22402         London during the summer.  Problem reported by Ian Abbott.
22403
22404 2005-04-12  Jim Meyering  <jim@meyering.net>
22405
22406         * lib/human.c (humblock): Set *options even when returning due to
22407         xstrtoumax conversion failure.  Thanks to a used-uninitialized
22408         warning from gcc-4.
22409
22410 2005-04-09  Jim Meyering  <jim@meyering.net>
22411
22412         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
22413         -Wuninitialized: initialize tm0.tm_year.
22414
22415 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
22416
22417         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
22418         count, since there's no maximum.  All uses changed.
22419         Add member dsts_seen.
22420         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
22421         not being INT_MAX.
22422         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
22423         Use pc_rels_seen to decide whther a date is absolute.
22424
22425         * lib/getdate.y (number): Don't overwrite year.
22426         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
22427         check.
22428
22429 2005-04-02  Simon Josefsson  <jas@extundo.com>
22430
22431         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
22432         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
22433
22434 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
22435
22436         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
22437         where no absolute path name can be longer than PATH_MAX.
22438
22439 2005-03-27  Jim Meyering  <jim@meyering.net>
22440
22441         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
22442
22443 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
22444
22445         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
22446         "one's complement" -> "ones' complement" in comment, as per Knuth.
22447         "value of type" -> "type or expression" in comment.
22448         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
22449
22450 2005-03-26  Jim Meyering  <jim@meyering.net>
22451
22452         Comment nits.
22453         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
22454         Correct typos: s/or/of/.
22455
22456 2005-03-26  Jim Meyering  <jim@meyering.net>
22457
22458         * modules/check-include-files: Move to ../ and rename to...
22459         * check-module: ...this.
22460
22461 2005-03-25  Jim Meyering  <jim@meyering.net>
22462
22463         * modules/xvasprintf (Files): Add xalloc.h.
22464
22465 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
22466
22467         * modules/gettext (Files): config/config.rpath ->
22468         build-aux/config.rpath
22469         * modules/iconv (Files): Likewise.
22470         Problem reported by Oskar Liljeblad.
22471
22472 2005-03-23  Jim Meyering  <jim@meyering.net>
22473
22474         * modules/check-include-files: New script to check for
22475         missing dependencies, multiple includes, etc.
22476
22477         * modules/c-strtold (Depends-on): Add xalloc.
22478         * modules/c-strtod (Depends-on): Add xalloc.
22479         * modules/hash (Depends-on): Add xalloc.
22480         (Files): Remove lib/xalloc.h.
22481
22482         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
22483         * modules/userspec (Files): Add lib/inttostr.h.
22484
22485 2005-03-23  Jim Meyering  <jim@meyering.net>
22486
22487         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
22488
22489 2005-03-22  Jim Meyering  <jim@meyering.net>
22490
22491         * modules/stat-macros: New module.
22492         * modules/canonicalize, modules/euidaccess, modules/file-type,
22493         * modules/filemode, modules/lchown, modules/makepath,
22494         * modules/rmdir, modules/stat: Depend on new stat-macros module
22495         rather than listing lib/stat-macros.h manually.
22496         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
22497
22498 2005-03-22  Jim Meyering  <jim@meyering.net>
22499
22500         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
22501
22502 2005-03-22  Bruno Haible  <bruno@clisp.org>
22503
22504         * config/srclist.txt: Replace target directory 'config' with
22505         'build-aux'.
22506         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
22507         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
22508         ../build-aux/.
22509
22510 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
22511
22512         * modules/chdir-long (Depends-on): Add mempcpy.
22513
22514         * modules/acl, modules/backupfile, modules/c-strtod,
22515         modules/c-strtold, modules/canon-host, modules/canonicalize,
22516         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
22517         modules/exclude, modules/exitfail, modules/file-type,
22518         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
22519         modules/getdate, modules/getline, modules/getpagesize,
22520         modules/getpass, modules/getugroups, modules/group-member,
22521         modules/hard-locale, modules/hash, modules/human, modules/idcache,
22522         modules/inttostr, modules/long-options, modules/makepath,
22523         modules/md5, modules/memcasecmp, modules/memcoll,
22524         modules/modechange, modules/mountlist, modules/path-concat,
22525         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
22526         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
22527         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
22528         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
22529         modules/strftime, modules/strndup, modules/strverscmp,
22530         modules/timespec, modules/unlocked-io, modules/userspec,
22531         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
22532         modules/yesno:
22533         Remove lib_SOURCES line from Makefile.am section, as this is now
22534         done automatically by the corresponding Autoconf macro.
22535
22536 2005-03-21  Jim Meyering  <jim@meyering.net>
22537
22538         Changes imported from coreutils.
22539
22540         * lib/cycle-check.c: Don't include xalloc.h.
22541
22542         * lib/path-concat.c: Don't include assert.h.
22543         (path_concat): Remove assertion that would have triggered
22544         for ABASE starting with more than one slash.
22545         Reported by Andreas Schwab.
22546
22547         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
22548         properly when ABASE is an absolute file name.
22549         Correct the description of this function.
22550         Include <assert.h>.
22551         Add an assertion and a test driver.
22552         This fixes a bug introduced on 2004-07-02.
22553         Andreas Schwab reported the resulting failure of cp --parents:
22554         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
22555
22556 2005-03-21  Jim Meyering  <jim@meyering.net>
22557
22558         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
22559         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
22560
22561 2005-03-21  Jim Meyering  <jim@meyering.net>
22562         and  Paul Eggert  <eggert@cs.ucla.edu>
22563
22564         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
22565         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
22566         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
22567         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
22568         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
22569         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
22570         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
22571         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
22572         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
22573         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
22574         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
22575         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
22576         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
22577         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
22578         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
22579         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
22580         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
22581         for these modules.
22582
22583 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
22584
22585         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
22586         (which shouldn't happen), generate nothing instead of returning 0
22587         immediately, so that nstrftime (NULL, ...) doesn't return 0.
22588
22589 2005-03-16  Bruno Haible  <bruno@clisp.org>
22590
22591         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
22592         HAVE_LONGLONG_64BIT.
22593
22594 2005-03-16  Bruno Haible  <bruno@clisp.org>
22595
22596         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
22597         HAVE_LONGLONG_64BIT.
22598
22599 2005-03-16  Bruno Haible  <bruno@clisp.org>
22600
22601         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
22602         HAVE_LONGLONG_64BIT.
22603
22604 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
22605
22606         * lib/strftime.c (my_strftime): Prepend space to format so that we can
22607         reliably distinguish strftime failure from empty output on POSIX
22608         hosts.
22609
22610 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
22611
22612         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
22613         (iconv_string): Don't guess a size-zero buffer, as that might cause
22614         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
22615         result would be 'too large', where 'too large' is (heuristically)
22616         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
22617         overflow concerns.  This will prevent some unwanted malloc failures
22618         when the inputs are very large.
22619
22620 2005-03-15  Karl Berry  <karl@gnu.org>
22621
22622         * config/srclist.txt (config.rpath): from gettext.
22623         * config/config.rpath: update.
22624
22625 2005-03-15  Bruno Haible  <bruno@clisp.org>
22626
22627         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
22628         to 'negate'.
22629
22630         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
22631         variable.
22632
22633         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
22634         results.
22635
22636 2005-03-14  Simon Josefsson  <jas@extundo.com>
22637
22638         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
22639         <fx@gnu.org>.
22640
22641 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
22642
22643         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
22644         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
22645         intprops.h.
22646         * lib/strtol.c: Likewise.
22647
22648 2005-03-14  Jim Meyering  <jim@meyering.net>
22649
22650         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
22651         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
22652         to be nonzero so that we (and caller) can detect the difference
22653         between a valid zero-length expansion and an error return, even
22654         when the underlying strftime fails before writing anything into
22655         that location.
22656
22657 2005-03-14  Bruno Haible  <bruno@clisp.org>
22658
22659         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
22660         Update from GNU gettext 0.14.3.
22661
22662 2005-03-10  Jim Meyering  <jim@meyering.net>
22663
22664         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
22665
22666 2005-03-10  Jim Meyering  <jim@meyering.net>
22667
22668         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
22669         so that this module works on systems without fchdir.
22670
22671 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
22672
22673         Factor int-properties macros into a single file, except for
22674         glibc-related files.
22675         * lib/intprops.h: New file.
22676         * lib/getloadavg.c: Include it instead of limits.h.
22677         (INT_STRLEN_BOUND): Remove.
22678         * lib/human.c: Include intprops.h.
22679         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
22680         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
22681         302/1000.
22682         * lib/inttostr.h: Include intprops.h instead of limits.h.
22683         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
22684         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
22685         for consistency with intprops.h.
22686         (time_t_is_integer, twos_complement_arithmetic): Use them.
22687         * lib/sig2str.h: Include <signal.h>, intprops.h.
22688         (INT_STRLEN_BOUND): Remove.
22689         * lib/strftime.c (TYPE_SIGNED): Remove.
22690         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
22691         * lib/strtol.c: Adjust comments to match intprops.h.
22692         * lib/userspec.c: Include intprops.h.
22693         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
22694         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
22695         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
22696         instead of rolling our own expressions.
22697         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
22698
22699         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
22700         instead of int.
22701         (my_strftime): Do not mishandle years close to INT_MAX, by doing
22702         the right thing even if adding 1900 would overflow.  Similarly
22703         for tm_mon + 1 and tm_yday + 1.
22704         Make %Y always equivalent to %C%y, and similarly for %G and %g.
22705         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
22706         (DO_SIGNED_NUMBER): New macro.
22707         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
22708
22709 2005-03-07  Bruno Haible  <bruno@clisp.org>
22710
22711         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
22712
22713 2005-03-07  Bruno Haible  <bruno@clisp.org>
22714
22715         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
22716
22717 2005-03-04  Derek R. Price  <derek@ximbiot.com>
22718
22719         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
22720         (func_import): Only replace files via --import when they have actually
22721         changed.
22722
22723 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22724
22725         * m4/mmap-anon.m4: New file.
22726         * m4/pagealign_alloc.m4: New file.
22727
22728 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22729             Bruno Haible  <bruno@clisp.org>
22730
22731         * modules/pagealign_alloc: New file.
22732         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
22733
22734 2005-03-03  Derek R. Price  <derek@ximbiot.com>
22735             Bruno Haible  <bruno@clisp.org>
22736
22737         * lib/pagealign_alloc.h: New file.
22738         * lib/pagealign_alloc.c: New file.
22739
22740 2005-03-03  Bruno Haible  <bruno@clisp.org>
22741
22742         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
22743         Use an all-permissive copyright notice, recommended by RMS.
22744
22745 2005-03-02  Bruno Haible  <bruno@clisp.org>
22746
22747         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
22748         of AIX, the replacement has to be done only after <string.h> is
22749         included, therefore not in config.h. stpncpy.h does the replacement,
22750         and stpncpy.c uses it.
22751
22752 2005-03-02  Bruno Haible  <bruno@clisp.org>
22753
22754         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
22755         stpncpy.c uses it.
22756
22757 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22758
22759         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
22760         The workaround isn't strictly needed for POSIX conformance, and
22761         it's too much of a pain to configure and maintain.  We'll ask
22762         people to fix their kernels instead.
22763         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
22764         (NANOSLEEP_BUG_WORKAROUND): Remove.
22765         (xnanosleep): Remove the workaround.
22766
22767 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22768
22769         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
22770         Reported by Derek Price.
22771         (Include): Add "timespec.h".
22772
22773         * modules/xnanosleep (Depends-on): Remove gethrxtime.
22774
22775 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
22776
22777         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
22778         to detect nanosleep bug.
22779
22780 2005-03-01  Bruno Haible  <bruno@clisp.org>
22781
22782         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
22783
22784 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
22785
22786         * modules/gethrxtime: New file.
22787         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
22788         (Depends-on): Add gethrxtime.
22789         (configure.ac): Add gl_XNANOSLEEP.
22790         (Makefile.am): Remove lib_SOURCES line.
22791
22792 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
22793
22794         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
22795         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
22796
22797 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
22798
22799         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
22800         * lib/timespec.h (gettime): Return void, since it always
22801         succeeds now.  All uses changed.
22802         * lib/gettime.c (gettime) Likewise.
22803         [HAVE_NANOTIME]: Prefer nanotime.
22804         Assume gettimeofday succeeds, as POSIX requires.
22805         Assime time () succeeds, since other code already does.
22806         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
22807         (timespec_subtract): Remove.
22808         (NANOSLEEP_BUG_WORKAROUND): New constant.
22809         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
22810         things considerably.  Use it only on GNU/Linux hosts, since the
22811         workaround shouldn't be needed elsewhere.
22812
22813 2005-02-24  Bruno Haible  <bruno@clisp.org>
22814
22815         * modules/gettext (Files): Add m4/glibc2.m4.
22816
22817 2005-02-24  Bruno Haible  <bruno@clisp.org>
22818
22819         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
22820         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
22821         * m4/progtest.m4:
22822         Update from GNU gettext 0.14.2.
22823         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
22824
22825 2005-02-24  Bruno Haible  <bruno@clisp.org>
22826
22827         * lib/localcharset.c: Update from GNU gettext 0.14.2.
22828         * lib/config.charset: Update from GNU gettext 0.14.2.
22829
22830 2005-02-24  Bruno Haible  <bruno@clisp.org>
22831
22832         * lib/gettext.h: Update from GNU gettext 0.14.2.
22833
22834 2005-02-23  Simon Josefsson  <jas@extundo.com>
22835
22836         * m4/iconvme.m4: New file.
22837
22838 2005-02-23  Jim Meyering  <jim@meyering.net>
22839
22840         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
22841         change.
22842         Thanks to Bruno Haible for catching it.
22843
22844 2005-02-22  Simon Josefsson  <jas@extundo.com>
22845
22846         * modules/iconvme: New file.
22847
22848         * MODULES.html.sh: Add iconvme.
22849
22850 2005-02-22  Simon Josefsson  <jas@extundo.com>
22851
22852         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
22853
22854 2005-02-22  Simon Josefsson  <jas@extundo.com>
22855
22856         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
22857
22858 2005-02-22  Jim Meyering  <jim@meyering.net>
22859
22860         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
22861         s/ifndef/ifdef/.
22862
22863 2005-02-20  Neil Conway  <neilc@samurai.com>
22864
22865         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
22866         returned by OSX/Darwin if the specified buffer is not large
22867         enough for the hostname.
22868
22869 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22870
22871         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
22872         pass it to _help, otherwise the latter coredumps trying to
22873         dereference state.root_argp.
22874
22875 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22876
22877         * modules/chdir-long (Depends-on): Add memrchr.
22878         * modules/memrchr (Files): Add lib/memrchr.h.
22879         (Include): "memrchr.h".
22880
22881 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22882
22883         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
22884
22885 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22886
22887         * lib/memrchr.h: New file.
22888         * lib/chdir-long.c: Include it.
22889         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
22890         Don't bother including stddef.h.
22891
22892 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
22893
22894         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
22895         inclusion.
22896         Include <sys/types.h>, for dev_t.
22897         (ME_DUMMY, ME_REMOTE): Move from here....
22898         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
22899         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
22900         Dmitry V. Levin.
22901         Include mountlist.h first, to test the interface.
22902
22903 2005-01-29  Bruno Haible  <bruno@clisp.org>
22904
22905         * lib/progname.c (program_name): Initialize.
22906         Needed when linking statically on MacOS X.
22907
22908 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
22909
22910         Sync from coreutils.
22911         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
22912         (Depends-on): Add c-strtod.
22913         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
22914
22915 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
22916
22917         Sync from coreutils.
22918         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
22919
22920         Remove files that are specific to coreutils.
22921         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
22922
22923 2005-01-28  Bruno Haible  <bruno@clisp.org>
22924
22925         * modules/javacomp: New file.
22926         * MODULES.html.sh (Java): Add javacomp.
22927
22928 2005-01-28  Bruno Haible  <bruno@clisp.org>
22929
22930         * m4/javacomp.m4: New file, from GNU gettext.
22931
22932 2005-01-28  Bruno Haible  <bruno@clisp.org>
22933
22934         * lib/javacomp.sh.in: New file, from GNU gettext.
22935         * lib/javacomp.h: New file, from GNU gettext.
22936         * lib/javacomp.c: New file, from GNU gettext.
22937
22938 2005-01-26  Simon Josefsson  <jas@extundo.com>
22939
22940         * lib/gai_strerror.c: Use GPL in header.
22941
22942 2005-01-26  Bruno Haible  <bruno@clisp.org>
22943
22944         * modules/javaexec: New file.
22945         * MODULES.html.sh (Java): Add javaexec.
22946
22947 2005-01-26  Bruno Haible  <bruno@clisp.org>
22948
22949         * m4/javaexec.m4: New file, from GNU gettext.
22950
22951 2005-01-26  Bruno Haible  <bruno@clisp.org>
22952
22953         * lib/javaexec.sh.in: New file, from GNU gettext.
22954         * lib/javaexec.h: New file, from GNU gettext.
22955         * lib/javaexec.c: New file, from GNU gettext.
22956
22957 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22958
22959         * modules/lchown (Depends-on): Remove lchown.h
22960
22961 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22962
22963         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
22964         must be defined if the header file was not found, in order
22965         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
22966
22967 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22968
22969         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
22970         initializers for struct pentry_state.
22971         (__argp_error): Check return value of __asprintf
22972         (__argp_failure): Translate error message
22973
22974         * lib/argp-parse.c: Removed braces around the expansion of N_()
22975
22976 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
22977
22978         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
22979         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
22980         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
22981         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
22982         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
22983         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
22984         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
22985         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
22986         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
22987         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
22988         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
22989         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
22990         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
22991         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
22992         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
22993         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
22994         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
22995         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
22996         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
22997         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
22998         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
22999         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
23000         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
23001         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
23002         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
23003         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
23004         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
23005         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
23006         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
23007         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
23008         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
23009         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
23010         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
23011         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
23012         xstrtol.m4, xstrtoumax.m4, yesno.m4:
23013         Use an all-permissive copyright notice, recommended by RMS.
23014
23015 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
23016
23017         * modules/chdir-long (Depends-on): Remove mempcpy.
23018
23019 2005-01-21  Jim Meyering  <jim@meyering.net>
23020
23021         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
23022         same value as for Solaris 9.
23023
23024         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
23025         component length.  This included changing the parameter to be
23026         of type `char *' rather than `char const *'.
23027         * lib/chdir-long.h (chdir_long): Update prototype.
23028
23029         * lib/openat.c (fdopendir, fstatat): New functions.
23030         * lib/openat.h: Include headers required for use of DIR and struct
23031         stat.
23032         [AT_SYMLINK_NOFOLLOW]: Define.
23033         (fdopendir, fstatat): Add prototypes.
23034
23035 2005-01-21  Bruno Haible  <bruno@clisp.org>
23036
23037         * modules/classpath: New file.
23038         * MODULES.html.sh (Java): Add classpath.
23039
23040 2005-01-21  Bruno Haible  <bruno@clisp.org>
23041
23042         * lib/classpath.h: New file, from GNU gettext.
23043         * lib/classpath.c: New file, from GNU gettext.
23044
23045 2005-01-20  Simon Josefsson  <jas@extundo.com>
23046
23047         * modules/version-etc-fsf: New file.
23048
23049 2005-01-20  Simon Josefsson  <jas@extundo.com>
23050
23051         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
23052         * lib/version-etc.c: Remove version_etc_copyright.
23053         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
23054         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
23055
23056 2005-01-20  Simon Josefsson  <jas@extundo.com>
23057
23058         * lib/base64.h (isbase64): Add.
23059
23060         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
23061         using a unsigned prototype, don't inline.
23062         (base64_decode): Use it.
23063
23064 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23065
23066         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
23067         it.
23068
23069 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23070
23071         * lib/save-cwd.c (save_cwd): Remove code to support the case
23072         where fchdir is missing or flaky.
23073
23074 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23075
23076         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
23077
23078 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
23079
23080         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
23081         AC_LIBSOURCES now does this.
23082         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
23083         with new ullong_max module.
23084
23085 2005-01-19  Bruno Haible  <bruno@clisp.org>
23086
23087         * modules/sh-quote: New file.
23088         * MODULES.html.sh (Executing programs): Add sh-quote.
23089
23090 2005-01-19  Bruno Haible  <bruno@clisp.org>
23091
23092         * lib/sh-quote.h: New file, from GNU gettext.
23093         * lib/sh-quote.c: New file, from GNU gettext.
23094
23095 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23096
23097         Merge from coreutils.
23098         * m4/ullong_max.m4: New file.
23099         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
23100         (gl_MACROS): Assume localeconv exists.
23101
23102 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23103
23104         Merge changes from coreutils, as described below in several
23105         changelogs dated today.
23106
23107         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
23108         (O_DIRECTORY): Remove; not needed here, since "." must be
23109         a directory.  All uses removed.
23110         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
23111         universal on Suns, and we also need to test for IRIX.
23112         Revamp code to use 'if' rather than '#if'.
23113         Avoid unnecessary comparison of cwd->desc to 0.
23114
23115         * lib/utimens.c (futimens): Robustify the previous patch, by checking
23116         for known valid error numbers rather than observed invalid ones.
23117
23118 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23119
23120         * modules/ullong_max: New file.
23121
23122         * modules/chdir-long, modules/openat: New files.
23123         * modules/save-cwd (Depends-on): Depend on chdir-long.
23124         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
23125
23126 2005-01-18  Jim Meyering  <jim@meyering.net>
23127
23128         Merge from coreutils.
23129         * m4/chdir-long.m4, m4/openat.m4: New files.
23130         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
23131         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
23132         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
23133         is sane and DOES follow symlinks.  Besides, testing 20 different
23134         systems found no broken chown implementations.
23135         Prompted by a change in rsync's copy of this macro.
23136         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
23137
23138         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
23139
23140         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
23141         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
23142         NULL-means-set-to-current-time semantics.
23143         Remove temporary file immediately, rather than waiting
23144         for configure's at-exit trap code to do it.
23145
23146 2005-01-18  Jim Meyering  <jim@meyering.net>
23147
23148         * lib/version-etc.c (version_etc_copyright): Update copyright date.
23149
23150         * lib/utimens.c (futimens): Account for the fact that futimes
23151         can also fail with errno == ENOSYS or errno == ENOENT.
23152         Patch from Dmitry V. Levin.
23153
23154         Change the name of the robust chdir function from chdir to chdir_long.
23155         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
23156         (restore_cwd): Use chdir_long, not chdir.
23157         * lib/chdir-long.c: Renamed from chdir.c.
23158         * lib/chdir-long.h: Renamed from chdir.h.
23159         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
23160         Hurd.
23161
23162 2005-01-18  Bruno Haible  <bruno@clisp.org>
23163
23164         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
23165         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
23166         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
23167         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
23168         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
23169         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
23170         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
23171         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
23172         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
23173         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
23174         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
23175         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
23176         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
23177         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
23178         Use an all-permissive copyright notice, recommended by RMS.
23179
23180 2005-01-18  Bob Proulx  <bob@proulx.com>
23181
23182         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
23183         simplify offsetof() macro construct to avoid compile failure with
23184         native HP-UX 11.0 ANSI C compiler.
23185
23186 2005-01-17  Bruno Haible  <bruno@clisp.org>
23187
23188         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
23189         redundant because stpncpy.m4 takes care of it.
23190
23191 2005-01-17  Bruno Haible  <bruno@clisp.org>
23192
23193         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
23194
23195 2005-01-17  Bruno Haible  <bruno@clisp.org>
23196
23197         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
23198         used.
23199
23200 2005-01-17  Bruno Haible  <bruno@clisp.org>
23201
23202         * lib/fwriteerror.h (fwriteerror): Change specification to include
23203         fclose.
23204         * lib/fwriteerror.c: Include <stdbool.h>.
23205         (fwriteerror): At the end, close the file stream. Record whether
23206         stdout was already closed.
23207
23208 2005-01-17  Bruno Haible  <bruno@clisp.org>
23209
23210         * lib/execute.c (environ): Declare if needed.
23211         * lib/pipe.c (environ): Likewise.
23212         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
23213
23214 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23215
23216         * modules/argp: Depend on vsnprintf
23217
23218 2005-01-10  Jim Meyering  <jim@meyering.net>
23219
23220         * modules/closeout (Depends-on): Add atexit.
23221
23222 2005-01-06  Bruno Haible  <bruno@clisp.org>
23223
23224         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
23225
23226 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
23227
23228         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
23229         definitions to be after all include files, to avoid collisions.
23230         Problem reported by Bob Proulx.
23231
23232 2005-01-04  Jim Meyering  <jim@meyering.net>
23233
23234         Changes imported from coreutils.
23235         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
23236         as the mkstemp template, use a temporary directory and an
23237         8.3-friendly template to avoid trouble on systems like DJGPP.
23238         Reported by Juan M. Guerrero via Stepan Kasal.
23239         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
23240         close. Remove the temporary directory right away, rather than waiting
23241         for configure's at-exit trap code to do it.
23242         Suggestion from Stepan Kasal.
23243
23244 2005-01-01  Simon Josefsson  <jas@extundo.com>
23245
23246         * gnulib-tool: Print #include directives when --import'ing.
23247
23248 2004-12-28  Simon Josefsson  <jas@extundo.com>
23249
23250         * tests/test-base64.c: Include required header files.  Remove
23251         unused variables.
23252
23253 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23254
23255         * modules/error (Depends-on): Remove gettext.
23256
23257 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23258
23259         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
23260         not needed.  This removes a dependency on the gettext module.
23261         [defined _LIBC]: Do not include <libintl.h>; not needed.
23262
23263 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
23264
23265         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
23266         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
23267
23268 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
23269
23270         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
23271         HAVE_DECL_STRTOLD.
23272
23273 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23274
23275         * modules/getdate (Depends-on): Remove alloca-opt.
23276
23277 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23278
23279         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
23280
23281 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23282
23283         * lib/argp-parse.c: Include <stddef.h>.
23284         (alignof, alignto): New macros.
23285         (parser_init): Don't assume that void * is aligned sufficiently
23286         for struct option.
23287
23288         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
23289         need to extend the stack.
23290         (YYINITDEPTH): New macro, so that the initial stack isn't overly
23291         large.
23292
23293 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23294
23295         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
23296
23297 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
23298
23299         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
23300         (2004-10-24) change.  Apparently this was a false alarm.
23301
23302         * modules/getdate: Depend on alloca-opt, not alloca.
23303
23304 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
23305
23306         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
23307         Remove now-obsolete comment about AIX.
23308         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
23309         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
23310         (YYMAXDEPTH): New macro.
23311
23312 2004-12-18  Simon Josefsson  <jas@extundo.com>
23313
23314         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
23315
23316 2004-12-18  Bruno Haible  <bruno@clisp.org>
23317
23318         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
23319
23320 2004-12-18  Bruno Haible  <bruno@clisp.org>
23321
23322         * lib/fatal-signal.c (fatal_signals): Make non-const.
23323         (init_fatal_signals): New function.
23324         (uninstall_handlers, install_handlers): Ignore signals that were set to
23325         SIG_IGN.
23326         (at_fatal_signal): Call init_fatal_signals.
23327         (init_fatal_signal_set): Likewise. Ignore signals that were set to
23328         SIG_IGN.
23329         Reported by Paul Eggert.
23330
23331 2004-12-18  Bruno Haible  <bruno@clisp.org>
23332
23333         * doc/alloca.texi: New file.
23334         * doc/alloca-opt.texi: New file.
23335
23336 2004-12-17  Jim Meyering  <jim@meyering.net>
23337
23338         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
23339         Otherwise, install-sh could exit with improper exit status when
23340         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
23341
23342 2004-12-16  Simon Josefsson  <jas@extundo.com>
23343
23344         * tests/test-base64.c: Add license.
23345
23346 2004-12-15  Stepan Kasal  <address@hidden>
23347
23348         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
23349
23350 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
23351
23352         * modules/getcwd (Files): Add m4/d-ino.m4.
23353         Suggested by Mark D. Baushke.
23354
23355 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
23356
23357         * lib/getdate.y (textint): New member "negative".
23358         (time_zone_hhmm): New function.
23359         Expect 14 shift-reduce conflicts, not 13.
23360         (o_colon_minutes): New rule.
23361         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
23362         (yylex): Set the "negative" member of signed numbers.
23363
23364 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
23365
23366         * doc/getdate.texi (Time of day items, Time zone items):
23367         Describe new formats +00:00, UTC+00:00.
23368
23369 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
23370
23371         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
23372         spurious "-l"s.  Problem reported by Stepan Kasal.
23373
23374 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
23375
23376         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
23377         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
23378
23379 2004-12-04  Simon Josefsson  <jas@extundo.com>
23380
23381         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
23382         Vandoorselaere <yoann@prelude-ids.org>.
23383
23384 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23385
23386         Changes imported from coreutils.
23387         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
23388         exist.
23389         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
23390
23391 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23392
23393         Changes imported from coreutils.
23394         * lib/hard-locale.c: Assume <locale.h> exists.
23395         Include "strdup.h".
23396         (GLIBC_VERSION): New macro.
23397         (hard_locale): Assume setlocale exists.
23398         Rewrite to avoid #ifdef.
23399         Use strdup rather than malloc + strcpy.
23400         * lib/human.c: Assume <locale.h> exists.
23401         (human_readable): Assume localeconv exists.
23402
23403 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23404
23405         * modules/hard-locale (Depends-on): Add strdup.
23406
23407 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
23408
23409         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
23410         convert T2, not T.  (Imported from libc.)
23411
23412 2004-11-30  Simon Josefsson  <jas@extundo.com>
23413
23414         * modules/restrict (License): Change to LGPL.
23415
23416 2004-11-30  Simon Josefsson  <jas@extundo.com>
23417
23418         * m4/restrict.m4: Add copyright and copying conditions.
23419
23420 2004-11-30  Simon Josefsson  <jas@extundo.com>
23421
23422         * m4/base64.m4: New file.
23423
23424 2004-11-30  Simon Josefsson  <jas@extundo.com>
23425
23426         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
23427         base64.
23428
23429         * tests/test-base64.c: New file.
23430
23431         * modules/base64: New file.
23432
23433 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
23434
23435         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
23436         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
23437
23438         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
23439
23440 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
23441
23442         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
23443         (__getcwd.c): Don't restore errno; glibc doesn't.
23444         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
23445         first, falling back to our code only if its results look suspicious.
23446         Ensure that the resulting buffer is only as large as necessary.
23447
23448         * lib/readutmp.c: Include readutmp.h first.
23449         Include <errno.h>, since readutmp.h no longer does that.
23450         * lib/readutmp.h: Don't include <errno.h>,
23451         <sys/param.h>, <time.h>; not needed to establish interface.
23452         (errno): Remove decl.
23453         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
23454         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
23455         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
23456
23457 2004-11-28  Simon Josefsson  <jas@extundo.com>
23458
23459         * lib/base64.h, base64.c: New file.
23460
23461 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
23462
23463         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
23464
23465 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
23466
23467         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
23468         (Depends-on): Remove pathmax, same.  Add mempcpy.
23469         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
23470         (Makefile.am): Append getcwd.h to lib_SOURCES.
23471         (Include): Add getcwd.h.
23472         (Maintainer): Change from Jim Meyering to "all, glibc",
23473         since getdate now uses intended-for-glibc code.
23474         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
23475         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
23476
23477 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
23478
23479         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
23480         HP's ANSI C compiler.
23481         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
23482         Declaring int functions causes warnings on some modern systems and
23483         shouldn't be needed to compile on ancient ones.
23484         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
23485         defined.
23486
23487         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
23488         with the following changes.
23489         (__set_errno): Parenthesize properly.
23490         Include <stdbool.h>.
23491         (MIN, MAX, MATCHING_INO): New macros.
23492         (__getcwd): Define with prototype, not K&R form.
23493         Use heuristics to allocate default buffer on stack if possible.
23494         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
23495         behavior, and to avoid the PATH_MAX limit when computing
23496         ../../../../...
23497         Use MATCHING_INO to compare inode number to file.
23498         Check for arithmetic overflow in size calculations.
23499         Fix bug in reallocation of dot array that caused getcwd to fail
23500         on directories nested deeper than 75.
23501         Be more careful about saving errno on error.
23502         Do not use realloc; use only free+malloc, as this is a bit
23503         more flexible and avoids a needless copy operation.
23504         Do not inspect st_dev and st_ino for symbolic links; POSIX
23505         doesn't specify the latter.
23506         Check for closedir errors.
23507         Avoid needless casts.
23508         Use "#ifdef weak_alias" around weak_alias, to be like other
23509         glibc code.
23510         The following changes to getcwd.c have effect only when used in
23511         gnulib; they have no effect inside glibc proper.
23512         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
23513         as alloca isn't used.
23514         (alloca, __alloca): Likewise.
23515         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
23516         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
23517         unconditionally, as gnulib assumes C89 or better.
23518         Do not include <sys/param.h>.
23519         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
23520         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
23521         better.
23522         (NULL) [!defined NULL]: Remove; we assume C89 or better.
23523         Include <dirent.h> in a way that is compatible with modern Autoconf.
23524         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
23525         New macros, if not already defined.
23526         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
23527         Use "_LIBC", not "defined _LIBC", for consistency.
23528         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
23529         a mempcpy module.
23530         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
23531         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
23532         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
23533         credit only to Jim Meyering and adjust the copyright dates.
23534         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
23535         <stdlib.h>, <unistd.h>, "pathmax.h".
23536         Instead, include "xgetcwd.h" (first) and "getcwd.h".
23537         (INITIAL_BUFFER_SIZE): Remove.
23538         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
23539
23540 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
23541
23542         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
23543         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
23544         Use the _ONCE methods, for efficiency.
23545         Check for fcntl.h.  In test program, include <errno.h>
23546         and <fcntl.h> if available.  Remove old K&R cruft from
23547         test program.  Check for common errors in GNU/Linux,
23548         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
23549         don't do AC_LIBOBJ, as that's getcwd.m4's job.
23550         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
23551         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
23552         name accordingly.
23553         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
23554         accommodate new getcwd.c.
23555         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
23556         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
23557         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
23558         that's all we need now.
23559
23560 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23561
23562         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
23563         argp-parse.c depends on getopt internals, that means we should
23564         always use our getopt, to be on the safe side.
23565         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
23566         order not to spoil the result of an eventual previous invocation
23567         of gl_GETOPT_SUBSTITUTE.
23568
23569 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23570
23571         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
23572         redefinition warnings. To avoid them, include the defines
23573         in `#if !defined __need_getopt ... #endif'. The only place
23574         where __getopt_argv_const is used is in definitions
23575         of getopt_long and getopt_long_only below, which are as well
23576         protected by `#ifndef __need_getopt'.
23577         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
23578         __need_getopt after including <stdio.h> and <unistd.h> These
23579         headers might have defined it.
23580
23581 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
23582
23583         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
23584
23585 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
23586
23587         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
23588         (futimens): New function, which uses futimes if available.
23589         (futimens, utimens): Support timespec==NULL, with same semantics
23590         as utime and utimens.
23591         * lib/utimens.h (futimens): New decl.
23592
23593 2004-11-23  Jim Meyering  <jim@meyering.net>
23594
23595         * lib/getopt_.h: Remove trailing blanks.
23596
23597 2004-11-23  Jim Meyering  <jim@meyering.net>
23598
23599         * lib/__fpending.c: Add comment.
23600
23601 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
23602
23603         * modules/canonicalize (Depends-on): Add xreadlink.
23604         Problem reported by James Youngman.
23605
23606 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
23607
23608         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
23609         New macros.
23610         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
23611         optopt): Use them instead of invoking ## directly; otherwise, the
23612         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
23613
23614 2004-11-19  Bruno Haible  <bruno@clisp.org>
23615
23616         * lib/strtok_r.c: Move comments from here...
23617         * lib/strtok_r.h: ... to here.
23618
23619 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23620
23621         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
23622         implementations that mishandle size_t overflow.
23623
23624 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23625
23626         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
23627         might fail.  Problem reported by Yoann Vandoorselaere.
23628         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
23629         implementations that mishandle size_t overflow.
23630
23631 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23632
23633         * modules/canon-host (Depends-on): Add strdup.
23634
23635 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23636
23637         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
23638
23639 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23640
23641         * lib/canon-host.c: Include "strdup.h".
23642         (canon_host): Use getaddrinfo if available, so that IPv6 works.
23643         Use strdup instead of malloc/strcpy to duplicate strings.
23644
23645         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
23646         (human_space_before_unit): New constant.
23647         * lib/human.c (human_readable): Support it.
23648
23649         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
23650         (xgetcwd): Set errno correctly when failing.
23651         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
23652         the failure is actually due to a PATH_MAX problem.
23653
23654         Further getopt changes to make it more likely that glibc will
23655         buy the changes back.
23656         * lib/getopt.c (POSIXLY_CORRECT): New constant.
23657         (getopt): Use it, so to preserve glibc semantic
23658         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
23659         when compiling for libc.
23660         * lib/getopt_.h (__getopt_argv_const): Bring it back.
23661         (getopt_long, getopt_long_only): Use it.
23662
23663         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
23664         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
23665         (getopt): Argv is now char * const *, as per standard.
23666         (_getopt_internal_r, _getopt_internal): Argv is now char **,
23667         not char *__getopt_argv_const *.
23668         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
23669         _getopt_long_only_r): Likewise.
23670         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
23671         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
23672         _getopt_long_r, _getopt_long_only_r): Likewise.
23673         * lib/getopt_.h (__getopt_argv_const): Remove.
23674         (getopt): Argv is now char * const *, as per standard.
23675
23676         * lib/getdate.y (tORDINAL): New token.
23677         (day, relunit): Allow it for relative times.
23678         (relative_time_table): Use tORDINAL for ordinals.
23679
23680 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23681
23682         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
23683         Document that "second" isn't allowed as an ordinal number.
23684
23685 2004-11-16  Jim Meyering  <jim@meyering.net>
23686
23687         * modules/closeout (Depends-on): Add fpending.
23688
23689 2004-11-15  Jim Meyering  <jim@meyering.net>
23690
23691         * lib/closeout.c: Include "__fpending.h" once again.
23692         Include <stdbool.h>.
23693         (close_stdout): Don't fail just because stdout was closed initially,
23694         since some programs don't write to stdout in the normal course of
23695         operation (other than --version and --help), and we don't want this
23696         function to make e.g. `touch file >&-' fail.
23697         But do fail if it was closed and someone has tried to write to it.
23698         E.g., `printf foo >&-' must fail.
23699
23700 2004-11-13  Jim Meyering  <jim@meyering.net>
23701
23702         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
23703
23704 2004-11-12  Simon Josefsson  <jas@extundo.com>
23705
23706         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
23707         small doc fix is still pending.
23708
23709 2004-11-11  Simon Josefsson  <jas@extundo.com>
23710
23711         * modules/strtok_r: New file.
23712
23713         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23714         strtok_r.
23715
23716 2004-11-11  Simon Josefsson  <jas@extundo.com>
23717
23718         * m4/strtok_r.m4: New file.
23719
23720         * m4/getopt.m4: Replace opterr.
23721
23722 2004-11-11  Simon Josefsson  <jas@extundo.com>
23723
23724         * lib/strtok_r.h, strtok_r.c: New file.
23725
23726 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
23727
23728         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
23729         of replacing opterr, getopt, etc.  This should handle the
23730         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
23731
23732 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
23733
23734         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
23735         we can stop lying to compilers about the constness of argv when we
23736         are compiled outside glibc.
23737         (getopt, getopt_long, getopt_long_only): Use it.
23738         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
23739         _getopt_internal, getopt): Likewise.
23740         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
23741         _getopt_long_only_r): Likewise.
23742         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
23743         _getopt_long_r, _getopt_long_only_r): Likewise.
23744
23745         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
23746         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
23747         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
23748         the other external symbols.
23749         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
23750         declaration, since the above renaming now works around collisions.
23751
23752 2004-11-11  Jim Meyering  <jim@meyering.net>
23753
23754         * lib/linebreak.c: Remove trailing blanks.
23755         * lib/alloca_.h: Likewise.
23756         * lib/acosl.c: Likewise.
23757         * lib/euidaccess.c: Likewise.
23758         * lib/allocsa.h: Likewise.
23759
23760 2004-11-10  Simon Josefsson  <jas@extundo.com>
23761
23762         * m4/getaddrinfo.m4: New file.
23763
23764 2004-11-10  Simon Josefsson  <jas@extundo.com>
23765
23766         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
23767
23768 2004-11-10  Simon Josefsson  <jas@extundo.com>
23769
23770         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23771         getaddrinfo.
23772
23773         * modules/getaddrinfo: New file.
23774
23775 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
23776
23777         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
23778
23779 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
23780
23781         * lib/mktime.c (SHR): New macro, which is a portable
23782         substitute for >> that should work even on Crays.
23783         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
23784         Problem reported by Mark D. Baushke in
23785         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
23786         * lib/getdate.y (SHR): Likewise.
23787         (tm_diff): Use it.
23788         * lib/strftime.c (SHR): Likewise.
23789         (tm_diff): Use it.
23790         * lib/quotearg.c (struct quoting_options): Use unsigned int for
23791         quote_these_too, so that right shifts are well defined.  All uses
23792         changed.
23793
23794 2004-11-10  Jim Meyering  <jim@meyering.net>
23795
23796         Ensure that no close failure goes unreported.
23797         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
23798         return early when it seems there's nothing to flush.
23799         Don't include __fpending.h.
23800
23801 2004-11-10  Jim Meyering  <jim@meyering.net>
23802
23803         * modules/closeout (Depends-on): Remove fpending.
23804
23805 2004-11-10  Jim Meyering  <jim@meyering.net>
23806
23807         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
23808
23809 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23810
23811         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
23812         gl_FUNC_STRFTIME.
23813         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
23814         and AC_REQUIRE when possible, to avoid duplicate checks.
23815         Check for <wchar.h>.
23816
23817 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23818
23819         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
23820
23821 2004-11-09  Bruno Haible  <bruno@clisp.org>
23822
23823         * m4/sockpfaf.m4: New file.
23824
23825 2004-11-05  Bruno Haible  <bruno@clisp.org>
23826
23827         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
23828         Reported by Mark D. Baushke <mdb@cvshome.org>.
23829
23830 2004-11-04  Bruno Haible  <bruno@clisp.org>
23831
23832         2004-09-11  Bruno Haible  <bruno@clisp.org>
23833                 * allocsa.valgrind: New file.
23834         2004-02-06  Bruno Haible  <bruno@clisp.org>
23835                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
23836                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
23837                 Reported by Christopher Seip <chris.seip@hp.com>.
23838
23839 2004-11-04  Bruno Haible  <bruno@clisp.org>
23840
23841         * modules/allocsa (Files): Add lib/allocsa.valgrind.
23842         (Makefile.am): Distribute it.
23843
23844 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
23845
23846         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
23847         with errno == ERANGE if the buffer is too small.
23848         Problem reported by Mark D. Baushke.
23849
23850 2004-11-03  Albert Chin  <china@thewrittenword.com>
23851             Paul Eggert  <eggert@cs.ucla.edu>
23852
23853         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
23854         equivalent, substitute $ac_type for equivalent type rather than
23855         blindly using uint32_t *always* which won't work if uint32_t is not
23856         available.  Define _UINT32_T to work around typedef of uint32_t if
23857         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
23858         2.5.1.
23859
23860 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23861
23862         * m4/jm-macros.m4: Sync from coreutils.
23863         (gl_MACROS): Check for mbrlen, for pathchk.
23864         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
23865
23866 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23867
23868         * lib/xreadlink.c (MAXSIZE): New macro.
23869         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
23870         size does not exceed MAXSIZE.  Avoid cast.
23871         As suggested by Mark D. Baushke in
23872         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
23873         if readlink fails with buffer size just under MAXSIZE, try again
23874         with MAXSIZE.
23875
23876 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
23877
23878         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
23879
23880 2004-11-02  Derek R. Price  <derek@ximbiot.com>
23881         and  Paul Eggert  <eggert@cs.ucla.edu>
23882
23883         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
23884         (get_date): Overparenthesize to avoid GCC warning.
23885
23886 2004-11-02  Bruno Haible  <bruno@clisp.org>
23887
23888         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
23889         returns void.
23890
23891 2004-11-02  Bruno Haible  <bruno@clisp.org>
23892
23893         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
23894         function returns void.
23895
23896 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
23897
23898         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
23899         fflush_unlocked, flockfile, funlockfile, funlockfile,
23900         fputs_unlocked, putc_unlocked.
23901
23902 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
23903
23904         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
23905         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
23906         already declared.
23907
23908 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23909
23910         * modules/getdate (Files): Add doc/getdate.texi.
23911         (Depends-on): Add setenv, xalloc.
23912
23913 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23914
23915         * lib/getdate.y: Add support for TZ="foo" within a date string.
23916         Fix some bugs near time_t boundaries.  Reject dates with
23917         out-of-range components, e.g., "Sept 31".
23918         Include <stdlib.h>, "setenv.h", "xalloc.h".
23919         (ISDIGIT_LOCALE): Remove; unused.
23920         Note that the TZ and time functions used here are not reentrant.
23921         (mktime_ok, get_tz): New functions.
23922         (TZBUFSIZE): New constant.
23923         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
23924         This requires that we sometimes generate our own TZ="XXX..." setting.
23925
23926 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
23927
23928         * doc/getdate.texi: New file, from coreutils with modifications for
23929         the new TZ parsing.
23930
23931 2004-10-27  Derek R. Price  <derek@ximbiot.com>
23932
23933         * lib/mktime.c (not_equal_tm): Remove redundant check.
23934
23935 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23936
23937         * modules/regex (lib_SOURCES): Add regex.c.
23938         Reported by James Youngman in
23939         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
23940
23941 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23942
23943         * lib/getdate.y: Use Bison 1.875 features, and some minor
23944         code cleanups.  This change does not affect semantics.
23945         Don't include <stdlib.h>; no longer needed.
23946         Don't include unlocked-io.h; only the "#if TEST" code uses
23947         stdio, and performance isn't crucial there.
23948         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
23949         Bison 1.875 features as described below.
23950         All uses of "PC." replaced by "pc->".
23951         (YYSTYPE): Add a forward declaration.
23952         (yylex, yyerror): Use full prototypes in forward decls.
23953         Use "%pure-parser" rather than obsolescent "%pure_parser".
23954         Use %parse-param and %lex-param instead of obsolescent
23955         YYPARSE_PARAM and YYLEX_PARAM.
23956         (meridian_table, month_and_day_table, time_units_table,
23957         relative_time_table, time_zone_table, military_table,
23958         lookup_zone, lookup_word, get_date):
23959         Use NULL instead of 0 where appropriate.
23960         (to_hour): Avoid abort (), to avoid a dependency on
23961         stdlib.h.
23962         (yyerror, yylex): Now accepts parser_control * arg.
23963         (main) [TEST]: Use '\0' rather than 0 for char.
23964
23965 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
23966
23967         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
23968
23969 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
23970
23971         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
23972         It's now the caller's responsibility to handle the case where
23973         !HAVE_GETPAGESIZE && !defined getpagesize.
23974
23975         * lib/mktime.c (leapyear): Arg is long int, not int.
23976
23977 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
23978
23979         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
23980
23981 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
23982
23983         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
23984         missing.  Problem reported by James Youngman.
23985
23986 2004-10-16  Simon Josefsson  <jas@extundo.com>
23987
23988         * gnulib-tool: Fix comments.  Fix parse problem.
23989         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
23990
23991 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
23992
23993         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
23994         implementation of getopt_long.  Problem reported by Alexander Taler in:
23995         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
23996
23997 2004-10-15  Bruno Haible  <bruno@clisp.org>
23998
23999         * gnulib-tool: Untabify. Initialize supplied_libname.
24000         (func_usage): More homogenous output.
24001         (func_modules_transitive_closure, func_modules_to_filelist,
24002         func_emit_lib_Makefile_am): New functions.
24003         (func_import): New function, extracted from big case statement. Use
24004         func_get_license, func_modules_transitive_closure,
24005         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
24006         opt_lgpl. Don't use test -a, as it's not portable.
24007         (func_create_testdir): Use func_modules_transitive_closure,
24008         func_modules_to_filelist, func_emit_lib_Makefile_am.
24009
24010 2004-10-15  Bruno Haible  <bruno@clisp.org>
24011
24012         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
24013
24014 2004-10-15  Bruno Haible  <bruno@clisp.org>
24015
24016         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
24017         the portions belonging to each module.
24018         Suggested by Derek Robert Price <derek@ximbiot.com>.
24019
24020 2004-10-12  Simon Josefsson  <jas@extundo.com>
24021
24022         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
24023         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
24024         to real functions.
24025
24026 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24027
24028         * modules/vsnprintf: New file.
24029
24030 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24031
24032         * m4/vsnprintf.m4: New file.
24033
24034 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24035
24036         * lib/vsnprintf.h: New file.
24037         * lib/vsnprintf.c: New file.
24038
24039 2004-10-11  Bruno Haible  <bruno@clisp.org>
24040
24041         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
24042         vsnprintf.
24043
24044 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24045
24046         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
24047
24048 2004-10-07  Bruno Haible  <bruno@clisp.org>
24049
24050         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
24051         fits into the provided buffer.
24052
24053 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
24054
24055         * lib/diacrit.c, diacrit.h: Add GPL notice.
24056
24057         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
24058         notice.
24059         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
24060         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
24061         This avoids a potential constant-folding bug.
24062
24063 2004-10-05  Bruno Haible  <bruno@clisp.org>
24064
24065         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
24066         for the declaration of strsep.
24067
24068 2004-10-05  Bruno Haible  <bruno@clisp.org>
24069
24070         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
24071
24072 2004-10-04  Simon Josefsson  <jas@extundo.com>
24073
24074         * modules/memmem: New file.
24075         * tests/test-memmem.c: New file.
24076         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
24077
24078 2004-10-04  Simon Josefsson  <jas@extundo.com>
24079
24080         * m4/memmem.m4: New file.
24081
24082 2004-10-04  Simon Josefsson  <jas@extundo.com>
24083
24084         * lib/memmem.h: New file.
24085         * lib/memmem.c: New file, taken from glibc.
24086
24087 2004-10-04  Simon Josefsson  <jas@extundo.com>
24088
24089         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
24090         '#ifdef USE_UNLOCKED_IO'.
24091
24092 2004-10-04  Simon Josefsson  <jas@extundo.com>
24093
24094         * config/srclist.txt: Add memmem from glibc.
24095
24096 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24097
24098         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
24099
24100         * modules/argmatch, modules/argp, modules/closeout, modules/error,
24101         modules/exclude, modules/getdate, modules/getline,
24102         modules/getndelim2, modules/getpass, modules/getpass-gnu,
24103         modules/getusershell, modules/linebuffer, modules/md5,
24104         modules/mountlist, modules/posixtm, modules/readtokens,
24105         modules/readutmp, modules/regex, modules/sha1,
24106         modules/version-etc, modules/yesno:
24107         Remove dependency on unlocked-io.
24108
24109 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24110
24111         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
24112
24113         * m4/unlocked-io.m4: Add copyright notice.
24114         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
24115
24116 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24117
24118         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
24119         * lib/xmalloc.c (xmemdup): Likewise.
24120         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
24121         XFREE): Remove these long-obsolescent macros.
24122         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
24123         * lib/xstrdup.c: Remove.
24124
24125         * lib/regex.c (re_comp): Cast gettext return value to char *,
24126         Problem reported by Martin Neitzel via Mark D. Baushke.
24127
24128 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24129
24130         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
24131         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
24132         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
24133         regex.c, sha1.c, version-etc.c, yesno.c:
24134         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
24135         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
24136         the includer's responsibility.
24137
24138         Sync from coreutils.
24139
24140         * lib/modechange.c (mode_compile): Don't decrement a pointer that
24141         points to the start of a string, as the C Standard says the
24142         resulting behavior is undefined.
24143
24144         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
24145         simple -> simple_backups, numbered_existing ->
24146         numbered_existing_backups, numbered -> numbered_backups
24147         to avoid shadowing problems.  All uses changed.
24148         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
24149         * lib/backupfile.c (check_extension, numbered_backup):
24150         Rename locals to avoid shadowing 'basename'.
24151         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
24152         once.
24153
24154         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
24155         * lib/.cvsignore: Add getopt.h.
24156
24157 2004-10-04  Bruno Haible  <bruno@clisp.org>
24158
24159         * modules/README: New file.
24160         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
24161         not a module.
24162
24163 2004-10-02  Jim Meyering  <jim@meyering.net>
24164
24165         * lib/dirfd.h, getpagesize.h: Add copyright notice.
24166
24167 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24168
24169         * modules/strsep: New file.
24170
24171 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24172
24173         * m4/strsep.m4: New file.
24174
24175 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24176
24177         * lib/strsep.h: New file.
24178         * lib/strsep.c: New file.
24179
24180 2004-10-01  Simon Josefsson  <jas@extundo.com>
24181
24182         * lib/snprintf.c (snprintf): Handle size==0.
24183
24184 2004-10-01  Simon Josefsson  <jas@extundo.com>
24185             Bruno Haible  <bruno@clisp.org>
24186
24187         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
24188         (snprintf): Declare 'args'.
24189
24190 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
24191
24192         * lib/snprintf.c: Remove comments as to why each header is needed.
24193
24194 2004-10-01  Bruno Haible  <bruno@clisp.org>
24195
24196         * MODULES.html.sh: Add strsep.
24197
24198 2004-09-30  Simon Josefsson  <jas@extundo.com>
24199
24200         * modules/snprintf: New file.
24201
24202 2004-09-30  Simon Josefsson  <jas@extundo.com>
24203
24204         * m4/snprintf.m4: New file.
24205
24206 2004-09-30  Simon Josefsson  <jas@extundo.com>
24207
24208         * lib/snprintf.h, lib/snprintf.c: New files.
24209
24210 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24211
24212         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
24213         (hol_entry_help): Never translate an empty string.
24214         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
24215         * lib/argp.h (OPTION_NO_TRANS): New option.
24216
24217 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24218
24219         * modules/argp (Maintainer): Replace Simon Josefsson
24220         by Sergey Poznyakoff.
24221
24222 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24223
24224         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
24225         changes merged back into glibc.
24226
24227 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24228
24229         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
24230
24231 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
24232
24233         * lib/xvasprintf.c: Include xalloc.h.
24234         (xvasprintf): Use xalloc_die, not xmalloc_die.
24235
24236 2004-09-29  Bruno Haible  <bruno@clisp.org>
24237
24238         * modules/alloca-opt: New file, derived from modules/alloca.
24239         * modules/allocsa: Depend on alloca-opt instead of alloca.
24240         * modules/setenv: Likewise.
24241         * modules/vasnprintf: Likewise.
24242         * MODULES.html.sh: Add alloca-opt.
24243
24244 2004-09-28  Simon Josefsson  <jas@extundo.com>
24245
24246         * gnulib-tool: New parameter --lgpl, to asseert that modules are
24247         LGPL, and to replace license template from GPL to LGPL.
24248
24249 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
24250
24251         * modules/dummy: Change license to LGPL.
24252
24253 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
24254
24255         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
24256
24257 2004-09-24  Simon Josefsson  <jas@extundo.com>
24258
24259         * modules/minmax (License): Change from GPL to LGPL.
24260
24261 2004-09-23  Simon Josefsson  <jas@extundo.com>
24262
24263         * gnulib-tool (--import): Typo.
24264
24265 2004-09-23  Simon Josefsson  <jas@extundo.com>
24266
24267         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
24268
24269 2004-09-22  Bruno Haible  <bruno@clisp.org>
24270
24271         * modules/*: Add 'License' field.
24272         * gnulib-tool: Accept --extract-license option.
24273         (func_get_license): New function.
24274
24275 2004-09-21  Bruno Haible  <bruno@clisp.org>
24276
24277         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
24278         Reported by Simon Josefsson.
24279
24280 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24281
24282         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
24283         gl_AC_TYPE_LONG_LONG.
24284
24285 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24286
24287         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
24288
24289 2004-09-18  Simon Josefsson  <jas@extundo.com>
24290         and  Paul Eggert  <eggert@cs.ucla.edu>
24291
24292         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
24293         calls with autoreconf.  Define GL_LIB.
24294
24295 2004-09-14  Karl Berry  <karl@gnu.org>
24296
24297         * config/srclist.txt: unsync setenv.c, sigh.
24298
24299 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24300
24301         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
24302         Problem reported by Bruno Haible in:
24303         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
24304
24305 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24306
24307         * config/srclist.txt: Comment out argp-pvh.c.
24308
24309 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
24310
24311         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
24312         in case some system header has #define'd it.  Problem reported by
24313         Soeren D. Schulze in
24314         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
24315
24316 2004-09-09  Karl Berry  <karl@gnu.org>
24317
24318         * regex.[ch]: delete from the root.  These were supposed to be
24319                 synced with emacs cvs, but this has not happened for about
24320                 a year, and anyway nothing else uses emacs regex.[ch].
24321                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
24322                 lib/regex[.ch] is untouched.
24323
24324 2004-09-09  Bruno Haible  <bruno@clisp.org>
24325
24326         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
24327
24328 2004-09-09  Bruno Haible  <bruno@clisp.org>
24329
24330         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
24331         modifications.
24332         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
24333
24334 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
24335
24336         * modules/xvasprintf: New file.
24337         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
24338
24339 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
24340
24341         * lib/xvasprintf.h: New file.
24342         * lib/xvasprintf.c: New file.
24343         * lib/xasprintf.c: New file.
24344
24345 2004-09-08  Bruno Haible  <bruno@clisp.org>
24346
24347         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
24348
24349 2004-09-08  Bruno Haible  <bruno@clisp.org>
24350
24351         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
24352         length is > INT_MAX.
24353         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
24354         more.
24355
24356 2004-09-08  Bruno Haible  <bruno@clisp.org>
24357
24358         * lib/stdint_.h: New file, taken from GNU clisp.
24359
24360 2004-09-08  Bruno Haible  <bruno@clisp.org>
24361             Oskar Liljeblad  <oskar@osk.mine.nu>
24362
24363         * modules/stdint: New file.
24364         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
24365
24366 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24367
24368         Import from coreutils.
24369         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
24370         strings on unbounded length.  alloca's performance benefits aren't
24371         that important here.
24372         (V_STRDUP): Remove.
24373         (parse_with_separator): New function, with most of the internals
24374         of the old parse_user_spec.  Allow user to omit both user and group,
24375         for compatibility with FreeBSD.
24376         Clone only the user name, not the entire spec.
24377         Do not set *uid, *gid unless entirely successful.
24378         Avoid memory leak in some failing cases.
24379         Fix regression for USER.GROUP reported by Dmitry V. Levin in
24380         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
24381         (parse_user_spec): Rewrite to use parse_with_separator.
24382
24383 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24384
24385         * modules/userspec: Don't depend on alloca.
24386
24387 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24388
24389         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
24390
24391 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
24392
24393         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
24394         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
24395         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
24396
24397 2004-08-16  Simon Josefsson  <jas@extundo.com>
24398
24399         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
24400         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
24401         Add --dry-run for --import.
24402         Let user provided command line parameters override configure.ac
24403         settings.
24404
24405 2004-08-12  Simon Josefsson  <jas@extundo.com>
24406
24407         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
24408         as discussed with Paul Eggert in threads rooted at
24409         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
24410         and
24411         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
24412         Before, the test was empty, and relied on ELIDE_CODE in source
24413         code.)
24414         (gl_PREREQ_GETOPT): New macro.
24415         (gl_GETOPT): Use them.
24416
24417 2004-08-12  Simon Josefsson  <jas@extundo.com>
24418
24419         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
24420         * lib/getopt_.h: Renamed from getopt.h.
24421
24422 2004-08-12  Simon Josefsson  <jas@extundo.com>
24423
24424         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
24425         Change default library name from libfoo to libgnu.
24426         Now, if you have a configure.ac that says:
24427                 gl_SOURCE_BASE(gl)
24428                 gl_M4_BASE(gl/m4)
24429                 gl_MODULES(error getopt etcetera)
24430                 gl_INIT
24431         you can import all you need by running:
24432                 ../gnulib/gnulib-tool --import
24433
24434         * modules/getopt (Files): Rename getopt.h to getopt_.h.
24435         (Makefile.am): Rewrite, use logic from argz.
24436         (Include): Use <getopt.h> instead of "getopt.h".
24437
24438 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24439
24440         * modules/argp (Files): Add m4/unlocked-io.m4.
24441         (Depends-on): Add extensions.
24442
24443 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24444
24445         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
24446         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
24447         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
24448         Check for program_invocation_name, program_invocation_short_name,
24449         flockfile, funlockfile, features.h, _getopt_long_only_r.
24450
24451 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24452
24453         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
24454         its complicated substitute.
24455         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
24456         and program_invocation_name.
24457         (__argp_basename) [!_LIBC]: Remove; the only use was
24458         replaced by its body.
24459         (__argp_short_program_name): Change condition from
24460         !defined __argp_short_program_name to
24461         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
24462         to match argp-namefrob.h.
24463         (__argp_failure): Don't assume strerror_r returns char *.
24464         * lib/argp-parse.c (N_): Define unconditionally.
24465         (argp_default_options): Fill out initializers with 0 to avoid
24466         gcc warnings.
24467
24468 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24469
24470         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
24471         getopt1.c.
24472
24473 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24474
24475         Merge from coreutils.
24476
24477         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
24478
24479         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
24480         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
24481
24482 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24483
24484         Merge from coreutils.
24485
24486         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
24487         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
24488         for Reliant Unix 5.43.
24489
24490         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
24491         (union fooround): Use uintmax_t, not long int.
24492         The rest is a merge from libc:
24493         [defined _LIBC]: Include <shlib-compat.h>.
24494         (_obstack) [defined _LIBC]: Remove after 2.3.4.
24495
24496         * lib/settime.c (settime): Recode to avoid warning with
24497         Sun Forte C 6U2.
24498
24499         * lib/strverscmp.c: Convert to UTF-8.
24500
24501 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24502
24503         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
24504         m4/uintmax_t.m4.
24505
24506 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24507
24508         * modules/xalloc-die: New file.
24509         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
24510
24511         * modules/md5 (Files): Add m4/uint32_t.m4.
24512         * modules/sha1: Renamed from modules/sha.
24513         (Files):
24514         Rename lib/sha.h to lib/sha1.h.
24515         Rename lib/sha.c to lib/sha1.c.
24516         Rename m4/sha.m4 to m4/sha1.m4.
24517         (lib_SOURCES): Likewise.
24518         (configure.ac): Rename gl_SHA to gl_SHA1.
24519         (Include): sha.h -> sha1.h.
24520
24521 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24522
24523         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
24524         * m4/sha1.m4: Renamed from sha.m4.
24525         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
24526
24527 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24528
24529         * lib/obstack.h (obstack_empty_p):
24530         Don't assume that chunk->contents is suitably aligned.
24531         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
24532         Likewise. Problem reported by Benno in
24533         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
24534
24535         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
24536         readable.  This could be improved further but it'd take some work.
24537
24538 2004-08-08  Simon Josefsson  <jas@extundo.com>
24539
24540         * modules/xgethostname (Depends-on): Remove exit and error (not
24541         used).
24542
24543         * modules/getpass-gnu: Add getpass.h.
24544         (Depends-on): Add stdbool.
24545         * modules/getpass: Add getpass.h.
24546
24547 2004-08-08  Simon Josefsson  <jas@extundo.com>
24548
24549         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
24550         Check getpass declaration.
24551
24552 2004-08-08  Simon Josefsson  <jas@extundo.com>
24553
24554         * lib/xgethostname.c: Don't include error.h (not used).
24555
24556         * lib/getpass.h: Add.
24557         * lib/getpass.c: Include getpass.h first.
24558
24559 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
24560
24561         * lib/xalloc-die.c: New file.
24562         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
24563         All uses removed.
24564         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
24565         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
24566         xalloc-die.c.
24567         (_, N_, xalloc_die): Move to xalloc-die.c.
24568         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
24569         so that we needn't mess with xalloc_msg_memory_exhausted.
24570
24571         * lib/sha1.h: Renamed from sha.h.
24572         (SHA1_H): Renamed from _SHA_H.
24573         (sha1_ctx): Renamed from sha_ctx.
24574         (sha1_init_ctx): Renamed from sha_init_ctx.
24575         (sha1_process_block): Renamed from sha_process_block.
24576         (sha1_process_bytes): Renamed from sha_process_bytes.
24577         (sha1_finish_ctx): Renamed from sha_finish_ctx.
24578         (sha1_read_ctx): Renamed from sha_read_ctx.
24579         (sha1_stream): Renamed from sha_stream.
24580         (sha1_buffer): Renamed from sha_buffer.
24581         * lib/sha1.c: Likewise; renamed from sha.c.
24582         Do not include <sys/types.h>.
24583         Include <stddef.h> rather than <stdlib.h>.
24584
24585 2004-08-08  Bruno Haible  <bruno@clisp.org>
24586
24587         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
24588         FILESYSTEM_PREFIX_LEN.
24589         * lib/progreloc.c: Likewise.
24590         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
24591
24592 2004-08-06  Simon Josefsson  <jas@extundo.com>
24593
24594         * modules/progname (Depends-on): Don't depend on stdbool.
24595
24596 2004-08-06  Simon Josefsson  <jas@extundo.com>
24597
24598         * modules/getsubopt: New file.
24599         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24600         getsubopt.
24601
24602 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24603
24604         More merge from coreutils.
24605
24606         * m4/utimens.m4, m4/utimecmp.m4: New files.
24607         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
24608         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
24609         prereq.m4, sha.m4: Import changes from coreutils.
24610
24611 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24612
24613         More merge from coreutils.
24614         * modules/raise, modules/readtokens0, modules/utimens:
24615         * modules/utimecmp, module/xnanosleep: New files.
24616         * modules/strftime: Add lib/strftime.h.
24617         Change include from <time.h> to "strftime.h".
24618         * modules/yesno: Add lib/yesno.h.
24619         * modules/backupfile: Remove lib/addext.c.
24620         * modules/euidaccess: Add stat-macros.h.
24621         * modules/canonicalize, modules/euidaccess,
24622         modules/filemode, modules/lchown, modules/makepath,
24623         modules/rmdir, modules/stat: Likewise.
24624
24625 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24626
24627         Merge from tar.
24628         * lib/argp-help.c (make_hol, hol_append): Don't assume that
24629         SIZE_MAX is a valid preprocessor constant.
24630         (__argp_basename): Change from "#ifndef _LIBC"
24631         to "#ifndef __argp_short_program_name", so that
24632         we don't compile these functions for tar.
24633
24634         More merges from coreutils.
24635         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
24636         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
24637         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
24638         * lib/addext.c: Remove; no longer needed.
24639         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
24640         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
24641         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
24642         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
24643         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
24644         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
24645         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
24646         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
24647         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
24648         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
24649         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
24650         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
24651         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
24652         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
24653         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
24654         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
24655         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
24656         Import changes from coreutils.
24657
24658 2004-08-05  Simon Josefsson  <jas@extundo.com>
24659
24660         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
24661
24662 2004-08-05  Simon Josefsson  <jas@extundo.com>
24663
24664         * m4/getsubopt.m4: New file.
24665
24666 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24667
24668         Merge from coreutils.
24669
24670         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
24671         * m4/getcwd-path-max.m4: New files.
24672
24673         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
24674         FILESYSTEM_PREFIX_LEN ->
24675         FILE_SYSTEM_PREFIX_LEN.
24676         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
24677         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
24678         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
24679         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
24680
24681         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
24682         prerequisite modules now handle the DOS stuff.
24683         Don't check for unistd.h.
24684
24685 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24686
24687         Merge from coreutils.
24688
24689         * lib/.gdb-history: Remove; this doesn't belong here.
24690
24691         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
24692         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
24693         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
24694         * lib/getcwd.c: New files.
24695
24696         * lib/dirname.h: Include <stdbool.h>.
24697         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
24698         for consistency with POSIX terminology.  All uses changed.
24699         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
24700         (strip_trailing_slashes): Use bool for booleans.
24701         * lib/stripslash.c (strip_trailing_slashes): Likewise.
24702
24703         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
24704         sometimes returns a positive errno value even when it succeeds.
24705         (print_errno_message) [!LIBC]: Fall back on strerror if
24706         __strerror_r fails.
24707
24708         * lib/path-concat.c (mempcpy): Don't define if a system header defines
24709         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
24710         (longest_relative_suffix): New function.
24711         (path_concat): Use it.  Assume first argument is not NULL.
24712         Port to DOS.  Omit redundant separators.
24713         Report an error instead of returning NULL.
24714         Use mempcpy instead of memcpy.
24715         (xpath_concat): Remove: not declared or used.
24716
24717         * lib/same.h: Include <stdbool.h>
24718         (same_name): Return bool, not int.
24719         * lib/same.c (same_name): Likewise.
24720         (errno): Don't declare; we assume C89 or better now.
24721
24722         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
24723         if not already defined.
24724
24725         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
24726         * lib/dup-safer.c (errno): Likewise.
24727
24728 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
24729
24730         Merge from coreutils.
24731         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
24732         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
24733         * modules/path-concat: Don't depend on strdup.
24734
24735 2004-08-03  Simon Josefsson  <jas@extundo.com>
24736
24737         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
24738         * lib/progname.h: Don't include stdbool.h.
24739
24740 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24741
24742         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
24743         * MODULES.html.sh (func_all_modules): Remove fatal.
24744
24745 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24746
24747         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
24748
24749 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
24750
24751         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
24752         working.
24753
24754 2004-08-02  Simon Josefsson  <jas@extundo.com>
24755
24756         * lib/getsubopt.h: New file, with comments from Bruno Haible.
24757         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
24758         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
24759
24760 2004-08-01  Simon Josefsson  <jas@extundo.com>
24761
24762         * lib/xgetdomainname.c: Include stdlib.h, for free().
24763
24764 2004-07-19  Bruno Haible  <bruno@clisp.org>
24765
24766         * MODULES.html.sh (func_all_modules): Add dummy.
24767
24768 2004-07-16  Simon Josefsson  <jas@extundo.com>
24769
24770         * modules/dummy: New file.
24771
24772 2004-07-16  Simon Josefsson  <jas@extundo.com>
24773
24774         * lib/dummy.c: New file.
24775
24776 2004-07-16  Bruno Haible  <bruno@clisp.org>
24777
24778         * lib/backupfile.h: Add extern "C" for C++.
24779         * lib/closeout.h: Likewise.
24780         * lib/copy-file.h: Likewise.
24781         * lib/findprog.h: Likewise.
24782         * lib/full-write.h: Likewise.
24783         * lib/pathname.h: Likewise.
24784         * lib/progname.h: Likewise.
24785         * lib/stpcpy.h: Likewise.
24786         * lib/stpncpy.h: Likewise.
24787         * lib/strcase.h: Likewise.
24788         * lib/strstr.h: Likewise.
24789         * lib/xalloc.h: Likewise.
24790
24791         * lib/mbswidth.h: Add extern "C" for C++.
24792         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
24793
24794 2004-07-13  Robert Millan  <robertmh@gnu.org>
24795
24796         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
24797
24798 2004-07-09  Simon Josefsson  <jas@extundo.com>
24799
24800         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
24801         failed without this.)
24802
24803 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
24804
24805         * modules/chown (Files): Add lib/fchown-stub.c, since
24806         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
24807
24808 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
24809
24810         * lib/fchown-stub.c: New file.
24811
24812 2004-06-24  Jim Meyering  <jim@meyering.net>
24813
24814         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
24815
24816 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24817
24818         * modules/argz: Omit "#include".
24819
24820         * MODULES.html.sh (func_all_modules): Add calloc, to match
24821         2004-06-01 addition of calloc module.
24822
24823 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24824
24825         * m4/argz.m4: New file, which is autoupdated from libtool.
24826
24827 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24828
24829         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
24830         libtool.
24831
24832 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
24833
24834         * config/srclist-update: Don't insist on "USA." before the
24835         close-comment, as libtool omits the period and puts the */ on a
24836         separate line.
24837         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
24838         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
24839
24840 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
24841
24842         * modules/argz: New file.
24843         * MODULES.html.sh (func_all_modules): Add argz.
24844
24845 2004-06-12  Jim Meyering  <jim@meyering.net>
24846         and  Paul Eggert  <eggert@cs.ucla.edu>
24847
24848         * modules/hash (Files): Add lib/xalloc.h.
24849         * modules/pipe (Depends-on): Add wait-process.
24850         * modules/stat (Depends-on): Add xalloc.
24851         * modules/userspec (Files): Add lib/userspec.h.
24852         * modules/xstrto
24853
24854         Upgrade from gettext-0.13.
24855         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
24856         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
24857         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
24858
24859 2004-06-10  Jim Meyering  <jim@meyering.net>
24860
24861         * lib/calloc.c: New file.
24862
24863 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
24864
24865         * lib/getdate.y (yylex): Allow space between sign and number.
24866         Problem reported by Dan Jacobson.
24867
24868 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
24869
24870         Merge from coreutils CVS.
24871
24872         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
24873         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
24874         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
24875         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
24876         xstrtol.m4: Fix copyright date and/or serial number.
24877
24878         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
24879         See if we need an fchown replacement.
24880         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
24881         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
24882         and use the replacement function if we detect either defect.
24883
24884         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
24885         gl_UTIMECMP.
24886
24887 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
24888         and  Jim Meyering  <jim@meyering.net>
24889
24890         Merge from coreutils CVS.
24891
24892         * lib/stat-macros.h: New file, with contents from file-type.h
24893         and coreutils' system.h.
24894         * lib/file-type.c: Include "stat-macros.h".
24895         * lib/file-type.h (file_type): Move all macro definitions to new file,
24896         stat-macros.h.
24897
24898         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
24899         Wrap old code with this conditional.
24900         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
24901         function that does not dereference symlinks.
24902         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
24903
24904         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
24905         dependency problems.
24906         (xreadlink): Accept new arg SIZE, for efficiency.
24907         All decls and uses changed.
24908         * lib/xreadlink.h: Include <stddef.h>, for size_t.
24909
24910         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
24911         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
24912
24913         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
24914         sysexits.h.
24915
24916 2004-06-01  Jim Meyering  <jim@meyering.net>
24917
24918         * m4/calloc.m4: New file.
24919
24920 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
24921
24922         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
24923         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
24924         Also, fix a typo in a diagnostic.
24925
24926 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24927
24928         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
24929         or AC_FUNC_REALLOC.
24930
24931 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24932
24933         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
24934         macros to be defined.
24935         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
24936         the allocator returns NULL because the requested size is zero.
24937
24938 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24939
24940         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
24941         var.  Add comment explaining why libc still defines it.  This
24942         merges the following patch from glibc:
24943         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
24944
24945 2004-05-20  Andreas Schwab  <schwab@suse.de>
24946
24947         * m4/free.m4: Replace free if it not known to work, not the other
24948         way round.
24949
24950 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24951
24952         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
24953         present in glibc since revision 1.1 of this file.
24954         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
24955         obstack_alignment_mask, obstack_alloc, obstack_base,
24956         obstack_blank, obstack_blank_fast, obstack_chunk_size,
24957         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
24958         obstack_grow0, obstack_init, obstack_int_grow,
24959         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
24960         obstack_next_free, obstack_object_size, obstack_ptr_grow,
24961         obstack_ptr_grow_fast, obstack_room): Remove declarations of
24962         nonexistent functions.
24963
24964 2004-05-18  Karl Berry  <karl@gnu.org>
24965
24966         * config/srclist.txt: break link for vasnprintf.c.
24967
24968 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24969
24970         Port obstack to the AS/400, where pointers are 16 bytes wide and
24971         you cannot cast an integer to a valid pointer.  This patch is
24972         currently waiting to be integrated into glibc; see
24973         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
24974
24975         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
24976         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
24977         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
24978         (struct obstack): temp member is now a union of a pointer and
24979         an integer, instead of an integer.  All integer uses changed.
24980         This does not affect the physical layout of struct obstack,
24981         except on hosts (like the AS/400) where the size or alignment of
24982         void * is greater than that of ptrdiff_t.
24983         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
24984         __STDC__)]: Store temporary in pointer member of union, not
24985         integer member.
24986         * lib/obstack.c: Include <stddef.h>, for offsetof.
24987         (struct fooalign): Remove; it doesn't need a name.
24988         (union fooround): Change double to long double, and add void *.
24989         (DEFAULT_ALIGNMENT): Use offsetof to compute.
24990         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
24991         not a macro.  Hence the values are always int; so remove all
24992         casts-to-int in uses.
24993
24994 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24995
24996         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
24997         we can get this patch merged into glibc.
24998
24999 2004-05-17  Derek R. Price  <derek@ximbiot.com>
25000             Paul Eggert  <eggert@cs.ucla.edu>
25001
25002         * m4/argp: Depend on alloca.
25003
25004 2004-05-17  Derek R. Price  <derek@ximbiot.com>
25005             Paul Eggert  <eggert@cs.ucla.edu>
25006
25007         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
25008         freecoding.
25009
25010 2004-05-17  Bruno Haible  <bruno@clisp.org>
25011
25012         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
25013         precision that consists of a '.' followed by an empty digit string.
25014         Patch by Tor Lillqvist <tml@iki.fi>.
25015
25016 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25017
25018         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
25019         for backward compatibility with older code.  We need our own
25020         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
25021         it under some other name, and our alloca.h will define it.
25022
25023 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25024             Derek Price  <derek@ximbiot.com>
25025
25026         * lib/alloca.c: Include <alloca.h>, to get our interface.
25027         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
25028         include <alloca.h> first.  Use C89 prototype for alloca; this
25029         requires including <stddef.h> for size_t.  Use extern "C" if C++.
25030         Use #elif for simplicity, since we can assume C89 now.
25031         Don't try to source the system alloca.h since it will not be found
25032         and to prevent recursively including its replacement.
25033         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
25034         * lib/regex.c: Likewise.
25035
25036 2004-05-16  Derek Price  <derek@ximbiot.com>
25037             Paul Eggert  <eggert@cs.ucla.edu>
25038
25039         getline cleanup.  This changes the getndelim2 API: both order of
25040         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
25041         no delimiter).
25042
25043         * lib/getline.c: Don't include stddef.h or stdio.h, since our
25044         interface does that.
25045         (getline): Always use getdelim, so that we don't have two
25046         copies of this code.
25047         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
25048         if available.
25049         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
25050         (GETNDELIM2_MAXIMUM): New macro.
25051         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
25052         instead of the old practice of delim2==0.  All callers changed.
25053         Return -1 on overflow, instead of returning junk.
25054         Do not set *linesize unless allocation succeeds.
25055         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
25056         that we include sys/types.h.
25057         * lib/getnline.h: Likewise.
25058         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
25059         (getndelim2): Reorder arguments.
25060         * lib/getnline.c (getnline, getndelim):
25061         Don't discard the NMAX argument.
25062         (getnline): Invoke getndelim, to avoid code duplication.
25063         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
25064         of (size_t) -1 by callers of the getnline family.
25065
25066 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25067
25068         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
25069         Check for gettimeofday.
25070         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
25071         Check for settimeofday, stime.
25072
25073 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25074
25075         * lib/nanosleep.c (suspended): Change its type from int to
25076         sig_atomic_t volatile.
25077         (first_call): Make it private to rpl_nanosleep, and have it
25078         be zero initially as that's a bit faster.
25079         (my_usleep): Round up fractional times instead of truncating them,
25080         as this is the usual meaning for 'sleep'.
25081
25082         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
25083         doesn't work.
25084         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
25085         (ENOSYS): Define if not defined.
25086         (settime): Fall back on stime if it exists and settimeofday fails.
25087         But don't bother with fallbacks if a method fails with errno == EPERM.
25088
25089 2004-05-11  Jim Meyering  <jim@meyering.net>
25090
25091         Prior to this change, the save_cwd caller required read access to the
25092         current directory on most systems (ones with the fchdir function).
25093
25094         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
25095         fails, try write-only, and finally, resort to using xgetcwd.
25096
25097 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
25098
25099         * lib/obstack.c, obstack.h: Import changes from libc.
25100
25101 2004-04-28  Bruno Haible  <bruno@clisp.org>
25102
25103         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
25104         also implicitly appends .exe to executables.
25105         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
25106         accepts Windows pathnames.
25107         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25108         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25109         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25110         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25111         Reported by Derek Robert Price <derek@ximbiot.com>.
25112
25113 2004-04-21  Karl Berry  <karl@gnu.org>
25114
25115         * config/srclist.txt (localcharset.c): break sync.
25116
25117 2004-04-20  Paul Eggert  <eggert@twinsun.com>
25118
25119         * m4/host-os.m4: Add a copyright notice.
25120
25121 2004-04-20  Jim Meyering  <jim@meyering.net>
25122
25123         Change UTILS_ to gl_ in AC_DEFINE'd names.
25124         Change utils_- and jm_-prefixed variables, too.
25125         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
25126         UTILS_FUNC_MKDIR_TRAILING_SLASH.
25127         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
25128
25129         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
25130         Don't emit trailing blanks.
25131         Also rename jm_-prefixed variables to have gl_ prefix.
25132
25133         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
25134         Also rename jm_-prefixed variables to have gl_ prefix.
25135
25136         * m4/jm-macros.m4: Reflect the renamings.
25137         * m4/prereq.m4: Likewise.
25138
25139 2004-04-20  Jim Meyering  <jim@meyering.net>
25140
25141         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
25142         memory.
25143
25144 2004-04-20  Jim Meyering  <jim@meyering.net>
25145             Bruno Haible  <bruno@clisp.org>
25146
25147         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
25148         memory when realloc fails.
25149
25150 2004-04-19  Jim Meyering  <jim@meyering.net>
25151
25152         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
25153         now that readutmp.c may call `free (0)'.
25154
25155 2004-04-19  Bruno Haible  <bruno@clisp.org>
25156
25157         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
25158         * m4/inttypes_h.m4: Likewise.
25159         * m4/stdint_h.m4: Likewise.
25160         * m4/intmax_t.m4: Likewise.
25161         * m4/uintmax_t.m4: Likewise.
25162
25163 2004-04-18  Jim Meyering  <jim@meyering.net>
25164
25165         * m4/prereq.m4: Don't forbid jm_ prefix.
25166
25167         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
25168         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
25169         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
25170         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
25171         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
25172         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
25173         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
25174         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
25175         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
25176         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
25177         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
25178         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
25179         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
25180         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
25181         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
25182         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
25183         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
25184         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
25185         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
25186
25187 2004-04-18  Jim Meyering  <jim@meyering.net>
25188
25189         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
25190         failure, don't leak memory and do call END_UTMP_ENT.
25191
25192 2004-04-16  Jim Meyering  <jim@meyering.net>
25193
25194         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
25195         coreutils' stat program.
25196         (gl_PREREQ): Don't require jm_PREREQ_STAT.
25197
25198 2004-04-11  Paul Eggert  <eggert@twinsun.com>
25199
25200         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
25201         C89.
25202         (CHAR_BIT): Remove, since we assume C89.
25203         Include <stdint.h> if available, as per current Autoconf CVS advice.
25204
25205 2004-03-31  Jim Meyering  <jim@meyering.net>
25206
25207         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
25208         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
25209         * m4/xalloc.m4: Likewise.
25210
25211 2004-03-30  Paul Eggert  <eggert@twinsun.com>
25212
25213         Merge from coreutils.
25214
25215         * m4/inttostr.m4: New file.
25216         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
25217         Require AM_STDBOOL_H and gl_TIMESPEC instead.
25218         Require gl_CLOCK_TIME.
25219         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
25220
25221 2004-03-30  Paul Eggert  <eggert@twinsun.com>
25222
25223         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
25224         not bool, to be more consistent with Unix conventions.
25225         Suggested by Bruno Haible.
25226
25227         Merge from coreutils.
25228
25229         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
25230         * lib/umaxtostr.c: New files.
25231
25232         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
25233         the usual <time.h> dance.
25234         (get_date): Change signature to support fractional time stamps.
25235         All callers changed.
25236         * lib/getdate.y: Include "getdate.h" first, as we can now
25237         assume C89 and don't need to worry about 'const'.
25238         Similarly, include "unlocked-io.h" near start, not in middle.
25239         Include <limits.h>.
25240         (textint.value): Use long int rather than int.
25241         (textint.digits): Use size_t rather than int.
25242         (BILLION, LOG10_BILLION): New constants.
25243         (parser_control): New member rel_ns.  Members day_ordinal,
25244         time_zone, month, day, hour, minutes, rel_year, rel_month,
25245         rel_day, rel_hour, rel_minutes, rel_seconds
25246         are now long int, not int.  Member seconds is now struct timespec,
25247         not int.  New member timespec_seen.  Members dates_seen, days_seen,
25248         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
25249         not int.
25250         (%union.intval): Now long int, not int.
25251         New member timespec.
25252         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
25253         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
25254         (spec): Now is a timespec or an item list.
25255         (timespec, items): New nonterminals.
25256         (time, rel, relunit, number, get_date):
25257         Add support for fractional seconds.
25258         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
25259         (gmtime, localtime, mktime): Remove decls; not needed with C89.
25260         (to_hour): First arg is now long int, not int.
25261         (to_year): Returns long int, not int.
25262         Don't treat year -70 like 70.
25263         (tm_diff): Returns long int, not int.
25264         (lookup_word): Use bool instead of int when appropriate.
25265         (yylex): Use size_t for count, not int.
25266         Detect overflow when parsing large integer constants.
25267         Add support for fractions.
25268         (get_date): Make pointers 'const' if possible.
25269         Use more-portable code to detect integer overflow.
25270         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
25271         Don't use ctime; it's not reliable if the year has >4 digits.
25272
25273         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
25274         This is for compatibility with BSD.
25275
25276         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
25277         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
25278         From coreutils' system.h.
25279
25280         * lib/userspec.c: Don't include "posixver.h".
25281         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
25282         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
25283         compatible extension.  Simplify code by removing a boolean int
25284         that was always nonzero if a string was nonnull.
25285
25286 2004-03-30  Jim Meyering  <jim@meyering.net>
25287
25288         Merge from coreutils.
25289
25290         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
25291         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
25292         on some systems one must include <grp.h> before it.
25293         Reported by Christian Krackowizer.
25294
25295 2004-03-30  Jim Meyering  <jim@meyering.net>
25296
25297         Merge from coreutils.
25298
25299         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
25300
25301         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
25302         an empty input stream.
25303
25304         * lib/readtokens.c: Include <stdbool.h>.
25305         (readtoken): Use `size_t' rather than int/long.
25306         All callers adjusted.
25307         Use `bool' rather than `int' where appropriate.
25308         Use memset rather than an explicit loop.
25309         Use x2nrealloc rather than xrealloc.
25310         Allow the use of `\0' as a delimiter.
25311         (readtokens): Likewise.
25312         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
25313
25314 2004-03-30  Jim Meyering  <jim@meyering.net>
25315
25316         * m4/realloc.m4: Remove file, since now it does no more than
25317         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
25318         the `configure.ac' section of module/realloc.
25319         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
25320
25321 2004-03-30  Bruno Haible  <bruno@clisp.org>
25322
25323         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
25324         nonnull.
25325
25326 2004-03-29  Paul Eggert  <eggert@twinsun.com>
25327
25328         Merge changes to getloadavg.c from coreutils and Emacs.
25329
25330         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
25331         Define to an expression, not to the empty string.
25332         Include cloexec.h and xalloc.h.
25333         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
25334         Use set_cloexec_flag rather than rolling our own.
25335         * lib/cloexec.c, lib/cloexec.h: New files.
25336
25337 2004-03-29  Paul Eggert  <eggert@twinsun.com>
25338
25339         * m4/cloexec.m4: New file.
25340
25341 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25342
25343         * lib/getopt.h: Sync with libc CVS.
25344
25345 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25346             Bruno Haible  <bruno@clisp.org>
25347
25348         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
25349         mbswidth.
25350
25351 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25352             Bruno Haible  <bruno@clisp.org>
25353
25354         * lib/mbswidth.h: Include <wchar.h> only if
25355         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
25356         <wchar.h>.
25357         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
25358
25359 2004-03-09  Paul Eggert  <eggert@twinsun.com>
25360
25361         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
25362         Sync with libc CVS.
25363         * lib/getopt_int.h: New file, also synced from libc.
25364
25365 2004-03-09  Paul Eggert  <eggert@twinsun.com>
25366
25367         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
25368         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
25369         Bring back getopt.c, getopt.h, getopt1.c.
25370
25371 2004-03-07  Paul Eggert  <eggert@twinsun.com>
25372
25373         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
25374         All uses changed.  Check for sa_sigaction member; this fixes
25375         a bug first reported by Jason Andrade in
25376         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
25377
25378 2004-03-07  Paul Eggert  <eggert@twinsun.com>
25379
25380         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
25381         '#if' expressions.  Unlike the code it replaces, it does not
25382         depend on (defined _SC_PAGESIZE).  However, it does depend on
25383         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
25384         first reported by Jason Andrade in
25385         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
25386
25387 2004-02-25  Simon Josefsson  <jas@extundo.com>
25388
25389         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
25390
25391 2004-02-25  Simon Josefsson  <jas@extundo.com>
25392
25393         * lib/strdup.h: New file.
25394         * lib/strdup.c: Include it.
25395         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
25396         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
25397
25398 2004-02-23  Karl Berry  <karl@gnu.org>
25399
25400         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
25401         (from fencepost.gnu.org:/gd/gnuorg).
25402
25403 2004-02-23  Karl Berry  <karl@gnu.org>
25404
25405         * config/srclistvars.sh (GNUORG) [karl]: redefine.
25406         * config/srclist.txt: add maintain/standards documents.
25407
25408 2004-02-18  Bruno Haible  <bruno@clisp.org>
25409
25410         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
25411         Reported by Derek Robert Price <derek@ximbiot.com>.
25412
25413 2004-02-16  Karl Berry  <karl@gnu.org>
25414
25415         * config/mkinstalldirs, install-sh: update from automake.
25416
25417 2004-02-06  Karl Berry  <karl@gnu.org>
25418
25419         * m4/po.m4: update from gettext 0.14.1.
25420
25421 2004-02-06  Karl Berry  <karl@gnu.org>
25422
25423         * lib/config.charset: update from gettext 0.14.1.
25424
25425 2004-02-05  Paul Eggert  <eggert@twinsun.com>
25426
25427         Add comments and code, prompted by suggestions from Bruno Haible
25428         for sh-quote.
25429         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
25430         describing the enum quoting_style values.
25431         * lib/quotearg.c (quotearg_alloc): New function.
25432         (quotearg_buffer_restyled): Treat lone { and } as special.
25433         Treat = as special.  Work around bug with older shells
25434         that "see" a '\' that is really the 2nd byte of a multibyte char.
25435         Quote empty string with shell_quoting_style.
25436
25437 2004-02-03  Bruno Haible  <bruno@clisp.org>
25438
25439         * m4/pipe.m4: New file, from GNU gettext.
25440
25441 2004-02-03  Bruno Haible  <bruno@clisp.org>
25442
25443         * lib/pipe.h: New file, from GNU gettext.
25444         * lib/pipe.c: New file, from GNU gettext.
25445
25446 2004-01-27  Bruno Haible  <bruno@clisp.org>
25447
25448         * m4/execute.m4: New file, from GNU gettext.
25449
25450 2004-01-27  Bruno Haible  <bruno@clisp.org>
25451
25452         * lib/execute.h: New file, from GNU gettext.
25453         * lib/execute.c: New file, from GNU gettext.
25454         * lib/w32spawn.h: New file, from GNU gettext.
25455
25456 2004-01-24  Paul Eggert  <eggert@twinsun.com>
25457
25458         Merge from diffutils.
25459
25460         * lib/file-type.c (file_type): Add typed memory objects.
25461         * lib/file-type.h (S_TYPEISTMO): New macro.
25462
25463         * lib/c-stack.h (c_stack_action): Remove argv argument.
25464         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
25465         (die): Don't calculate message unless segv_action returns.
25466         (get_stack_location, min_address_from_argv, max_address_from_argv,
25467         volatile stack_base, volatile_stack_size): Remove.
25468         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
25469         that every segmentation violation is a stack overflow.  (Ouch!)
25470         See Debian bug 136249 (still outstanding) for more info about why
25471         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
25472
25473 2004-01-24  Paul Eggert  <eggert@twinsun.com>
25474
25475         Exit-status fix from coreutils.
25476
25477         Use exit_failure consistently in place of EXIT_FAILURE,
25478         so that program exit statuses are consistent on failure.
25479
25480         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
25481         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
25482         * lib/argmatch.h: Comment fix to match the above.
25483         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
25484         Now a macro referring to exit_failure, instead of a separate
25485         variable.  Include "exitfail.h" to get it.
25486         * lib/xstrtol.h: Include "exitfail.h".
25487         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
25488
25489         * lib/long-options.c (parse_long_options): Use prototype
25490         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
25491         for clarity.
25492
25493 2004-01-21  Jim Meyering  <jim@meyering.net>
25494
25495         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
25496         so as not to conflict with a different-sized __mktime_internal
25497         function in GNU libc.
25498         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
25499         Problem building statically-linked `ls' reported by Michael Brunnbauer.
25500
25501 2004-01-20  Karl Berry  <karl@gnu.org>
25502
25503         * config/config.guess: update from config.
25504
25505         * config/srclistvars.sh: GNUWWWLICENSES for karl.
25506
25507 2004-01-20  Bruno Haible  <bruno@clisp.org>
25508
25509         Safer stack allocation.
25510         * lib/setenv.c: Include allocsa.h.
25511         (alloca): Remove fallback definition.
25512         (freea): Remove macro.
25513         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
25514         instead of freea.
25515
25516 2004-01-20  Bruno Haible  <bruno@clisp.org>
25517
25518         * m4/eealloc.m4: New file, from GNU gettext.
25519
25520 2004-01-20  Bruno Haible  <bruno@clisp.org>
25521
25522         * m4/allocsa.m4: New file, from GNU gettext.
25523
25524 2004-01-20  Bruno Haible  <bruno@clisp.org>
25525
25526         * lib/xallocsa.h: New file, from GNU gettext.
25527         * lib/xallocsa.c: New file, from GNU gettext.
25528
25529 2004-01-20  Bruno Haible  <bruno@clisp.org>
25530
25531         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
25532
25533 2004-01-20  Bruno Haible  <bruno@clisp.org>
25534
25535         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
25536         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
25537         specially.
25538
25539 2004-01-20  Bruno Haible  <bruno@clisp.org>
25540
25541         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
25542         patch.
25543
25544 2004-01-20  Bruno Haible  <bruno@clisp.org>
25545
25546         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
25547
25548 2004-01-20  Bruno Haible  <bruno@clisp.org>
25549
25550         * lib/eealloc.h: New file.
25551
25552 2004-01-20  Bruno Haible  <bruno@clisp.org>
25553
25554         * lib/binary-io.h: Avoid warnings on Cygwin.
25555
25556 2004-01-20  Bruno Haible  <bruno@clisp.org>
25557
25558         * lib/allocsa.h: New file, from GNU gettext.
25559         * lib/allocsa.c: New file, from GNU gettext.
25560
25561 2004-01-18  Karl Berry  <karl@gnu.org>
25562
25563         * doc/gpl.texi, doc/lgpl.texi: new files.
25564
25565 2004-01-18  Karl Berry  <karl@gnu.org>
25566
25567         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
25568         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
25569
25570 2004-01-15  Paul Eggert  <eggert@twinsun.com>
25571
25572         Merge from coreutils.
25573
25574         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
25575         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
25576         (gl_DEFAULT_POSIX2_VERSION): Move
25577         the documentation from 'configure' into 'config.hin',
25578         so that 'configure --help' isn't burdened by it and
25579         we don't have to worry about its formatting there.
25580         Reword the documentation so that it's more succinct
25581         and can be run together into a single paragraph.
25582         * m4/same.m4 (gl_SAME): Check for pathconf.
25583
25584 2004-01-15  Paul Eggert  <eggert@twinsun.com>
25585
25586         Merge from coreutils.
25587
25588         * lib/posixver.c: Include posixver.h.
25589
25590         * lib/same.c: Include <stdbool.h>, <limits.h>.
25591         (_POSIX_NAME_MAX): Define if not defined.
25592         (MIN): New macro.
25593         (same_name): If file names are silently truncated, report
25594         that the file names are the same if they are the same after
25595         the silent truncation.
25596
25597         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
25598         conversion function.
25599         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
25600         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
25601         longer needed.
25602
25603 2004-01-15  Jim Meyering  <jim@meyering.net>
25604
25605         Merge from coreutils.
25606
25607         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
25608         if no library is required.
25609         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
25610         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
25611         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
25612         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
25613         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
25614         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
25615         value, $ac_cv_search_crypt, if it's "none required".
25616         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
25617         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
25618         not gl_FUNC_GETLOADAVG.
25619         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
25620         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
25621
25622 2004-01-15  Jim Meyering  <jim@meyering.net>
25623
25624         Merge from coreutils.
25625
25626         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
25627         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
25628         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
25629
25630         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
25631         optional configure-time default.
25632
25633         * lib/version-etc.c (version_etc_copyright): Update copyright date.
25634
25635         * lib/xreadlink.c (xreadlink): Correct outdated comment.
25636
25637 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
25638
25639         Merge from coreutils.
25640
25641         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
25642         value, $ac_cv_search_nanosleep, if it's "none required".
25643
25644 2004-01-14  Paul Eggert  <eggert@twinsun.com>
25645
25646         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
25647         with like-named macro in fnmatch.c.
25648         (EXT): Use an internal constant instead.
25649
25650         Merge fnmatch patches from glibc.
25651         * lib/fnmatch.c (mbsinit): Remove define.
25652         Add libc_hidden_ver (__fnmatch, fnmatch).
25653         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
25654         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
25655
25656 2004-01-14  Karl Berry  <karl@gnu.org>
25657
25658         * config/install-sh: update from automake.
25659
25660 2004-01-13  Karl Berry  <karl@gnu.org>
25661
25662         * config/install-sh: update from automake.
25663
25664 2004-01-09  Karl Berry  <karl@gnu.org>
25665
25666         * config/install-sh: update from automake.
25667
25668 2004-01-05  Karl Berry  <karl@gnu.org>
25669
25670         * config/config.{sub,guess}: update from config.
25671
25672 2003-12-31  Karl Berry  <karl@gnu.org>
25673
25674         * config/depcomp: update from automake.
25675
25676 2003-12-14  Karl Berry  <karl@gnu.org>
25677
25678         * lib/config.charset: update from gettext-runtime.
25679
25680 2003-12-03  Paul Eggert  <eggert@twinsun.com>
25681
25682         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
25683         Bug reported by Alfred M. Szmidt.
25684
25685 2003-12-03  Bruno Haible  <bruno@clisp.org>
25686
25687         * m4/gettext.m4: Upgrade from gettext-0.13.
25688         * m4/po.m4: Upgrade from gettext-0.13.
25689         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
25690         * m4/intmax.m4: New file, from gettext-0.13.
25691         * m4/printf-posix.m4: New file, from gettext-0.13.
25692
25693 2003-11-29  Karl Berry  <karl@gnu.org>
25694
25695         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
25696
25697 2003-11-25  Paul Eggert  <eggert@twinsun.com>
25698             Bruno Haible  <bruno@clisp.org>
25699
25700         * lib/printf-parse.h: Don't include sys/types.h.
25701         (ARG_NONE): New macro.
25702         (char_directive): Change type of *arg_index fields to size_t.
25703         * lib/printf-parse.c: Don't include sys/types.h.
25704         (SSIZE_MAX): Remove macro.
25705         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
25706         Remove unnecessary overflow check.
25707         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
25708         fields.
25709
25710 2003-11-25  Bruno Haible  <bruno@clisp.org>
25711
25712         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
25713
25714 2003-11-25  Bruno Haible  <bruno@clisp.org>
25715
25716         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
25717         gt_TYPE_SSIZE_T.
25718
25719 2003-11-24  Paul Eggert  <eggert@twinsun.com>
25720
25721         * modules/alloca: Remove dependency on xalloc.
25722
25723 2003-11-24  Paul Eggert  <eggert@twinsun.com>
25724
25725         * lib/alloca.c: Remove dependency on xalloc module.
25726         (xalloc_die): Remove.
25727         (memory_full) [!defined emacs]: New macro.
25728         [!defined emacs]: Don't include xalloc.h.
25729         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
25730         address arithmetic overflows.  Change datatypes a bit to avoid
25731         unnecessary casts.
25732
25733 2003-11-22  Jim Meyering  <jim@meyering.net>
25734
25735         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
25736         s/size/size_t/.
25737
25738 2003-11-21  Karl Berry  <karl@gnu.org>
25739
25740         * config/config.{sub,guess}: update from config.
25741
25742 2003-11-18  Karl Berry  <karl@gnu.org>
25743
25744         * config/config.{sub,guess}: update from config.
25745
25746         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
25747
25748 2003-11-17  Paul Eggert  <eggert@twinsun.com>
25749
25750         * README: Mention that S+T cannot overflow if S is the size of
25751         an existing object and T is sufficiently small.
25752
25753 2003-11-17  Jim Meyering  <jim@meyering.net>
25754
25755         On systems without utime and without a utimes function capable of
25756         dealing with a NULL struct utimbuf* argument, this utime replacement
25757         could -- in unusual circumstances -- leak a file descriptor.
25758         * lib/utime.c: Include <unistd.h> and <errno.h>.
25759         (utime_null): Be sure to close `fd' and to preserve errno.
25760         Reported by Geoff Collyer via Arnold Robbins.
25761
25762 2003-11-17  Bruno Haible  <bruno@clisp.org>
25763
25764         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
25765         (Depends-on): Add xsize.
25766
25767 2003-11-17  Bruno Haible  <bruno@clisp.org>
25768
25769         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
25770
25771 2003-11-17  Bruno Haible  <bruno@clisp.org>
25772
25773         * lib/vasnprintf.c (alloca): Remove fallback definition.
25774         (freea): Remove definition.
25775         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
25776         Reported by Paul Eggert.
25777
25778 2003-11-16  Paul Eggert  <eggert@twinsun.com>
25779             Bruno Haible  <bruno@clisp.org>
25780
25781         Protect against address arithmetic overflow.
25782         * lib/printf-args.h: Include stddef.h.
25783         (arguments): Change type of field 'count' to size_t.
25784         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
25785         'unsigned int' where appropriate.
25786         * lib/printf-parse.h: Include sys/types.h.
25787         (char_directive): Change type of *arg_index fields to ssize_t.
25788         (char_directives): Change type of fields 'count', max_*_length to
25789         size_t.
25790         * lib/printf-parse.c: Include sys/types.h and xsize.h.
25791         (SSIZE_MAX): Define fallback value.
25792         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
25793         instead of 'int' where appropriate. Check a_allocated, d_allocated
25794         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
25795         * lib/vasnprintf.c: Include xsize.h.
25796         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
25797         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
25798         overflow. Avoid wraparound when converting a width or precision from
25799         decimal to binary.
25800
25801 2003-11-16  Bruno Haible  <bruno@clisp.org>
25802
25803         Update from GNU gettext.
25804         * lib/printf-parse.c: Generalize to it can be compiled for wide
25805         strings.
25806         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
25807         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
25808         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
25809         SNPRINTF): New macros.
25810         Don't include <alloca.h> if the file is used inside libintl.
25811         (local_wcslen): New function, for Solaris 2.5.1.
25812         (VASNPRINTF): Use it instead of wcslen.
25813
25814 2003-11-16  Bruno Haible  <bruno@clisp.org>
25815
25816         * lib/xsize.h (xmax): New function.
25817         (xsum, xsum3, xsum4): Declare as "pure" functions.
25818
25819 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25820
25821         * modules/xalloc (Files): Undo latest change, since xalloc.h
25822         no longer needs SIZE_MAX or PTRDIFF_MAX.
25823
25824 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25825
25826         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
25827         gl_PTRDIFF_MAX.
25828
25829 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25830
25831         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
25832         "return", to pacify some unknown compiler.  Problem reported
25833         by Joerg Schilling.
25834
25835 2003-11-12  Paul Eggert  <eggert@twinsun.com>
25836
25837         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
25838         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
25839         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
25840         heuristic is just as accurate as far as we know, and it removes a
25841         dependency on size_max.m4 and ptrdiff_max.m4.
25842
25843 2003-11-11  Bruno Haible  <bruno@clisp.org>
25844
25845         * modules/xsize (Files): Add m4/size_max.m4.
25846         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
25847
25848 2003-11-11  Bruno Haible  <bruno@clisp.org>
25849
25850         * m4/size_max.m4: New file.
25851         * m4/ptrdiff_max.m4: New file.
25852         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
25853         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
25854         (gl_XALLOC): Invoke it.
25855
25856 2003-11-11  Bruno Haible  <bruno@clisp.org>
25857
25858         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
25859         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
25860         defined.
25861
25862 2003-11-10  Paul Eggert  <eggert@twinsun.com>
25863
25864         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
25865         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
25866         rejected some allocations of exactly SIZE_MAX - 2 bytes.
25867         From Bruno Haible.
25868         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
25869         not (size_t) -1, since it's defined here.
25870
25871 2003-11-09  Karl Berry  <karl@gnu.org>
25872
25873         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
25874
25875 2003-11-06  Paul Eggert  <eggert@twinsun.com>
25876
25877         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
25878         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
25879         Reject sizes of exactly SIZE_MAX bytes.
25880         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
25881         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
25882
25883 2003-11-05  Bruno Haible  <bruno@clisp.org>
25884
25885         * lib/xsize.h: Include limits.h, to avoid a possible collision with
25886         SIZE_MAX defined in <limits.h> on Solaris.
25887
25888 2003-11-04  Jim Meyering  <jim@meyering.net>
25889
25890         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
25891         variable names, rather than @VAR@.
25892         * modules/poll: Likewise.
25893
25894 2003-11-04  Bruno Haible  <bruno@clisp.org>
25895
25896         * modules/xsize: New file.
25897         * modules/linebreak: Depend on xsize.
25898         * MODULES.html.sh (func_all_modules): Add xsize.
25899
25900 2003-11-04  Bruno Haible  <bruno@clisp.org>
25901
25902         * m4/xsize.m4: New file.
25903
25904 2003-11-04  Bruno Haible  <bruno@clisp.org>
25905
25906         * lib/xsize.h: New file.
25907         * lib/linebreak.c: Include xsize.h.
25908         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
25909         argument for overflow.
25910         Suggested by Paul Eggert.
25911
25912 2003-11-03  Karl Berry  <karl@gnu.org>
25913
25914         * config/config.{guess,sub}: update from config.
25915
25916 2003-11-03  Jim Meyering  <jim@meyering.net>
25917
25918         * modules/userspec (lib_SOURCES): Add userspec.h.
25919         (Include): Add "userspec.h".
25920         Improve description.
25921
25922 2003-11-03  Jim Meyering  <jim@meyering.net>
25923
25924         * lib/userspec.c: Include "userspec.h".
25925         * lib/userspec.h: New file.
25926
25927 2003-11-03  Bruno Haible  <bruno@clisp.org>
25928
25929         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
25930
25931 2003-11-03  Bruno Haible  <bruno@clisp.org>
25932
25933         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
25934         available, to avoid (extremely rare) race condition.
25935         Suggested by Paul Eggert.
25936
25937 2003-11-02  Karl Berry  <karl@gnu.org>
25938
25939         * config/srclist.txt (vasprintf.c): sync broken, sigh.
25940
25941 2003-10-31  Paul Eggert  <eggert@twinsun.com>
25942
25943         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
25944         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
25945         (read_filesystem_list): Set and use me_type_malloced.
25946         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
25947         whatever the type happens to be), for brevity and consistency.
25948         Check for size calculation overflow on Alphas running OSF/1.
25949
25950 2003-10-31  Jim Meyering  <jim@meyering.net>
25951
25952         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
25953
25954         * lib/linebuffer.c: Include <string.h> for declaration of memset.
25955
25956 2003-10-30  Paul Eggert  <eggert@twinsun.com>
25957             Bruno Haible  <bruno@clisp.org>
25958
25959         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
25960         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
25961
25962 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
25963
25964         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
25965         netbsd*-gnu*.  Suggested by Robert Millan.
25966
25967 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25968
25969         * modules/group-member: Depend on stdbool.
25970
25971 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25972
25973         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
25974
25975 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25976
25977         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
25978         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
25979         after the 'gnu' in these cases.  This fixes some bugs in the
25980         previous change, and is based on suggestions by Robert Millan.
25981
25982 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25983
25984         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
25985         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
25986         no longer needed.
25987         * lib/quotearg.c (quotearg_n_options): Use it.
25988         * lib/group-member.c: Include <stdbool.h>.
25989         (free_group_info): Arg is now const *; don't free arg.
25990         (get_group_info): Now returns bool and accepts struct group_info *,
25991         rather than returning a malloc'ed struct group_info *.
25992         All uses changed.  Check for overflow in internal size calculation.
25993
25994         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
25995         rather than xmalloc/xrealloc.
25996         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
25997         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
25998         conformance bug: the old code used a pointer after freeing the
25999         storage that it addressed.
26000         * lib/hash.c (hash_initialize): Simplify the code by using
26001         xalloc_oversized rather than doing it by hand.
26002         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
26003         the buffer preserved.  Use free and xmalloc instead.
26004         * lib/quotearg.c (quotearg_n_options): Likewise.
26005         Use a simpler test for size overflow.  Don't use xalloc_oversized
26006         because unsigned int might be wider than size_t (!); this suggests
26007         that we should switch from unsigned int to size_t for slot numbers.
26008
26009 2003-10-28  Paul Eggert  <eggert@twinsun.com>
26010
26011         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
26012         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
26013         NetBSD kernels.  Requested by Richard Stallman.
26014
26015 2003-10-27  Paul Eggert  <eggert@twinsun.com>
26016
26017         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
26018         to allocate the returned structure.  Do not allocate a subarray,
26019         as x2nrealloc will do that.
26020         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
26021         instead of xnrealloc.
26022         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
26023
26024 2003-10-27  Bruno Haible  <bruno@clisp.org>
26025
26026         * lib/stdbool_.h: Better support for BeOS.
26027
26028 2003-10-26  Paul Eggert  <eggert@twinsun.com>
26029
26030         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
26031         now uses inline.
26032
26033 2003-10-26  Paul Eggert  <eggert@twinsun.com>
26034
26035         * lib/xalloc.h (xalloc_oversized): New static inline function, for
26036         callers that want to do their own size-overflow checking.  Include
26037         <stdbool.h>, since xalloc_oversized returns bool.
26038         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
26039         to use xalloc_oversized.
26040
26041         Add two functions x2realloc, x2nrealloc, for programs that grow
26042         arrays dynamically by doubling their sizes.
26043         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
26044         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
26045         New functions.
26046
26047         Port to C99 semantics for 'inline' of external functions.
26048         Bug reported by Bruno Haible.
26049         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
26050         with the old contents of xnmalloc.
26051         (xnmalloc, xmalloc): Use it.
26052         (xnrealloc_inline): New static inline function,
26053         with the old contents of xnrealloc.
26054         (xnrealloc, xrealloc): Use it.
26055
26056         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
26057         that.
26058
26059 2003-10-26  Karl Berry  <karl@gnu.org>
26060
26061         * config/srclist.txt (COPYING.DOC): no longer available from
26062         /gd/gnuorg; don't know where the ultimate source is.
26063
26064 2003-10-25  Paul Eggert  <eggert@twinsun.com>
26065
26066         Fix several address-calculation bugs in the hash modules,
26067         plus some minor code cleanup.
26068
26069         * lib/hash.h: Include <stdbool.h>, for bool.
26070         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
26071         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
26072         hash_get_n_entries, hash_get_max_bucket_length,
26073         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
26074         hash_rehash): Use size_t rather than unsigned.
26075         * lib/hash.c (struct hash_table, hash_get_n_buckets,
26076         hash_get_n_buckets_used, hash_get_n_entries,
26077         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
26078         hash_get_entries, hash_do_for_each, hash_string, is_prime,
26079         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
26080         Likewise.
26081         (SIZE_MAX): Define if not defined.
26082         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
26083         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
26084         hash_print):
26085         Use const * when possible.
26086         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
26087         (check_tuning): Fix bug: if tuning parameters were very close to
26088         0 or 1, rounding errors could have caused subscript violations.
26089         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
26090         (hash_initialize): Add 'fail:' label
26091         to free table and return NULL, and use it to simplify code.
26092         Use calloc rather than clearing the storage ourself.
26093         (hash_initialize, hash_rehash): Check for arithmetic overflow in
26094         buffer size calculations.
26095         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
26096         Include <stddef.h>, for size_t.
26097         * lib/hash-pjw.c (hash_pjw): Likewise.
26098         Switch to method described by Bruno Haible.
26099         Include <limits.h>, for CHAR_BIT.
26100         (SIZE_BITS): New macro.
26101
26102 2003-10-23  Paul Eggert  <eggert@twinsun.com>
26103
26104         * m4/getline.m4 (AM_FUNC_GETLINE):
26105         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
26106         hosts.  Problem reported by Derek Robert Price in
26107         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
26108         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
26109         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
26110
26111 2003-10-21  Paul Eggert  <eggert@twinsun.com>
26112
26113         * lib/getndelim2.c (getndelim2): When size calculation overflows,
26114         ceiling the allocation at NMAX bytes rather than silently
26115         discarding input bytes before NMAX is reached.  This makes
26116         a difference only if NMAX exceeds SIZE_MAX / 2.
26117
26118         * lib/obstack.c: Merge from glibc.
26119         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
26120         Add libc_hidden_def (_obstack_newchunk).
26121         (_obstack_free) [! defined _LIBC]: Remove.
26122         [defined _LIBC]: Make a strong alias from obstack_free, rather than
26123         a clone of the function body.
26124         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
26125         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
26126
26127         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
26128         glibc.
26129         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
26130         arg to memcpy.
26131
26132         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
26133         (obstack_ptr_grow_fast, obstack_int_grow_fast):
26134         Don't use lvalue casts, as GCC plans to remove support for them
26135         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
26136         was also present in the non-GCC version, indicating that this
26137         code had always been buggy and had never been widely used.
26138         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
26139         Use the fast variant of each macro, rather than copying the
26140         definiens of the fast variant; that way, we'll be more likely to
26141         catch future bugs in the fast variants.
26142
26143 2003-10-20  Bruno Haible  <bruno@clisp.org>
26144
26145         * modules/wait-process: New file.
26146         * MODULES.html.sh (func_all_modules): Add wait-process.
26147
26148 2003-10-20  Bruno Haible  <bruno@clisp.org>
26149
26150         * m4/wait-process.m4: New file.
26151
26152 2003-10-20  Bruno Haible  <bruno@clisp.org>
26153
26154         * lib/wait-process.h: New file, from GNU gettext.
26155         * lib/wait-process.c: New file, from GNU gettext.
26156
26157 2003-10-19  Jim Meyering  <jim@meyering.net>
26158
26159         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
26160         HPUX 10.20.
26161
26162 2003-10-18  Karl Berry  <karl@gnu.org>
26163
26164         * config/config.guess: update from config.
26165
26166 2003-10-16  Paul Eggert  <eggert@twinsun.com>
26167
26168         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
26169         (getgroups): First arg is int, not size_t.
26170         Don't let 'free' mangle errno.
26171
26172 2003-10-16  Paul Eggert  <eggert@twinsun.com>
26173
26174         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
26175
26176 2003-10-16  Karl Berry  <karl@gnu.org>
26177
26178         * config/config.{guess,sub}: update from config.
26179
26180 2003-10-16  Jim Meyering  <jim@meyering.net>
26181
26182         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
26183         memcpy.
26184
26185 2003-10-15  Paul Eggert  <eggert@twinsun.com>
26186
26187         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
26188         (SIZE_MAX): Remove.
26189         (new_exclude, add_exclude_file): Initial size no longer needs to
26190         be a power of 2.
26191         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
26192         our own address arithmetic overflow checking.
26193
26194         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
26195         (fnmatch): Do not alloca more than 2000 wide characters;
26196         instead, use malloc for large buffers.
26197         Check for address arithmetic overflow, and return -1
26198         with errno set to ENOMEM in that case.
26199         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
26200         (NEW_PATTERN): Do not alloca more than 8000 bytes;
26201         instead, return -1.  Check for address arithmetic overflow.
26202
26203 2003-10-14  Paul Eggert  <eggert@twinsun.com>
26204
26205         Handle invalid suffixes and overflow independently, so that
26206         callers can treat them independently as needed.  Fix some bugs in
26207         suffix handling, e.g., "100k@" was not diagnosed as an invalid
26208         suffix for a human-readable blocksize.  The major caller-visible
26209         change is the addition of a new
26210         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
26211         that both overflow and suffix chars were found.
26212
26213         * lib/human.c (humblock): Don't check separately for invalid suffix
26214         char; that is xstrtoumax's job (now that its bug is fixed).
26215         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
26216         INTMAX_MAX]: New macros.
26217         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
26218         TYPE_MAXIMUM): New macros.
26219         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
26220         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
26221         if overflow occurs, as it's what __strtol does and it's more useful
26222         in practice.
26223         (__xstrtol): If __strtol reports some error other than ERANGE,
26224         reflect it to the caller as LONGINT_INVALID.  If it reports
26225         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
26226         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
26227         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
26228         value.
26229         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
26230         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
26231         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
26232         [defined UINTMAX_MAX]: New macros.
26233
26234 2003-10-14  Bruno Haible  <bruno@clisp.org>
26235
26236         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
26237
26238 2003-10-14  Bruno Haible  <bruno@clisp.org>
26239
26240         * m4/sig_atomic_t: New file, from GNU gettext.
26241         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
26242
26243 2003-10-14  Bruno Haible  <bruno@clisp.org>
26244
26245         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
26246         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
26247         Also use volatile where needed.
26248
26249 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26250
26251         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
26252         Change maintainer from Bruno Haible to 'all'.
26253
26254 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26255
26256         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
26257
26258 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26259
26260         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
26261         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
26262         and define in terms of the other primitives.
26263         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
26264         (SIZE_MAX): Define if not already defined.
26265         (array_size_overflow): New function.
26266         (xalloc_die): Abort instead of exiting if 'error' returns.
26267         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
26268         (xmalloc, xrealloc): Use them.
26269         (xcalloc): Check for address arithmetic overflow.
26270         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
26271         a bit faster than strcpy.
26272
26273 2003-10-10  Simon Josefsson  <jas@extundo.com>
26274
26275         * modules/argp (Depends-on): Add restrict and strcase.
26276
26277 2003-10-10  Simon Josefsson  <jas@extundo.com>
26278
26279         * m4/argp.m4: Add AC_C_INLINE.
26280
26281 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26282
26283         Merge getpass from libc, plus a few fixes.
26284
26285         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
26286         Include <stdbool.h>.
26287         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
26288         __fsetlocking to empty.
26289         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
26290         do include <bits/libc-lock.h>.
26291         Do not include <fcntl.h>; not needed.
26292         [_LIBC]: Include <wchar.h>.
26293         (NOTCANCEL_MODE): New macro.
26294         (flockfile, funlockfile) [_LIBC]: New macros.
26295         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
26296         [!_LIBC]: New macros.
26297         (call_fclose): New function.
26298         (getpass): Use it.  Save tty stream separately; this simplifies the
26299         code and makes it more reliable if stdin happens to equal stdout.
26300         Invoke __fsetlocking on tty.
26301         Handle thread cancellation if needed.
26302         Namespace cleanup (use __tcgetattr, __getline).
26303         Use bool for Booleans.
26304         [USE_IN_LIBIO]: Handle wide streams.
26305         [!_LIBC]: Unconditionally do the fseek, since we don't know what
26306         stream might go where.
26307
26308         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
26309         doesn't have to include <stdio.h> before us.
26310         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
26311         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
26312         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
26313         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
26314         if not declared, so that we can use getpass.c code from libc without
26315         rewriting it.
26316         (flockfile, ftrylockfile, funlockfile): New macros.
26317
26318 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26319
26320         * modules/getpass: Depend on stdbool.
26321
26322 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26323
26324         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
26325
26326 2003-10-07  Karl Berry  <karl@gnu.org>
26327
26328         * config/config.{guess,sub}: update from config.
26329
26330 2003-10-06  Jim Meyering  <jim@meyering.net>
26331             Bruno Haible  <bruno@clisp.org>
26332
26333         This lets translators provide better translations for the
26334         "Written by ..." part of --version output.
26335         * lib/version-etc.h: Include stdarg.h.
26336         (version_etc_copyright): Declare as readonly.
26337         (version_etc): Make this function variadic with a NULL-terminated list
26338         of author name strings.
26339         (version_etc_va): New declaration.
26340         * lib/version-etc.c: Include stdarg.h, stdlib.h.
26341         (version_etc_copyright): Declare as readonly.
26342         (version_etc_va): New function. Provide a different translatable string
26343         for each possible number of authors < 10. Abbreviate when there are 10
26344         authors or more.
26345         (version_etc): Make this function variadic. Call version_etc_va.
26346         Suggestion from Gary V. Vaughan.
26347
26348         * lib/long-options.h (parse_long_options): Change prototype: the
26349         authors string is moved to the end and becomes variadic.
26350         * lib/long-options.c: Include stdarg.h.
26351         (parse_long_options): Make this function variadic, too.
26352         Call version_etc_va, not version_etc.
26353
26354 2003-10-06  Bruno Haible  <bruno@clisp.org>
26355
26356         * modules/version-etc-2: Remove file.
26357         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
26358
26359 2003-10-06  Bruno Haible  <bruno@clisp.org>
26360
26361         * modules/fatal-signal: New file.
26362         * MODULES.html.sh (func_all_modules): Add fatal-signal.
26363
26364 2003-10-06  Bruno Haible  <bruno@clisp.org>
26365
26366         * m4/fatal-signal.m4: New file.
26367         * m4/signalblocking.m4: New file, from GNU gettext.
26368
26369 2003-10-06  Bruno Haible  <bruno@clisp.org>
26370
26371         * lib/version-etc-2.h: Remove file.
26372         * lib/version-etc-2.c: Remove file.
26373
26374 2003-10-06  Bruno Haible  <bruno@clisp.org>
26375
26376         * lib/fatal-signal.h: New file, from GNU gettext.
26377         * lib/fatal-signal.c: New file, from GNU gettext.
26378
26379 2003-10-05  Paul Eggert  <eggert@twinsun.com>
26380
26381         * README: Rework advice for preventing empty .o files.
26382         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
26383         not <sys/types.h>.
26384
26385 2003-10-04  Karl Berry  <karl@gnu.org>
26386
26387         * lib/argp*: update from libc.
26388
26389 2003-10-04  Karl Berry  <karl@gnu.org>
26390
26391         * config/config.{guess,sub}: update from config.
26392
26393 2003-10-02  Bruno Haible  <bruno@clisp.org>
26394
26395         * modules/lchown (Include): Add lchown.h.
26396         * modules/time_r (Include): Use "..." syntax.
26397         * modules/xgetdomainname (Include): Add xgetdomainname.h.
26398
26399 2003-10-01  Simon Josefsson  <jas@extundo.com>
26400
26401         * MODULES.html.sh (func_all_modules): Move gethostname from section
26402         'based on' to section 'lacking' POSIX:2001.
26403
26404 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
26405
26406         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
26407         to output mode on the same stream.
26408
26409 2003-09-29  Paul Eggert  <eggert@twinsun.com>
26410
26411         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
26412         Fix arg typo in previous patch.
26413
26414 2003-09-28  Jim Meyering  <jim@meyering.net>
26415
26416         * lib/error.c: Correct cpp indentation.
26417
26418 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26419
26420         * modules/free: New file.
26421
26422 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26423
26424         * m4/free.m4: New file.
26425
26426 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26427
26428         * lib/minmax.h (MIN, MAX)
26429         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
26430         Omit the special code that used __typeof__, since we worry that
26431         it could be more trouble than it's worth.  See:
26432         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
26433         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
26434
26435         * lib/free.c: New file.
26436
26437 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
26438
26439         Trivial fixes to Makefile.am parts of module listings.
26440         * modules/strstr: Append strstr.h to lib_SOURCES.
26441         * modules/strcase: Likewise, for strcase.h.
26442
26443 2003-09-27  Karl Berry  <karl@gnu.org>
26444
26445         * config/mkinstalldirs: update from automake.
26446
26447 2003-09-26  Paul Eggert  <eggert@twinsun.com>
26448
26449         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
26450         (error_tail): Do not loop, reallocating temporary buffer, since
26451         the output cannot contain more wide characters than the input
26452         contains bytes, the size must be big enough already.  This avoids
26453         one potential size overflow calculation.  Check for size overflow
26454         when calculating temporary buffer size.  Free temporary buffer
26455         when done, if it was allocated with malloc; this plugs a memory
26456         leak.  Remove casts from void * to pointers, that are no longer
26457         needed now that we're assuming C89 or better.
26458
26459         Merge error changes from glibc.
26460
26461         * lib/error.c, error.h: Update copyright notice header to match glibc.
26462         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
26463         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
26464         Disable cancellation while printing error.
26465         * lib/error.h: Prepend __ to parameter names.
26466
26467 2003-09-26  Jim Meyering  <jim@meyering.net>
26468
26469         * lib/error.c (error_tail): Move some declarations
26470         into inner scope where the local variables are used.
26471
26472 2003-09-26  Bruno Haible  <bruno@clisp.org>
26473
26474         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
26475         stpncpy().
26476         Don't define stpncpy through config.h; it's now done through stpncpy.h.
26477
26478 2003-09-26  Bruno Haible  <bruno@clisp.org>
26479
26480         * lib/stpncpy.h (gnu_stpncpy): New declaration.
26481         (stpncpy): Define as alias for gnu_stpncpy.
26482         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
26483
26484 2003-09-25  Simon Josefsson  <jas@extundo.com>
26485
26486         * lib/xgetdomainname.h: New file.
26487         * lib/xgetdomainname.c: New file.
26488
26489 2003-09-25  Simon Josefsson  <jas@extundo.com>
26490             Bruno Haible  <bruno@clisp.org>
26491
26492         * modules/getdomainname: New file.
26493         * modules/xgetdomainname: New file.
26494         * MODULES.html.sh (func_all_modules): Add getdomainname,
26495         xgetdomainname.
26496
26497 2003-09-25  Simon Josefsson  <jas@extundo.com>
26498             Bruno Haible  <bruno@clisp.org>
26499
26500         * m4/getdomainname.m4: New file.
26501
26502 2003-09-25  Simon Josefsson  <jas@extundo.com>
26503             Bruno Haible  <bruno@clisp.org>
26504
26505         * lib/getdomainname.h: New file.
26506         * lib/getdomainname.c: New file.
26507
26508 2003-09-25  Karl Berry  <karl@gnu.org>
26509
26510         * lib/argp-fmtstream.c, argp-help.c: update from libc.
26511
26512 2003-09-25  Karl Berry  <karl@gnu.org>
26513
26514         * config/install-sh: update from automake.
26515
26516 2003-09-25  Bruno Haible  <bruno@clisp.org>
26517
26518         * modules/version-etc-2: New file, from modules/version-etc with
26519         modifications.
26520         * MODULES.html.sh (func_all_modules): Add version-etc-2.
26521
26522 2003-09-25  Bruno Haible  <bruno@clisp.org>
26523
26524         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
26525         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
26526
26527 2003-09-24  Simon Josefsson  <jas@extundo.com>
26528
26529         * modules/xgethostname: Add xgethostname.h.
26530
26531 2003-09-24  Paul Eggert  <eggert@twinsun.com>
26532
26533         * lib/linebuffer.c (freebuffer): Don't free the argument, just
26534         the buffer associated with the argument.  Bug reported by
26535         Simon Josefsson.
26536
26537 2003-09-24  Paul Eggert  <eggert@twinsun.com>
26538
26539         * README: Document assumptions that 'int' is at least 32 bits
26540         wide, that integer arithmetic is 2's complement without overflow,
26541         that there are no holes in integer values, that adding sizes of
26542         two nonoverlapping objects can't overflow, and that all-bits-zero
26543         yields scalar zero.  Fix spelling and capitalization typos.
26544
26545 2003-09-19  Karl Berry  <karl@gnu.org>
26546
26547         * lib/argp.h: update from libc.
26548
26549 2003-09-17  Paul Eggert  <eggert@twinsun.com>
26550
26551         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
26552         to avoid spurious warnings like "AC_RUN_IFELSE was called before
26553         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
26554
26555 2003-09-17  Paul Eggert  <eggert@twinsun.com>
26556
26557         * gnulib-tool: Use "test -h", not "test -L", for portability
26558         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
26559         (tags_regexp): Remove, since \| doesn't conform to POSIX.
26560         (sed_extract_prog): Issue s commands one-by-one, rather than
26561         using \| in one s command.
26562
26563 2003-09-16  Paul Eggert  <eggert@twinsun.com>
26564
26565         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
26566         input error, instead of returning NULL the next time we are called
26567         (and therefore losing track of errno).
26568
26569 2003-09-16  Bruno Haible  <bruno@clisp.org>
26570
26571         * gnulib-tool (func_create_testdir): Warn about duplicated
26572         dependencies.
26573
26574 2003-09-15  Paul Eggert  <eggert@twinsun.com>
26575
26576         * modules/argmatch, modules/fatal, modules/obstack,
26577         modules/xalloc, modules/xgethostname: Sort dependencies by
26578         importance, not alphabetically.
26579
26580 2003-09-15  Paul Eggert  <eggert@twinsun.com>
26581
26582         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
26583         fails, so that the caller gets the proper errno.
26584
26585         * lib/readutmp.c (read_utmp): Likewise.
26586         Check for fstat error.  Close stream and free storage
26587         when failing.
26588
26589 2003-09-14  Karl Berry  <karl@gnu.org>
26590
26591         * config/srclist.txt (strdup.c): disable for c89 changes.
26592
26593 2003-09-14  Jim Meyering  <jim@meyering.net>
26594
26595         * lib/getloadavg.c: Correct cpp indentation.
26596         * lib/strdup.c: Likewise.
26597         * lib/vasnprintf.c: Likewise.
26598
26599 2003-09-14  Bruno Haible  <bruno@clisp.org>
26600
26601         * modules/fwriteerror: New file.
26602         * MODULES.html.sh (func_all_modules): Add fwriteerror.
26603
26604 2003-09-14  Bruno Haible  <bruno@clisp.org>
26605
26606         * lib/fwriteerror.h: New file.
26607         * lib/fwriteerror.c: New file.
26608
26609 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26610
26611         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
26612         modules/xgethostname, modules/xalloc: Depend on exit.
26613
26614 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26615
26616         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
26617
26618         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
26619         and AC_MINIX, too, so that their extensions are available.
26620
26621         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
26622         This macro has been superseded by gl_BACKUPFILE.
26623
26624         More patches to assume C89 or better.
26625
26626         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
26627
26628         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
26629         unconditionally.
26630         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
26631         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
26632         Include <string.h>, <stdlib.h> unconditionally.
26633         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
26634         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
26635         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
26636         headers or for string.h.
26637         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
26638         or strtoul.
26639
26640         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
26641         headers.
26642         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
26643         * m4/userspec.m4 (gl_USERSPEC): Likewise.
26644         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
26645         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
26646         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
26647         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
26648         memcpy, memset.
26649         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
26650         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
26651         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
26652         strtol.
26653         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
26654         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
26655         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
26656         strtoul.
26657
26658 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26659
26660         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
26661         * lib/obstack.c [!defined _LIBC]: Likewise.
26662         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
26663         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
26664         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
26665
26666         More changes to assume C89 or better.
26667
26668         * lib/error.c (error_tail): Assume vprintf.
26669
26670         * lib/argmatch.c (getenv): Remove decl.
26671         * lib/progreloc.c (get_full_program_name): Define via prototype.
26672         * lib/setenv.c (clearenv): Likewise.
26673         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
26674         needed.
26675         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
26676         (malloc, memcpy): Remove decls.
26677         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
26678         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
26679         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
26680         (memcpy): Remove macro.
26681         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
26682         (__P): Remove.  All uses removed.
26683         (PTR): Remove.  All uses changed to void *.
26684         (CHAR_BIT, NULL): Remove.
26685         (spaces, zeros, memset_space, memset_zero)
26686         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
26687         Remove.
26688         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
26689         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
26690         Define with prototype.
26691         Remove now-unnecessary prototype decl.
26692         (extra_args_spec): Assume ANSI C.  All uses changed.
26693         (extra_args_spec_iso): Remove.
26694         (my_strftime, emacs_strftimeu): Define via prototype.
26695         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
26696         unconditionally.
26697         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
26698         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
26699         (strtoul, strtol): Remove decls.
26700         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
26701         LONG_MAX): Remove.
26702         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
26703         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
26704         (LOCALE_PARAM_PROTO): New macro.
26705         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
26706         (INTERNAL (strtol), strtol): Define with a prototype.
26707         (PARAMS): Remove.  All uses removed.
26708         * lib/tempname.c: Include <string.h> unconditionally.
26709         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
26710         * lib/xgethostname.c (main): Define with a prototype.
26711         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
26712         Include <stdlib.h> unconditionally.
26713         (calloc, malloc, realloc, free): Remove decls.
26714         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
26715         Include <stdlib.h> unconditionally.  Sort include file names.
26716         (strtod): Remove.
26717         (xstrtod): Define with a prototype.
26718         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
26719         (strtol, strtoul): Remove decls.
26720
26721 2003-09-11  Paul Eggert  <eggert@twinsun.com>
26722
26723         More patches to assume C89 or better.
26724         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
26725         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
26726         string.h, memchr, STDC_HEADERS.
26727
26728 2003-09-11  Paul Eggert  <eggert@twinsun.com>
26729
26730         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
26731         Include <stdlib.h>, <string.h> unconditionally.
26732         Remove now-unnecessary cast to char *.
26733         * lib/strnlen.c: Include <string.h> unconditionally.
26734         * lib/yesno.c (yesno): Define with a prototype.
26735
26736 2003-09-11  Bruno Haible  <bruno@clisp.org>
26737
26738         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
26739
26740 2003-09-10  Jim Meyering  <jim@meyering.net>
26741
26742         * lib/error.c: Correct indentation of cpp directives.
26743
26744 2003-09-10  Bruno Haible  <bruno@clisp.org>
26745
26746         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
26747         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
26748         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
26749         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
26750         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
26751         <stdlib.h> and <string.h> checks.
26752         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
26753         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
26754
26755 2003-09-10  Bruno Haible  <bruno@clisp.org>
26756
26757         * lib/strcspn.c: Include <string.h> unconditionally.
26758         * lib/strpbrk.c: Include <string.h> unconditionally.
26759         * lib/strstr.c: Include <string.h> unconditionally.
26760         * lib/unicodeio.c: Include <string.h> unconditionally.
26761         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
26762         * lib/unsetenv.c: Likewise.
26763         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
26764         * lib/yesno.c: Include <stdlib.h> unconditionally.
26765         (rpmatch): Add prototype.
26766
26767 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26768
26769         More patches to assume C89 or better.
26770         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
26771         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
26772         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
26773         or for string.h.
26774         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
26775         stdlib.h.
26776         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
26777         C headers.
26778         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
26779         string.h.
26780         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
26781         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
26782         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
26783         or for string.h.
26784         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
26785         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
26786         C headers.
26787         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
26788         memcpy.
26789         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
26790         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
26791         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
26792         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
26793         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
26794         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
26795         string.h, free.
26796         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
26797         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
26798         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
26799         C headers, or for string.h.
26800         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
26801         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
26802         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
26803         headers, memory.h, stdlib.h, string.h, strings.h.
26804         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
26805         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
26806         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
26807         strchr.
26808         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
26809         headers, memory.h, string.h.
26810         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
26811         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
26812         free.
26813         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
26814         headers.
26815         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
26816         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
26817         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
26818         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
26819         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
26820
26821 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26822
26823         More K&R removal.
26824
26825         * lib/acosl.c (main): Use a prototype.
26826         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
26827         tanl.c: Likewise.
26828
26829         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
26830
26831         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
26832         (getopt, etopt_long, getopt_long_only, _getopt_internal)
26833         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
26834         with a prototype.
26835         * lib/getopt.c (const): Remove macro.
26836         Include <string.h> unconditionally.
26837         (my_index): Remove; all uses changed to strchr.
26838         (strlen): Remove decl.
26839         (exchange): Remove forward decl; no longer needed.
26840         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
26841         Define with prototype.
26842         * lib/getopt1.c (const): Remove macro.
26843         (getopt_long, getopt_long_only, main): Define with prototype.
26844
26845         * lib/getugroups.c: Include <string.h> unconditionally.
26846
26847         * lib/getusershell.c: Include <stdlib.h> unconditionally.
26848         (getusershell, setusershell, endusershell, readname, main):
26849         Define with prototypes.
26850
26851         * lib/group-member.c: Include group-member.h first.
26852         Include <stdlib.h> unconditionally.
26853
26854         * lib/hard-locale.c: Include hard-locale.h first.
26855         Include <stdlib.h>, <string.h> unconditionally.
26856
26857         * lib/hash.c (free, malloc): Remove decls.
26858         Include <stdlib.h> unconditionally.
26859
26860         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
26861         (getenv): Do not declare.
26862
26863         * lib/idcache.c: Include <string.h> unconditionally.
26864
26865         * lib/long-options.c: Include long-options.h first, to test interface.
26866         Include <stdlib.h> unconditionally.
26867
26868         * lib/makepath.c: Include makepath.h first, to test interface.
26869         Include <stdlib.h> and <string.h> unconditionally.
26870
26871         * lib/linebuffer.c: Include <stdlib.h>.
26872         (free): Remove decl.
26873
26874         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
26875         stddef.h. rpl_malloc returns void *, not char *.
26876         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
26877         prototype.
26878
26879         * lib/md5.h: Include <limits.h> unconditionally.
26880         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
26881         (__P): Remove; all uses removed.
26882         * lib/md5.c: Include "md5.h" first.
26883         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
26884         md5_buffer, md5_process_bytes, md5_process_block):
26885         Define with prototypes.
26886         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
26887         * lib/sha.c: Include "sha.h" first.
26888         Include <stdlib.h>, <string.h> unconditionally.
26889
26890         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
26891         * lib/memcmp.c (__ptr_t): Likewise.
26892         * lib/memrchr.c (__ptr_t): Likewise.
26893         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
26894         Include <string.h> unconditionally.
26895         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
26896         * lib/memchr.c: Include <stdlib.h> unconditionally.
26897         * lib/memchr.c (LONG_MAX): Remove.
26898         * lib/memrchr.c (LONG_MAX): Likewise.
26899         * lib/memchr.c (__memchr): Define via a prototype.
26900         * lib/memrchr.c (__memrchr): Likewise.
26901         * lib/memcmp.c (__P): Remove, and remove all uses.
26902         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
26903         Remove forward decls; no longer needed.
26904         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
26905         Use types required by C89 in prototype.
26906
26907         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
26908         * lib/savedir.c: Likewise.
26909         * lib/mkdir.c (free): Remove decl.
26910         * lib/rmdir.c (rmdir): Define with a prototype.
26911         * lib/savedir.c: Include savedir.h first, to test interface.
26912
26913         * lib/mktime.c (STDC_HEADERS): Remove.
26914         Include <stdlib.h>, <string.h> unconditionally.
26915
26916         * lib/modechange.c: Include <stdlib.h> unconditionally.
26917         (malloc): Remove decl.
26918
26919         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
26920         (free): Remove decl.
26921
26922         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
26923         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
26924         (This type really should be intptr_t, but that's a C99ism.)
26925         (_obstack_memcpy): Remove: all uses changed to memcpy.
26926         Include <string.h> unconditionally.
26927         (struct obstack): Assume __STDC__ for types of members
26928         chunkfun, freefun, extra_arg.
26929         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
26930         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
26931         obstack_begin, obstack_specify_allocation,
26932         obstack_specify_allocation_with_arg, obstack_chunkfun,
26933         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
26934         Remove unprototyped decls and the macros that use them.
26935         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
26936         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
26937         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
26938         (defined __STDC__ && __STDC__)]:
26939         Remove nonprototyped code.
26940         Include <stdlib.h> unconditionally.
26941         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
26942         _obstack_allocated_p, _obstack_free, obstack_free,
26943         _obstack_memory_used, print_and_abort):
26944         Define using prototypes.
26945         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
26946         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
26947         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
26948         obstack_next_free, obstack_object_size, obstack_room) [0]:
26949         Remove unused, unprototyped code.
26950
26951         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
26952
26953         * lib/physmem.c (physmem_total, physmem_available, main): Define
26954         with prototypes.
26955
26956         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
26957         (main): Define with a prototype.
26958
26959         * lib/posixver.c (getenv): Remove decl.
26960
26961         * lib/putenv.c (malloc): Returns void *, not char *.
26962         Include <string.h> unconditionally.
26963         (strchr, memcpy, NULL): Do not define.
26964
26965         * lib/readtokens.c: Include readtokens.h first, to test interface.
26966         Include <stdlib.h>, <string.h> unconditionally.
26967         (init_tokenbuffer): Define with a prototype.
26968
26969         * lib/regex.c (PARAMS): Remove.  All uses removed.
26970         All uses of _RE_ARGS removed, too.
26971         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
26972         unconditionally.
26973         (bzero): Assume memset exists.
26974         (memcmp, memcpy, NULL): Remove.
26975         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
26976         char, or assignments to local vars of type signed char.
26977         (init_syntax_once, PREFIX(extract_number_and_incr),
26978         PREFIX(print_partial_compiled_pattern),
26979         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
26980         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
26981         PREFIX(regex_grow_registers), PREFIX(regex_compile),
26982         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
26983         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
26984         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
26985         wcs_compile_range, byte_compile_range, truncate_wchar,
26986         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
26987         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
26988         count_mbs_length, wcs_re_match_2_internal,
26989         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
26990         PREFIX(alt_match_null_string_p),
26991         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
26992         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
26993         regfree, PREFIX(extract_number)): Define with prototype.  Remove
26994         now-unnecessary declaration, if any.
26995         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
26996         regcomp, regexec):
26997         Remove now-unnecessary casts among pointer types.
26998         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
26999
27000         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
27001         (free): Remove decl.
27002
27003         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
27004
27005         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
27006         (free): Remove decl.
27007
27008         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
27009         * lib/xgetcwd.c: Likewise.
27010
27011         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
27012         (free): Remove decl.
27013
27014         * lib/strchrnul.c (strchrnul): Define with a prototype.
27015         Fix bug: c_in was not converted to char before searching.
27016
27017         The following changes are not K&R related:
27018
27019         * lib/group-member.h: Include <sys/types.h>, so that this file is
27020         self-contained.
27021         * lib/makepath.h: Likewise.
27022
27023         * lib/getusershell.c (readname, default_index, line_size, readname):
27024         Use size_t, not int, for sizes.
27025         (readname): If the size overflows, report an error instead of
27026         looping forever.
27027
27028 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27029
27030         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
27031         libc.
27032
27033 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27034
27035         * README: New section: portability guidelines.
27036
27037 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27038
27039         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
27040         C89 spec.
27041
27042 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27043
27044         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
27045
27046 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27047
27048         Assume C89 or better; remove K&R cruft.
27049         A few of these changes were first proposed by Derek Robert Price
27050         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
27051
27052         * lib/addext.c: Include <string.h> unconditionally.
27053         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
27054         Don't declare getenv or malloc.
27055
27056         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
27057         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
27058         (NULL): Remove.
27059         (find_stack_direction, alloca): Use prototypes.
27060
27061         * lib/atexit.c (atexit): Define using a prototype.
27062
27063         * lib/basename.c, dirname.c, stripslash.c:
27064         Include <string.h> unconditionally.
27065
27066         * lib/bcopy.c: Include <stddef.h>.
27067         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
27068
27069         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
27070
27071         * lib/error.h (error, error_at_line, error_print_progname)
27072         [! (defined (__STDC__) && __STDC__)]: Remove decls.
27073         * lib/error.c: Include error.h first, to check interface.
27074         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27075         (VA_START): Remove; all uses changeed to va_start.
27076         (exit, strerror): Remove decls.
27077         (error_print_progname): Prototype uncondionally.
27078         Don't include <errno.h>; no longer needed.
27079         (private_strerror): Remove.
27080         (error_tail): Always define.
27081         (error, error_at_line): Assume C89 or better; always use prototypes.
27082         * lib/fatal.c: Include "fatal.h" first, to test interface.
27083         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27084         (VA_START): Remove; all uses changed to va_start.
27085         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
27086         this case.
27087         (exit): Remove decl.
27088         (fatal): Prototype unconditionally.  Assume va_start works.
27089         Abort at end, to pacify gcc.
27090
27091         * lib/euidaccess.c (main): Define with a prototype.
27092
27093         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
27094
27095         * lib/exitfail.c: Include <stdlib.h> unconditionally.
27096
27097         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
27098         prototypes.
27099         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
27100         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
27101         (getenv): Remove decl.
27102         (fnmatch): Define using a prototype.
27103         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
27104         (FCT): Define using a prototype.
27105
27106         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
27107
27108         * lib/gethostname.c: Include <stddef.h>.
27109         (gethostname): Define with prototype.  Length is size_t, not int.
27110
27111 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27112
27113         Assume C89 or better; remove K&R cruft.
27114         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
27115         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
27116         string.h, getenv, malloc.
27117         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
27118         headers.
27119         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
27120         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
27121         do not check for strerror.
27122         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
27123         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
27124         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
27125         do not check for doprnt or vprintf.
27126         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
27127         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
27128
27129 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27130
27131         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
27132         getversion.c should have been removed then, but was accidentally
27133         preserved.
27134
27135         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
27136         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
27137
27138 2003-09-08  Karl Berry  <karl@gnu.org>
27139
27140         * config/config.sub, config.guess, srclistvars.sh: update from savannah
27141                 config, forget about prep.
27142
27143         * config/depcomp, missing: update from automake.
27144
27145 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27146
27147         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
27148         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27149
27150 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27151
27152         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
27153         copy_tm_result.  Bug reported by Simon Josefsson in
27154         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27155
27156 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27157
27158         * m4/time_r.m4: New file.
27159         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
27160         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
27161         is. Check for timegm declaration.
27162         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
27163         Do not check for gmtime_r.
27164         Replace mktime if __mktime_internal does not exist and if mktime
27165         hasn't been replaced already.
27166
27167 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27168
27169         * lib/time_r.c, lib/time_r.h: New files.
27170
27171         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
27172         __localtime_r.
27173         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
27174         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
27175
27176         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
27177         __gmtime_r.
27178         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
27179         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
27180         Include <time_r.h>.
27181
27182         * lib/timegm.c: Switch to glibc implementation, with the following
27183         changes:
27184         [defined HAVE_CONFIG_H]: Include <config.h>.
27185         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
27186         (__mktime_internal) [!defined _LIBC]: New decl.
27187         (__gmtime_r) [!defined _LIBC]: New macro and function.
27188         (timegm): Use a prototype, since gnulib assumes C89.
27189         Do not bother declaring tmp to be const, as it's not really usefu.
27190         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
27191         (timegm): Declare only if HAVE_DECL_TIMEGM.
27192
27193 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27194
27195         * MODULES.html.sh (func_all_modules): Add time_r.
27196         * modules/time_r: New file.
27197         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
27198         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
27199
27200 2003-09-03  Paul Eggert  <eggert@twinsun.com>
27201
27202         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
27203         Bug reported by Lute Kamstra in
27204         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
27205
27206         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
27207         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
27208         course with correspondingly smaller numbers for tomorrow and
27209         yesterday.  From Tadayoshi Funaba.  Originally installed into
27210         sh-utils on 1999-08-07, but the patch got lost (I guess during the
27211         coreutils merge?).
27212
27213 2003-08-31  Simon Josefsson  <jas@extundo.com>
27214
27215         * modules/timegm: New file.
27216         * MODULES.html.sh (func_all_modules): Add timegm.
27217
27218 2003-08-31  Simon Josefsson  <jas@extundo.com>
27219
27220         * m4/timegm.m4: New file.
27221
27222 2003-08-31  Simon Josefsson  <jas@extundo.com>
27223
27224         * lib/timegm.h: New file.
27225         * lib/timegm.c: New file.  Based on
27226         wget-1.8.2/src/http.c:mktime_from_utc.
27227
27228 2003-08-31  Karl Berry  <karl@gnu.org>
27229
27230         * lib/argp.h: update from libc.
27231
27232 2003-08-28  Bruno Haible  <bruno@clisp.org>
27233
27234         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
27235         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
27236         followed by '#define fnmatch fnmatch_posix' gives an error.
27237
27238 2003-08-28  Bruno Haible  <bruno@clisp.org>
27239
27240         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
27241         warning on QNX, which defines O_BINARY to 000000.
27242
27243 2003-08-27  Jim Meyering  <jim@meyering.net>
27244
27245         * m4/mkstemp.m4: Require that the system mkstemp be able to create
27246         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
27247         would fail after 32.  Reported by Danny Levinson.  Details here:
27248         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
27249
27250 2003-08-24  Bruno Haible  <bruno@clisp.org>
27251
27252         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
27253         MSVC7 <stdio.h> is included later.
27254
27255 2003-08-22  Simon Josefsson  <jas@extundo.com>
27256
27257         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
27258
27259 2003-08-20  Karl Berry  <karl@gnu.org>
27260
27261         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
27262
27263 2003-08-20  Bruno Haible  <bruno@clisp.org>
27264
27265         * modules/progname: New file.
27266         * MODULES.html.sh (func_all_modules): Add progname.
27267
27268 2003-08-20  Bruno Haible  <bruno@clisp.org>
27269
27270         * lib/progname.h: New file, from GNU gettext.
27271         * lib/progname.c: New file, from GNU gettext.
27272         * lib/progreloc.c: New file, from GNU gettext.
27273
27274 2003-08-19  Jim Meyering  <jim@meyering.net>
27275
27276         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
27277         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
27278
27279 2003-08-19  Bruno Haible  <bruno@clisp.org>
27280
27281         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
27282         more.
27283
27284 2003-08-19  Bruno Haible  <bruno@clisp.org>
27285
27286         * lib/xstrdup.c: Assume <string.h> exists.
27287
27288 2003-08-18  Paul Eggert  <eggert@twinsun.com>
27289
27290         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
27291         in makefile rules.
27292
27293 2003-08-18  Jim Meyering  <jim@meyering.net>
27294
27295         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
27296         * m4/lib-ld.m4: Likewise.
27297
27298 2003-08-18  Jim Meyering  <jim@meyering.net>
27299
27300         * lib/setenv.h: Indent nested cpp directive.
27301         * lib/vasnprintf.c: Remove trailing blanks.
27302
27303 2003-08-17  Simon Josefsson  <jas@extundo.com>
27304
27305         * modules/xstrndup: New file.
27306         * MODULES.html.sh (func_all_modules): Add xstrndup.
27307
27308 2003-08-17  Simon Josefsson  <jas@extundo.com>
27309
27310         * modules/argp: Fix autoconf macro name. Add more dependencies.
27311
27312 2003-08-17  Simon Josefsson  <jas@extundo.com>
27313
27314         * m4/xstrndup.m4: New file.
27315
27316 2003-08-17  Simon Josefsson  <jas@extundo.com>
27317
27318         * m4/argp.m4: New file.
27319
27320 2003-08-17  Simon Josefsson  <jas@extundo.com>
27321             Bruno Haible  <bruno@clisp.org>
27322
27323         * lib/xstrndup.h: New file.
27324         * lib/xstrndup.c: New file.
27325
27326 2003-08-17  Bruno Haible  <bruno@clisp.org>
27327
27328         * modules/strndup (Files, Include): Add lib/strndup.h.
27329
27330 2003-08-17  Bruno Haible  <bruno@clisp.org>
27331
27332         * modules/euidaccess (Files): Add lib/euidaccess.h.
27333
27334 2003-08-17  Bruno Haible  <bruno@clisp.org>
27335
27336         * lib/strndup.h: New file.
27337
27338 2003-08-17  Bruno Haible  <bruno@clisp.org>
27339
27340         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
27341         like AC_GNU_SOURCE.
27342         * modules/extensions (configure.ac): Comment out the invocation of
27343         gl_USE_SYSTEM_EXTENSIONS.
27344
27345 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27346
27347         Merges from coreutils, etc.
27348         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
27349         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
27350         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
27351         fixing a typo.
27352         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
27353         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
27354
27355 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27356
27357         Document merge from coreutils.
27358         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
27359         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
27360         * modules/utime: Add m4/utimes-null.m4.
27361
27362 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27363
27364         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
27365         space, undoing this 2003-08-12 change:
27366         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
27367
27368 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27369
27370         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
27371         strtoul.c from libc, undoing this 2003-08-12 change:
27372         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
27373
27374 2003-08-16  Jim Meyering  <jim@meyering.net>
27375
27376         Merges from coreutils.
27377         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
27378         prefix.  Adjust cache variables similarly.  Create 500 rather than
27379         just 300 files, to exercise bug on Darwin6.5, too.
27380         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
27381         $missing_dir.
27382         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
27383         AM_SYS_POSIX_TERMIOS.
27384         Reported by mkc@mathdogs.com.
27385         Also change use of $am_cv_sys_posix_termios
27386         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
27387         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
27388         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
27389         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
27390         in /proc/mounts until it finds one with matching device number.  This
27391         is unnecessary when the FILE argument *is* a mount point.  No stat call
27392         is necessary in that case.  So, disable the statvfs-testing code on
27393         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
27394         as RedHat bug# 84846.
27395         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
27396         to 1MB, so as not to render systems with no stack size limit (e.g.,
27397         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
27398         Include <unistd.h>.  On some systems,
27399         it is required for the definition of _SC_PAGESIZE.
27400
27401 2003-08-16  Jim Meyering  <jim@meyering.net>
27402
27403         Merge from coreutils.
27404         * lib/xstrtoimax.c: #else #if -> #elif.
27405         * lib/xstrtoumax.c: Likewise.
27406
27407 2003-08-16  Jim Meyering  <jim@meyering.net>
27408
27409         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
27410         * m4/utimes.m4: Removed.
27411         * m4/utimes-null.m4: Renamed from utimes.m4.
27412
27413         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
27414         to 1MB, so as not to render systems with no stack size limit (e.g.,
27415         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
27416         Include <unistd.h>.  On some systems,
27417         it is required for the definition of _SC_PAGESIZE.
27418
27419 2003-08-16  Jim Meyering  <jim@meyering.net>
27420         and Paul Eggert  <eggert@cs.ucla.edu>
27421
27422         Merges from coreutils, etc.
27423
27424         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
27425         using the latest version from cvs.  This avoids problems with #line
27426         directives using a vendor (Sun) compiler.
27427         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
27428         Don't set GETGROUPS_LIB here; now it's
27429         done via getgroups.m4's wrapper function.
27430         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
27431         rather than just in sh-util/configure.in, so that the
27432         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
27433         same.
27434         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
27435         AC_FUNC_GETLOADAVG where to find getloadavg.c.
27436         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
27437         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
27438         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
27439         Remove code that is now done by the newly-required macros.
27440         Append $(EXEEXT) to DF_PROG.
27441         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
27442         Do not invoke or require the following here,
27443         since prereq.m4 or some gnulib .m4 now does this for us:
27444         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
27445         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
27446         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
27447         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
27448         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
27449         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
27450         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
27451         AC_FUNC_OBSTACK.
27452         Do not replace the following functions, as this is now the job
27453         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
27454         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
27455         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
27456         atexit getpass, strdup, getpagesize.
27457         Replace 'raise'.
27458         Do not check for the following functions, as this is now the job
27459         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
27460         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
27461         setregid.
27462         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
27463         Check for sys/sysctl.h.
27464         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
27465         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
27466         of checking for ssize_t ourselves.
27467
27468         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
27469         Require every macro that gnulib/modules/* suggests for us.
27470         (jm_PREREQ_ADDEXT): New macro.
27471         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
27472         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
27473
27474         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
27475         (gl_PHYSMEM): Use it.
27476         Also check for `table' function.
27477         Check for new headers and functions.
27478         Add check for sys/sysmp.h.
27479         With suggestions from Kaveh Ghazi.
27480         Ignore headers that are present but cannot be compiled.  This
27481         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
27482         C 5.4.
27483
27484 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27485
27486         Document merge from coreutils.
27487         * modules/userspec: Depend on posixver.
27488         * modules/strftime: Depend on tzset.
27489
27490 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27491
27492         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
27493         rather than tab, after '#' in shell-script copyright notices.
27494         Suggested by Bruno Haible.
27495
27496 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27497
27498         * config/srclist-update: Use three spaces, rather than tab, after '#'
27499         in shell-script copyright notices.  Suggested by Bruno Haible.
27500         Remove unnecessary parenthesization in regular expression.
27501
27502 2003-08-15  Jim Meyering  <jim@meyering.net>
27503
27504         Merge from coreutils.
27505         * lib/xgethostname.c: Include <stdlib.h>.
27506         (xghostname): Don't exit for anything other than memory-related
27507         failure; just return NULL.
27508         * lib/userspec.c: Include "posixver.h".
27509         (parse_user_spec): Accept `.' as a separator only
27510         in pre-POSIX-200112 mode.
27511         * lib/strtoimax.c: Use #elif rather than #else #if.
27512         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
27513         Remove function, now that we can rely on a working tzset function.
27514         [!_LIBC]: Ensure that the required autoconf test has been run.
27515         [!defined _NL_CURRENT && HAVE_STRFTIME]:
27516         Use underlying_strftime for %r.
27517         * lib/sha.c: Merge in some clean-up and optimization changes from
27518         glibc.
27519         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
27520         Ensure that it is a multiple of 64.
27521         Rearrange loop exit tests so as to avoid performing an
27522         additional fread after encountering an error or EOF.
27523         * lib/realloc.c: Update copyright date.
27524
27525 2003-08-15  Jim Meyering  <jim@meyering.net>
27526         and Paul Eggert  <eggert@twinsun.com>
27527
27528         Merge from coreutils.
27529         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
27530         member but strut utmpx does not.  Needed for AIX 4.3.3.
27531         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
27532
27533 2003-08-15  Jim Meyering  <jim@meyering.net>
27534         and Paul Eggert  <eggert@cs.ucla.edu>
27535
27536         Merges from coreutils, etc.
27537         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
27538         Require gl_FUNC_TZSET_CLOBBER.
27539         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
27540         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
27541         members.
27542
27543 2003-08-14  Paul Eggert  <eggert@twinsun.com>
27544
27545         Help the merge from coreutils.
27546         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
27547         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
27548         * m4/tzset.m4: Use it too.
27549
27550 2003-08-14  Paul Eggert  <eggert@twinsun.com>
27551
27552         * modules/tzset: New file.
27553
27554 2003-08-14  Jim Meyering  <jim@meyering.net>
27555
27556         Merges from coreutils.
27557         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
27558         variable names, rather than @FNMATCH_H@.
27559         * modules/alloca: Likewise for $(ALLOCA_H).
27560
27561         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
27562         the three copies of the literal target, `fnmatch.h'.
27563         * modules/alloca (alloca.h): Likewise.
27564
27565 2003-08-14  Jim Meyering  <jim@meyering.net>
27566
27567         Merge from coreutils.
27568         * m4/tzset.m4: New file.
27569         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
27570         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
27571         otherwise, AIX 5.1 systems would end up using the latter.
27572         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
27573         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
27574         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
27575         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
27576
27577 2003-08-14  Jim Meyering  <jim@meyering.net>
27578
27579         Merge from coreutils.
27580         * lib/obstack.h: Whitespace changes.
27581         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
27582         and xcalloc return values.
27583         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
27584         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
27585         hang on OSF/1 5.1 for DIR on both local and remote file systems.
27586         Reported by (and fix confirmed by) Nelson H. F. Beebe.
27587         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
27588         error from mntctl.
27589         Use mntctl's return value to drive the entry-processing loop, since
27590         we can't rely on the value of the vmt_length member in the last
27591         entry.  On some systems doing so could result in exhausting
27592         virtual memory.  Based in part on a patch from Mike Jetzer.
27593
27594 2003-08-14  Jim Meyering  <jim@meyering.net>
27595         and Paul Eggert  <eggert@twinsun.com>
27596
27597         Merges from coreutils, plus other fixes.
27598         * lib/physmem.c: Merge in portability changes from gcc/libiberty
27599         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
27600         for credits and details.  Thanks to Kaveh Ghazi for helping
27601         to keep these files in sync.
27602         (ARRAY_SIZE): Define it.
27603         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
27604         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
27605         (memcasecmp): Don't assume size_t fits in unsigned int.
27606         Remove casts and duplicate code.
27607         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
27608         (memcpy): Remove definition.
27609         Merge in some clean-up and optimization changes from glibc.
27610         [BLOCKSIZE]: Move definition to top of file.
27611         Ensure that it is a multiple of 64.
27612         Rearrange loop exit tests so as to avoid performing an
27613         additional fread after encountering an error or EOF.
27614         * lib/md5.h (md5_uintptr): Define.
27615         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
27616         return to the initial working directory.  Preserve errno
27617         for caller.
27618         * lib/idcache.c: Include "xalloc.h".
27619         (xmalloc, xrealloc): Remove decls.
27620         (getuser): Remove casts no longer required in C89.
27621         * lib/human.c: Include stdio.h, for sprintf.
27622         * lib/group-member.c: Include "xalloc.h".
27623         (xmalloc, xrealloc): Remove decls.
27624         (get_group_info): Remove casts no longer required in C89.
27625         * lib/getusershell.c (readname): Remove casts no longer required in
27626         C89.
27627         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
27628         * lib/getline.c: Whitespace fix, from coreutils.
27629
27630 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27631
27632         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
27633         Check for isascii.
27634
27635         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
27636         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
27637         Undo previous (whitespace-only) change.
27638
27639 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27640
27641         * lib/exclude.c: Include <ctype.h>
27642         (IN_CTYPE_DOMAIN): New macro.
27643         (is_space): New fn.
27644         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
27645         and empty lines.
27646
27647         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
27648         Undo previous (whitespace-only) change.
27649
27650 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27651
27652         * config/srclist-update: Change update back to the old behavior,
27653         leaving whitespace alone.  Use one 'sed' command rather than a
27654         pipeline.
27655         (fixlicense): Now a variable, not a function.
27656         (remove_trailing_blanks): Remove.
27657         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
27658         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
27659         Undo previous (whitespace-only) change.
27660
27661 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27662
27663         Merge from coreutils.
27664         * modules/euidaccess: Add lib_SOURCES, include for new
27665         file euidaccess.h
27666
27667 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27668
27669         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
27670         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
27671         Normalize leading white space and remove trailing white space.
27672
27673         Merge from coreutils
27674         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
27675
27676         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
27677         0.12.1.  These files are now being upgraded automatically by
27678         ../config/srclist-update.
27679
27680 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27681
27682         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
27683         Normalize leading white space and remove trailing white space.
27684         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
27685         notice, as per ../config/srclist-update.
27686
27687         Merge from coreutils.
27688         * lib/euidaccess.h: New file.
27689         * lib/euidaccess.c: Include it.
27690         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
27691         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
27692         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
27693
27694 2003-08-12  Paul Eggert  <eggert@twinsun.com>
27695
27696         * config/srclist-update: Add copyright notice.
27697         (remove_id_lines, remove_trailing_blanks): New constants.
27698         (fixfile): Use them to normalize spacing a bit in copied files.
27699         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
27700         Normalize leading white space and remove trailing white space.
27701
27702         * config/texinfo.tex: Sync with texinfo.
27703
27704         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
27705         strtoul.c from libc, to merge coreutils whitespace changes.
27706
27707         * config/srclist.txt: Get the following m4 files from gettext:
27708         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
27709         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
27710         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
27711         wint_t.m4.
27712
27713 2003-08-12  Karl Berry  <karl@gnu.org>
27714
27715         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
27716         been made.
27717
27718 2003-08-11  Paul Eggert  <eggert@twinsun.com>
27719
27720         * modules/gnu-source, m4/gnu-source.m4:
27721         Remove; we're assuming Autoconf 2.54 or later now.
27722         Suggested by Bruno Haible.
27723         * MODULES.html.sh (func_all_modules): Remove gnu-source.
27724
27725 2003-08-11  Bruno Haible  <bruno@clisp.org>
27726
27727         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
27728
27729 2003-08-11  Bruno Haible  <bruno@clisp.org>
27730
27731         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
27732         (vasnprintf): Use it instead of wcslen.
27733
27734 2003-08-11  Bruno Haible  <bruno@clisp.org>
27735
27736         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
27737         value to ensure that _Bool promotes to int. Use #define for _Bool when
27738         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
27739
27740 2003-08-10  Karl Berry  <karl@gnu.org>
27741
27742         * lib/regex.h: update from libc (whitespace fix).
27743
27744 2003-08-09  Paul Eggert  <eggert@twinsun.com>
27745
27746         Merge some files from coreutils.  These changes were
27747         originally made by Jim Meyering.
27748         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
27749         many older Unixes require this.
27750         * lib/alloca.c (alloca): Remove cast to argument of free;
27751         no longer needed in C89.
27752         * lib/alloca_.h, regex.h: Fix white space to match
27753         what GNU indent does.
27754
27755 2003-08-09  Paul Eggert  <eggert@twinsun.com>
27756
27757         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
27758         apparently Emacs's Unicode mode got confused before my 2003-08-05
27759         checkin.
27760
27761 2003-08-08  Paul Eggert  <eggert@twinsun.com>
27762
27763         * m4/extensions.m4: New file.
27764         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
27765         Require gl_USE_SYSTEM_EXTENSIONS.
27766         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
27767         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
27768
27769 2003-08-08  Paul Eggert  <eggert@twinsun.com>
27770
27771         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
27772         * modules/extensions, modules/gnu-source: New files.
27773         * modules/timespec, modules/unlocked-io: Depend on extensions.
27774
27775 2003-08-07  Paul Eggert  <eggert@twinsun.com>
27776
27777         * modules/restrict: New file.
27778         * MODULES.html.sh (func_all_modules): Add restrict.
27779         * modules/regex: Depend on restrict.
27780
27781 2003-08-07  Paul Eggert  <eggert@twinsun.com>
27782
27783         * m4/restrict.m4: New file.
27784         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
27785
27786 2003-08-07  Bruno Haible  <bruno@clisp.org>
27787
27788         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
27789         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
27790
27791 2003-08-07  Bruno Haible  <bruno@clisp.org>
27792
27793         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
27794         makes the module 'getndelim2' compatible with the module 'getline'.
27795
27796 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27797
27798         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
27799         byte with "\201" to avoid glitches when editing that source file
27800         with multi-gnome-terminal.
27801
27802 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27803
27804         * lib/bumpalloc.h: Remove.
27805
27806 2003-08-05  Paul Eggert  <eggert@twinsun.com>
27807
27808         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
27809         * modules/bumpalloc: Remove.
27810
27811 2003-08-04  Paul Eggert  <eggert@twinsun.com>
27812
27813         * lib/getloadavg.c: Change copyright notice and spacing to conform to
27814         GNU coding style.
27815
27816         Merge from coreutils.
27817         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
27818         1. From glibc.
27819         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
27820         from Karl Berry, implemented by Jim Meyering.
27821         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
27822         from Dmitry V. Levin.
27823         Remove anachronistic cast of xrealloc.
27824         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
27825         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
27826         type. Otherwise, it wouldn't compile with at least /bin/cc on
27827         ymp-cray-unicos9.0.2.X.
27828         Combine two mostly-identical uses of alloca into one.
27829         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
27830
27831 2003-08-04  Dave Love  <d.love@dl.ac.uk>
27832
27833         [From Emacs.]
27834
27835         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
27836         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
27837         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
27838         obsolete NLIST_NAME_UNION.
27839         [__GNU__]: Undef BSD and FSCALE.
27840         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
27841
27842 2003-08-03  Paul Eggert  <eggert@twinsun.com>
27843
27844         * lib/stdbool_.h (_Bool): Make it signed char, instead of
27845         an enum type, so that it's guaranteed to promote to int.  See:
27846         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
27847
27848 2003-08-03  Karl Berry  <karl@gnu.org>
27849
27850         * config/depcomp: update from automake.
27851
27852 2003-07-31  Paul Eggert  <eggert@twinsun.com>
27853
27854         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
27855         (strerror): Don't assume that a printable int fits in 14 bytes.
27856
27857 2003-07-31  Bruno Haible  <bruno@clisp.org>
27858
27859         * modules/getpass-gnu: New file.
27860         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
27861
27862 2003-07-31  Bruno Haible  <bruno@clisp.org>
27863
27864         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
27865
27866 2003-07-24  Karl Berry  <karl@gnu.org>
27867
27868         * config/missing: update from automake.
27869
27870 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
27871             Bruno Haible  <bruno@clisp.org>
27872
27873         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
27874         * lib/getline.c (getline, getdelim): Likewise.
27875         Remove _GNU_SOURCE define; now it's defined in config.h through
27876         m4/getline.m4.
27877
27878 2003-07-23  Karl Berry  <karl@gnu.org>
27879
27880         * config/config.sub: update from prep.
27881
27882 2003-07-22  Paul Eggert  <eggert@twinsun.com>
27883
27884         * modules/xalloc (Depends-on): Add exitfail.
27885         * modules/xmemcoll: Likewise.
27886
27887 2003-07-22  Paul Eggert  <eggert@twinsun.com>
27888
27889         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
27890         over-parenthesization in macros.
27891
27892         Sync with coreutils.
27893
27894         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
27895         required by C99.
27896
27897         Use `exit_failure' for xalloc and xmemcoll instead of their own
27898         private exit-failure variables.
27899         * lib/xalloc.h (xalloc_exit_failure): Remove.
27900         * lib/xmalloc.c: Likewise.  Include exitfail.h.
27901         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
27902         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
27903         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
27904         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
27905
27906 2003-07-20  Jim Meyering  <jim@meyering.net>
27907
27908         * modules/closeout (Depends-on): Add exitfail.
27909         Suggestion from Bruno Haible.
27910
27911 2003-07-19  Karl Berry  <karl@gnu.org>
27912
27913         * config/config.sub: update from prep.
27914
27915 2003-07-18  Paul Eggert  <eggert@twinsun.com>
27916
27917         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
27918         Remove.
27919         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
27920         to test that it can stand by itself.  Include "exitfail.h".
27921         Clients should set exit_failure instead.
27922         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
27923
27924 2003-07-18  Bruno Haible  <bruno@clisp.org>
27925
27926         * modules/getndelim2: New file.
27927         * modules/getline: Share files with module getndelim2.
27928         * modules/getnline: Depend on getndelim2 instead of sharing files with
27929         it. Add getnline.c to lib_SOURCES.
27930         * MODULES.html.sh (func_all_modules): Add getndelim2.
27931
27932 2003-07-18  Bruno Haible  <bruno@clisp.org>
27933
27934         * m4/getndelim2.m4: New file.
27935         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
27936         invoke gl_PREREQ_GETNDELIM2.
27937         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
27938         gl_PREREQ_GETNDELIM2.
27939         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
27940         gl_GETNDELIM2.
27941
27942 2003-07-18  Bruno Haible  <bruno@clisp.org>
27943
27944         * lib/getndelim2.h: New file.
27945         * lib/getndelim2.c: Make into a module of its own. Include config.h,
27946         getndelim2.h.
27947         (getndelim2): Make non-static. Change return type to ssize_t.
27948         * lib/getline.h: Change argument names.
27949         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
27950         * lib/getnline.c: Include getndelim2.h.
27951
27952 2003-07-18  Andreas Schwab  <schwab@suse.de>
27953
27954         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
27955
27956 2003-07-17  Karl Berry  <karl@gnu.org>
27957
27958         * config/config.sub: update from prep.
27959
27960 2003-07-17  Bruno Haible  <bruno@clisp.org>
27961
27962         * modules/getnline: New file.
27963         * modules/getline: Add lib/getndelim2.c to source file list.
27964         * MODULES.html.sh (func_all_modules): Add getnline.
27965
27966 2003-07-17  Bruno Haible  <bruno@clisp.org>
27967
27968         * m4/getnline.m4: New file.
27969
27970 2003-07-17  Bruno Haible  <bruno@clisp.org>
27971
27972         * m4/Makefile.am.in: Remove file.
27973         * m4/Makefile.am: Remove file.
27974         * m4/Makefile.in: Remove file.
27975
27976 2003-07-17  Bruno Haible  <bruno@clisp.org>
27977
27978         * lib/getnline.h: New file.
27979         * lib/getnline.c: New file.
27980         * lib/getndelim2.c: New file, extracted from getline.c.
27981         (getndelim2): Renamed from getdelim2, with added nmax argument.
27982         * lib/getline.c: Include getndelim2.c.
27983         (getdelim2): Moved out to getndelim2.c.
27984         (getline, getdelim): Update.
27985
27986 2003-07-17  Bruno Haible  <bruno@clisp.org>
27987
27988         * lib/Makefile.am: Remove file.
27989         * lib/Makefile.in: Remove file.
27990
27991 2003-07-17  Bruno Haible  <bruno@clisp.org>
27992
27993         * configure.in: Remove file.
27994         * Makefile.in: Remove file.
27995
27996 2003-07-17  Bruno Haible  <bruno@clisp.org>
27997
27998         * MODULES.html.sh: Put the </BODY> right before </HTML>.
27999
28000 2003-07-16  Karl Berry  <karl@gnu.org>
28001
28002         * config/srclist-update: was running fixlicense twice, which caused
28003                 texinfo.tex to be nullified for some reason.  Simplify,
28004                 $gplsrc is no longer needed as far as I can see?
28005
28006 2003-07-16  Jim Meyering  <jim@meyering.net>
28007
28008         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
28009
28010 2003-07-15  Paul Eggert  <eggert@twinsun.com>
28011
28012         * config/srclist.txt: Get the following files from gettext-runtime/intl
28013         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
28014         ref-del.sin.  From Bruno Haible.
28015         * config/srclist-update (fixfile): Change grep pattern again, since the
28016         previous fix didn't work (there was another trailing $).  Use
28017         '[$]' to escape the $s.
28018
28019 2003-07-15  Karl Berry  <karl@gnu.org>
28020
28021         * lib/vasnprintf.c: update from gettext.
28022
28023 2003-07-15  Karl Berry  <karl@gnu.org>
28024
28025         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
28026         gets expanded when surrounded by '$'.
28027
28028 2003-07-15  Jim Meyering  <jim@meyering.net>
28029
28030         * modules/save-cwd: Don't depend on error.  From Derek Price.
28031
28032 2003-07-15  Jim Meyering  <jim@meyering.net>
28033
28034         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
28035
28036 2003-07-14  Simon Josefsson  <jas@extundo.com>
28037
28038         * modules/mempcpy: New file.
28039         * MODULES.html.sh (func_all_modules): Add mempcpy.
28040
28041 2003-07-14  Simon Josefsson  <jas@extundo.com>
28042
28043         * m4/mempcpy.m4: New file.
28044
28045 2003-07-14  Simon Josefsson  <jas@extundo.com>
28046
28047         * lib/mempcpy.h: New file.
28048         * lib/mempcpy.c: New file.
28049
28050 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28051
28052         * modules/getdate, modules/posixtm: Depend on mktime.
28053
28054 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28055
28056         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
28057         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
28058         unicodeio.c, unicodeio.h, unlocked-io.h:
28059         Switch from LGPL to GPL.
28060
28061 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28062
28063         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
28064         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
28065         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
28066         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
28067         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
28068         updated automatically by ../config/srclist-update.  This changes
28069         their license from LPGL to GPL.
28070
28071 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28072
28073         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
28074         assumed to refer to the root of the most recent stable gettext version.
28075         * config/srclistvars.sh: Add defaults for eggert.
28076         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
28077         Match "This program" as well as "The program".  This is needed
28078         for gettext.
28079
28080 2003-07-14  Jim Meyering  <jim@meyering.net>
28081
28082         Don't emit diagnostics.  Let callers do that.
28083         * lib/save-cwd.c: Don't include "error.h".
28084         (save_cwd): Don't call error.  Ensure that errno is valid
28085         when returning nonzero.
28086
28087         * lib/save-cwd.h (restore_cwd): Update prototype.
28088         * lib/save-cwd.c (restore_cwd): Remove two parameters.
28089         Simplify.  Don't call error upon failure.  Let callers do that.
28090         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
28091         when auditing is enabled.  But don't bother updating the #if.
28092
28093 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
28094
28095         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
28096         it breaks C++ compilation.
28097         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
28098
28099 2003-07-10  Simon Josefsson  <jas@extundo.com>
28100
28101         * modules/strchrnul (Makefile.am): Add strchrnul.h.
28102
28103 2003-07-10  Jim Meyering  <jim@meyering.net>
28104
28105         * m4/clock_time.m4: Remove trailing blank.
28106         * m4/intmax_t.m4: Likewise.
28107
28108 2003-07-10  Jim Meyering  <jim@meyering.net>
28109
28110         * lib/vasnprintf.c: Remove trailing blanks.
28111         Make cpp indentation consistent.
28112
28113 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28114
28115         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
28116         posixver.c, strftime.c, strnlen.c, strverscmp.c:
28117         Switch from LGPL to GPL.
28118
28119 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28120
28121         * config/srclist.txt: Sort sublists.  Add
28122         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
28123         that differ from gnulib for one reason or another; we'd like this list
28124         to be smaller but for now let's document what we have.
28125
28126 2003-07-08  Paul Eggert  <eggert@twinsun.com>
28127
28128         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
28129         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
28130         and sweeter "eval x=$x".
28131         * config/srclist.txt: Get lib/argp* from glibc.
28132
28133 2003-07-07  Paul Eggert  <eggert@twinsun.com>
28134
28135         * lib/mktime.c: Fix some boundary cases and remove need for floating
28136         point.
28137
28138         Issue a compile-time diagnostic if time_t is floating point, or if
28139         two's complement arithmetic is not in effect, or if arithmetic
28140         right shift does not propagate the sign.  These assumptions were
28141         all in the original code but they weren't checked.
28142
28143         (TIME_T_MIDPOINT, verify): New macros.
28144         (__isleap): Remove; it has integer overflow problems.
28145         (leapyear): New function, without those problems.
28146         (ydhms_tm_diff): Remove; splitting into two parts.
28147         (ydhms_diff): New function, containing the arithmetic part of
28148         the old ydhms_tm_diff function.  Issue a compile-time
28149         diagnostic if we are not using C99 integer division.
28150         Avoid casts when possible.
28151         (guess_time_tm): New function, containing the checking part of
28152         the old ydhms_tm_diff function.  Return the new value, rather than
28153         the difference between it and the old.  Accept a new argument T
28154         so that *T specifies the old value.  Check for overflow in the result.
28155
28156         (__mktime_internal): Use a time_t offset, not a long int offset.
28157         This undoes the 2003-06-04 change, which is no longer needed now
28158         that we have better overflow checking.
28159         (localtime_offset): Likewise.
28160
28161         (__mktime_internal): Avoid harmful overflow on hosts where time_t
28162         and long are 64-bit but int is only 32-bit.
28163         (ydhms_diff): Use long int to store year1 and yday1.
28164         Issue a compile-time diagnostic if long int is not wide enough.
28165
28166         (__mktime_internal): Use long int to store adjusted year and yday.
28167         Use plain C rather than preprocessor commands, if that doesn't
28168         affect efficiency.
28169         Check for overflow (and try to repair) after each probe
28170         rather than checking only at the very end.  This avoids some bugs
28171         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
28172         does not equal GMT offset at maximum time).
28173         Use integer to check for overflow rather than floating point; this
28174         is more portable to non-IEEE hosts, and is a tad faster.
28175         When we detect that we are oscillating between two values,
28176         don't check whether tm_isdst has the requested value, since
28177         we already know the answer.  When tm_isdst has the wrong value,
28178         use a different heuristic to find the right one, based on the
28179         extreme values actually observed in practice in tz2003a,
28180         rather than the (overly optimistic) "previous 3 calendar quarters".
28181
28182         (not_equal_tm, print_tm, check_result): Use "const T" rather than
28183         "T const" to accommodate glibc style.
28184         (check_result): Use less-confusing report format.  "long" -> "long int.
28185         (main): Likewise.
28186         Don't loop if the iteration overflows time_t.
28187         Allow a negative step in the iteration.
28188
28189 2003-07-06  Karl Berry  <karl@gnu.org>
28190
28191         * config/depcomp: update from automake.
28192         * config/config.sub: update from prep.
28193
28194 2003-07-03  Karl Berry  <karl@gnu.org>
28195
28196         * config/config.guess: update from prep.
28197
28198 2003-07-01  Paul Eggert  <eggert@twinsun.com>
28199
28200         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
28201         xreadlink.c now includes it unconditionally.
28202
28203 2003-07-01  Paul Eggert  <eggert@twinsun.com>
28204
28205         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
28206         having it depend on HAVE_SYS_TYPES_H.
28207
28208 2003-07-01  Bruno Haible  <bruno@clisp.org>
28209
28210         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
28211         <sys/types.h> should be sufficient.
28212         Reported by Paul Eggert.
28213
28214 2003-06-26  Karl Berry  <karl@gnu.org>
28215
28216         * config/depcomp: update from automake.
28217
28218 2003-06-26  Bruno Haible  <bruno@clisp.org>
28219
28220         * modules/human: Depend on module stdbool.
28221
28222 2003-06-25  Bruno Haible  <bruno@clisp.org>
28223
28224         * modules/readlink: New file.
28225         * modules/xreadlink: Depend on it.
28226         * MODULES.html.sh (func_all_modules): Add readlink.
28227
28228 2003-06-25  Bruno Haible  <bruno@clisp.org>
28229
28230         * m4/readlink.m4: New file.
28231
28232 2003-06-25  Bruno Haible  <bruno@clisp.org>
28233
28234         * lib/readlink.c: New file.
28235
28236 2003-06-22  Karl Berry  <karl@gnu.org>
28237
28238         * config/srclist.txt: update mkinstalldirs from automake.
28239         * config/mkinstalldirs: update.
28240
28241 2003-06-22  Bruno Haible  <bruno@clisp.org>
28242
28243         Portability to mingw32.
28244         * m4/ssize_t.m4: New file, from GNU gettext.
28245         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
28246         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
28247
28248 2003-06-22  Bruno Haible  <bruno@clisp.org>
28249
28250         * modules/safe-read: Add m4/ssize_t.m4.
28251         * modules/xreadlink: Add m4/ssize_t.m4.
28252
28253 2003-06-20  Bruno Haible  <bruno@clisp.org>
28254
28255         Assume C89, so PARAMS isn't needed.
28256         * lib/unicodeio.h (PARAMS): Remove.
28257         * lib/unicodeio.c: Don't use PARAMS.
28258
28259 2003-06-18  Karl Berry  <karl@gnu.org>
28260
28261         * config/config.{guess,sub}: update from prep.
28262
28263 2003-06-18  Jim Meyering  <jim@meyering.net>
28264
28265         Merge changes from coreutils.
28266         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
28267         Remove explicit declarations of xmalloc and realloc.
28268         Include xalloc.h.
28269         (read_utmp): Remove anachronistic cast of xmalloc.
28270
28271 2003-06-17  Paul Eggert  <eggert@twinsun.com>
28272
28273         Assume C89, so PARAMS isn't needed.
28274         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
28275         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
28276         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
28277         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
28278         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
28279         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
28280         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
28281         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
28282         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
28283         lib/xstrtod.h, lib/xstrtol.h: Likewise.
28284         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
28285         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
28286         no longer needed. Anyway, config.h should always be included before any
28287         other file.
28288
28289 2003-06-11  Simon Josefsson  <jas@extundo.com>
28290
28291         * modules/sysexits: New file.
28292         * MODULES.html.sh (func_all_modules): Add sysexits.
28293
28294 2003-06-11  Simon Josefsson  <jas@extundo.com>
28295
28296         * lib/sysexit_.h: New file.
28297
28298 2003-06-11  Derek Price  <derek@ximbiot.com>
28299
28300         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
28301         necessary.
28302
28303 2003-06-11  Bruno Haible  <bruno@clisp.org>
28304
28305         * m4/sysexits.m4: New file.
28306
28307 2003-06-10  Simon Josefsson  <jas@extundo.com>
28308
28309         * lib/argp.h: New file, from glibc.
28310         * lib/argp-ba.c: New file, from glibc.
28311         * lib/argp-eexst.c: New file, from glibc.
28312         * lib/argp-fmtstream.c: New file, from glibc.
28313         * lib/argp-fmtstream.h: New file, from glibc.
28314         * lib/argp-fs-xinl.c: New file, from glibc.
28315         * lib/argp-help.c: New file, from glibc.
28316         * lib/argp-namefrob.h: New file, from glibc.
28317         * lib/argp-parse.c: New file, from glibc.
28318         * lib/argp-pv.c: New file, from glibc.
28319         * lib/argp-pvh.c: New file, from glibc.
28320         * lib/argp-xinl.c: New file, from glibc.
28321
28322 2003-06-10  Simon Josefsson  <jas@extundo.com>
28323
28324         * modules/strchrnul: New file.
28325
28326 2003-06-10  Simon Josefsson  <jas@extundo.com>
28327
28328         * modules/argp: New file.
28329
28330 2003-06-10  Simon Josefsson  <jas@extundo.com>
28331
28332         * m4/strchrnul.m4: New file.
28333
28334 2003-06-10  Simon Josefsson  <jas@extundo.com>
28335
28336         * lib/strchrnul.h: New file.
28337         * lib/strchrnul.c: New file.
28338
28339 2003-06-10  Bruno Haible  <bruno@clisp.org>
28340
28341         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
28342
28343 2003-06-07  Karl Berry  <karl@gnu.org>
28344
28345         * config/config.{guess,sub}: update from prep.
28346
28347 2003-06-07  Jim Meyering  <jim@meyering.net>
28348
28349         * modules/strtod: Use $(...) notation, not @...@ for
28350         AC_REPLACE'd variables.
28351         * modules/localcharset: Likewise.
28352
28353 2003-06-07  Jim Meyering  <jim@meyering.net>
28354
28355         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
28356         in place of my name in the copyright comment.
28357         Remove definition and uses of __P.
28358
28359         From coreutils.
28360         * lib/stat.c: Don't declare xmalloc explicitly.
28361         Instead, include "xalloc.h".
28362         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
28363         xrealloc, and xcalloc return values.
28364         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
28365         Improve comment.
28366         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
28367
28368 2003-06-07  Bruno Haible  <bruno@clisp.org>
28369
28370         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
28371         avoid AC_CONFIG_LINKS.
28372         * modules/fnmatch (Makefile.am): Use explicit creation rule for
28373         fnmatch.h, to avoid AC_CONFIG_LINKS.
28374         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
28375
28376 2003-06-07  Bruno Haible  <bruno@clisp.org>
28377
28378         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
28379         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
28380         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
28381         directory.
28382         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
28383         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
28384         directory.
28385
28386 2003-06-06  Jim Meyering  <jim@meyering.net>
28387
28388         Merge from coreutils.
28389         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
28390         Consolidate declarations and initializations of *_base* locals.
28391
28392         Merge from coreutils.
28393         This avoids a core dump on systems without GNU putenv,
28394         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
28395         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
28396         (unsetenv): New static function, from GNU libc.
28397         (rpl_putenv): Use it.
28398
28399         * lib/modechange.c: Remove trailing blanks.
28400
28401         Merge from coreutils.
28402         * lib/fsusage.c: Remove declaration of statfs.
28403         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
28404
28405         * lib/posixtm.c: Include <stdbool.h> unconditionally.
28406
28407 2003-06-06  Jim Meyering  <jim@meyering.net>
28408
28409         * lib/stdbool_.h: Renamed from stdbool.h.in.
28410
28411 2003-06-06  Jim Meyering  <jim@meyering.net>
28412             Bruno Haible  <bruno@clisp.org>
28413
28414         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
28415         Adjust Makefile.am snippet not to redirect directly to target.
28416         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
28417
28418 2003-06-05  Paul Eggert  <eggert@twinsun.com>
28419
28420         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
28421         mismatch, look in future quarters as well as past.  This fixes a
28422         bug when processing fall-backwards gaps immediately after a long
28423         period of daylight-saving time.
28424
28425         * lib/mktime.c: Assume freestanding C89 or better.
28426         (HAVE_LIMITS_H): Remove.  Assume it's 1.
28427         (__P): Remove; not used.
28428         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
28429         (mktime, not_equal_tm, print_tm, check_result,
28430         main): Use prototypes.  Use const * where appropriate.
28431         (main): Fix typo in testing code that uncovered by above changes.
28432         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
28433
28434 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28435
28436         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
28437         locale.h, localeconv.  This merges changes from coreutils.
28438
28439         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
28440         It can be removed after the next Autoconf is released.
28441         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
28442         needed.
28443
28444 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28445
28446         * lib/mktime.c: Fix Debian bug 177940
28447         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
28448         (localtime_offset): Now long int, not time_t, because we want it
28449         to be guaranteed to be signed.  All uses changed.
28450         (__mktime_internal): If overflow would occur when adding offset,
28451         don't add it.
28452
28453         Merge 'human' changes from coreutils.  Rewrite to support
28454         locale-specific notations like thousands separators.
28455         * lib/human.c: Simplify authorship notice.
28456         Include human.h immediately after config.h.
28457         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
28458         <limits.h>: Do not include, since human.h does.
28459         (SIZE_MAX, UINTMAX_MAX): New macros.
28460         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
28461         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
28462         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
28463         (power_letter): Renamed from suffixes.
28464         (generate_suffix_backwards): Remove.
28465         (adjust_value): Now takes int style (because of human.h changes)
28466         and long double value (for greater precision on some platforms).
28467         (group_number): New function.
28468         (human_readable): Use it.  Use integer options, not enum.
28469         Put the options before the sizes in the arg list.
28470         Support all the new options.
28471         The old human_readable function has been removed;
28472         use inttostr.h instead.
28473         (human_readable, default_block_size, humblock):
28474         Use uintmax_t, not int, for block sizes.
28475         (human_readable_inexact, block_size_types): Remove.
28476         (block_size_opts): New constant.
28477         (human_options): Renamed from human_block_size, with new signature
28478         that allows block sizes up to UINTMAX_MAX.  All callers changed.
28479         * lib/human.h: Add copyright and authorship notice.
28480         Include <limits.h> and <stdbool.h> unconditionally.
28481         (PARAMS): Remove.  All uses removed.
28482         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
28483         (enum human_inexact_style): Remove tag; now a nameless enum.
28484         (human_floor, human_ceiling, human_round_to_even): Now have
28485         values 2, 0, 1 rather than -1, 1, 0.
28486         (human_group_digits, human_suppress_point_zero, human_autoscale,
28487         human_base_1024, human_SI, human_B): New constants.
28488         (human_readable_inexact, human_block_size): Remove.
28489         (human_readable): Size args are now uintmax_t, not int.
28490         (human_options): New decl.
28491
28492         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
28493         unnecessary now that we assume C89 or better.  This change
28494         imported from coreutils.
28495
28496         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
28497         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
28498         in the 2003-05-30 sync from glibc.
28499
28500         .h files should stand alone, but we shouldn't include <sys/types.h>
28501         if we can get away with just <stddef.h>.
28502
28503         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
28504         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
28505         rather than <sys/types.h>, as we merely need size_t.
28506         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
28507         to get size_t.
28508         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
28509         Include <stdio.h>, to get FILE.
28510         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
28511         memcasecmp.h has included <stddef.h> and all we need is size_t.
28512         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
28513         our interface, instead of including <sys/types.h>
28514
28515 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28516
28517         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
28518         now, as glibc mktime is buggy on non-glibc systems.
28519
28520 2003-06-03  Karl Berry  <karl@gnu.org>
28521
28522         * config/config.sub: update from prep.
28523
28524 2003-06-02  Paul Eggert  <eggert@twinsun.com>
28525
28526         [from coreutils]
28527         Fix some minor time-related bugs with POSIX time arguments.
28528         Some valid time stamps were being rejected (notably -1, and
28529         time stamps before 1900 on 64-bit hosts).  And some invalid
28530         time stamps were being accepted, e.g. September 31.
28531
28532         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
28533         that we can return (time_t) -1 successfully.
28534         * lib/posixtm.c: Likewise.
28535         [HAVE_STDBOOL_H]: Include <stdbool.h>.
28536         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
28537         (t): Remove static var.
28538         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
28539         of static var.  All uses changed.
28540         (year): Do not reject years before 1900; they can occur with
28541         64-bit time_t.
28542         (posix_time_parse): Do not check for out-of-range components;
28543         that is now the caller's responsibility, since our checks were
28544         only approximations.
28545         (posixtime): Use mktime to check for out-of-range components,
28546         since it knows them exactly.
28547         If mktime returns (time_t) -1, check whether an error actually occurred
28548         by invoking localtime on -1.
28549         (main) [TEST_POSIXTIME]: Check for input data errors, and report
28550         posixtime failures better.
28551         Improve the test data (in comments only).
28552
28553 2003-06-02  Karl Berry  <karl@gnu.org>
28554
28555         * config/mkinstalldirs (version): new variable.
28556         (--version): new option.
28557         (usage): improve message.
28558
28559 2003-05-30  Karl Berry  <karl@gnu.org>
28560
28561         * lib/mktime.c: update from libc.
28562
28563 2003-05-30  Bruno Haible  <bruno@clisp.org>
28564
28565         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
28566         * config/config.rpath: Upgrade to gettext-0.12.1.
28567
28568 2003-05-30  Bruno Haible  <bruno@clisp.org>
28569
28570         * m4/gettext.m4: Upgrade to gettext-0.12.1.
28571         * m4/nls.m4: New file, from gettext-0.12.1.
28572         * m4/po.m4: New file, from gettext-0.12.1.
28573         * m4/progtest.m4: Upgrade to gettext-0.12.1.
28574
28575 2003-05-30  Bruno Haible  <bruno@clisp.org>
28576
28577         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
28578         * lib/localcharset.h: Likewise.
28579         * lib/localcharset.c: Likewise.
28580
28581 2003-05-29  Karl Berry  <karl@gnu.org>
28582
28583         * config/config.rpath: update from gettext.
28584
28585 2003-05-28  Paul Eggert  <eggert@twinsun.com>
28586
28587         Assume the headers required for C89 freestanding compilers.
28588         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
28589         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
28590         * m4/human.m4 (gl_HUMAN): Likewise.
28591         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
28592         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
28593         * m4/userspec.m4 (gl_USERSPEC): Likewise.
28594         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
28595         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
28596         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
28597
28598 2003-05-28  Paul Eggert  <eggert@twinsun.com>
28599
28600         Assume the headers required for C89 freestanding compilers.
28601         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
28602         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
28603         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
28604         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
28605         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
28606         define, since <limits.h> is guaranteed to do that.
28607         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
28608         * lib/exclude.c: Include <stdbool.h> unconditionally.
28609         * lib/tempname.c: Include <stddef.h> unconditionally.
28610         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
28611         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
28612         <stddef.h> does that.
28613         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
28614         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
28615         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
28616         needed.
28617         * lib/xstrtol.c: Likewise.
28618         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
28619         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
28620
28621         * lib/addext.c (addext): Use assignment rather than cast, to avoid
28622         warnings on some platforms.
28623
28624         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
28625         arbitrarily.
28626
28627 2003-05-26  Jim Meyering  <jim@meyering.net>
28628
28629         Merge in a change from coreutils:
28630         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
28631         that is guaranteed to be `no'.  Use `no_such_member' to indicate
28632         that condition, rather than `-1' which is slightly misleading.
28633         Change the name of the cache variable to have the gl_ prefix.
28634         Prompted by a patch from Richard Dawe for DJGPP.
28635
28636 2003-05-24  Karl Berry  <karl@gnu.org>
28637
28638         * config/config.guess: update from prep.
28639
28640 2003-05-22  Karl Berry  <karl@gnu.org>
28641
28642         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
28643
28644 2003-05-20  Karl Berry  <karl@gnu.org>
28645
28646         * config/config.guess: update from prep.
28647
28648 2003-05-18  Karl Berry  <karl@gnu.org>
28649
28650         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
28651         might actually be set by the user.
28652
28653         * config/depcomp, install-sh, mdate-sh: update from automake.
28654
28655 2003-05-17  Bruno Haible  <bruno@clisp.org>
28656
28657         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
28658         invalid expansion for AC_EGREP_CPP.
28659         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
28660         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
28661         Suggested by Akim Demaille <akim@epita.fr> in
28662         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
28663
28664 2003-05-12  Jim Meyering  <jim@meyering.net>
28665
28666         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
28667         the space-padded-by-default conversion specifiers, %e, %k, %l.
28668
28669 2003-05-12  Bruno Haible  <bruno@clisp.org>
28670
28671         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
28672         the string is longer than 4 KB.
28673
28674 2003-05-11  Karl Berry  <karl@gnu.org>
28675
28676         * config/config.{guess,sub}: update from prep.
28677
28678 2003-05-09  Bruno Haible  <bruno@clisp.org>
28679
28680         * modules/error: Add m4/strerror_r.m4 to file list.
28681
28682 2003-05-03  Bruno Haible  <bruno@clisp.org>
28683
28684         Upgrade to Unicode-4.0.
28685         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
28686         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
28687         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
28688         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
28689         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
28690         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
28691         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
28692         Change width of U+E0100..U+E01EF from 1 to 0.
28693
28694 2003-04-25  Jim Meyering  <jim@meyering.net>
28695
28696         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
28697         of type size_t, not int.
28698
28699 2003-04-25  Bruno Haible  <bruno@clisp.org>
28700
28701         * lib/copy-file.c: Include <stddef.h>, for size_t.
28702
28703 2003-04-21  Paul Eggert  <eggert@twinsun.com>
28704
28705         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
28706         code which expansion is under static control.  Patch imported from
28707         Akim Demaille's patch to Bison; see
28708         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
28709
28710 2003-04-14  Bruno Haible  <bruno@clisp.org>
28711
28712         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
28713
28714 2003-04-11  Jim Meyering  <jim@meyering.net>
28715
28716         Merge changes from Coreutils.
28717
28718         2003-03-22  Jim Meyering  <jim@meyering.net>
28719
28720         * lib/strftime.c (widen): Cast alloca return value to proper type.
28721
28722         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
28723
28724         From GNU libc.
28725         * lib/strftime.c (my_strftime): Handle very large width
28726         specifications for numeric values correctly.  Improve checks for
28727         overflow.
28728
28729         2003-01-19  Jim Meyering  <jim@meyering.net>
28730
28731         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
28732         definitions.
28733         (nl_get_alt_digit) [! defined my_strftime]: Define.
28734         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
28735         _nl_get_alt_digit and _nl_get_walt_digit.
28736
28737         * lib/strftime.c (my_strftime): Merge in locale-related changes from
28738         libc. These changes have no effect outside of _LIBC.
28739
28740 2003-04-10  Bruno Haible  <bruno@clisp.org>
28741
28742         * modules/findprog: New file.
28743         * MODULES.html.sh (func_all_modules): Add it.
28744
28745 2003-04-10  Bruno Haible  <bruno@clisp.org>
28746
28747         * m4/findprog.m4: New file.
28748         * m4/eaccess.m4: New file.
28749
28750 2003-04-10  Bruno Haible  <bruno@clisp.org>
28751
28752         * lib/findprog.h: New file, from GNU gettext.
28753         * lib/findprog.c: New file, from GNU gettext.
28754
28755 2003-04-05  Jim Meyering  <jim@meyering.net>
28756
28757         Merge changes from Coreutils.
28758
28759         * lib/exclude.h (PARAMS): Remove definition and uses.
28760         * lib/exclude.c: Remove uses of `PARAMS'.
28761
28762         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
28763         Add test-cases for DOS filenames. Declare program_name.
28764         (main): Set up program_name.  Patch by Rich Dawe.
28765
28766         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
28767         error from mntctl.
28768         Use mntctl's return value to drive the entry-processing loop, since
28769         we can't rely on the value of the vmt_length member in the last
28770         entry.  On some systems doing so could result in exhausting
28771         virtual memory.  Based in part on a patch from Mike Jetzer.
28772
28773 2003-04-04  Bruno Haible  <bruno@clisp.org>
28774
28775         * modules/linebreak: New file.
28776         * MODULES.html.sh (func_all_modules): Add it.
28777
28778 2003-04-04  Bruno Haible  <bruno@clisp.org>
28779
28780         * m4/linebreak.m4: New file.
28781
28782 2003-04-04  Bruno Haible  <bruno@clisp.org>
28783
28784         * lib/linebreak.h: New file, from GNU gettext.
28785         * lib/linebreak.c: New file, from GNU gettext with slight
28786         modifications.
28787         * lib/lbrkprop.h: New file, from GNU gettext.
28788
28789 2003-04-03  Bruno Haible  <bruno@clisp.org>
28790
28791         * modules/utf8-ucs4: New file.
28792         * modules/utf16-ucs4: New file.
28793         * modules/ucs4-utf8: New file.
28794         * modules/ucs4-utf16: New file.
28795         * MODULES.html.sh (func_all_modules): Add them.
28796
28797 2003-04-03  Bruno Haible  <bruno@clisp.org>
28798
28799         * m4/utf-ucs4.m4: New file.
28800         * m4/ucs4-utf.m4: New file.
28801
28802 2003-04-03  Bruno Haible  <bruno@clisp.org>
28803
28804         * lib/utf8-ucs4.h: New file, from GNU gettext.
28805         * lib/utf16-ucs4.h: New file, from GNU gettext.
28806         * lib/ucs4-utf8.h: New file, from GNU gettext.
28807         * lib/ucs4-utf16.h: New file, from GNU gettext.
28808
28809 2003-04-02  Bruno Haible  <bruno@clisp.org>
28810
28811         * modules/binary-io: New file.
28812         * MODULES.html.sh (func_all_modules): Add it.
28813
28814 2003-04-02  Bruno Haible  <bruno@clisp.org>
28815
28816         * lib/binary-io.h: New file, from GNU gettext.
28817
28818 2003-04-01  Bruno Haible  <bruno@clisp.org>
28819
28820         * modules/pathname: New file.
28821         * MODULES.html.sh (func_all_modules): Add it.
28822
28823 2003-04-01  Bruno Haible  <bruno@clisp.org>
28824
28825         * lib/pathname.h: New file, from GNU gettext.
28826         * lib/concatpath.c: New file, from GNU gettext.
28827
28828 2003-03-30  Bruno Haible  <bruno@clisp.org>
28829
28830         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
28831
28832 2003-03-30  Bruno Haible  <bruno@clisp.org>
28833
28834         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
28835         function chown() doesn't exist.
28836
28837 2003-03-28  Bruno Haible  <bruno@clisp.org>
28838
28839         * modules/copy-file: New file.
28840         * MODULES.html.sh (func_all_modules): Add it.
28841
28842 2003-03-28  Bruno Haible  <bruno@clisp.org>
28843
28844         * m4/copy-file.m4: New file.
28845
28846 2003-03-28  Bruno Haible  <bruno@clisp.org>
28847
28848         * lib/copy-file.h: New file, from GNU gettext.
28849         * lib/copy-file.c: New file, from GNU gettext.
28850
28851 2003-03-18  Jim Meyering  <jim@meyering.net>
28852
28853         * lib/quote.c (quote_n): Fix typo in comment.
28854
28855 2003-03-18  Bruno Haible  <bruno@clisp.org>
28856
28857         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
28858         checking.
28859         * m4/onceonly_2_57.m4: Likewise.
28860
28861 2003-03-17  Bruno Haible  <bruno@clisp.org>
28862
28863         * m4/onceonly.m4: Require autoconf 2.54 or newer.
28864         (m4_quote): Remove macro.
28865         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
28866
28867 2003-03-14  Jim Meyering  <jim@meyering.net>
28868
28869         Merge changes from Coreutils.
28870         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
28871         to be const, in order to avoid warnings.
28872         (obstack_room): Likewise.
28873         (obstack_empty_p): Likewise.
28874
28875 2003-03-14  Bruno Haible  <bruno@clisp.org>
28876
28877         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
28878         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
28879
28880 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28881
28882         Merge changes from Bison.
28883         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
28884         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
28885         when compiling Bison 1.875's `bitset bset = obstack_alloc
28886         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
28887         * lib/hash.c: Include <stdbool.h> unconditionally.
28888
28889 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28890
28891         * m4/onceonly.m4 (m4_quote): New macro.
28892         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
28893         Quote AC_FOREACH variable-expansions properly.
28894
28895 2003-03-13  Paul Eggert  <eggert@twinsun.com>
28896
28897         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
28898
28899 2003-03-09  Paul Eggert  <eggert@twinsun.com>
28900
28901         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
28902         Reported by Bruce Becker; see:
28903         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
28904
28905 2003-03-03  Paul Eggert  <eggert@twinsun.com>
28906             Bruno Haible  <bruno@clisp.org>
28907
28908         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
28909         Reported by John Hughes, see
28910         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
28911
28912 2003-02-20  Bruno Haible  <bruno@clisp.org>
28913
28914         * MODULES.html.sh (func_all_modules): Add poll.
28915
28916 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28917
28918         * modules/poll: New file.
28919
28920 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28921
28922         * lib/poll_.h: New file.
28923         * lib/poll.c: New file.
28924
28925 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
28926
28927         * m4/poll.m4: New file.
28928
28929 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28930
28931         * modules/mathl: New file.
28932
28933 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28934
28935         * lib/mathl.h: New file.
28936         * lib/acosl.c: New file.
28937         * lib/asinl.c: New file.
28938         * lib/atanl.c: New file.
28939         * lib/ceill.c: New file.
28940         * lib/cosl.c: New file.
28941         * lib/expl.c: New file.
28942         * lib/floorl.c: New file.
28943         * lib/frexpl.c: New file.
28944         * lib/ldexpl.c: New file.
28945         * lib/logl.c: New file.
28946         * lib/sincosl.c: New file.
28947         * lib/sinl.c: New file.
28948         * lib/sqrtl.c: New file.
28949         * lib/tanl.c: New file.
28950         * lib/trigl.c: New file.
28951         * lib/trigl.h: New file.
28952
28953 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28954
28955         * m4/mathl.m4: New file.
28956
28957 2003-02-18  Bruno Haible  <bruno@clisp.org>
28958
28959         * MODULES.html.sh (func_all_modules): Add mathl.
28960
28961 2003-02-17  Bruno Haible  <bruno@clisp.org>
28962
28963         * modules/mkdtemp: New module.
28964         * MODULES.html.sh (func_all_modules): Add it.
28965
28966 2003-02-17  Bruno Haible  <bruno@clisp.org>
28967
28968         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
28969
28970 2003-02-17  Bruno Haible  <bruno@clisp.org>
28971
28972         * lib/mkdtemp.h: New file, from GNU gettext.
28973         * lib/mkdtemp.c: New file, from GNU gettext.
28974
28975 2003-02-02  Jim Meyering  <jim@meyering.net>
28976
28977         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
28978         e.g. glibc-2.2.93.
28979
28980 2003-01-31  Bruno Haible  <bruno@clisp.org>
28981
28982         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
28983         'rpl_rename'.
28984         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
28985         'rpl_strnlen'.
28986         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
28987         'rpl_strtod'.
28988         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
28989         'rpl_utime'.
28990
28991 2003-01-31  Bruno Haible  <bruno@clisp.org>
28992
28993         * lib/rename.c: #undef rename before defining rpl_rename.
28994         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
28995
28996 2003-01-30  Bruno Haible  <bruno@clisp.org>
28997
28998         * modules/vasnprintf, modules/vasprintf: New modules.
28999         * MODULES.html.sh (func_all_modules): Add them.
29000
29001 2003-01-30  Bruno Haible  <bruno@clisp.org>
29002
29003         * m4/signed.m4: New file, from GNU gettext.
29004         * m4/longdouble.m4: New file, from GNU gettext.
29005         * m4/wchar_t.m4: New file, from GNU gettext.
29006         * m4/wint_t.m4: New file, from GNU gettext.
29007         * m4/vasnprintf.m4: New file.
29008         * m4/vasprintf.m4: New file.
29009
29010 2003-01-30  Bruno Haible  <bruno@clisp.org>
29011
29012         * lib/printf-args.h: New file, from GNU gettext.
29013         * lib/printf-args.c: New file, from GNU gettext.
29014         * lib/printf-parse.h: New file, from GNU gettext.
29015         * lib/printf-parse.c: New file, from GNU gettext.
29016         * lib/vasnprintf.h: New file, from GNU gettext.
29017         * lib/vasnprintf.c: New file, from GNU gettext.
29018         * lib/asnprintf.c: New file, from GNU gettext.
29019         * lib/vasprintf.h: New file, from GNU gettext with modifications.
29020         * lib/vasprintf.c: New file, from GNU gettext.
29021         * lib/asprintf.c: New file, from GNU gettext.
29022
29023 2003-01-29  Bruno Haible  <bruno@clisp.org>
29024
29025         * modules/stpncpy: New module.
29026         * MODULES.html.sh (func_all_modules): Add it.
29027
29028 2003-01-29  Bruno Haible  <bruno@clisp.org>
29029
29030         * m4/stpncpy.m4: New file.
29031
29032 2003-01-29  Bruno Haible  <bruno@clisp.org>
29033
29034         * lib/stpncpy.h: New file, from GNU gettext with modifications.
29035         * lib/stpncpy.c: New file, from GNU gettext with modifications.
29036
29037 2003-01-28  Bruno Haible  <bruno@clisp.org>
29038
29039         * modules/c-ctype: New module.
29040         * MODULES.html.sh (func_all_modules): Add it.
29041
29042 2003-01-28  Bruno Haible  <bruno@clisp.org>
29043
29044         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
29045         Paul Eggert.
29046         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
29047         Paul Eggert.
29048
29049 2003-01-27  Bruno Haible  <bruno@clisp.org>
29050
29051         * modules/xsetenv: New module.
29052         * MODULES.html.sh (func_all_modules): Add it.
29053
29054 2003-01-27  Bruno Haible  <bruno@clisp.org>
29055
29056         * lib/xsetenv.h: New file, from GNU gettext.
29057         * lib/xsetenv.c: New file, from GNU gettext.
29058
29059 2003-01-23  Jim Meyering  <jim@meyering.net>
29060
29061         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
29062         from working on systems without dirfd (at least Irix and OSF1/Tru64).
29063
29064 2003-01-23  Bruno Haible  <bruno@clisp.org>
29065
29066         * modules/minmax: New module.
29067         * MODULES.html.sh (func_all_modules): Add it.
29068
29069 2003-01-23  Bruno Haible  <bruno@clisp.org>
29070
29071         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
29072         Eggert.
29073
29074 2003-01-22  Bruno Haible  <bruno@clisp.org>
29075
29076         * modules/exit: New module.
29077         * MODULES.html.sh (func_all_modules): Add it.
29078
29079 2003-01-22  Bruno Haible  <bruno@clisp.org>
29080
29081         * lib/exit.h: New file, from GNU gettext.
29082
29083 2003-01-19  Bruno Haible  <bruno@clisp.org>
29084
29085         * gnulib-tool: Recognize option --extract-maintainer.
29086         (func_get_maintainer): New function.
29087         * modules/*: Add Maintainer entry.
29088
29089 2003-01-16  Jim Meyering  <jim@meyering.net>
29090
29091         * m4/regex.m4: The `regex' struct is both input and output.
29092         Initialize it before each use.  Patch by Tim Waugh.
29093
29094 2003-01-16  Bruno Haible  <bruno@clisp.org>
29095
29096         * MODULES.html.sh: Add a table of contents. Add the module name as
29097         leftmost column. Add hyperlinks.
29098
29099 2003-01-15  Bruno Haible  <bruno@clisp.org>
29100
29101         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
29102
29103 2003-01-15  Bruno Haible  <bruno@clisp.org>
29104
29105         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
29106         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
29107         suffix.
29108
29109 2003-01-15  Bruno Haible  <bruno@clisp.org>
29110
29111         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
29112
29113 2003-01-15  Bruno Haible  <bruno@clisp.org>
29114
29115         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
29116         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
29117
29118 2003-01-14  Jim Meyering  <jim@meyering.net>
29119
29120         * lib/same.c (same_name): Tweak a comment.
29121
29122 2003-01-14  Bruno Haible  <bruno@clisp.org>
29123
29124         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
29125         when a string comparison is sufficient.
29126
29127 2003-01-14  Bruno Haible  <bruno@clisp.org>
29128
29129         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
29130         'unsigned int'.
29131
29132 2003-01-14  Bruno Haible  <bruno@clisp.org>
29133
29134         * lib/hash-pjw.c: Add comment about low quality of this function.
29135
29136 2003-01-13  Bruno Haible  <bruno@clisp.org>
29137
29138         * modules/stpcpy: Distribute lib/stpcpy.h.
29139         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
29140
29141 2003-01-13  Bruno Haible  <bruno@clisp.org>
29142
29143         * modules/*: Add a description.
29144         * modules/strpbrk: Fix Makefile.am snippet.
29145         * modules/strtoimax: Fix dependencies.
29146         * modules/strtoumax: Likewise.
29147
29148 2003-01-13  Bruno Haible  <bruno@clisp.org>
29149
29150         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
29151         * modules/alloca (Makefile.am): All object files depend on alloca.h.
29152         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
29153
29154 2003-01-13  Bruno Haible  <bruno@clisp.org>
29155
29156         * gnulib-tool (func_create_testdir): Store config/* files in the main
29157         directory.
29158         * config.rpath: Move to ...
29159         * config/config.rpath: ... here.
29160         * modules/gettext: Contains config/config.rpath, not config.rpath.
29161         * modules/iconv: Likewise.
29162
29163 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29164
29165         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29166         to avoid collisions with libcurses and libreadline.
29167
29168         * m4/getstr.m4: Remove.
29169         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
29170
29171 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29172
29173         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29174         to avoid collisions with libcurses and libreadline.
29175
29176         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
29177         * lib/getstr.h, getstr.c: Remove.
29178         * lib/getline.c: Include "getline.h", to check interface.
29179         Move body of old getstr.c here: this defines MIN_CHUNK and
29180         declares getdelim2, which is renamed from getstr.
29181         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
29182
29183         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
29184         All uses changed.
29185         * lib/linebuffer.h: Likewise.
29186         (readline): Remove backward-compatibility macro.
29187
29188 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29189
29190         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29191         to avoid collisions with libcurses and libreadline.
29192         * getstr: Remove.
29193         * MODULES.html.sh: Remove getstr.
29194         * modules/getline: Depend on unlocked-io, not getstr.
29195
29196 2003-01-12  Jim Meyering  <jim@meyering.net>
29197
29198         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
29199
29200 2003-01-10  Bruno Haible  <bruno@clisp.org>
29201
29202         * modules/alloca: Change Makefile.am requirements. Simplify Include
29203         requirements. Add lib/alloca_.h to file list.
29204
29205 2003-01-10  Bruno Haible  <bruno@clisp.org>
29206
29207         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
29208
29209 2003-01-10  Bruno Haible  <bruno@clisp.org>
29210
29211         * lib/alloca_.h: New file.
29212         * lib/getdate.y: Unconditionally include alloca.h.
29213         * lib/makepath.c: Likewise.
29214         * lib/setenv.c: Likewise.
29215         * lib/userspec.c: Likewise.
29216
29217 2003-01-09  Karl Berry  <karl@gnu.org>
29218
29219         * MODULES.html.sh: include `dirname $0` in PATH, to find
29220         gnulib-tool.
29221
29222 2003-01-09  Bruno Haible  <bruno@clisp.org>
29223
29224         * modules/stdbool: Change configure.ac, Makefile.am requirements.
29225         Simplify Include requirements. Add lib/stdbool.h.in to file list.
29226
29227 2003-01-09  Bruno Haible  <bruno@clisp.org>
29228
29229         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
29230
29231 2003-01-09  Bruno Haible  <bruno@clisp.org>
29232
29233         * lib/stdbool.h.in: New file.
29234
29235 2003-01-09  Bruno Haible  <bruno@clisp.org>
29236
29237         * gnulib-tool (func_all_modules): Ignore files ending in ~.
29238         * MODULES.html.sh: Likewise.
29239
29240 2003-01-08  Jim Meyering  <jim@meyering.net>
29241
29242         * lib/full-write.c: Undefine and define-away `const' after inclusion
29243         of errno.h, not before.  Suggestion from Bruno Haible.
29244
29245 2003-01-08  Bruno Haible  <bruno@clisp.org>
29246
29247         * modules/full-read: Depend on full-write.
29248
29249 2003-01-08  Bruno Haible  <bruno@clisp.org>
29250
29251         * lib/safe-read.c: Include specification header first, to ensure its
29252         selfcontainedness.
29253         * lib/full-write.c: Likewise.
29254
29255 2003-01-07  Jim Meyering  <jim@meyering.net>
29256
29257         * lib/full-write.c: Rework so that it may serve to define full_read,
29258         too.
29259         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
29260
29261 2003-01-07  Bruno Haible  <bruno@clisp.org>
29262
29263         * lib/strtoimax.c: Include <stdint.h> as an alternative to
29264         <inttypes.h>.
29265         * lib/xstrtol.h: Likewise.
29266         * lib/xstrtoimax.c: Likewise.
29267         * lib/xstrtoumax.c: Likewise.
29268         * lib/human.h: Likewise.
29269
29270         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
29271         on systems that have <inttypes.h> but not <stdint.h>.
29272
29273 2003-01-07  Bruno Haible  <bruno@clisp.org>
29274
29275         * MODULES.html.sh: Add copyright notice.
29276         (missed_files): Omit CVS directory entries.
29277         (func_module): Make it work with sed-3.02.
29278         * MODULES.txt: Remove file.
29279
29280 2003-01-06  Jim Meyering  <jim@meyering.net>
29281
29282         * lib/version-etc.c: Update year in translatable copyright string.
29283
29284 2003-01-03  Karl Berry  <karl@gnu.org>
29285
29286         * config/config.{guess,sub}: update from prep.
29287
29288 2003-01-02  Karl Berry  <karl@gnu.org>
29289
29290         * doc/COPYING.DOC: belatedly updated to 1.2.
29291
29292 2003-01-01  Karl Berry  <karl@gnu.org>
29293
29294         * gnulib-tool (func_verify_module): report module name $module in
29295         error message, not $1.
29296         * gnulib-tool (create-testdir): don't complain if destdir couldn't
29297         be created, only if it doesn't exist.
29298         * gnulib-tool (last_checkin_date): don't expand the $Date here.
29299
29300 2002-12-31  Paul Eggert  <eggert@twinsun.com>
29301
29302         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
29303
29304 2002-12-31  Paul Eggert  <eggert@twinsun.com>
29305
29306         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
29307         memcmp if strcoll doesn't work.
29308
29309 2002-12-31  Bruno Haible  <bruno@clisp.org>
29310
29311         * lib/utime.c (utime_null): No need to call ftruncate if the file was
29312         nonempty.
29313
29314 2002-12-31  Bruno Haible  <bruno@clisp.org>
29315
29316         * lib/memcoll.c (STRCOLL): New macro.
29317         (memcoll): Use it.
29318
29319 2002-12-31  Bruno Haible  <bruno@clisp.org>
29320
29321         * lib/localcharset.h: New file.
29322         * lib/localcharset.c: Include it.
29323         * lib/unicodeio.c: Likewise.
29324
29325 2002-12-31  Bruno Haible  <bruno@clisp.org>
29326
29327         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
29328         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
29329
29330 2002-12-31  Bruno Haible  <bruno@clisp.org>
29331
29332         * lib/getline.h: Include <stddef.h>, for size_t.
29333
29334         * lib/unicodeio.h: Include <stddef.h>, for size_t.
29335         * lib/unicodeio.c: Don't include <stddef.h>.
29336
29337 2002-12-31  Bruno Haible  <bruno@clisp.org>
29338
29339         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
29340         HAVE_TM_ZONE.
29341
29342 2002-12-24  Karl Berry  <karl@gnu.org>
29343
29344         * config/config.guess: update from prep.
29345
29346 2002-12-24  Bruno Haible  <bruno@clisp.org>
29347
29348         General infrasructure.
29349         * m4/README: Rewritten.
29350         * m4/onceonly.m4: New file.
29351         * m4/onceonly_2_57.m4: New file.
29352
29353         Module atexit.
29354         * m4/atexit.m4: New file.
29355
29356         Module strtod.
29357         * m4/strtod.m4: New file.
29358
29359         Module strtol.
29360         * m4/strtol.m4: New file.
29361
29362         Module strtoul.
29363         * m4/strtoul.m4: New file.
29364
29365         Module memchr.
29366         * m4/memchr.m4: New file.
29367
29368         Module memcmp.
29369         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
29370         (jm_FUNC_MEMCMP): Invoke it.
29371
29372         Module memcpy.
29373         * m4/memcpy.m4: New file.
29374
29375         Module memmove.
29376         * m4/memmove.m4: New file.
29377
29378         Module memset.
29379         * m4/memset.m4: New file.
29380
29381         Module strcspn.
29382         * m4/strcspn.m4: New file.
29383
29384         Module strpbrk.
29385         * m4/strpbrk.m4: New file.
29386
29387         Module strstr.
29388         * m4/strstr.m4: New file.
29389
29390         Module strerror.
29391         * m4/strerror.m4: New file.
29392
29393         Module mktime.
29394         * m4/mktime.m4: Renamed from jm-mktime.m4.
29395         (gl_PREREQ_MKTIME): New macro.
29396         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
29397
29398         Module malloc.
29399         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
29400         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
29401         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
29402
29403         Module realloc.
29404         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
29405         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
29406         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
29407
29408         Module strftime.
29409         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
29410         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
29411         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
29412         gl_TM_GMTOFF.
29413         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
29414
29415         Module xalloc.
29416         * m4/xalloc.m4: New file.
29417
29418         Module alloca.
29419         * m4/alloca.m4: New file.
29420
29421         Module putenv.
29422         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
29423         (jm_FUNC_PUTENV): Invoke it.
29424
29425         Module setenv.
29426         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
29427         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
29428         when invoked twice.
29429         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
29430         gt_FUNC_SETENV.
29431
29432         Module memrchr.
29433         * m4/memrchr.m4: New file.
29434
29435         Module stpcpy.
29436         * m4/stpcpy.m4: New file.
29437
29438         Module strcase.
29439         * m4/strcase.m4: New file.
29440
29441         Module strdup.
29442         * m4/strdup.m4: New file.
29443
29444         Module strnlen.
29445         * m4/strnlen.m4: New file.
29446
29447         Module strndup.
29448         * m4/strndup.m4: New file.
29449
29450         Module xstrtod.
29451         * m4/xstrtod.m4: New file.
29452
29453         Module xstrtol.
29454         * m4/xstrtol.m4: New file.
29455
29456         Module getdate.
29457         * m4/getdate.m4: New file.
29458
29459         Module unlocked-io.
29460         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
29461         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
29462         * m4/jm-glibc-io.m4n: Remove file.
29463
29464         Module long-options.
29465         * m4/long-options.m4: New file.
29466
29467         Module md5.
29468         * m4/md5.m4: New file.
29469
29470         Module sha.
29471         * m4/sha.m4: New file.
29472
29473         Module getstr.
29474         * m4/getstr.m4: New file.
29475
29476         Module getline.
29477         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
29478         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
29479         <sys/types.h>, for size_t. Use the function name gnu_getline, not
29480         simply getline. Infoke gl_PREREQ_GETLINE.
29481
29482         Module obstack.
29483         * m4/obstack.m4: New file.
29484
29485         Module hash.
29486         * m4/hash.m4: New file.
29487
29488         Module readtokens.
29489         * m4/readtokens.m4: New file.
29490
29491         Module strverscmp.
29492         * m4/strverscmp.m4: New file.
29493
29494         Module stdbool.
29495         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
29496         OSF/1.
29497
29498         Module strtoll.
29499         * m4/strtoll.m4: New file.
29500
29501         Module strtoull.
29502         * m4/strtoull.m4: New file.
29503
29504         Module strtoimax.
29505         * m4/strtoimax.m4: New file.
29506
29507         Module strtoumax.
29508         * m4/strtoumax.m4: New file.
29509
29510         Module xstrtoimax.
29511         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
29512         jm_AC_PREREQ_XSTRTOIMAX.
29513         Moved the strtol prerequisites to strtol.m4.
29514         Moved the strtoll prerequisites to strtoll.m4.
29515         Moved the strtoimax prerequisites to strtoimax.m4.
29516
29517         Module xstrtoumax.
29518         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
29519         jm_AC_PREREQ_XSTRTOUMAX.
29520         Moved the strtoul prerequisites to strtoul.m4.
29521         Moved the strtoull prerequisites to strtoull.m4.
29522         Moved the strtoumax prerequisites to strtoumax.m4.
29523
29524         Module chown.
29525         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
29526         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
29527
29528         Module dup2.
29529         * m4/dup2.m4: New file.
29530
29531         Module ftruncate.
29532         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
29533         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
29534
29535         Module getgroups.
29536         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
29537         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
29538
29539         Module gettimeofday.
29540         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
29541         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
29542         gl_PREREQ_GETTIMEOFDAY.
29543
29544         Module mkdir.
29545         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
29546         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
29547
29548         Module mkstemp.
29549         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
29550         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
29551         jm_AC_TYPE_UINTMAX_T.
29552         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
29553
29554         Module stat.
29555         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
29556         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
29557
29558         Module lstat.
29559         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
29560         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
29561
29562         Module timespec.
29563         * m4/timespec.m4 (gl_TIMESPEC): New macro.
29564         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
29565         * m4/st_mtim.m4: Indentation.
29566
29567         Module nanosleep.
29568         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
29569         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
29570         gl_PREREQ_NANOSLEEP.
29571
29572         Module regex.
29573         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
29574         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
29575         (gl_REGEX): New macro.
29576
29577         Module rename.
29578         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
29579         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
29580
29581         Module rmdir.
29582         * m4/rmdir.m4: New file.
29583
29584         Module utime.
29585         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
29586         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
29587         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
29588
29589         Module dirname.
29590         * m4/dirname.m4: New file.
29591
29592         Module getopt.
29593         * m4/getopt.m4: New file.
29594
29595         Module unistd-safer.
29596         * m4/unistd-safer.m4: New file.
29597
29598         Module fnmatch.
29599         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
29600         declaration.
29601         (gl_PREREQ_FNMATCH_EXTRA): New macro.
29602         (gl_FUNC_FNMATCH_POSIX): New macro.
29603         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
29604         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
29605         simply fnmatch.
29606
29607         Module exclude.
29608         * m4/exclude.m4: New file.
29609
29610         Module human.
29611         * m4/human.m4: New file.
29612
29613         Module acl.
29614         * m4/acl.m4: Nop.
29615
29616         Module backupfile.
29617         * m4/backupfile.m4: New file.
29618         * m4/d-ino.m4: Indentation.
29619
29620         Module fsusage.
29621         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
29622         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
29623         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
29624
29625         Module dirfd.
29626         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
29627         requirements.
29628
29629         Module euidaccess.
29630         * m4/euidaccess.m4: New file.
29631
29632         Module file-type.
29633         * m4/file-type.m4: New file.
29634
29635         Module fileblocks.
29636         * m4/fileblocks.m4: New file.
29637
29638         Module filemode.
29639         * m4/filemode.m4: New file.
29640
29641         Module isdir.
29642         * m4/isdir.m4: New file.
29643
29644         Module lchown.
29645         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
29646         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
29647
29648         Module makepath.
29649         * m4/makepath.m4: New file.
29650
29651         Module modechange.
29652         * m4/modechange.m4: New file.
29653
29654         Module mountlist.
29655         * m4/mountlist.m4: New file.
29656         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
29657         Indentation.
29658
29659         Module path-concat.
29660         * m4/path-concat.m4: New file.
29661
29662         Module pathmax.
29663         * m4/pathmax.m4: New file.
29664
29665         Module same.
29666         * m4/same.m4: New file.
29667
29668         Module save-cwd.
29669         * m4/save-cwd.m4: New file.
29670
29671         Module savedir.
29672         * m4/savedir.m4: New file.
29673
29674         Module xgetcwd.
29675         * m4/xgetcwd.m4: New file.
29676         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
29677
29678         Module xreadlink.
29679         * m4/xreadlink.m4: New file.
29680
29681         Module safe-read.
29682         * m4/safe-read.m4: New file.
29683
29684         Module safe-write.
29685         * m4/safe-write.m4: New file.
29686
29687         Module closeout.
29688         * m4/closeout.m4: New file.
29689
29690         Module stdio-safer.
29691         * m4/stdio-safer.m4: New file.
29692
29693         Module getpass.
29694         * m4/getpass.m4: New file.
29695
29696         Module getugroups.
29697         * m4/getugroups.m4: New file.
29698
29699         Module group-member.
29700         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
29701         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
29702
29703         Module idcache.
29704         * m4/idcache.m4: New file.
29705
29706         Module userspec.
29707         * m4/userspec.m4: New file.
29708
29709         Module gettime.
29710         * m4/clock_time.m4: New file.
29711         * m4/gettime.m4: New file.
29712
29713         Module settime.
29714         * m4/settime.m4: New file.
29715
29716         Module posixtm.
29717         * m4/posixtm.m4: New file.
29718
29719         Module gethostname.
29720         * m4/gethostname.m4: New file.
29721
29722         Module canon-host.
29723         * m4/canon-host.m4: New file.
29724
29725         Module gettext.
29726         * m4/codeset.m4: New file, from gettext-0.11.5.
29727         * m4/gettext.m4: New file, from gettext-0.11.5.
29728         * m4/glibc21.m4: New file, from gettext-0.11.5.
29729         * m4/iconv.m4: New file, from gettext-0.11.5.
29730         * m4/intdiv0.m4: New file, from gettext-0.11.5.
29731         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
29732         * m4/inttypes.m4: New file, from gettext-0.11.5.
29733         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
29734         * m4/isc-posix.m4: New file, from gettext-0.11.5.
29735         * m4/lcmessage.m4: New file, from gettext-0.11.5.
29736         * m4/lib-ld.m4: New file, from gettext-0.11.5.
29737         * m4/lib-link.m4: New file, from gettext-0.11.5.
29738         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
29739         * m4/progtest.m4: New file, from gettext-0.11.5.
29740         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
29741         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
29742         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
29743
29744         Module localcharset.
29745         * m4/localcharset.m4: New file.
29746
29747         Module hard-locale.
29748         * m4/hard-locale.m4: New file.
29749
29750         Module mbswidth.
29751         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
29752         onceonly macros.
29753         * m4/mbrtowc.m4: Add comment.
29754
29755         Module memcasecmp.
29756         * m4/memcasecmp.m4: New file.
29757
29758         Module memcoll.
29759         * m4/memcoll.m4: New file.
29760
29761         Module unicodeio.
29762         * m4/unicodeio.m4: New file.
29763
29764         Module rpmatch.
29765         * m4/rpmatch.m4: New file.
29766
29767         Module yesno.
29768         * m4/yesno.m4: New file.
29769
29770         Module exitfail.
29771         * m4/exitfail.m4: New file.
29772
29773         Module c-stack.
29774         * m4/c-stack.m4 (gl_C_STACK): New macro.
29775         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
29776
29777         Module error.
29778         * m4/error.m4 (gl_ERROR): New macro.
29779         (jm_PREREQ_ERROR): Use onceonly macros.
29780
29781         Module fatal.
29782         * m4/fatal.m4: New file.
29783
29784         Module getloadavg.
29785         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
29786         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
29787
29788         Module getpagesize.
29789         * m4/getpagesize.m4: New file.
29790
29791         Module getusershell.
29792         * m4/getusershell.m4: New file.
29793
29794         Module physmem.
29795         * m4/physmem.m4: New file.
29796
29797         Module posixver.
29798         * m4/posixver.m4: New file.
29799
29800         Module quotearg.
29801         * m4/quotearg.m4: New file.
29802
29803         Module quote.
29804         * m4/quote.m4: New file.
29805
29806         Module readutmp.
29807         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
29808
29809         Module sig2str.
29810         * m4/sig2str.m4: New file.
29811
29812         Other.
29813         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
29814         ulonglong.m4.
29815         * m4/intmax_t.m4: New file.
29816         * m4/d-type.m4: Indentation.
29817         * m4/jm-macros.m4: Update.
29818         * m4/prereq.m4 (jm_PREREQ): Update.
29819         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
29820         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
29821         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
29822         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
29823         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
29824         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
29825         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
29826         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
29827         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
29828         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
29829         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
29830         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
29831         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
29832         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
29833         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
29834         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
29835         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
29836         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
29837         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
29838
29839 2002-12-24  Bruno Haible  <bruno@clisp.org>
29840
29841         * MODULES.txt: Update according to m4/ changes.
29842
29843         Module gettext.
29844         * config.rpath: New file, from gettext-0.11.5.
29845
29846         * modules/*: New module descriptions.
29847         * gnulib-tool: New file.
29848         * MODULES.html.sh: New file.
29849
29850 2002-12-21  Karl Berry  <karl@gnu.org>
29851
29852         * doc/fdl.texi: update to version 1.2.
29853
29854 2002-12-19  Karl Berry  <karl@gnu.org>
29855
29856         * config/config.guess: update from prep.
29857
29858 2002-12-18  Bruno Haible  <bruno@clisp.org>
29859
29860         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
29861         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
29862
29863 2002-12-17  Bruno Haible  <bruno@clisp.org>
29864
29865         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
29866         stdlib.h, string.h.
29867
29868 2002-12-17  Bruno Haible  <bruno@clisp.org>
29869
29870         * lib/canon-host.c (strdup): Remove unused declaration.
29871
29872         * lib/fsusage.c: Include full_read.h.
29873         (get_fs_usage): Use full_read instead of safe_read.
29874
29875         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
29876
29877 2002-12-12  Karl Berry  <karl@gnu.org>
29878
29879         * config/config.guess: update from prep.
29880
29881 2002-12-11  Bruno Haible  <bruno@clisp.org>
29882
29883         * m4/setenv.m4: New file, from gettext-0.11.5.
29884
29885 2002-12-11  Bruno Haible  <bruno@clisp.org>
29886
29887         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
29888         not unsetenv().
29889         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
29890         modifications:
29891
29892         2002-12-11  Bruno Haible  <bruno@clisp.org>
29893
29894                 * setenv.c (alloca): Fall back to malloc.
29895                 (freea): New macro.
29896                 (setenv): Use freea() to free memory allocated with alloca().
29897
29898         2002-11-13  Bruno Haible  <bruno@clisp.org>
29899
29900                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
29901                 function declarations.
29902                 * unsetenv.c (unsetenv): Likewise.
29903
29904         2002-03-04  Bruno Haible  <bruno@clisp.org>
29905
29906                 Portability to AIX 4.3.3.
29907                 * unsetenv.c: New file, extracted from setenv.c.
29908                 * setenv.c: Move the unsetenv() function to unsetenv.c.
29909
29910         2001-12-20  Bruno Haible  <bruno@clisp.org>
29911
29912                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
29913                 use malloc instead. For SunOS 4.
29914
29915         2001-12-11  Bruno Haible  <bruno@clisp.org>
29916
29917                 * setenv.c: Declare alloca.
29918                 (compar_fn_t): New typedef.
29919                 (KNOWN_VALUE, STORE_VALUE): Use it.
29920
29921         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
29922         setenv.h.
29923
29924 2002-12-10  Paul Eggert  <eggert@twinsun.com>
29925
29926         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
29927         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
29928         Choose values that are less likely to collide with system fnmatch
29929         options.
29930         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
29931         defined (e.g., a pure POSIX system).
29932         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
29933         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
29934
29935 2002-12-06  Paul Eggert  <eggert@twinsun.com>
29936
29937         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
29938         a pain in practice to deal with generated m4 files.  This change
29939         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
29940
29941         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
29942         and jm-glibc-io.m4, as they are no longer a special case.
29943         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
29944         kludge and the auto-generation stuff.  Check only whether the
29945         functions are declared, not whether they exist, since older hosts
29946         that don't declare the functions can't use the optimization anyway.
29947
29948 2002-12-06  Jim Meyering  <jim@meyering.net>
29949
29950         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
29951
29952         Merge in changes from libc's misc/error.c, in preparation
29953         for the merge of gnulib's changes back into libc.
29954
29955         * lib/error.c (_): Define only if not already defined.
29956         Move definition to follow all #include directives.
29957         Include unlocked-io.h only if !_LIBC.
29958         [_LIBC]: Include <libio/libioP.h>.
29959         [USE_IN_LIBIO]: Include <libio/iolibio.h>
29960         (fflush): Tweak definition to use INTUSE.
29961         (putc): Define.
29962
29963 2002-12-05  Paul Eggert  <eggert@twinsun.com>
29964
29965         * lib/alloca.c [defined emacs]: Include "lisp.h".
29966         (xalloc_die) [defined emacs]: New macro.
29967         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
29968         [! defined emacs]: Include <xalloc.h>.
29969         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
29970         (pointer): Typedef to POINTER_TYPE *.
29971         (malloc): Remove decl; we now always use xmalloc.
29972         (alloca): Use old-style definition, since Emacs needs this.
29973         Check for arithmetic overflow when computing combined size.
29974
29975 2002-12-04  Paul Eggert  <eggert@twinsun.com>
29976
29977         Do not generate unlocked-io.h automatically, since it's easier to
29978         maintain it by hand.
29979
29980         * lib/unlocked-io.h: New file, from GNU diffutils,
29981         but with proper copyright notice and attribution.
29982         * lib/gen-uio: Remove.
29983         * lib/Makefile.am: Add copyright notice.
29984         (libfetish_a_SOURCES): Add unlocked-io.h.
29985         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
29986         (DISTCLEANFILES, io_functions): Remove macros.
29987         (EXTRA_DIST): Remove gen_uio.
29988         (unlocked-io.h): Remove rule.
29989
29990 2002-12-04  Jim Meyering  <jim@meyering.net>
29991
29992         Reflect the fact that stat.c and lstat.c are no longer generated.
29993         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
29994         (DISTCLEANFILES): Likewise.
29995         (EXTRA_DIST): Likewise.
29996         (all_local): Don't depend on stat.c or lstat.c.
29997         (stat.c, lstat.c): Remove rules.
29998         (EXTRA_DIST): Remove xstat.in.
29999
30000         * lib/xstat.in: Remove file.  Contents moved into stat.c.
30001         * lib/stat.c: New file.  Contents mostly from xstat.in.
30002         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
30003         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
30004
30005         * lib/safe-read.c: Rework so that it may serve to define safe_write,
30006         too.
30007         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
30008
30009 2002-12-03  Jim Meyering  <jim@meyering.net>
30010
30011         * lib/safe-read.c, safe-write.c: Change variable names and comments,
30012         but not semantics, to minimize the differences between these two files.
30013         (safe_read): Change comment to mention SAFE_READ_ERROR.
30014
30015         * lib/safe-read.c (IS_EINTR): Define.
30016         (safe_read): Use IS_EINTR in place of in-function cpp directives.
30017
30018 2002-12-02  Jim Meyering  <jim@meyering.net>
30019
30020         * lib/safe-read.c (EINTR): Define.
30021         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
30022         (INT_MAX): Provide fallback.
30023         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
30024
30025         * lib/safe-read.h (SAFE_READ_ERROR): Define.
30026
30027 2002-12-02  Bruno Haible  <bruno@clisp.org>
30028
30029         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
30030         Define, taken from safe-read.c.
30031         (INT_MAX): Provide fallback.
30032         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
30033         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
30034
30035         * lib/safe-read.c (EINTR): Remove definition.
30036         (safe_read): Don't use EINTR if it is absent.
30037
30038 2002-12-01  Jim Meyering  <jim@meyering.net>
30039
30040         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
30041         zero.
30042         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
30043
30044 2002-11-27  Paul Eggert  <eggert@twinsun.com>
30045
30046         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
30047         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
30048         with `if (! (value < limit)) abort ();', for readability.
30049
30050 2002-11-26  Karl Berry  <karl@gnu.org>
30051
30052         * lib/strdup.c: copy from libc again, with jim's ok.
30053         * lib/.cppi-disable: re-add strdup.c
30054
30055 2002-11-25  Karl Berry  <karl@gnu.org>
30056
30057         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
30058         instead of "strtol.c".
30059
30060 2002-11-25  Karl Berry  <karl@gnu.org>
30061
30062         * config/install-sh: update from automake for variable quoting, $0 in
30063         error msgs, etc.
30064
30065         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
30066         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
30067         entry.
30068
30069 2002-11-25  Jim Meyering  <jim@meyering.net>
30070
30071         * lib/mktime.c: Sync from libc, now that it has the latest fix.
30072
30073 2002-11-24  Karl Berry  <karl@gnu.org>
30074
30075         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
30076         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
30077
30078 2002-11-24  Jim Meyering  <jim@meyering.net>
30079
30080         Update from coreutils:
30081
30082         * lib/mktime.c: Merge in changes from libc.
30083
30084         Avoid a link-time failure on some Linux systems.
30085         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
30086         (otherwise).
30087         (__mon_yday): Declare with the STATIC attribute.
30088         (__mktime_internal): Likewise.
30089         Based on a report from Greg Schafer.
30090
30091 2002-11-23  Jim Meyering  <jim@meyering.net>
30092
30093         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
30094         Use `unsigned', not `int', as type of index.
30095
30096         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
30097
30098         * lib/fsusage.c: Remove unneeded parentheses around operands of
30099         `defined'.
30100
30101 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30102
30103         * lib/quotearg.h: Allow multiple inclusion by surrounding with
30104         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
30105         so that we can be included first.
30106         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
30107         * lib/quotearg.c: Include quotearg.h immediately after config.h.
30108         No need to include stddef.h or sys/types.h any more.
30109         Surround local include files with "", not "<>".
30110         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
30111         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
30112         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
30113         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
30114         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
30115         (ISPRINT): Remove; no longer needed now that we assume C89.
30116
30117         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
30118         Preserve errno.
30119
30120         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
30121         quotearg_char): Use SIZE_MAX rather than
30122         (size_t) -1 when we are talking about "infinity".
30123
30124         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
30125
30126 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30127
30128         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
30129         hint that one should use `if (! x) abort ();' rather than `assert
30130         (x);', and anyway it's one less thing to worry about configuring.
30131         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
30132         hash_rehash, hash_insert): Use abort rather than assert.
30133
30134 2002-11-22  Bruno Haible  <bruno@clisp.org>
30135
30136         * lib/safe-read.h: Assume C89. Add comments.
30137         (safe_read): Change return type to size_t.
30138         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
30139         byte counts > SSIZE_MAX correctly.
30140         * lib/safe-write.h: New file.
30141         * lib/safe-write.c: New file.
30142         * lib/full-read.h: New file.
30143         * lib/full-read.c: New file.
30144         * lib/full-write.h: Assume C89. Add comments.
30145         * lib/full-write.c: Include safe-write.h.
30146         (full_write): Rewritten to use safe_write.
30147         Suggested by Jim Meyering and Paul Eggert.
30148
30149 2002-11-21  Jim Meyering  <jim@meyering.net>
30150
30151         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
30152
30153         Merge in changes from the coreutils.
30154
30155         2002-09-25  Paul Eggert  <eggert@twinsun.com>
30156         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
30157         <stdint.h>.
30158         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
30159         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
30160         int.  Work more efficiently if X is the same width as uintmax_t.
30161         Do not compare X to -1, to avoid bogus compiler warning.
30162         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
30163         Don't assume that f_frsize and f_bsize are the same type.
30164
30165         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
30166         warning on FreeBSD.
30167
30168         * lib/makepath.c (make_path): Restore umask *before* creating the final
30169         component.
30170         (make_path): Minor reformatting.
30171
30172         * lib/xmalloc.c: Adjust to work with new autoconf macros,
30173         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
30174         HAVE_MALLOC/HAVE_REALLOC.
30175
30176         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
30177         dummy ones.  At least on GNU/Linux systems, `auto' means something
30178         else.
30179         From Michael Stone.
30180
30181 2002-11-21  Bruno Haible  <bruno@clisp.org>
30182
30183         Remove case insensitive option matching.
30184         * lib/argmatch.h (argcasematch): Remove declaration.
30185         (ARGCASEMATCH): Remove macro.
30186         (__xargmatch_internal): Remove case_sensitive argument.
30187         (XARGMATCH): Update.
30188         (XARGCASEMATCH): Remove macro.
30189         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
30190         case_sensitive argument.
30191         (argcasematch): Remove function.
30192         (__xargmatch_internal): Remove case_sensitive argument.
30193         (main): Use XARGMATCH instead of XARGCASEMATCH.
30194
30195         * lib/xmalloc.c: Change compile-time error message. Add comment about
30196         required autoconf version.
30197
30198 2002-11-20  Paul Eggert  <eggert@twinsun.com>
30199
30200         Merge argmatch cleanups from Bison.  Assume C89.
30201
30202         * lib/argmatch.c: Include config.h here, not in argmatch.h.
30203         Include stdlib.h, for EXIT_FAILURE.
30204         Always include <string.h>, since we assume C89.
30205         (EXIT_FAILURE): Remove pre-C89 bug workaround.
30206         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
30207         Include <stddef.h> instead, since it's all we need for size_t.
30208         (PARAMS): Remove.  All uses removed.
30209         (ARRAY_CARDINALITY): Do not bother to #undef.
30210         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
30211         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
30212         Remove unnecessary parentheses.
30213         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
30214         Insert necessary parentheses.
30215         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
30216         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
30217
30218 2002-11-19  Bruno Haible  <bruno@clisp.org>
30219
30220         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
30221         * lib/mbswidth.h: Include <stddef.h>, for size_t.
30222
30223         * lib/mbswidth.h (PARAMS): Remove macro.
30224         (mbswidth, mbsnwidth): Use ANSI C function declarations.
30225         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
30226
30227         * lib/gcd.h (PARAMS): Remove macro.
30228         (gcd): Use ANSI C function declarations.
30229         * lib/gcd.c (gcd): Likewise.
30230
30231 2002-11-15  Bruno Haible  <bruno@clisp.org>
30232
30233         * lib/strcspn.c: Include <stddef.h>.
30234         (strcspn): Use ANSI C function declaration. Change return type to
30235         size_t. Use NULL.
30236         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
30237         (strpbrk): Use NULL.
30238         * lib/strpbrk.h (PARAMS): Remove macro.
30239         (strpbrk): Use ANSI C function declaration.
30240         * lib/strstr.c: Don't include <sys/types.h>.
30241         * lib/strstr.h (PARAMS): Remove macro.
30242         (strstr): Use ANSI C function declarations.
30243
30244 2002-11-14  Karl Berry  <karl@gnu.org>
30245
30246         * config/mkinstalldirs: `do' on separate line, instead of
30247         `for var; do'.
30248
30249 2002-11-06  Bruno Haible  <bruno@clisp.org>
30250
30251         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
30252         * lib/gcd.c (gcd): Likewise.
30253
30254 2002-11-05  Bruno Haible  <bruno@clisp.org>
30255
30256         * lib/gcd.h: New file, from gettext-0.11.5.
30257         * lib/gcd.c: New file, from gettext-0.11.5.
30258
30259 2002-11-05  Bruno Haible  <bruno@clisp.org>
30260
30261         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30262         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30263         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30264         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30265
30266         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
30267         <libintl.h>.
30268         * lib/makepath.c: Include gettext.h instead of <locale.h> and
30269         <libintl.h>.
30270
30271         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
30272         * lib/human.c: Include gettext.h instead of <libintl.h>.
30273         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
30274         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
30275         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
30276         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
30277         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
30278         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
30279         (textdomain): Remove definition.
30280         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
30281
30282         * lib/long-options.c: Remove include of <libintl.h> and definition of
30283         _.
30284         * lib/same.c: Remove include of <libintl.h> and definition of _.
30285
30286 2002-11-04  Owen Taylor  <otaylor@redhat.com>
30287
30288         * lib/config.charset: A few additions for Solaris.
30289
30290 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
30291
30292         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
30293         * lib/localcharset.c (locale_charset): Declare as extern "C".
30294
30295 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
30296
30297         * lib/config.charset: msdos in uk_UA uses CP1125.
30298
30299 2002-11-04  Bruno Haible  <bruno@clisp.org>
30300
30301         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
30302         * lib/strcase.h: New file, from GNU gettext-0.11.5.
30303         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
30304         * lib/strstr.h: New file, from GNU gettext-0.11.5.
30305         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
30306
30307 2002-11-04  Bruno Haible  <bruno@clisp.org>
30308
30309         * lib/localcharset.c (locale_charset): Don't return an empty string.
30310
30311 2002-11-04  Bruno Haible  <bruno@clisp.org>
30312
30313         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
30314         aliases.
30315
30316 2002-11-04  Bruno Haible  <bruno@clisp.org>
30317
30318         * lib/config.charset: Update for newest glibc. Add canonical names
30319         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
30320
30321 2002-11-04  Bruno Haible  <bruno@clisp.org>
30322
30323         * lib/config.charset: Add support for NetBSD.
30324
30325 2002-11-04  Bruno Haible  <bruno@clisp.org>
30326
30327         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
30328
30329 2002-11-01  Bruno Haible  <bruno@clisp.org>
30330
30331         * configure.in: Add AC_CONFIG_AUX_DIR call.
30332         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
30333         test/Makefile.
30334         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
30335
30336 2002-09-28  Karl Berry  <karl@gnu.org>
30337
30338         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
30339         installed automake until the next release, since changes have been
30340         made.
30341
30342 2002-09-25  Karl Berry  <karl@gnu.org>
30343
30344         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
30345         * lib/getopt*: copy from libc/posix.
30346         * lib/gettext.h: copy from gettext.
30347         * lib/.cppi-disable: add strdup.c, gettext.h.
30348
30349 2002-09-25  Karl Berry  <karl@gnu.org>
30350
30351         * config/srclist.txt: enable gettext.h check.
30352         * config/config.{guess,sub}: update from prep.
30353         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
30354                 from automake 1.6.3.
30355         See srclist*.
30356
30357 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
30358
30359         * regex.c (PATFETCH): Remove the translating fetch.
30360         (PATFETCH_RAW): Rename to PATFETCH.
30361         (set_image_of_range): New fun.
30362         (SET_RANGE_TABLE_WORK_AREA): Use it.
30363         (regex_compile): Don't translate the pattern chars so eagerly.
30364         Only do it when inserting an `exactn' bytecode or when handling
30365         a char-range.
30366         (mutually_exclusive_p): Avoid empty statement.
30367
30368 2002-07-06  Jim Meyering  <meyering@lucent.com>
30369
30370         * m4/README: Don't mention Makefile.am.in.
30371         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
30372
30373 2002-07-01  Jim Meyering  <meyering@lucent.com>
30374
30375         * lib/c-stack.c: Include sys/time.h.
30376         From Volker Borchert.
30377
30378 2002-06-26  Paul Eggert  <eggert@twinsun.com>
30379
30380         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
30381
30382 2002-06-26  Paul Eggert  <eggert@twinsun.com>
30383
30384         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
30385         New macro.  Use it uniformly instead of
30386         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
30387         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
30388         reported by Vin Shelton.
30389
30390 2002-06-22  Paul Eggert  <eggert@twinsun.com>
30391
30392         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
30393         Do not assume SA_SIGINFO behavior.
30394         Bug reported by Jim Meyering on NetBSD 1.5.2.
30395
30396 2002-06-22  Jim Meyering  <meyering@lucent.com>
30397
30398         * m4/c-stack.m4: New file, from diffutils-2.8.2.
30399         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
30400
30401         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
30402         now that configure.ac uses AC_GNU_SOURCE.
30403         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
30404         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
30405
30406         Update to latest tools.  Suggestions from Paul Eggert.
30407         * m4/stdbool.m4: New file, from diffutils-2.8.2.
30408         * m4/gnu-source.m4: Update from diffutils-2.8.2.
30409         * m4/fnmatch.m4: Likewise.
30410         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
30411         to AC_HEADER_STDBOOL
30412
30413 2002-06-22  Jim Meyering  <meyering@lucent.com>
30414
30415         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
30416         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
30417
30418 2002-06-22  Jim Meyering  <meyering@lucent.com>
30419
30420         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
30421
30422         * lib/exitfail.c, exitfail.h: Likewise.
30423         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
30424
30425         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
30426         of fnmatch.h.
30427         (EXTRA_DIST): Add fnmatch_loop.c.
30428         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
30429
30430         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
30431         * lib/fnmatch.c: Update from diffutils-2.8.2.
30432         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
30433         * lib/fnmatch.h: Remove file.
30434
30435 2002-06-21  Jim Meyering  <meyering@lucent.com>
30436
30437         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
30438         * m4/mbrtowc.m4: Likewise.
30439
30440         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
30441         * m4/mbswidth.m4: Reflect name change:
30442         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
30443         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
30444
30445         * m4/lib-link.m4: Update from gettext-0.11.2.
30446         * m4/gettext.m4: Likewise.
30447
30448         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
30449         From Alfred M. Szmidt.
30450
30451 2002-06-18  Paul Eggert  <eggert@twinsun.com>
30452
30453         * lib/file-type.h: Report an error if neither S_ISREG nor
30454         S_IFREG is defined, instead of using a test specific to glibc
30455         2.2.  This should be safe, since POSIX requires S_ISREG and
30456         Unix Version 7 had S_IFREG.  We don't need to check for
30457         <sys/types.h> since we don't use any symbols that it defines.
30458
30459 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
30460
30461         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
30462         $@-t, so that each temporary file name is unique and valid in the first
30463         8 characters, for operation under DOS.
30464
30465 2002-06-15  Paul Eggert  <eggert@twinsun.com>
30466
30467         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
30468
30469 2002-06-15  Jim Meyering  <meyering@lucent.com>
30470
30471         Work even with DJGPP 2.03, which lacks support for symlinks.
30472         From Richard Dawe.
30473         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
30474         is defined.
30475         * lib/lchown.c (S_ISLNK): Likewise.
30476
30477 2002-06-15  Jim Meyering  <meyering@lucent.com>
30478
30479         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
30480         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
30481         have been included before this file.
30482
30483 2002-06-14  Jim Meyering  <meyering@lucent.com>
30484
30485         * lib/file-type.h: Use the version from diffutils-2.8.2.
30486         * lib/file-type.c: Likewise.
30487
30488 2002-06-07  Jim Meyering  <meyering@lucent.com>
30489
30490         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
30491         They're needed at least for NetBSD 1.5.2.
30492         ($statxfs_includes): Include those same headers.
30493         ($statxfs_includes): Include sys/vfs.h if available.
30494         ($statxfs_includes): Likewise for sys/statvfs.h.
30495         Check for the following members in both structs statfs and statvfs:
30496         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
30497
30498 2002-06-01  Jim Meyering  <meyering@lucent.com>
30499
30500         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
30501         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
30502
30503 2002-05-28  Jim Meyering  <meyering@lucent.com>
30504
30505         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
30506         Reported by Volker Borchert.
30507
30508 2002-05-27  Jim Meyering  <meyering@lucent.com>
30509
30510         Fix a problem seen only on nonconforming systems whereby ls.c's
30511         use of localtime, and then of gettimeofday would cause trouble:
30512         the localtime call used to initialize rpl_gettimeofday's save
30513         mechanism would clobber ls's current local time information so
30514         that in any long listing the first file would always be listed
30515         with date 1970-01-01.  Analysis by Volker Borchert.
30516
30517         * lib/gettimeofday.c (localtime): Undefine.
30518         (rpl_localtime): New function.
30519
30520 2002-05-27  Jim Meyering  <meyering@lucent.com>
30521
30522         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
30523         localtime.
30524
30525         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
30526         use the replacement function; it wouldn't resolve at link time.
30527         Reported by Volker Borchert.
30528
30529 2002-05-22  Jim Meyering  <meyering@lucent.com>
30530
30531         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
30532         file-type.h.
30533         * lib/file-type.h: New file.
30534         * lib/file-type.c (file_type): New file/function.  Extracted from
30535         diffutils.
30536
30537 2002-04-30  Jim Meyering  <meyering@lucent.com>
30538
30539         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
30540
30541 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30542
30543         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
30544
30545 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30546
30547         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
30548         Do not check for alloca.h (no longer used) or stdbool.h (was never
30549         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
30550
30551 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30552
30553         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
30554
30555 2002-04-29  Jim Meyering  <meyering@lucent.com>
30556
30557         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
30558         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
30559         Use AC_FUNC_STRNLEN here instead.
30560
30561         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
30562         With autoconf-2.53a, it's part of AC_PROG_CC.
30563
30564 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30565
30566         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
30567         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
30568
30569 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30570
30571         * lib/sig2str.h, lib/sig2str.c: New files.
30572         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
30573
30574 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30575
30576         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
30577         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
30578         of 127, since 64 is the largest conceivable number for ancient
30579         nonstandard hosts.
30580         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
30581
30582 2002-04-28  Jim Meyering  <meyering@lucent.com>
30583
30584         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
30585
30586 2002-04-24  Jim Meyering  <meyering@lucent.com>
30587
30588         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
30589         (jm_PREREQ): Use it.
30590
30591         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
30592         mach/mach.h fcntl.h.
30593         Check for this function: setlocale.
30594
30595 2002-04-24  Jim Meyering  <meyering@lucent.com>
30596
30597         * lib/gettext.h: New file, from Gettext.
30598         * lib/Makefile.am (INCLUDES): Remove -I../intl.
30599         (libfetish_a_SOURCES): Add gettext.h.
30600
30601 2002-04-16  Jim Meyering  <meyering@lucent.com>
30602
30603         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
30604         ut_pid, ut_id, ut_exit.
30605
30606 2002-04-16  Jim Meyering  <meyering@lucent.com>
30607
30608         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
30609         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
30610         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
30611
30612 2002-04-12  Jim Meyering  <meyering@lucent.com>
30613
30614         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
30615         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
30616         existence of the getmntinfo function.  Needed for Darwin 5.3.
30617
30618         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
30619         This is necessary at least on Darwin 5.3.
30620
30621         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
30622         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
30623         strnlen.o in the library, and that makes some versions of ranlib
30624         object.
30625
30626 2002-04-12  Jim Meyering  <meyering@lucent.com>
30627
30628         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
30629
30630 2002-04-09  Jim Meyering  <meyering@lucent.com>
30631
30632         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
30633         to be more precise.  Rather than saying we're checking whether the
30634         function `works', say what we're testing.
30635         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
30636         Reported by Bruno Haible.
30637
30638 2002-03-10  Jim Meyering  <meyering@lucent.com>
30639
30640         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
30641         Suggestion from Santiago Vila.
30642
30643 2002-03-08  Jim Meyering  <meyering@lucent.com>
30644
30645         * lib/rename.c: Mention that this wrapper is needed also on
30646         mips-dec-ultrix4.4 systems.
30647
30648 2002-03-02  Jim Meyering  <meyering@lucent.com>
30649
30650         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
30651         not HAVE_CLOCK_SETTIME.
30652
30653 2002-02-27  Paul Eggert  <eggert@twinsun.com>
30654
30655         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
30656         Check for clock_settime.
30657
30658 2002-02-27  Paul Eggert  <eggert@twinsun.com>
30659
30660         * lib/nanosleep.h: Rename to....
30661         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
30662
30663         * lib/gettime.c: New file.
30664         * lib/settime.c: New file.
30665         * lib/stime.c: Remove.
30666
30667         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
30668         timespec.h.  Remove nanosleep.h.
30669
30670 2002-02-25  Paul Eggert  <eggert@twinsun.com>
30671
30672         * m4/acl.m4: New file.
30673         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
30674         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
30675
30676 2002-02-25  Paul Eggert  <eggert@twinsun.com>
30677
30678         * lib/acl.c, lib/acl.h: New files.
30679         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
30680
30681 2002-02-24  Jim Meyering  <meyering@lucent.com>
30682
30683         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
30684         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
30685         cause trouble.  Reported by Nelson Beebe.
30686
30687 2002-02-23  Paul Eggert  <eggert@twinsun.com>
30688
30689         * lib/path-concat.c (xpath_concat): Reorder code to pacify
30690         compilers that don't know that xalloc_die never returns.
30691
30692 2002-02-20  Jim Meyering  <meyering@lucent.com>
30693
30694         * lib/getdate.c: Regenerate using bison-1.33.
30695
30696 2002-02-17  Jim Meyering  <meyering@lucent.com>
30697
30698         * config/config.guess (main): Don't use `head -1'; it's no longer
30699         portable. Use `sed 1q' instead.
30700
30701 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
30702
30703         * m4/codeset.m4: Upgrade to gettext-0.11.
30704         * m4/gettext.m4: Upgrade to gettext-0.11.
30705         * m4/glibc21.m4: Upgrade to gettext-0.11.
30706         * m4/iconv.m4: Upgrade to gettext-0.11.
30707         * m4/isc-posix.m4: Upgrade to gettext-0.11.
30708         * m4/lcmessage.m4: Upgrade to gettext-0.11.
30709         * m4/lib-ld.m4: New file, from gettext-0.11.
30710         * m4/lib-link.m4: New file, from gettext-0.11.
30711         * m4/lib-prefix.m4: New file, from gettext-0.11.
30712         * m4/progtest.m4: Upgrade to gettext-0.11.
30713
30714 2002-02-15  Paul Eggert  <eggert@twinsun.com>
30715
30716         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
30717         (jm_PREREQ): Use it.
30718
30719 2002-02-15  Paul Eggert  <eggert@twinsun.com>
30720
30721         * lib/posixver.c, lib/posixver.h: New files.
30722         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
30723
30724 2002-02-02  Paul Eggert  <eggert@twinsun.com>
30725             Bruno Haible  <bruno@clisp.org>
30726
30727         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
30728         (fwrite_success_callback): New declaration.
30729         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
30730         print_unicode_char. Call failure callback instead of error.
30731         (fwrite_success_callback): New function.
30732         (exit_failure_callback): New function.
30733         (fallback_failure_callback): New function.
30734         (print_unicode_char): Call unicode_to_mb.
30735
30736 2002-01-26  Jim Meyering  <meyering@lucent.com>
30737
30738         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
30739         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
30740
30741 2002-01-26  Jim Meyering  <meyering@lucent.com>
30742
30743         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
30744
30745 2002-01-22  Paul Eggert  <eggert@twinsun.com>
30746
30747         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
30748
30749 2002-01-22  Jim Meyering  <meyering@lucent.com>
30750
30751         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
30752         Otherwise, some versions of automake would omit the rule that makes
30753         Makefile from Makefile.in.
30754
30755 2002-01-21  Paul Eggert  <eggert@twinsun.com>
30756
30757         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
30758         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
30759         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
30760         (memcoll): Set errno to zero if there is no error.
30761
30762         * lib/quotearg.c (quotearg_buffer_restyled):
30763         Fix bug with quoting buffers containing NUL when backslashing escapes.
30764         This bug was exposed by the other changes in this patch.
30765         (quotearg_n_options): New arg ARGSIZE.
30766         All callers changed.
30767         (quoting_options_from_style): New function.
30768         (quotearg_n_style): Use it.
30769         (quotearg_n_style_mem): New function.
30770
30771         * lib/quotearg.h (quotearg_n_style_mem): New function.
30772
30773 2002-01-19  Jim Meyering  <meyering@lucent.com>
30774
30775         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
30776         Remove useless quotes: DF_PROG="df".
30777         * m4/strnlen.m4: New file.
30778
30779 2002-01-16  Paul Eggert  <eggert@twinsun.com>
30780
30781         * lib/backupfile.c (ISDIGIT): Comment fix.
30782         * lib/getdate.y (ISDIGIT): Likewise.
30783         * lib/posixtm.c (ISDIGIT, year): Likewise.
30784         * lib/strverscmp.c (ISDIGIT): Likewise.
30785         * lib/userspec.c (ISDIGIT): Likewise.
30786
30787 2002-01-16  Jim Meyering  <meyering@lucent.com>
30788
30789         * lib/getdate.y: Add three semicolons, each just before a closing
30790         brace. Bison (as of version 1.31) no longer papers over that mistake.
30791
30792 2002-01-05  Jim Meyering  <meyering@lucent.com>
30793
30794         * lib/version-etc.c (version_etc_copyright): Update copyright year.
30795
30796 2001-12-19  Paul Eggert  <eggert@twinsun.com>
30797
30798         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
30799         not silently exit merely because the output buffer happens to
30800         have nothing pending.
30801
30802 2001-12-18  Paul Eggert  <eggert@twinsun.com>
30803
30804         See the big note in ../ChangeLog.
30805         * lib/human.c (suffixes): Prefer K to k for 1024.
30806         (generate_suffix_backwards): New function.
30807         (human_readable_inexact): Use it.
30808         * lib/xstrtol.c (__xstrtol): If there is no number but there
30809         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
30810         Accept 'K' as well as 'k'.
30811
30812 2001-12-15  Jim Meyering  <meyering@lucent.com>
30813
30814         * lib/regex.h (__restrict_arr): Update from libc.
30815
30816         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
30817         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
30818         (STREQ): Define.
30819
30820 2001-12-14  Jim Meyering  <meyering@lucent.com>
30821
30822         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
30823         Suggestion from Bruno Haible.
30824
30825 2001-12-10  Jim Meyering  <meyering@lucent.com>
30826
30827         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
30828         xrealloc, Instead, include "xalloc.h".
30829         (initbuffer): Don't cast xmalloc return value to char*.
30830         (readline): Reword comment.
30831         Don't cast xrealloc return value to char*
30832         Return NULL, not 0.
30833
30834 2001-12-09  Jim Meyering  <meyering@lucent.com>
30835
30836         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
30837         about `signed and unsigned type in conditional expression'.
30838         * lib/posixtm.c (posix_time_parse): Likewise.
30839
30840         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
30841
30842         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
30843         to avoid a pedantic warning.
30844
30845         * lib/getstr.c: Don't include assert.h.
30846         (getstr): Remove warning-evoking assertions.
30847         Return -1 if offset parameter is out of bounds.
30848         Change the type of a local from int to size_t.
30849
30850         * lib/strftime.c (my_strftime_localtime_r): Include this function
30851         definition in the `#if ! HAVE_TM_GMTOFF' block.
30852
30853         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
30854         Include xalloc.h instead.
30855
30856 2001-12-02  Jim Meyering  <meyering@lucent.com>
30857
30858         * lib/tempname.c: Don't declare getenv, thus reverting the change of
30859         2001-11-18.  It's no longer necessary, now that stdlib.h is always
30860         included.
30861
30862         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
30863         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
30864
30865 2001-11-30  Akim Demaille  <akim@epita.fr>
30866
30867         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
30868         before being defined.
30869
30870 2001-11-27  Paul Eggert  <eggert@twinsun.com>
30871
30872         * lib/quotearg.h (quotearg_n, quotearg_n_style):
30873         First arg is int, not unsigned.
30874         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
30875         (SIZE_MAX, UINT_MAX): New macros.
30876         (quotearg_n_options): Abort if N is negative.
30877         Avoid overflow check on hosts where size_t is 64 bits and int
30878         is 32 bits, as overflow is impossible there.
30879         Fix off-by-one typo that caused unnecessary reallocation.
30880
30881 2001-11-27  Jim Meyering  <meyering@lucent.com>
30882
30883         * lib/tempname.c: Merge with version from libc.
30884         * lib/regex.c: Likewise.
30885
30886         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
30887         systems for which STDC_HEADERS is 0, it was not included, resulting in
30888         a warning about an integer-to-pointer conversion problem with getenv.
30889         Reported by Volker Borchert.
30890
30891 2001-11-26  Jim Meyering  <meyering@lucent.com>
30892
30893         * lib/gtod.h: Remove file.
30894         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
30895         * lib/gettimeofday.c: Don't include gtod.h.
30896         (GTOD_init): Remove function.
30897         (rpl_gettimeofday): Do its job here instead, rather than aborting.
30898         Suggestion from Volker Borchert.
30899
30900 2001-11-23  Jim Meyering  <meyering@lucent.com>
30901
30902         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
30903         it.
30904         * lib/hash.c (struct hash_table): Define it here instead.
30905
30906 2001-11-22  Jim Meyering  <meyering@lucent.com>
30907
30908         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
30909
30910 2001-11-20  Jim Meyering  <meyering@lucent.com>
30911
30912         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
30913         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
30914
30915 2001-11-19  Jim Meyering  <meyering@lucent.com>
30916
30917         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
30918         directory.  Use "conftestXXXXXX" as the template.
30919         Suggestion from Paul Eggert.
30920
30921         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
30922         immediately, so the test doesn't mistakenly hit the max-open-files
30923         limit.
30924
30925 2001-11-18  Paul Eggert  <eggert@twinsun.com>
30926
30927         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
30928         (TEMPORARIES): New macro.
30929         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
30930         removes an artificial limitation (e.g. HP-UX 10.20, where
30931         TMP_MAX is 17576).
30932
30933 2001-11-18  Jim Meyering  <meyering@lucent.com>
30934
30935         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
30936
30937 2001-11-18  Jim Meyering  <meyering@lucent.com>
30938
30939         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
30940         on SunOS 4.
30941
30942         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
30943         files will be created before anything else.
30944
30945 2001-11-17  Paul Eggert  <eggert@twinsun.com>
30946
30947         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
30948         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
30949
30950 2001-11-17  Jim Meyering  <meyering@lucent.com>
30951
30952         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
30953         Prompted by a report from Bob Proulx.
30954
30955         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
30956         Instead, require UTILS_FUNC_MKSTEMP.
30957
30958 2001-11-17  Jim Meyering  <meyering@lucent.com>
30959
30960         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
30961         Now, that's done as part of AC_FUNC_STRTOD.
30962
30963 2001-11-17  Jim Meyering  <meyering@lucent.com>
30964
30965         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
30966         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
30967         rather than group writable.  Patch by Juan F. Codagnone.
30968
30969         * lib/readtokens.c: Remove explicit declarations of xmalloc and
30970         xrealloc, Instead, include "xalloc.h".
30971
30972         * lib/mountlist.c: Include unlocked-io.h after all system headers.
30973         Remove explicit declarations of xmalloc, xrealloc,
30974         and xstrdup.  Instead, include "xalloc.h".
30975
30976         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
30977         unlocked-io.h.
30978         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
30979         Likewise.
30980         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
30981
30982         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
30983         Reported by Padraig Brady.
30984
30985         * lib/mkstemp.c: #undef mkstemp.
30986         Include config.h.
30987         (rpl_mkstemp): Rename from mkstemp.
30988         Protoize.
30989
30990 2001-11-16  Jim Meyering  <meyering@lucent.com>
30991
30992         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
30993         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
30994         determine the amount of total physical memory, use pstat_getstatic.
30995         HPUX-11 doesn't define _SC_PHYS_PAGES.
30996         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
30997         If sysconf couldn't be used to determine the amount of available
30998         physical memory, use both pstat_getstatic and pstat_getdynamic.
30999         Based on a patch from Bob Proulx.
31000
31001 2001-11-10  Jim Meyering  <meyering@lucent.com>
31002
31003         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
31004         (jm_PREREQ): Use it.
31005
31006 2001-11-09  Jim Meyering  <meyering@lucent.com>
31007
31008         * m4/jm-macros.m4: Require autoconf-2.52f.
31009         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
31010         Use these AC_-prefixed names, not the AM_-prefixed ones.
31011
31012         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
31013
31014 2001-11-05  Jim Meyering  <meyering@lucent.com>
31015
31016         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
31017
31018 2001-11-04  Jim Meyering  <meyering@lucent.com>
31019
31020         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
31021         $DEFS.
31022
31023 2001-11-03  Jim Meyering  <meyering@lucent.com>
31024
31025         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
31026         of AC_DEFUN.
31027
31028         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
31029         know the name of the variable in the macro definition.
31030
31031 2001-11-03  Jim Meyering  <meyering@lucent.com>
31032
31033         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
31034         in argmatch_to_argument call.
31035
31036         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
31037         argument.
31038
31039         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
31040         e.g., a fault due to an attempt to free a NULL pointer.
31041
31042 2001-11-01  Jim Meyering  <meyering@lucent.com>
31043
31044         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
31045         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
31046
31047 2001-11-01  Jim Meyering  <meyering@lucent.com>
31048
31049         * lib/dirfd.c, lib/dirfd.h: New files.
31050         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
31051
31052         * lib/hash.c (hash_print) [TESTING]: Clean up.
31053
31054 2001-10-22  Paul Eggert  <eggert@twinsun.com>
31055
31056         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
31057         to avoid a warning if -Wall.
31058
31059 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
31060
31061         * README: New file
31062         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
31063         (per RMS's instructions, this is now the canonical source)
31064         * lgpl/, gpl/: New directories.
31065
31066 2001-10-21  Paul Eggert  <eggert@twinsun.com>
31067
31068         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
31069
31070 2001-10-21  Jim Meyering  <meyering@lucent.com>
31071
31072         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
31073         this code would end up calling gettext even in packages built
31074         with --disable-nls.
31075         * lib/getopt.c (_): Likewise.
31076         * lib/regex.c (_): Likewise.
31077
31078 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31079
31080         * m4/error.m4 (jm_PREREQ_ERROR):
31081         Do not invoke AC_CHECK_FUNCS with strerror_r, as
31082         AC_FUNC_STRERROR_R does that.
31083         Check for strerror declaration.
31084
31085         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
31086         are supposed to have them these days.
31087         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
31088         Merge changes from latest Autoconf CVS.
31089         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
31090         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
31091         POSIX decided to standardize on the int flavor of strerror_r.
31092
31093 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31094
31095         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
31096         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
31097         Use strerror_r that is only a macro, even if it is not a function.
31098         (strerror): Check for HAVE_DECL_STRERROR before declaring.
31099         (private_strerror): Use prototypes, not old-style function definition.
31100         (print_errno_message): New function.
31101         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
31102         char*-flavored one.
31103         (error_tail, error, error_at_line): Use it.
31104
31105 2001-10-11  Jim Meyering  <meyering@lucent.com>
31106
31107         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
31108         and quote_n (1, ... to avoid clobbering a buffer.
31109
31110 2001-10-05  Jim Meyering  <meyering@lucent.com>
31111
31112         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
31113         hash-pjw.h.
31114         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
31115         * lib/hash-pjw.h: New file.
31116
31117 2001-09-30  Jim Meyering  <meyering@lucent.com>
31118
31119         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
31120         `struct fsstat' has the `f_fstypename' member.
31121         Use that to define FS_TYPE, which is now used to make
31122         the getfsstat link test tighter.
31123
31124 2001-09-30  Jim Meyering  <meyering@lucent.com>
31125
31126         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
31127         Include <sys/ucred.h>, for Apple Darwin.
31128         Include sys/mount.h and sys/fs_types.h only if available.
31129         (FS_TYPE): Define.
31130         (read_filesystem_list): Use FS_TYPE.
31131
31132 2001-09-29  Paul Eggert  <eggert@twinsun.com>
31133
31134         * lib/exclude.c (excluded_filename): 0 -> false, since it's
31135         a boolean context.
31136
31137 2001-09-29  Jim Meyering  <meyering@lucent.com>
31138
31139         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31140         [one-argument getmntent function]): Include stdio.h before mntent.h.
31141         SunOS 4.1.x needs it for the declaration of `FILE'.
31142         Patch by Volker Borchert.
31143
31144         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31145         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
31146         sys/fs_types.h, and make the link-test for getfsstat guard #include
31147         directives with appropriate #if HAVE_*_H tests so that we can
31148         detect getfsstat on Apple Darwin1.3.7 systems.
31149         Reported by Nelson Beebe.
31150         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
31151
31152 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31153
31154         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31155         #defines strtoimax.  Also treat the other strto* functions
31156         like strtoimax.
31157
31158         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
31159         Check for strtoul and strtoumax,
31160         as those declarations are made even in the signed case.
31161         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
31162         Likewise, for strtol and strtoimax.
31163
31164 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31165
31166         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31167         #defines strtoimax.  Also treat the other strto* functions
31168         like strtoimax.
31169
31170         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
31171         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
31172         (strtoimax, strtoumax): Do not declare if already defined as a macro.
31173
31174 2001-09-26  Jim Meyering  <meyering@lucent.com>
31175
31176         Most macros in unlocked-io.h had the wrong number of arguments.
31177         * lib/gen-uio: New script.
31178         (USE_UNLOCKED_IO): Define to 1 if not already defined.
31179         * lib/unlocked-io.hin: Remove file.
31180         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
31181         rather than trying to embed it here.
31182         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
31183         Reported by Padraig Brady.
31184
31185 2001-09-25  Volker Borchert  <bt@teknon.de>
31186
31187         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
31188         `result'.
31189
31190 2001-09-24  Jim Meyering  <meyering@lucent.com>
31191
31192         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
31193
31194 2001-09-23  Jim Meyering  <meyering@lucent.com>
31195
31196         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
31197         instead of the mere test for existence of mntent.h.  The latter
31198         would get a false-positive on AIX 3.4 systems.
31199         In the outer getmntent if-block, don't die if neither of the getmntent
31200         tests succeeds.  Instead, just fall through and continue with the
31201         remaining tests.
31202
31203 2001-09-23  Jim Meyering  <meyering@lucent.com>
31204
31205         * lib/mountlist.c: Remove useless parentheses in #if directives.
31206         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
31207         the deprecated MOUNTED symbol is no longer defined in mntent.h.
31208
31209 2001-09-22  Jim Meyering  <meyering@lucent.com>
31210
31211         * m4/gettext.m4: New file.  From gettext.
31212         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
31213         * m4/progtest.m4: Likewise
31214         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
31215         * m4/glibc21.m4: Likewise.
31216
31217         * m4/libintl.m4: Remove.  No longer used.
31218
31219 2001-09-22  Jim Meyering  <meyering@lucent.com>
31220
31221         * lib/localcharset.c: Update from latest gettext.
31222         * lib/config.charset: Likewise.
31223
31224 2001-09-20  Jim Meyering  <meyering@lucent.com>
31225
31226         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
31227         strtoimax.
31228         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
31229         strtoumax.
31230
31231 2001-09-20  Jim Meyering  <meyering@lucent.com>
31232
31233         * lib/xstrtol.c (strtoimax): Guard declaration with
31234         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
31235         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
31236         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
31237         (strtoumax): Likewise, for completeness (it wasn't necessary).
31238
31239 2001-09-17  Paul Eggert  <eggert@twinsun.com>
31240
31241         * lib/strtoimax.c (HAVE_LONG_LONG):
31242         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
31243         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
31244         to work around bug in IBM C compiler.
31245
31246 2001-09-17  Jim Meyering  <meyering@lucent.com>
31247
31248         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
31249         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
31250         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
31251         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
31252         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
31253         whenever the right hand side need not be expanded by the shell.
31254
31255 2001-09-16  Paul Eggert  <eggert@twinsun.com>
31256
31257         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
31258         library.  It's not correct, as some older glibcs are buggy.
31259         fnmatch wasn't fixed until glibc 2.2.
31260
31261         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
31262         special shell magic here.
31263
31264 2001-09-16  Jim Meyering  <meyering@lucent.com>
31265
31266         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
31267         * m4/jm-macros.m4: Require it.
31268
31269 2001-09-16  Jim Meyering  <meyering@lucent.com>
31270
31271         * lib/mkdir.c: New file.
31272
31273 2001-09-15  Jim Meyering  <meyering@lucent.com>
31274
31275         * m4/jm-macros.m4: Check for help2man.
31276
31277 2001-09-11  Jim Meyering  <meyering@lucent.com>
31278
31279         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
31280         The body, by Paul Eggert, was moved here from configure.in.
31281         * m4/jm-macros.m4: Require UTILS_HOST_OS.
31282
31283 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31284
31285         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
31286         (jm_PREREQ): Use it.
31287
31288 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31289
31290         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
31291         Use ssize_t, not int, to store result of readlink.
31292         Check for ssize_t overflow as well as size_t overflow,
31293         as POSIX says the result of readlink is implementation-defined
31294         when ssize_t overflows.
31295         Remove unnecessary cast to char*.
31296         Use free+malloc instead of realloc, as the storage doesn't need
31297         to be preserved and it's clearer and can be more efficient that way.
31298         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
31299         * lib/xreadlink.h (xreadlink): Update prototype.
31300
31301 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31302
31303         * lib/xgetcwd.c: Revert some of the previous change; intead,
31304         fix the HAVE_GETCWD_NULL code to behave more like the
31305         !HAVE_GETCWD_NULL code used to.
31306
31307         Include "xalloc.h".
31308         (xgetcwd): Do not return NULL when memory is exhausted; instead,
31309         invoke xalloc_die.
31310
31311 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31312
31313         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
31314         sys/param.h, as pathmax.h includes them.
31315
31316 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31317
31318         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
31319         (jm_PREREQ_XGETCWD): New macro.
31320
31321         * m4/getcwd.m4: New file.
31322
31323 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31324
31325         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
31326         like the HAVE_GETCWD_NULL code.
31327         Include pathmax.h if not HAVE_GETCWD.
31328         Do not include xalloc.h.
31329         (INITIAL_BUFFER_SIZE): New symbol.
31330         Do not use xmalloc / xrealloc, since the caller is responsible for
31331         handling errors.  Preserve errno around `free' during failure.
31332         Do not overrun buffer when using getwd.
31333
31334 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31335
31336         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
31337         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
31338         getcwd (NULL, 0).
31339
31340 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31341
31342         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
31343         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
31344         spotted by Jim Meyering.
31345
31346 2001-09-03  Jim Meyering  <meyering@lucent.com>
31347
31348         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
31349         failure.
31350
31351 2001-09-02  Jim Meyering  <meyering@lucent.com>
31352
31353         * lib/error.c: Update from GNU libc.
31354
31355 2001-09-01  Jim Meyering  <meyering@lucent.com>
31356
31357         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
31358         Used by df.
31359
31360 2001-09-01  Jim Meyering  <meyering@lucent.com>
31361
31362         * lib/xreadlink.c: New file.
31363         * lib/xreadlink.h: New file.
31364         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
31365         xreadlink.h.
31366
31367         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
31368         doesn't conflict with sparc Solaris 7's definition in
31369         /usr/include/sys/int_types.h.
31370
31371         * lib/exclude.c: Use `""', not `<>' to #include non-system header
31372         files.
31373         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
31374         and strncasecmp as r-values.  Unixware didn't have declarations.
31375
31376 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31377
31378         * lib/xstrtol.h: Add copyright notice.
31379         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
31380         LONGINT_INVALID_SUFFIX_CHAR.
31381
31382 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31383
31384         * lib/xstrtol.c (strtoimax): New decl.
31385
31386 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31387
31388         * lib/xgetcwd.c: Don't include pathmax.h.
31389         Include stdlib.h and unistd.h if available.
31390         Include xalloc.h.
31391         (xmalloc, xstrdup, free): Remove decls.
31392         (xgetcwd): Don't assume sizes fit in unsigned.
31393         Check for overflow when computing sizes.
31394         Simplify reallocation code.
31395
31396 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31397
31398         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
31399         a directory's st_size can have an arbitrary value, so the old
31400         usage could waste an arbitrary amount of memory.  All uses
31401         changed.
31402         * lib/savedir.h: Update prototype.
31403
31404 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31405
31406         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
31407
31408         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
31409         old strtoimax.c.
31410
31411         Also, make the following further changes to make this file's
31412         configuration more similar to that of strtol.c:
31413         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
31414         (strtoumax, uintmax_t, strtoull, strtol): Remove.
31415         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
31416         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
31417         changed to signed values.
31418
31419         And make the following changes as well:
31420         Fix copyright notice, as 1999 was missing.
31421         (verify): New macro.
31422         (strtoimax): Check sizes at compile-time, not run-time.
31423         Prefer strtol to strtoll if both work.
31424         (main): Remove; it was not that useful and was a pain to maintain.
31425
31426         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
31427
31428 2001-08-31  Jim Meyering  <meyering@lucent.com>
31429
31430         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
31431         Use an initial, malloc'd, buffer of length 128 rather than
31432         a statically allocated one of length 1024.
31433
31434 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31435
31436         Simplify code, partly by assuming autoconf 2.52 semantics.
31437
31438         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
31439
31440         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
31441         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
31442         All uses removed.
31443         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
31444         Move AC_REQUIRE to next-to-top level, to avoid confusion.
31445         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
31446         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
31447         jm_AC_HEADER_INTTYPES_H.
31448         * m4/jm-macros.m4 (jm_MACROS): Likewise.
31449
31450         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
31451
31452         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
31453         Quote first arg of AC_DEFUN.
31454         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
31455         since they are needed to parse the include file even if we need
31456         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
31457         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
31458         but with opposite signedness.
31459
31460 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31461
31462         Merge 'exclude' changes from tar 1.13.22.
31463         This fixes one or two unlikely storage allocation overflow bugs,
31464         but doesn't change user-visible behavior otherwise.
31465
31466 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31467
31468         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
31469         (jm_PREREQ_EXCLUDE): New macro.
31470
31471 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31472
31473         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
31474         tm to be declared.
31475
31476 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31477
31478         * lib/hash.c: Remove '2001' from copyright notice.
31479
31480 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31481
31482         * lib/full-write.h: New file.
31483         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
31484         * lib/full-write.c: Correct credits, as cccp.c no longer
31485         exists and anyway it was so heavily changed from the old cccp
31486         code as to be unrecognizable.  Include full-write.h.
31487         (full_write) Return size_t, with short writes meaning failure.
31488         All callers changed.  This fixes a bug with large buffers
31489         on 64-bit hosts.
31490         * lib/utime.c: Include full-write.h.
31491
31492 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31493
31494         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
31495         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
31496         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
31497         Include if available.
31498         (<xalloc.h>): Include
31499         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
31500         (verify): New macro.  Use it to verify that EXCLUDE macros do not
31501         collide with FNM macros.
31502         (struct patopts): New struct.
31503         (struct exclude): Use it, as exclude patterns now come with options.
31504         (new_exclude): Support above changes.
31505         (new_exclude, add_exclude_file):
31506         Initial size must now be a power of two to simplify overflow checking.
31507         (free_exclude, fnmatch_no_wildcards): New function.
31508         (excluded_filename): No longer requires options arg, as the options
31509         are determined by add_exclude.  Now returns bool, not int.
31510         (excluded_filename, add_exclude):
31511         Add support for the fancy new exclusion options.
31512         (add_exclude, add_exclude_file): Now takes int options arg.
31513         Check for arithmetic overflow when computing sizes.
31514         (add_exclude_file): xrealloc might modify errno, so don't
31515         realloc until after errno might be used.
31516
31517         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
31518         New macros.
31519         (free_exclude): New decl.
31520         (add_exclude, add_exclude_file): Now takes int options arg.
31521         (excluded_filename): No longer requires options arg, as the options
31522         are determined by add_exclude.  Now returns bool, not int.
31523
31524 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31525
31526         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
31527
31528 2001-08-27  Jim Meyering  <meyering@lucent.com>
31529
31530         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
31531
31532         * lib/version-etc.c (N_): Remove definition.
31533         Revert most of last change.
31534         Instead, simply don't mark the `Copyright...' string for translation.
31535         Based on advice from Paul Eggert.
31536
31537         * lib/strtoxmax.c: Tweak comment.
31538
31539 2001-08-26  Jim Meyering  <meyering@lucent.com>
31540
31541         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
31542
31543         * m4/xstrtoimax.m4: New file.
31544         * m4/xstrtoumax.m4: Add comments explaining why we
31545         AC_REPLACE_FUNCS(strtol).
31546
31547 2001-08-26  Jim Meyering  <meyering@lucent.com>
31548
31549         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
31550         of copyright with `%s' so translators don't get an untranslated
31551         message in 2002.
31552         (COPYRIGHT_YEAR): Define.
31553         (version_etc): Use fprintf rather than fputs.
31554         Suggestion from Ulrich Drepper.
31555
31556         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
31557
31558         * lib/strtoll.c: New file, from GNU libc.
31559         * lib/xstrtoimax.c: New file.
31560
31561         * lib/xstrtol.h: Add xstrtoimax.
31562         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
31563         * lib/strtoimax.c: New file.  Likewise, but first define
31564         STRTOUXMAX_SIGNED.
31565
31566         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
31567         ...
31568         * lib/strtoxmax.c: ... then renamed to this.
31569
31570 2001-08-18  Paul Eggert  <eggert@twinsun.com>
31571
31572         * m4/inttypes.m4: Add AC_PREREQ(2.13).
31573         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
31574         (jm_AC_TYPE_INTMAX_T): New macro.
31575         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
31576
31577         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
31578
31579         * m4/longlong.m4: Renamed from ulonglong.m4.
31580         * m4/inttypes.m4: Renamed from inttypes_h.m4.
31581         * m4/uintmax_t.m4: Removed.
31582
31583 2001-08-13  Paul Eggert  <eggert@twinsun.com>
31584
31585         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
31586         Port to Solaris 8, where 'sed' requires a space after the 'r'
31587         command, and where sh dislikes "$/".  Clean up the spacing a bit.
31588         Redirect output to $tmp just once.
31589
31590 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
31591
31592         * lib/addext.c (<errno.h>): Include.
31593         (errno): Declare if not defined.
31594         (addext): Work correctly when pathconf returns -1 and leaves
31595         errno alone because there is no limit.  Also, work even if
31596         pathconf returns a value greater than SIZE_MAX.
31597
31598 2001-08-12  Jim Meyering  <meyering@lucent.com>
31599
31600         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
31601         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
31602         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
31603         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
31604         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
31605         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
31606         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
31607         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
31608         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
31609         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
31610         utime.m4, utimes.m4, xstrtoumax.m4:
31611         Quote the first argument in each use of AC_DEFUN.
31612
31613 2001-08-12  Jim Meyering  <meyering@lucent.com>
31614
31615         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
31616         Simply `return getcwd (NULL, 0);'.
31617         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
31618         Use 1300 as initial value for length, not PATH_MAX.
31619
31620         * lib/pathmax.h: Clean up cpp syntax.
31621
31622 2001-08-12  Jim Meyering  <meyering@lucent.com>
31623
31624         * lib/gettimeofday.c: New file.
31625         * lib/gtod.h: New file.
31626         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
31627
31628 2001-08-05  Jim Meyering  <meyering@lucent.com>
31629
31630         * m4/jm-macros.m4: Require autoconf-2.52.
31631
31632 2001-08-04  Jim Meyering  <meyering@lucent.com>
31633
31634         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
31635         stmt, to get in sync with glibc.
31636
31637 2001-08-03  Paul Eggert  <eggert@twinsun.com>
31638
31639         The following changes are from gettext 0.10.39 as maintained by
31640         Bruno Haible.
31641
31642         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
31643         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
31644         with inverted sense.  All uses changed.
31645
31646         * lib/mbswidth.c: Don't include <limits.h>.
31647         Include <stdlib.h> and <string.h> unconditionally.
31648         (iswcntrl, mbsinit, ISCNTRL): New macros.
31649         (mbsnwidth): Use K&R style function declarations.
31650         Don't bother checking for MB_LEN_MAX == 1, since the compiler
31651         can optimize it when MB_CUR_MAX == 1.
31652         The width of control characters is zero, not 1.
31653
31654 2001-08-03  Paul Eggert  <eggert@twinsun.com>
31655
31656         The following changes are from gettext 0.10.39 as maintained by
31657         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
31658
31659         * m4/codeset.m4: Upgrade to serial AM1.
31660         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
31661         all uses changed.  Quote first arg of AC_DEFUN.
31662         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
31663
31664         * m4/iconv.m4: Upgrade to serial AM2.
31665         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
31666         Add --with-libconv-prefix.
31667         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
31668         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
31669         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
31670         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
31671         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
31672
31673         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
31674         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
31675         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
31676         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
31677         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
31678         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
31679         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
31680         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
31681         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
31682
31683         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
31684         string.h any more.
31685
31686         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
31687         not the default value.
31688
31689         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
31690         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
31691         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
31692         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
31693         Also check for iswcntrl, used for wcwidth fallback.
31694         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
31695         to Autoconf 2.13.
31696
31697 2001-08-03  Jim Meyering  <meyering@lucent.com>
31698
31699         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
31700         as it was in the original.  Reported by Paul Eggert.
31701
31702 2001-07-16  Jim Meyering  <meyering@lucent.com>
31703
31704         * m4/gettimeofday.m4: New file.
31705         Prompted by a report from Bernhard Baehr.
31706
31707 2001-07-15  Jim Meyering  <meyering@lucent.com>
31708
31709         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
31710         stuff. Now it's in ../Makefile.cfg.
31711
31712 2001-07-15  Jim Meyering  <meyering@lucent.com>
31713
31714         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
31715         (BUILT_SOURCES): Add unlocked-io.h.
31716         (io_functions): Define.
31717         (unlocked-io.h): New rule.
31718         (DISTCLEANFILES): Add unlocked-io.h.
31719         (all-local): Depend on unlocked-io.h, to ensure it is created.
31720
31721         * lib/unlocked-io.hin: New file
31722
31723         * lib/regex.c: Update from glibc.
31724
31725 2001-07-05  Jim Meyering  <meyering@lucent.com>
31726
31727         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
31728         recommendation.
31729         (libfetish_a_SOURCES): Put all .h files here instead.
31730         Remove a thus-exposed (better checks in automake) duplicate and
31731         two unnecessary .h files.
31732
31733 2001-07-04  Jim Meyering  <meyering@lucent.com>
31734
31735         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
31736         that generates jm-glibc-io.m4 so that it doesn't trigger any make
31737         distcheck failure.
31738
31739 2001-07-02  Jim Meyering  <meyering@lucent.com>
31740
31741         The following changes were prompted by suggestions from Bruno Haible.
31742
31743         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
31744         is now generated.
31745         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
31746         definition of EXTRA_DIST.
31747         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
31748         ensure that the generated file is created/updated whenever the list
31749         of $(unlocked_functions) is changed.
31750         (jm-glibc-io.m4): New rule.
31751         (unlocked-io.h): New rule -- currently unused.
31752
31753 2001-06-24  Jim Meyering  <meyering@lucent.com>
31754
31755         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
31756         unmatched right bracket, rather than kludging it with an extra,
31757         falsely-matching quote in a comment.  Patch by Akim Demaille.
31758
31759 2001-06-11  Jim Meyering  <meyering@lucent.com>
31760
31761         * lib/regex.c: Update from GNU libc.
31762
31763 2001-05-27  Jim Meyering  <meyering@lucent.com>
31764
31765         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
31766         Check for ut_type in struct utmp.
31767
31768 2001-05-27  Jim Meyering  <meyering@lucent.com>
31769
31770         * lib/readutmp.h (UT_TYPE): Define.
31771
31772 2001-05-24  Jim Meyering  <meyering@lucent.com>
31773
31774         * lib/argmatch.c: Include "quote.h".
31775         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
31776         quote function.  Reported by Göran Uddeborg.
31777
31778 2001-05-22  Jim Meyering  <meyering@lucent.com>
31779
31780         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
31781         now that we use the package-supplied version unconditionally.
31782         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
31783
31784 2001-05-21  Jim Meyering  <meyering@lucent.com>
31785
31786         * m4/regex.m4: Change a couple backticks to single quotes to avoid
31787         shell syntax errors.
31788
31789 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
31790
31791         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
31792
31793 2001-05-20  Paul Eggert  <eggert@twinsun.com>
31794
31795         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
31796         Don't bother to check library strftime, since
31797         we'll be using our own my_strftime function anyway.
31798         Define my_strftime instead of strftime.
31799
31800 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
31801
31802         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
31803         which is not yet declared.
31804
31805 2001-05-15  Jim Meyering  <meyering@lucent.com>
31806
31807         * m4/regex.m4: Use proper quoting so brackets appear in the test
31808         program.
31809         Reported by, and with help from, Bruno Haible.
31810
31811 2001-05-13  Jim Meyering  <meyering@lucent.com>
31812
31813         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
31814         undefined.
31815
31816 2001-05-11  Paul Eggert  <eggert@twinsun.com>
31817
31818         dirname code cleanup.  base_name now behaves more compatibly
31819         with POSIX basename when given file names that have trailing
31820         slashes, and similarly for dir_name.  Add new primitives
31821         base_len and dir_len.  Put the directory-name-related decls
31822         into dirname.h.
31823
31824         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
31825         * lib/backupfile.c (base_name): Likewise.
31826         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
31827         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
31828         * lib/makepath.c (strip_trailing_slashes): Likewise.
31829         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
31830         ISSLASH): Likewise.
31831         * lib/rename.c (strip_trailing_slashes): Likewise.
31832         * lib/same.c (base_name): Likewise.
31833         * lib/stripslash.c (ISSLASH): Likewise.
31834
31835         * lib/addext.c: Include <dirname.h> after size_t is defined.
31836         * lib/backupfile.c: Likewise.
31837
31838         * lib/addext.c (addext): Use base_len to trim redundant
31839         trailing slashes instead of doing it ourselves.
31840         But do not trim the last slash if it is not redundant.
31841
31842         * lib/backupfile.c (find_backup_file_name,
31843         max_backup_version): Use base_len instead of rolling it ourselves.
31844         Handle the case of "" and (on DOS) "C:" correctly.
31845
31846         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
31847         needed. Include <string.h>, <dirname.h>.
31848         (base_name): Allow file names ending in slashes, other than names
31849         that are all slashes.  In this case, return the basename followed
31850         by the slashes.  This is more general, and can be used in places
31851         where the original base_name purposely had an assertion failure.
31852         (base_len): New function.
31853
31854         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
31855         Do not include <assert.h>; no longer needed.
31856         Include xalloc.h.
31857         (memrchr): Remove decl.
31858         (dir_name_r): Remove.
31859         (dir_len): Renamed from dirlen.  All callers changed.
31860         Rewrite in terms of base_name, for simplicity and consistency.
31861         (dir_name): Never return NULL.  All callers changed.
31862         Do not include <stdlib.h> in test program; no longer needed.
31863         return 0; is fine for test program.
31864
31865         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
31866         New macros.
31867         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
31868
31869         * lib/path-concat.c (path_concat): Use base_len to compute
31870         base length, not strlen; this means we cannot rely on memcpy
31871         to null-terminate.
31872
31873         * lib/same.c (STREQ): Remove.
31874         (same_name): Handle the case where the basename ends in trailing '/'.
31875
31876         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
31877         a slash was stripped.  Do not strip the last slash after a
31878         file system prefix.
31879
31880 2001-05-11  Paul Eggert  <eggert@twinsun.com>
31881
31882         * lib/Makefile.am (libfetish_a_SOURCES):
31883         Add strftime.c, since we now compile it on all hosts.
31884
31885         * lib/strftime.c (my_strftime):
31886         Define to nstrftime if emacs, but only if my_strftime is not defined.
31887         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
31888         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
31889         Add one more extra argument: a nanoseconds value.
31890         All uses changed.
31891         (ns): New macro.
31892         (my_strftime function): Add %N format.
31893         (emacs_strftimeu): Renamed from emacs_strftime,
31894         with extra ut argument.
31895
31896 2001-05-09  Paul Eggert  <eggert@twinsun.com>
31897
31898         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
31899
31900 2001-04-21  Jim Meyering  <meyering@lucent.com>
31901
31902         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
31903         doesn't interfere.
31904
31905 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
31906
31907         * m4/ftruncate.m4: Check for chsize.
31908         Link with ftruncate.o unconditionally if ftruncate is missing.
31909         This was required when cross-compiling to i586-mingw32msvc.
31910
31911 2001-04-08  Jim Meyering  <meyering@lucent.com>
31912
31913         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
31914         recomputed; that's necessary when the offset spans a DST transition.
31915         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
31916
31917 2001-04-02  Jim Meyering  <meyering@lucent.com>
31918
31919         * lib/regex.h, regex.c: Update from GNU libc.
31920
31921 2001-03-24  Jim Meyering  <meyering@lucent.com>
31922
31923         * m4/jm-macros.m4: Require autoconf-2.49d.
31924
31925 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
31926
31927         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
31928
31929 2001-03-19  Paul Eggert  <eggert@twinsun.com>
31930
31931         * lib/version-etc.c (version_etc_copyright): Update to 2001.
31932
31933 2001-03-17  Jim Meyering  <meyering@lucent.com>
31934
31935         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
31936         now that the version in autoconf is equivalent.
31937         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
31938
31939         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
31940         Suggestion from Akim Demaille.
31941
31942         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
31943         (jm_PREREQ_TEMPNAME): New function.
31944
31945 2001-03-16  Paul Eggert  <eggert@twinsun.com>
31946
31947         * lib/tempname.c (uint64_t): Define to uintmax_t if
31948         not defined, and if UINT64_MAX is not defined.
31949         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
31950         Reported by John David Anglin.
31951
31952 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
31953
31954         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
31955         resolve alias if codeset is empty.
31956         * lib/config.charset (BeOS): Use wildcard syntax.
31957
31958 2001-03-13  Jim Meyering  <meyering@lucent.com>
31959
31960         * lib/path-concat.c (path_concat)
31961         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
31962         concatenating e.g., `C:' and `foo'.
31963         From Bruno Haible.
31964
31965 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
31966
31967         * lib/localcharset.c (locale_charset): Don't use
31968         setlocale(LC_CTYPE,NULL). Don't return NULL.
31969         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
31970
31971 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
31972
31973         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
31974         support for DOS/DJGPP.
31975
31976 2001-03-01  Paul Eggert  <eggert@twinsun.com>
31977
31978         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
31979         lacks mkstemp.  Compile our own tempname.c if we compile our own
31980         mkstemp.c, as mkstemp relies on tempname.
31981
31982 2001-03-01  Jim Meyering  <meyering@lucent.com>
31983
31984         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
31985         AH_VERBATIM really does output its argument verbatim.
31986
31987 2001-02-28  Paul Eggert  <eggert@twinsun.com>
31988
31989         * lib/Makefile.am (libfetish_a_SOURCES):
31990         Add dup-safer.c, fopen-safer.c.
31991         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
31992
31993         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
31994         * lib/unistd-safer.h: New files.
31995
31996 2001-02-25  Paul Eggert  <eggert@twinsun.com>
31997
31998         The mkstemp replacement is taken from glibc 2.2.2, with some
31999         portability fixes for use outside glibc, as follows:
32000
32001         * lib/tempname.c (struct_stat64): New macro.
32002         (direxists, __gen_tempname): Use it.
32003         This avoids a portability problem with Solaris 8.
32004
32005         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
32006         (<stddef.h>, <stdint.h>, <string.h>):
32007         Include only if STDC_HEADERS || _LIBC.
32008         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
32009         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
32010         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
32011         (__set_errno): Define this macro if <errno.h> doesn't.
32012         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
32013         Define these macros if <stdio.h> doesn't.
32014         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
32015         Define these macros if <sys/stat.h>
32016         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
32017         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
32018         __xstat64): Define if not _LIBC.
32019         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
32020         (__gen_tempname): Invoke gettimeofday only if
32021         HAVE_GETTIMEOFDAY || _LIBC;
32022         otherwise, fall back on plain "time".
32023         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
32024
32025         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
32026
32027         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
32028
32029 2001-02-18  Paul Eggert  <eggert@twinsun.com>
32030
32031         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
32032
32033 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32034
32035         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
32036         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
32037         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
32038         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
32039
32040 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32041
32042         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
32043         Remove workaround macros for hosts that have mbrtowc but not
32044         mbstate_t, as we now insist on proper declarations for both
32045         before using mbrtowc.
32046
32047 2001-02-17  Jim Meyering  <meyering@lucent.com>
32048
32049         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
32050         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
32051         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
32052         UnixWare 7.1.1.
32053
32054         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
32055         rather than AC_CACHE_VAL.
32056
32057 2001-02-17  Jim Meyering  <meyering@lucent.com>
32058
32059         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
32060         around included file name.
32061
32062         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
32063
32064         * lib/strftime.c: Update from GNU libc (the only changes were to
32065         comments).
32066
32067 2001-02-17  Jim Meyering  <meyering@lucent.com>
32068
32069         * lib/regex.c: Update from libc.
32070
32071 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
32072
32073         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
32074         clash.
32075
32076 2001-02-16  Paul Eggert  <eggert@twinsun.com>
32077
32078         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
32079         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
32080         Reported by Mark Hounschell via Paul Eggert.
32081
32082 2001-02-07  Jim Meyering  <meyering@lucent.com>
32083
32084         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
32085
32086 2001-02-05  Jim Meyering  <meyering@lucent.com>
32087
32088         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
32089         it includes the patch required for `large file' support with at least
32090         HP-UX's 10.20 /bin/cc.
32091
32092 2001-02-03  Jim Meyering  <meyering@lucent.com>
32093
32094         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
32095         AS_IF, now that it works once again (mysteriously).
32096         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32097
32098 2001-01-30  Jim Meyering  <meyering@lucent.com>
32099
32100         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
32101         * m4/chown.m4: Rename conftestchown to conftest.chown.
32102         * m4/rename.m4: s/conftestdir/conftest.d1/ and
32103         s/conftestdir2/conftest.d2/.
32104         * m4/utimes.m4: s/conftestdata/conftest.data/
32105         Inspired by Pavel Roskin's change in autoconf.
32106
32107 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
32108
32109         * lib/config.charset: Update for FreeBSD 4.2.
32110
32111 2001-01-27  Jim Meyering  <meyering@lucent.com>
32112
32113         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
32114         a use of AS_IF.
32115         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32116
32117 2001-01-26  Jim Meyering  <meyering@lucent.com>
32118
32119         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
32120         quotearg.c includes it.
32121
32122 2001-01-26  Jim Meyering  <meyering@lucent.com>
32123
32124         * lib/quotearg.c: Include stddef.h.
32125         * lib/quote.c: Include stddef.h.
32126         Reported by Axel Kittenberger.
32127
32128         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
32129         line in double quotes so that it evokes a better diagnostic.
32130         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
32131         Reported by Axel Kittenberger.
32132
32133 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
32134
32135         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
32136         as if it was a `charset'.
32137
32138 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32139
32140         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
32141         has const.
32142
32143 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32144
32145         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
32146         to avoid a warning.  Add back 'const' to inptr.
32147
32148 2001-01-20  Jim Meyering  <meyering@lucent.com>
32149
32150         Be sure that headers are checked before used in code compiled
32151         for the type checks.
32152         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
32153         In place of that, invoke jm_CHECK_ALL_TYPES.
32154         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
32155         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
32156         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
32157         The check for ssize_t was mistakenly run before the test for unistd.h.
32158
32159         The configure-time check for stdbool.h was missing.
32160         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
32161         (jm_PREREQ_HASH): New function.
32162
32163 2001-01-17  Jim Meyering  <meyering@lucent.com>
32164
32165         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
32166         for autoconf-2.49c.
32167         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
32168
32169 2001-01-16  Jim Meyering  <meyering@lucent.com>
32170
32171         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
32172         From Bruno Haible.
32173
32174 2001-01-14  Jim Meyering  <meyering@lucent.com>
32175
32176         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
32177         foo and bar.  Create conftestdir/ in the script, not in the C code.
32178         Remove directories in the script, not in the C code.
32179         Remove conftestdir{,2} before trying to create the directory.
32180         Make the entire configure script fail if the mkdir fails.
32181
32182 2001-01-14  Jim Meyering  <meyering@lucent.com>
32183
32184         * lib/rename.c: New file.  From Volker Borchert.
32185         Include stdlib.h, string.h or strings.h, and xalloc.h.
32186         Use strip_trailing_slashes rather than open-coding it.
32187
32188 2001-01-03  Paul Eggert  <eggert@twinsun.com>
32189
32190         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
32191
32192 2001-01-03  Jim Meyering  <meyering@lucent.com>
32193
32194         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
32195         of local `inptr' to avoid warning with some system declarations of
32196         iconv.
32197
32198 2001-01-02  Volker Borchert  <bt@teknon.de>
32199
32200         * m4/rename.m4: New file.
32201         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
32202
32203 2001-01-01  Jim Meyering  <meyering@lucent.com>
32204
32205         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
32206         even on systems with utmpx.h.  It's necessary for the declaration of
32207         utmp's ut_user member.  Reported by Andreas Jaeger.
32208
32209         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
32210         available. They are required for the declarations of getgrgid and
32211         getpwuid resp.
32212         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
32213         Reported by Andreas Jaeger.
32214
32215 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
32216
32217         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
32218         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
32219         so `make install' also works in VPATH builds.
32220
32221 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
32222
32223         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
32224         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
32225         can be used in subdirectories.
32226
32227 2000-12-29  Paul Eggert  <eggert@twinsun.com>
32228
32229         * lib/modechange.c: Do not assume that mode_t uses the
32230         traditional octal encoding.  E.g. "chmod 1 FOO" should set
32231         the other-execute bit of FOO even if S_IXOTH != 1.
32232
32233         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
32234         WOTH, XOTH, ALLM): New macros.
32235         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
32236          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
32237         Use them.
32238         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
32239         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
32240         (mode_compile):
32241         No need to use uintmax_t; unsigned long is long enough.
32242         Don't bother to get suffix since we don't use it.
32243
32244 2000-12-26  Jim Meyering  <meyering@lucent.com>
32245
32246         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
32247         better with autoheader.
32248
32249 2000-12-24  Jim Meyering  <meyering@lucent.com>
32250
32251         * lib/hash.c (is_prime): Return explicit boolean values.
32252         (hash_get_first): Return NULL to appease Irix5.6's 89.
32253         Reported by Nelson Beebe.
32254
32255 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
32256
32257         * lib/localcharset.c (locale_charset): Add support for Win32.
32258
32259 2000-12-18  Paul Eggert  <eggert@twinsun.com>
32260
32261         * lib/physmem.h, lib/physmem.c: New files.
32262
32263         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
32264         (noinst_HEADERS): Add physmem.h.
32265
32266         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
32267         't' for compatibility with Solaris 8 sort.
32268
32269 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
32270
32271         * lib/config.charset: Add support for BeOS.
32272
32273 2000-12-17  Jim Meyering  <meyering@lucent.com>
32274
32275         * m4/dos.m4 (jm_AC_DOS): New file and macro.
32276         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
32277
32278 2000-12-16  Jim Meyering  <meyering@lucent.com>
32279
32280         This bug had a serious impact on chown: `chown N:M FILE' (for integer
32281         N and M) would have treated it like `chown N:N FILE'.
32282
32283         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
32284
32285 2000-12-16  Jim Meyering  <meyering@lucent.com>
32286
32287         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
32288         SHELLS_FILE to a file name that's useful on djgpp systems.
32289         Include stdlib.h.
32290         (ADDITIONAL_DEFAULT_SHELLS): Define.
32291         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
32292         Based mostly on a patch from Prashant TR.
32293
32294 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
32295
32296         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
32297         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
32298         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
32299
32300 2000-12-08  Andreas Schwab  <schwab@suse.de>
32301
32302         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
32303         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
32304
32305 2000-12-07  Jim Meyering  <meyering@lucent.com>
32306
32307         * lib/stripslash.c (ISSLASH): Define.
32308         (strip_trailing_slashes): Use ISSLASH rather than comparing against
32309         `/'.
32310         From Prashant TR.
32311
32312         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
32313         (dir_name_r): Declare this function as static.
32314         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
32315         manifest itself on a name containing a mix of slashes and
32316         backslashes.
32317         Make this function work with names starting with a DOS-style
32318         drive letter and colon prefix.
32319         (dir_name): Append `.' if necessary.
32320         Based mostly on patches from Prashant TR and Eli Zaretskii.
32321
32322         * lib/dirname.h (dir_name_r): Remove prototype.
32323
32324 2000-12-06  Paul Eggert  <eggert@twinsun.com>
32325
32326         * m4/off_t-format.m4: Remove this file.
32327         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
32328
32329 2000-12-06  Jim Meyering  <meyering@lucent.com>
32330
32331         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
32332         replacement strtoull, we may well need the replacement strtoul, too.
32333         Check for declarations of strtoul and strtoull.
32334         Check for strtol.  Mainly as a cue to cause automake to include
32335         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
32336         Check for limits.h -- strtol.c needs it.
32337
32338 2000-12-05  Jim Meyering  <meyering@lucent.com>
32339
32340         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
32341
32342 2000-12-04  Jim Meyering  <meyering@lucent.com>
32343
32344         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
32345         Also include memory.h, stdlib.h, unistd.h if appropriate.
32346         Reported by Andreas Jaeger (conflicting declaration of malloc).
32347
32348 2000-12-02  Jim Meyering  <meyering@lucent.com>
32349
32350         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
32351         * m4/jm-macros.m4 (jm_MACROS): require it.
32352
32353 2000-12-02  Jim Meyering  <meyering@lucent.com>
32354
32355         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
32356
32357 2000-12-01  Paul Eggert  <eggert@twinsun.com>
32358
32359         * lib/memrchr.c: Include <config.h> before any system include file.
32360
32361 2000-11-30  Jim Meyering  <meyering@lucent.com>
32362
32363         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
32364
32365 2000-11-30  Jim Meyering  <meyering@lucent.com>
32366
32367         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
32368
32369 2000-11-29  Paul Eggert  <eggert@twinsun.com>
32370
32371         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
32372
32373 2000-11-26  Jim Meyering  <meyering@lucent.com>
32374
32375         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
32376
32377 2000-11-22  Paul Eggert  <eggert@twinsun.com>
32378
32379         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
32380         size of (size_t) -1; it's not portable.
32381
32382 2000-11-17  Jim Meyering  <meyering@lucent.com>
32383
32384         * lib/strstr.c: Update from GNU libc.
32385
32386 2000-11-17  Akim Demaille  <akim@epita.fr>
32387
32388         * lib/obstack.h: Formatting changes.
32389         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
32390         prevent type checking.
32391         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
32392         cast the value to (void *): assigning a `foo *' to a `void *'
32393         variable is valid.
32394         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
32395
32396 2000-11-16  Jim Meyering  <meyering@lucent.com>
32397
32398         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
32399
32400 2000-11-11  Jim Meyering  <meyering@lucent.com>
32401
32402         * lib/error.c: Add a couple #includes, merging from GNU libc version.
32403
32404 2000-11-10  Jim Meyering  <meyering@lucent.com>
32405
32406         * lib/obstack.h: Update from GNU libc.
32407         * lib/obstack.c: Likewise.
32408
32409 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
32410
32411         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
32412
32413 2000-11-06  Paul Eggert  <eggert@twinsun.com>
32414
32415         * lib/getusershell.c (setusershell): Use rewind rather than
32416         fseek/fseeko, to avoid configuration hassles with fseeko.
32417         Don't bother opening SHELLS_FILE if shellstream is NULL;
32418         it's not necessary.
32419
32420 2000-11-05  Jim Meyering  <meyering@lucent.com>
32421
32422         * lib/makepath.h (make_dir): Declare.
32423         * lib/makepath.c (make_dir): Remove `static' attribute.
32424         Tweak a comment.
32425
32426 2000-11-04  Jim Meyering  <meyering@lucent.com>
32427
32428         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
32429
32430 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
32431
32432         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
32433         last one in a bucket, advance to the next bucket.
32434
32435 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
32436
32437         * lib/fnmatch.c: Do not comment out all the code if we are using
32438         the GNU C library, because in some cases we are replacing buggy
32439         code in the GNU C library itself.
32440
32441 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
32442
32443         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
32444         (regex_compile): Catch bogus \(\1\).
32445
32446 2000-10-30  Paul Eggert  <eggert@twinsun.com>
32447
32448         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
32449         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
32450         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
32451
32452 2000-10-30  Paul Eggert  <eggert@twinsun.com>
32453
32454         * lib/error.h, getline.h, modechange.h:
32455         Remove "2000" from Copyright line, as the file hasn't been
32456         changed this year other than in the copyright notice.
32457
32458         * lib/xalloc.h: Add "2000" to Copyright line, as this file
32459         was changed this year.
32460
32461 2000-10-29  Jim Meyering  <meyering@lucent.com>
32462
32463         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
32464         renaming.
32465         * m4/ls-mntd-fs.m4: Likewise
32466
32467 2000-10-29  Jim Meyering  <meyering@lucent.com>
32468
32469         * lib/xstat.in: Fix grammar in comment.
32470
32471 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
32472
32473         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
32474         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
32475         doesn't define __restrict_arr.
32476
32477 2000-10-28  Jim Meyering  <meyering@lucent.com>
32478
32479         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
32480         (jm_PREREQ_MEMCHR): New function.
32481
32482 2000-10-28  Jim Meyering  <meyering@lucent.com>
32483
32484         * lib/memchr.c: Update from libc.
32485         Adjust for portability:
32486         [HAVE_STDLIB_H]: Include stdlib.h.
32487         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
32488         Undef __memchr, too.
32489         [!weak_alias]: Define __memchr to memchr.
32490
32491         * lib/regex.c: Update from libc.
32492         * lib/regex.h: Likewise.
32493         * lib/getopt1.c: Likewise.
32494         * lib/memcmp.c: Likewise.
32495
32496         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
32497         Avoid using fseek, when possible -- it's broken by design.
32498         Patch by Ulrich Drepper.
32499
32500 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
32501
32502         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
32503         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
32504         Giving in to popular pressure to shut up the compiler with casts.
32505
32506 2000-10-26  Jim Meyering  <meyering@lucent.com>
32507
32508         * lib/strftime.c: Update from libc.
32509
32510 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
32511
32512         * regex.c: More `unsigned char' -> `re_char' changes.
32513         Also change several `int' into `re_wchar_t'.
32514         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
32515         (PUSH_FAILURE_POINTER): Don't cast any more.
32516         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
32517         We want GCC to complain, since this piece of code makes
32518         re_match non-reentrant, which *should* be fixed.
32519         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
32520         (EXTEND_BUFFER): Use RETALLOC.
32521         (SET_LIST_BIT): Don't cast.
32522         (re_wchar_t): New type.
32523         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
32524         that those two functions will always properly return.
32525         (IMMEDIATE_QUIT_CHECK): Cast to void.
32526         (analyse_first): Use recursion rather than an explicit stack.
32527         (re_compile_fastmap): Can't fail anymore.
32528         (re_search_2): Don't check re_compile_fastmap for failure.
32529         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
32530         Now also sets the new value (passed in a new argument).
32531         (re_match_2_internal): Use it.
32532         Also, use a new var `reg' of type size_t when looping through regs
32533         rather than reuse the inappropriate `mcnt'.
32534
32535 2000-10-25  Jim Meyering  <meyering@lucent.com>
32536
32537         * lib/obstack.c: Update from libc.
32538
32539 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
32540
32541         * regex.c (regex_compile): Change the way of handling a range from
32542         a char less than 256 to a char not less than 256.
32543
32544 2000-10-24  Andrew Innes  <andrewi@gnu.org>
32545
32546         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
32547         NT-Emacs only.
32548         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
32549         so that re_search functions only quit when callers expect them to.
32550
32551 2000-10-23  Jim Meyering  <meyering@lucent.com>
32552
32553         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
32554         wrong.  That set_locale call must not have any side effects.
32555         From Paul Eggert.
32556
32557 2000-10-22  Jim Meyering  <meyering@lucent.com>
32558
32559         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
32560         [CYCLIC]: Remove now-unused definition.
32561
32562         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
32563         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
32564         Suggestion from Ulrich Drepper.
32565
32566 2000-10-21  Jim Meyering  <meyering@lucent.com>
32567
32568         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
32569         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
32570         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
32571
32572 2000-10-21  Jim Meyering  <meyering@lucent.com>
32573
32574         * lib/dirname.c (memrchr): Declare if necessary.
32575         (dir_name): Remove the restriction that there be no
32576         trailing slashes.  Now, this code skips past them, effectively
32577         ignoring them.
32578         [TEST_DIRNAME] (main): New unit tests.
32579
32580         * lib/memrchr.c: New file from GNU libc.
32581         Undef __memrchr, too.
32582         [!weak_alias]: Define __memrchr to memrchr.
32583         Guard weak_alias use with `#ifdef weak_alias'.
32584
32585 2000-10-21  Jim Meyering  <meyering@lucent.com>
32586
32587         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
32588         (dir_name): Use dir_name_r.
32589         * lib/dirname.h (dir_name_r): Declare it.
32590
32591 2000-10-17  Jim Meyering  <meyering@lucent.com>
32592
32593         * lib/quote.h (PARAMS): Define and use.
32594         Reported by Akim Demaille.
32595
32596         * lib/getopt.c: Update from libc.
32597
32598 2000-10-16  Jim Meyering  <meyering@lucent.com>
32599
32600         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
32601         setlocale.
32602         From Jan Fedak.
32603
32604 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
32605
32606         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
32607
32608 2000-09-25  Jim Meyering  <meyering@lucent.com>
32609
32610         * lib/md5.h (rol): Define (from GnuPG).
32611
32612         * lib/sha.c: Give credit (GnuPG) where due.
32613         (M): Use rol rather than open-coding it.
32614         Add a FIXME comment.
32615
32616 2000-09-21  Jim Meyering  <meyering@lucent.com>
32617
32618         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
32619         Reported by Michael Stone.
32620
32621 2000-09-20  Jim Meyering  <meyering@lucent.com>
32622
32623         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
32624         (noinst_HEADERS): Add sha.h.
32625         Based on code from Scott G. Miller and from GnuPG.
32626
32627 2000-09-18  Jim Meyering  <meyering@lucent.com>
32628
32629         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
32630         LIBS. Otherwise, everyone ends up linking with -lelf for some
32631         configurations.
32632         Reported by Mike Stone.
32633
32634 2000-09-15  Jim Meyering  <meyering@lucent.com>
32635
32636         * lib/regex.c: Update from libc.
32637
32638 2000-09-10  Jim Meyering  <meyering@lucent.com>
32639
32640         * lib/getopt.c (_getopt_internal): Update from glibc.
32641
32642 2000-09-09  Jim Meyering  <meyering@lucent.com>
32643
32644         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
32645         think it should be used as a general replacement for isascii.
32646         * lib/fnmatch.c: Likewise.
32647         * lib/mbswidth.c: Likewise
32648         * lib/regex.c: Likewise.
32649
32650         Don't use atoi.
32651         * lib/userspec.c: Include sys/param.h and limits.h.
32652         Include xstrtol.h.
32653         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
32654         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
32655         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
32656         UID, GID.  Check range.
32657
32658 2000-09-06  Jim Meyering  <meyering@lucent.com>
32659
32660         * lib/getopt.c (_getopt_internal): Update from glibc.
32661
32662 2000-08-30  Jim Meyering  <meyering@lucent.com>
32663
32664         * lib/strftime.c: Merge in changes from GNU libc.
32665
32666 2000-08-26  Jim Meyering  <meyering@lucent.com>
32667
32668         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
32669         * m4/fpending.m4: New file.
32670
32671 2000-08-26  Jim Meyering  <meyering@lucent.com>
32672
32673         * lib/closeout.c: Include "__fpending.h".
32674         (close_stdout_status): Return right away if there's nothing to flush.
32675
32676         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
32677         * lib/__fpending.c: New file.
32678         * lib/__fpending.h: New file.
32679
32680 2000-08-20  Jim Meyering  <meyering@lucent.com>
32681
32682         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
32683         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
32684         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
32685
32686 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
32687
32688         Improve fileutils installation on systems where running
32689         programs (like install) can't be unlinked.
32690         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
32691         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
32692
32693 2000-08-07  Paul Eggert  <eggert@twinsun.com>
32694
32695         Standardize on "memory exhausted" instead of "Memory exhausted"
32696         or "virtual memory exhausted".
32697         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
32698         "virtual memory exhausted".
32699         * lib/same.c (same_name): Invoke xalloc_die instead of printing
32700         our own message.
32701         * lib/userspec.c (parse_user_spec): Likewise.
32702         * lib/bumpalloc.h: comment fix
32703         * lib/same.c, userspec.c: Include xalloc.h.
32704
32705         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
32706         not char *const and pointing to a constant array.
32707         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
32708         (xrealloc): Comment fix.
32709
32710         * lib/userspec.c (parse_user_spec):
32711         Don't translate a message until just before returning,
32712         to avoid unnecessary translation.
32713
32714 2000-08-07  Jim Meyering  <meyering@lucent.com>
32715
32716         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
32717         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
32718         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
32719         getgroups.c, gethostname.c, getopt.h, group-member.c,
32720         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
32721         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
32722         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
32723         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
32724         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
32725         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
32726         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
32727         yesno.c: Back out Copyright date changes for each file with no change
32728         this year.  This eases coordination with other programs using the same
32729         source code modules.  From Paul Eggert.
32730
32731 2000-08-06  Paul Eggert  <eggert@twinsun.com>
32732
32733         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
32734         not char, for compatibility with glibc 2.1.3 strftime.c.
32735
32736 2000-08-03  Greg McGary  <greg@mcgary.org>
32737
32738         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
32739         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
32740         (EXTEND_BUFFER): Use them.
32741
32742 2000-08-01  Jim Meyering  <meyering@lucent.com>
32743
32744         * lib/dirname.c (ISSLASH): Define.
32745         (BACKSLASH_IS_PATH_SEPARATOR): Define.
32746         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
32747         both `\' and `/' may be use as path separators.
32748         Based on a patch from Prashant TR.
32749
32750 2000-07-31  Paul Eggert  <eggert@twinsun.com>
32751
32752         * lib/quotearg.c (quotearg_n_options): Don't make the initial
32753         slot vector a constant, since it might get modified.
32754
32755 2000-07-31  Jim Meyering  <meyering@lucent.com>
32756
32757         * lib/xmalloc.c: Use `virtual memory exhausted', not
32758         `Memory exhausted'.
32759         * lib/obstack.c (print_and_abort): Likewise.
32760
32761 2000-07-30  Paul Eggert  <eggert@twinsun.com>
32762
32763         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
32764         buffer, so that the caller can always quote one small
32765         component of a "memory exhausted" message in slot 0.
32766         From a suggestion by Jim Meyering.
32767
32768 2000-07-30  Jim Meyering  <meyering@lucent.com>
32769
32770         * lib/makepath.c (make_path): Quote the other instance, too.
32771
32772         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
32773         (STATIC_BUF_SIZE): Define.
32774         (quotearg_n_options): Use only statically allocated storage when
32775         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
32776         than STATIC_BUF_SIZE.
32777
32778 2000-07-29  Jim Meyering  <meyering@lucent.com>
32779
32780         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
32781         * lib/dirname.c (dir_name): Likewise.
32782
32783         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
32784         `/'.
32785
32786         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
32787         (dir_name): Assert that there are no trailing slashes.
32788
32789 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
32790
32791         * lib/mbswidth.h (mbswidth): Add a flags argument.
32792         (mbswidth): New declaration.
32793         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
32794         * lib/mbswidth.c (mbswidth): Add a flags argument.
32795         (mbsnwidth): New function.
32796
32797 2000-07-24  Jim Meyering  <meyering@lucent.com>
32798
32799         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
32800
32801 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32802
32803         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
32804
32805 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32806
32807         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
32808         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
32809         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
32810         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
32811         invoke multibyte primitives.
32812
32813 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32814
32815         * lib/quotearg.c:
32816         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
32817         so that mbstate_t is always defined.
32818
32819         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
32820         be 1 in at least one GCC installation, and this configuration
32821         error is likely to be common.  Ignoring MB_LEN_MAX hurts
32822         performance on hosts that have mbrtowc but have only unibyte
32823         locales, but I assume these hosts are rare.
32824
32825 2000-07-23  Paul Eggert  <eggert@twinsun.com>
32826
32827         * lib/mbswidth.c (_XOPEN_SOURCE):
32828         Don't define; this causes problems on Solaris 7.
32829         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
32830
32831 2000-07-23  Jim Meyering  <meyering@lucent.com>
32832
32833         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
32834         too: getgrgid, getpwuid, getuid.
32835
32836 2000-07-23  Jim Meyering  <meyering@lucent.com>
32837
32838         * lib/basename.c (base_name): Add an assertion.
32839
32840 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
32841
32842         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
32843         shadow its mbsinit function.
32844
32845 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
32846
32847         * lib/mbswidth.h: New file.
32848         * lib/mbswidth.c: New file.
32849         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
32850         (noinst_HEADERS): Add mbswidth.h.
32851
32852 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
32853
32854         * lib/config.charset: Add support for FreeBSD. Improve support for
32855         HP-UX and IRIX 6.
32856
32857 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
32858
32859         * m4/mbswidth.m4: New file.
32860         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
32861
32862 2000-07-15  Jim Meyering  <meyering@lucent.com>
32863
32864         * lib/makepath.c: Include quote.h.
32865         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
32866         corresponding argument in a `quote (...)' call.
32867         Give better diagnostics.
32868
32869         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
32870         (noinst_HEADERS): Add quote.h.
32871
32872         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
32873         from tar's src/misc.c.
32874         * lib/quote.h: New file.  Prototypes for same.
32875
32876 2000-07-14  Paul Eggert  <eggert@twinsun.com>
32877
32878         From a suggestion by Bruno Haible.
32879         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
32880         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
32881         to decide whether to define the BeOS workaround macro;
32882         this adjusts to the change to AC_MBSTATE_T.
32883
32884 2000-07-14  Jim Meyering  <meyering@lucent.com>
32885
32886         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
32887         jm_AC_TYPE_UINTMAX_T.
32888
32889 2000-07-13  Paul Eggert  <eggert@twinsun.com>
32890
32891         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
32892
32893         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
32894         quotearg_buffer_restyled): Add support for
32895         clocale_quoting_style.  Undo previous change to
32896         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
32897         and "{RIGHT QUOTATION MARK}" msgids.
32898
32899 2000-07-10  Paul Eggert  <eggert@twinsun.com>
32900
32901         From a suggestion by Bruno Haible.
32902         * m4/mbstate_t.m4 (AC_MBSTATE_T):
32903         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
32904         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
32905         and mbstate_t, to a single-part test that simply defines mbstate_t.
32906         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
32907         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
32908
32909 2000-07-10  Jim Meyering  <meyering@lucent.com>
32910
32911         * m4/strerror_r.m4: Mirror the correction made in autoconf.
32912
32913         * m4/gnu-source.m4: Output to confdefs.h directly.
32914         Suggestion from Akim Demaille.
32915
32916 2000-07-09  Paul Eggert  <eggert@twinsun.com>
32917
32918         The old behavior of quoting `like this' doesn't look good with
32919         newer, ISO-style fonts.  See:
32920         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
32921
32922         Instead, quote "like this" by default.  Let the translator
32923         tailor the locale-specific quoting behavior by providing
32924         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
32925
32926         * lib/quotearg.c (N_): New macro.
32927         (gettext_default): New function.
32928         (quotearg_buffer_restyled): Use
32929         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
32930         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
32931
32932 2000-07-09  Jim Meyering  <meyering@lucent.com>
32933
32934         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
32935         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
32936
32937         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
32938         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
32939
32940 2000-07-09  Jim Meyering  <meyering@lucent.com>
32941
32942         * lib/Most files: Update copyright dates to include 2000.
32943
32944 2000-07-08  Jim Meyering  <meyering@lucent.com>
32945
32946         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
32947         if not defined.
32948         (xgethostname): Remove now-unnecessary #ifdef.
32949         Move declaration of `err' into loop where it's used.
32950
32951 2000-07-05  Paul Eggert  <eggert@twinsun.com>
32952         and Bruno Haible  <haible@clisp.cons.org>
32953
32954         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
32955         only if the test for an object-type mbstate_t fails.  This
32956         prevents us from mistakenly reporting that mbstate_t is a
32957         system object type after we "#define mbstate_t int" to work
32958         around its lack.
32959
32960 2000-07-05  Paul Eggert  <eggert@twinsun.com>
32961         and Bruno Haible  <haible@clisp.cons.org>
32962
32963         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
32964
32965 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32966
32967         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
32968         to strerror_r.
32969         Include <ctype.h> for use of isalpha.
32970
32971 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32972
32973         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
32974         by allocating a larger buffer. Test the gethostname return value for
32975         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
32976         returns an error and ENAMETOOLONG isn't defined.
32977
32978 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32979
32980         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
32981         dimension.
32982
32983 2000-07-04  Jim Meyering  <meyering@lucent.com>
32984
32985         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
32986         of the deprecated AC_CHECKING.
32987
32988 2000-07-04  Jim Meyering  <meyering@lucent.com>
32989
32990         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
32991         Reported by Bruno Haible.
32992
32993 2000-07-04  Jim Meyering  <meyering@lucent.com>
32994
32995         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
32996         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
32997         lacks mbrtowc.
32998
32999 2000-07-03  Paul Eggert  <eggert@twinsun.com>
33000
33001         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
33002         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
33003
33004 2000-07-03  Paul Eggert  <eggert@twinsun.com>
33005         and Bruno Haible  <haible@clisp.cons.org>
33006
33007         * lib/quotearg.c (mbrtowc):
33008         Assign to *pwc, and return 1 only if result is nonzero.
33009         (iswprint): Use ISPRINT when substituting our own mbrtowc.
33010
33011 2000-07-03  Jim Meyering  <meyering@lucent.com>
33012
33013         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
33014
33015 2000-07-03  Jim Meyering  <meyering@lucent.com>
33016
33017         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
33018         This is necessary to get a definition of e.g., UTMP_FILE on
33019         HP-UX 10.20.
33020         From Bob Proulx.
33021
33022 2000-07-02  Jim Meyering  <meyering@lucent.com>
33023
33024         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
33025
33026         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
33027         AC_LIBOBJ(function_name).
33028         * m4/chown.m4: Likewise.
33029         * m4/fnmatch.m4: Likewise.
33030         * m4/ftruncate.m4: Likewise.
33031         * m4/getgroups.m4: Likewise.
33032         * m4/getline.m4: Likewise.
33033         * m4/group-member.m4: Likewise.
33034         * m4/jm-macros.m4: Likewise.
33035         * m4/lstat.m4: Likewise.
33036         * m4/malloc.m4: Likewise.
33037         * m4/memcmp.m4: Likewise.
33038         * m4/nanosleep.m4: Likewise.
33039         * m4/putenv.m4: Likewise.
33040         * m4/realloc.m4: Likewise.
33041         * m4/regex.m4: Likewise.
33042         * m4/stat.m4: Likewise.
33043         * m4/strftime.m4: Likewise.
33044
33045 2000-07-02  Jim Meyering  <meyering@lucent.com>
33046
33047         * lib/quotearg.c (mbstate_t): Don't define here.
33048
33049 2000-07-02  Jim Meyering  <meyering@lucent.com>
33050
33051         * lib/nanosleep.c (SIGCONT): Define if not already defined.
33052
33053 2000-07-01  Jim Meyering  <meyering@lucent.com>
33054
33055         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
33056
33057 2000-07-01  Jim Meyering  <meyering@lucent.com>
33058
33059         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
33060         problem.
33061
33062 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33063
33064         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
33065         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
33066
33067 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33068
33069         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
33070         per change in ../m4/ls-mntd-fs.m4.
33071         (read_filesystem_list): Ignore symbolic links.
33072
33073 2000-06-29  Jim Meyering  <meyering@lucent.com>
33074
33075         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
33076         for declaration of strcmp.
33077
33078         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
33079
33080         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
33081         Avoid warning by casting result to `char *' to remove `const'.
33082
33083 2000-06-28  Jim Meyering  <meyering@lucent.com>
33084
33085         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
33086         included by quotearg.c, for which we perform this test.  From
33087         Bruno Haible.
33088
33089 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33090
33091         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
33092         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
33093         <utmpx.h> exists, put readutmp.o into LIBOBJS.
33094
33095 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33096
33097         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
33098
33099 2000-06-26  Paul Eggert  <eggert@twinsun.com>
33100
33101         savedir now sets errno on failure and invokes xmalloc to get memory.
33102         Fix a couple of other minor bugs while we're at it.
33103
33104         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
33105         (NAMLEN): Remove macro.
33106         (malloc, realloc): Remove decls.
33107         (stpcpy): Likewise.
33108         ("xalloc.h"): Include.
33109         (NAME_SIZE_DEFAULT): New macro.
33110         (savedir): Use xmalloc / xrealloc to allocate memory.
33111         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
33112         Skip "" directory entries.
33113         Use strlen to calculate directory entry length, since the old method
33114         is rarely used these days and isn't worth supporting.
33115         Don't use a pointer after freeing it.
33116         Check for integer overflow when calculating allocation size.
33117         Use memcpy to copy entries, instead of stpcpy.
33118         Set errno properly when returning NULL.
33119         Check for readdir error.
33120
33121 2000-06-26  Jim Meyering  <meyering@lucent.com>
33122
33123         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
33124
33125 2000-06-25  Jim Meyering  <meyering@lucent.com>
33126
33127         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
33128         Linux header bug when _XOPEN_SOURCE is defined to 500.
33129
33130 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33131
33132         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
33133         deficiency.
33134
33135 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33136
33137         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
33138         Include xalloc.h.
33139         Don't include <stdlib.h>.  Don't declare malloc, realloc.
33140
33141 2000-06-24  Jim Meyering  <meyering@lucent.com>
33142
33143         * m4/strerror_r.m4: Revive this file -- to try out an experimental
33144         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
33145         for which strerror does return char*, but which lacks a conveniently
33146         accessible declaration of the function.  If the compile-test says
33147         strerror_r doesn't work, then resort to a `run'-test that works on
33148         BeOS and segfaults on DEC Unix.
33149
33150 2000-06-24  Jim Meyering  <meyering@lucent.com>
33151
33152         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
33153
33154 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33155
33156         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
33157         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
33158
33159 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33160
33161         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
33162         (mbrtowc, mbstate_t): Define substitutes if
33163         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
33164         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
33165         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
33166
33167 2000-06-23  Jim Meyering  <meyering@lucent.com>
33168
33169         * m4/afs.m4: Add missing AC_MSG_RESULT.
33170         Reported by Bruno Haible.
33171
33172         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
33173         Suggestion from Bruno Haible.
33174
33175 2000-06-23  Jim Meyering  <meyering@lucent.com>
33176
33177         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
33178
33179 2000-06-21  Jim Meyering  <meyering@lucent.com>
33180
33181         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
33182
33183 2000-06-21  Jim Meyering  <meyering@lucent.com>
33184
33185         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
33186         (noinst_HEADERS): Add getstr.h.
33187
33188         * lib/getline.c (getstr): Move into a separate file.
33189         * lib/getstr.c (getstr): New file, extracted from getline.c, with
33190         the following changes: new parameter, delim2; both delim[12]
33191         parameters have type `int', not `char'.  The latter would lose
33192         with 8-bit delimiters.
33193         * lib/getstr.h: New file.
33194
33195 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33196
33197         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
33198         than 1024, return a memory chunk of least possible size, instead
33199         of size PATH_MAX + 2. In the loop, increment the size proportionally.
33200         Use free/xmalloc instead of xrealloc to avoid copying for very long
33201         paths.
33202
33203 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33204
33205         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
33206         the empty string.
33207
33208 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33209
33210         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
33211         address, not strdup.  Include <stdlib.h> and don't declare free().
33212
33213 2000-06-19  Jim Meyering  <meyering@lucent.com>
33214
33215         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
33216
33217 2000-06-18  Jim Meyering  <meyering@lucent.com>
33218
33219         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
33220
33221         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
33222         `checking whether...' message to be consistent with that of the
33223         lstat test.
33224
33225 2000-06-18  Jim Meyering  <meyering@lucent.com>
33226
33227         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
33228         Besides, these days every porting target provides a mkdir function.
33229
33230         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
33231         needed. (this snippet comes from src/system.h).
33232
33233 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
33234
33235         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
33236
33237 2000-06-15  Paul Eggert  <eggert@twinsun.com>
33238
33239         * lib/human.c (adjust_value): New function.
33240         (human_readable_inexact): Apply rounding style even when
33241         printing approximate values.
33242
33243 2000-06-14  Paul Eggert  <eggert@twinsun.com>
33244
33245         * lib/human.c (human_readable_inexact): Allow an input block
33246         size that is not a multiple of the output block size, and vice versa.
33247         Reported by Piergiorgio Sartor.
33248
33249 2000-06-14  Paul Eggert  <eggert@twinsun.com>
33250
33251         * lib/getdate.y (get_date): Apply relative times after time
33252         zone indicator, not before.  Reported by Todd A. Jacobs.
33253
33254 2000-06-13  Jim Meyering  <meyering@lucent.com>
33255
33256         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
33257
33258         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
33259
33260 2000-06-12  Paul Eggert  <eggert@twinsun.com>
33261
33262         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
33263
33264 2000-06-12  Jim Meyering  <meyering@lucent.com>
33265
33266         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
33267         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
33268         optional argument.
33269         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
33270         the optional argument, `lib'.
33271
33272 2000-06-08  Jim Meyering  <meyering@lucent.com>
33273
33274         * m4/largefile.m4: Remove file (now that it's part of autoconf).
33275
33276 2000-06-04  Paul Eggert  <eggert@twinsun.com>
33277
33278         Rewrite largefile configuration so that we don't need to run
33279         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
33280         AC_CANONICAL_HOST in configure.in -- jmm]
33281
33282         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
33283         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
33284         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
33285         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
33286         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
33287         All uses changed.
33288         Instead of inspecting the output of getconf, try to compile the
33289         test program without and with the macro definition.
33290         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
33291         for getconf.  Instead, check for the needed flags by compiling
33292         test programs.
33293
33294 2000-06-04  Paul Eggert  <eggert@twinsun.com>
33295
33296         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
33297
33298 2000-06-04  Jim Meyering  <meyering@lucent.com>
33299
33300         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
33301         SunOS 4.1.4 for which gid_t is an unsigned type.
33302
33303 2000-06-03  Jim Meyering  <meyering@lucent.com>
33304
33305         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
33306         now that autoconf requires that.
33307
33308         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
33309         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
33310         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
33311
33312 2000-06-03  Jim Meyering  <meyering@lucent.com>
33313
33314         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
33315
33316 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
33317
33318         * m4/glibc21.m4: New file.
33319         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
33320
33321 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
33322
33323         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
33324         newer, don't install charset.alias.
33325         * lib/config.charset: Change the Linux/glibc rules so they become empty
33326         on glibc-2.1 or newer.
33327
33328 2000-06-02  Jim Meyering  <meyering@lucent.com>
33329
33330         * lib/mountlist.c: Back out last change.  Instead, do this...
33331         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
33332         me_dummy member using the same `ignore'-testing code.
33333         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
33334         fs_type strings.
33335         From Mark D. Roth.
33336
33337 2000-05-29  Jim Meyering  <meyering@lucent.com>
33338
33339         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
33340         mounts with the `ignore' attribute.  Based on a patch from
33341         Mark D. Roth.
33342
33343 2000-05-28  Jim Meyering  <meyering@lucent.com>
33344
33345         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
33346         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33347         * m4/stat.m4: Likewise.
33348         * m4/lstat.m4: Likewise.
33349         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
33350
33351         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
33352         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
33353
33354 2000-05-26  Jim Meyering  <meyering@lucent.com>
33355
33356         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
33357
33358 2000-05-24  Jim Meyering  <meyering@lucent.com>
33359
33360         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
33361         autoconf requires that.
33362         * m4/lib-check.m4: Likewise.
33363         * m4/jm-macros.m4: Likewise.
33364         * m4/strftime.m4: Likewise.
33365
33366         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
33367         AC_CHECK_DECLS, now that autoconf requires that.
33368
33369 2000-05-22  Jim Meyering  <meyering@lucent.com>
33370
33371         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33372         * m4/lstat.m4: Likewise.
33373
33374 2000-05-22  Jim Meyering  <meyering@lucent.com>
33375
33376         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
33377
33378 2000-05-20  Jim Meyering  <meyering@lucent.com>
33379
33380         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
33381         (jm_PREREQ): Use it.
33382
33383 2000-05-18  Jim Meyering  <meyering@lucent.com>
33384
33385         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
33386         back, too, since it may have been modified by allocate_entry.
33387         (hash_delete): Rewrite to use neither the assignment operator
33388         nor the comma operator in an if-expression.
33389
33390 2000-05-15  Paul Eggert  <eggert@twinsun.com>
33391
33392         * lib/closeout.c:
33393         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
33394         Remove; no longer needed.
33395         "quotearg.h": Add include.
33396         (file_name): Do not bother to explicitly initialize to NULL; it's less
33397         efficient on some hosts.
33398         (close_stdout_status): Remove test as to whether stdout was already
33399         closed; it breaks for the case "echo x | sort >&-".
33400         Quote file name colons.
33401         Do not assume that _("write error") lacks format strings.
33402
33403 2000-05-15  Jim Meyering  <meyering@lucent.com>
33404
33405         * lib/version-etc.c (version_etc_copyright): Update the copyright
33406         string used in all --version output.
33407
33408 2000-05-14  Jim Meyering  <meyering@lucent.com>
33409
33410         * lib/closeout.c (close_stdout_set_file_name): New function.
33411         (close_stdout_status): Use new file-scoped global.
33412         Return right away if fstat says the stdout file descriptor is invalid.
33413         * lib/closeout.h (close_stdout_set_file_name): Declare.
33414
33415 2000-05-10  Jim Meyering  <meyering@lucent.com>
33416
33417         * lib/closeout.c [default_exit_status]: New file-scoped variable.
33418         (close_stdout_set_status): New function.
33419         * lib/closeout.h (close_stdout_set_status): Declare.
33420
33421 2000-05-09  Jim Meyering  <meyering@lucent.com>
33422
33423         * m4/gettext.m4: Rename this...
33424         * m4/libintl.m4: ...to this.
33425
33426 2000-05-08  Jim Meyering  <meyering@lucent.com>
33427
33428         * lib/long-options.c: Don't include closeout.h.
33429         (parse_long_options): Don't call close_stdout for --version.
33430
33431 2000-05-06  Paul Eggert  <eggert@twinsun.com>
33432
33433         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
33434         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
33435         2.1.3 bug.  This avoids a clash when files like regex.c define
33436         _GNU_SOURCE.
33437
33438 2000-05-06  Jim Meyering  <meyering@lucent.com>
33439
33440         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
33441         (AC_REPLACE_FUNCS): Add strnlen.
33442
33443         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
33444         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
33445
33446         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
33447         AC_SEARCH_LIBS call for nanosleep.
33448         (LIB_NANOSLEEP): Set and AC_SUBST.
33449
33450 2000-05-06  Jim Meyering  <meyering@lucent.com>
33451
33452         * lib/strnlen.c: Undefine __strnlen and strnlen.
33453         [!weak_alias]: Define __strnlen to strnlen.
33454
33455         * lib/atexit.c: New file, from libiberty.
33456
33457 2000-05-06  Jim Meyering  <meyering@lucent.com>
33458
33459         * lib/closeout.c (close_stdout_status): Also check for errors on the
33460         stderr stream.
33461
33462 2000-05-05  Jim Meyering  <meyering@lucent.com>
33463
33464         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
33465         AC_SEARCH_LIBS call for clock_gettime.
33466         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
33467
33468         * m4/search-libs.m4: Update from autoconf.
33469
33470         su doesn't work on Solaris 2.6.
33471         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
33472         <shadow.h>.  Reported by Dragos Harabor.
33473
33474 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
33475
33476         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
33477         memcpy instead of xmalloc, xrealloc, path_concat.
33478         (locale_charset): Treat empty environment variables as absent.
33479         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
33480
33481 2000-05-04  Jim Meyering  <meyering@lucent.com>
33482
33483         * lib/getopt.c: Update from glibc.
33484         * lib/obstack.c: Likewise.
33485         * lib/obstack.h: Likewise.
33486         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
33487         file
33488
33489         * lib/regex.h: Likewise.
33490         * lib/strndup.c: Likewise.
33491         * lib/strnlen.c: New file, from glibc.
33492
33493 2000-05-03  Jim Meyering  <meyering@lucent.com>
33494
33495         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
33496
33497 2000-05-02  Paul Eggert  <eggert@twinsun.com>
33498
33499         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
33500         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
33501         compile-time test, rather than inspecting host and OS, to
33502         decide whether to define _LARGEFILE_SOURCE.
33503
33504 2000-05-01  Jim Meyering  <meyering@lucent.com>
33505
33506         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
33507
33508         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
33509         Based on a patch from Bruno Haible.
33510
33511 2000-05-01  Jim Meyering  <meyering@lucent.com>
33512
33513         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
33514
33515 2000-04-29  Jim Meyering  <meyering@lucent.com>
33516
33517         * lib/path-concat.c: Declare strdup only if it's not defined.
33518         * lib/canon-host.c: Likewise.
33519
33520 2000-04-28  Jim Meyering  <meyering@lucent.com>
33521
33522         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
33523         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
33524         is included first, then limits.h is included by locale.h by libintl.h.
33525         From John David Anglin.
33526
33527 2000-04-25  Jim Meyering  <meyering@lucent.com>
33528
33529         * lib/makepath.c (S_IRWXUGO): Define.
33530         (make_path): Always perform explicit chmod if MODE specifies any
33531         of the `special' permission bits.  Prompted by a bug report against
33532         install from Mate Wierdl and Joost van Baal.
33533
33534 2000-04-18  Jim Meyering  <meyering@lucent.com>
33535
33536         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
33537         (jm_PREREQ): Use it.
33538
33539 2000-04-18  Jim Meyering  <meyering@lucent.com>
33540
33541         * lib/README: New file.
33542
33543         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
33544         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
33545
33546 2000-04-17  Jim Meyering  <meyering@lucent.com>
33547
33548         Get it right :-)
33549         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
33550         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
33551         Suggestion from Akim Demaille.
33552
33553 2000-04-17  Jim Meyering  <meyering@lucent.com>
33554
33555         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
33556         the definition of it to rpl_strftime also defined-away the system's
33557         declaration.
33558
33559 2000-04-15  Jim Meyering  <meyering@lucent.com>
33560
33561         Use `C' to denote so-called `contiguous' files, the same way
33562         that tar does.
33563         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
33564         (ftypelet): Use S_ISCTG.
33565         From Michael Deutschmann.
33566
33567 2000-04-14  Jim Meyering  <meyering@lucent.com>
33568
33569         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
33570         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
33571         clobbered.
33572
33573 2000-04-14  Jim Meyering  <meyering@lucent.com>
33574
33575         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
33576
33577 2000-04-13  Jim Meyering  <meyering@lucent.com>
33578
33579         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
33580         AH_VERBATIM to insert required #ifndef into config.h.in.
33581         Suggestion from Akim Demaille.
33582
33583 2000-04-12  Jim Meyering  <meyering@lucent.com>
33584
33585         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
33586         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
33587         Christian Krackowizer.
33588
33589         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
33590         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
33591         (AC_SYS_LARGEFILE): Require.
33592         (AM_C_PROTOTYPES): Require.
33593
33594 2000-04-08  Jim Meyering  <meyering@lucent.com>
33595
33596         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
33597         names don't conflict.  Reported by Eli Zaretskii.
33598
33599 2000-04-07  Jim Meyering  <meyering@lucent.com>
33600
33601         * lib/putenv.c: Move inclusion of errno.h so it follows that of
33602         sys/types.h, to work around system header problems on AIX 3.2.5.
33603         From Bruno Haible.
33604
33605 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
33606
33607         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
33608         bug.  Deal with the different error behavior of Irix iconv.
33609
33610 2000-04-05  Paul Eggert  <eggert@twinsun.com>
33611
33612         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
33613         IRIX if the installer said otherwise.
33614
33615 2000-04-05  Jim Meyering  <meyering@lucent.com>
33616
33617         Portability tweaks required for ultrix4.3.
33618         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
33619         (jm_CHECK_DECLS): Add getutent to the list of functions.
33620         (_jm_DECL_HEADERS): Add utmpx.h.
33621         From John David Anglin.
33622
33623         * m4/strftime.m4: Back out the 2000-04-02 change.
33624         Instead of that change, simply undefine putenv in the test program.
33625
33626 2000-04-05  Jim Meyering  <meyering@lucent.com>
33627
33628         Portability tweaks required for ultrix4.3.
33629         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
33630         getutent.
33631         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
33632         * lib/canon-host.c: Declare strdup.
33633         * lib/path-concat.c: Likewise.
33634         From John David Anglin.
33635
33636 2000-04-04  Jim Meyering  <meyering@lucent.com>
33637
33638         Be more DOS 8.3-friendly.
33639         * lib/ref-add.sin: Renamed from ref-add.sed.in.
33640         * lib/ref-del.sin: Renamed from ref-del.sed.in.
33641         * lib/Makefile.am: Reflect renaming.
33642         Reported by Eli Zaretskii.
33643
33644         Use a temporary file name that won't clash with `charset.alias'
33645         in the DOS 8.3 name space.
33646         * lib/Makefile.am (charset_tmp): Define.
33647         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
33648         (uninstall-local): Likewise.
33649         Reported by Eli Zaretskii.
33650
33651 2000-04-03  Jim Meyering  <meyering@lucent.com>
33652
33653         * m4/gettext.m4: Fix typo in comment.
33654
33655         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
33656         textutils/configure.in).  Suggestion from Paul Eggert.
33657         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
33658
33659 2000-04-02  Paul Eggert  <eggert@twinsun.com>
33660
33661         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
33662         variable in the shell rather than using putenv, which isn't
33663         portable.  This avoids the configure-time inter-test dependency
33664         on the potentially-renamed putenv function.
33665
33666 2000-03-30  Paul Eggert  <eggert@twinsun.com>
33667
33668         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
33669         before checking struct stat.st_blksize, so that
33670         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
33671
33672 2000-03-29  Paul Eggert  <eggert@twinsun.com>
33673
33674         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
33675         since strftime.c uses HAVE_STRFTIME to decide whether to use
33676         the underlying strftime.
33677
33678 2000-03-29  Paul Eggert  <eggert@twinsun.com>
33679
33680         * lib/time/strftime.c (my_strftime): Make sure we call the system
33681         strftime, not ourselves, when invoking the underlying strftime.
33682
33683 2000-03-24  Jim Meyering  <meyering@lucent.com>
33684
33685         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
33686         (charset_alias): Define.
33687         (install-exec-local): Factor out common code.
33688         (uninstall-local): Split lines longer than 80.
33689         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
33690         (SUFFIXES): Define.
33691         (.sed.in.sed): New rule.  Don't redirect directly to $@.
33692         (CLEANFILES): Add ref-add.sed and ref-del.sed.
33693
33694 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
33695
33696         * lib/config.charset: Output a line containing "Packages using this
33697         file".
33698         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
33699         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
33700         ref-del.sed): New rules.
33701
33702 2000-03-17  Jim Meyering  <meyering@lucent.com>
33703
33704         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
33705         Otherwise, include <strings.h>
33706
33707 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
33708
33709         * lib/unicodeio.c (utf8_wctomb): New function.
33710         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
33711         format instead of in UCS-4 with platform dependent endianness.
33712
33713 2000-03-10  Jim Meyering  <meyering@lucent.com>
33714
33715         * m4/lib-check.m4: Look for getspnam in -lgen, too.
33716         From Marco Franzen.
33717
33718 2000-03-07  Paul Eggert  <eggert@twinsun.com>
33719
33720         * lib/savedir.c (savedir): Work even if directory size is
33721         negative; this can happen with some screwy NFS configurations.
33722
33723 2000-03-06  Jim Meyering  <meyering@lucent.com>
33724
33725         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
33726         if it's NULL (because we ran out of memory).  From Bruno Haible.
33727
33728 2000-03-05  Jim Meyering  <meyering@lucent.com>
33729
33730         * lib/localcharset.c ("path-concat.h"): Include.
33731         (get_charset_aliases): Use path_concat instead of ANSI string
33732         concatenation.
33733
33734         * lib/unicodeio.h (PARAMS): Define.
33735         Use it to guard prototype.
33736
33737 2000-03-04  Jim Meyering  <meyering@lucent.com>
33738
33739         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
33740         for lib/localcharset.c.
33741
33742 2000-03-04  Jim Meyering  <meyering@lucent.com>
33743
33744         * lib/Makefile.am (install-exec-local): Create $(libdir) before
33745         installing into it.
33746         (uninstall-local): Uncomment this rule so `make distcheck' works
33747         once again.
33748
33749         * lib/unicodeio.c (<errno.h>): Include it.
33750         (errno): Declare if not defined.
33751
33752         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
33753
33754         * lib/config.charset: New version, incorporating remarks from a linux
33755         i18n mailing list.  From Bruno Haible.
33756
33757 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
33758
33759         * m4/codeset.m4: New file.
33760         * m4/iconv.m4: New file.
33761         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
33762
33763 2000-03-03  Jim Meyering  <meyering@lucent.com>
33764
33765         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
33766
33767 2000-03-02  Jim Meyering  <meyering@lucent.com>
33768
33769         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
33770         the messages come out on separate lines.
33771
33772         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
33773         rather than jm_CHECK_DECLARATIONS.
33774         * m4/decl.m4: Remove now-unused file.
33775
33776         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
33777         geteuid.
33778
33779 2000-03-02  Jim Meyering  <meyering@lucent.com>
33780
33781         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
33782
33783 2000-03-01  Jim Meyering  <meyering@lucent.com>
33784
33785         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
33786         * lib/unicodeio.c: Likewise.
33787
33788 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
33789
33790         * lib/config.charset: New file.
33791         * lib/localcharset.c: New file.
33792         * lib/unicodeio.h, lib/unicodeio.c: New files.
33793         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
33794         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
33795         (noinst_HEADERS): Add unicodeio.h.
33796         (all-local, install-exec-local, charset.alias): New targets.
33797
33798 2000-02-28  Paul Eggert  <eggert@twinsun.com>
33799
33800         * lib/quotearg.c (ALERT_CHAR): New macro.
33801         (quotearg_buffer_restyled): Use it.
33802
33803 2000-02-27  Jim Meyering  <meyering@lucent.com>
33804
33805         * m4/check-decl.m4: Add getenv to the list.
33806
33807 2000-02-27  Jim Meyering  <meyering@lucent.com>
33808
33809         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
33810         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
33811
33812         * lib/backupfile.c: Guard inclusion of stdlib.h with
33813         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
33814         Declare malloc if needed.
33815
33816         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
33817         `#ifndef HAVE_DECL..'
33818         now that autoconf always defines the HAVE_DECL_ symbols.
33819         * lib/human.c: Likewise.
33820         * lib/same.c: Likewise.
33821         * lib/strtoumax.c: Likewise.
33822
33823         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
33824         declaration check was not run.
33825         * lib/hash.c: Likewise.
33826         * lib/human.c: Likewise.
33827         * lib/same.c: Likewise.
33828         * lib/strtoumax.c: Likewise.
33829
33830         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
33831         `.', then first look up the entire `.'-containing string as a login
33832         name.
33833
33834 2000-02-23  Jim Meyering  <meyering@lucent.com>
33835
33836         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
33837         in place of my hack.
33838
33839 2000-02-18  Paul Eggert  <eggert@twinsun.com>
33840
33841         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
33842         (textint): New typedef.
33843         (parser_control): Member year changed from int to textint.
33844         All uses changed.
33845         (YYSTYPE): Removed; replaced by %union with int and textint members.
33846         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
33847         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
33848         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
33849         (tSNUMBER, tUNUMBER): Now of type <textintval>.
33850         (date, number, to_year): Use width of number in digits, not its value,
33851         to determine whether it's a 2-digit year, or a 2-digit time.
33852         (yylex): Store number of digits of numeric tokens.
33853         Reported by John Kendall.
33854
33855         (parser_control): Changed from struct parser_control to typedef (for
33856         consistency).  All uses changed.
33857
33858         (tID): Removed; not used.
33859         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
33860
33861 2000-02-14  Paul Eggert  <eggert@twinsun.com>
33862
33863         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
33864         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
33865
33866 2000-02-12  Jim Meyering  <meyering@lucent.com>
33867
33868         * lib/userspec.c (ISDIGIT): Define it.
33869         (isdigit): Remove definition.
33870         (is_number): Use ISDIGIT, not isdigit.
33871         <libintl.h>: Include.
33872         (_ and N_): Define.
33873         (parse_user_spec): Mark translatable strings.
33874
33875 2000-02-10  Jim Meyering  <meyering@lucent.com>
33876
33877         With these changes, nanosleep.[ch] are finally enough like the other
33878         lib/* replacement files to compile on a few more losing systems.
33879
33880         * lib/nanosleep.h: Don't include config.h.
33881         Remove prototype from declaration of nanosleep.
33882         (PARAMS): Remove now-unneeded definition.
33883         * lib/nanosleep.c: #undef nanosleep.
33884         (rpl_nanosleep): Rename from nanosleep.
33885
33886 2000-02-10  Jim Meyering  <meyering@lucent.com>
33887
33888         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
33889         gnu_nanosleep to rpl_nanosleep.
33890
33891 2000-02-09  Jim Meyering  <meyering@lucent.com>
33892
33893         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
33894         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
33895
33896 2000-02-08  Akim Demaille  <akim@epita.fr>
33897
33898         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
33899         `[' and `]' and remove uses of `changequote'.
33900         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
33901         (AC_SYS_LARGEFILE): Likewise.
33902         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
33903         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
33904         of changequote.
33905         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
33906         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
33907         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
33908         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
33909
33910 2000-02-05  Jim Meyering  <meyering@lucent.com>
33911
33912         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
33913         Remove explicit use of AC_HEADER_TIME.  It is required by
33914         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
33915         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
33916         in autoconf whereby the expansion of the latter ended up preceding
33917         the expansion of its prerequisite, AC_HEADER_TIME.
33918         Reported by Volker Borchert.
33919
33920 2000-02-03  Jim Meyering  <meyering@lucent.com>
33921
33922         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
33923
33924 2000-02-03  Jim Meyering  <meyering@lucent.com>
33925
33926         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
33927         rather than with `#if HAVE_UTMPNAME'.
33928
33929 2000-02-02  Jim Meyering  <meyering@lucent.com>
33930
33931         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
33932         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
33933         Reported by Eli Zaretskii.
33934
33935 2000-02-01  Jim Meyering  <meyering@lucent.com>
33936
33937         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
33938
33939 2000-01-31  Jim Meyering  <meyering@lucent.com>
33940
33941         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
33942         functions.  Add the time.h and sys/time.h headers along with the
33943         AC_REQUIRE'ment of AC_HEADER_TIME.
33944
33945 2000-01-31  Jim Meyering  <meyering@lucent.com>
33946
33947         * lib/nanosleep.h (nanosleep): Guard declaration with
33948         `#if ! HAVE_DECL_NANOSLEEP'.
33949         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
33950         the declaration in that vendor's sys/timers.h.
33951         Reported by Christian Krackowizer.
33952
33953         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
33954         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
33955         (ISPRINT): Likewise.
33956         Reported by Tom Tromey.
33957
33958 2000-01-30  Jim Meyering  <meyering@lucent.com>
33959
33960         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
33961
33962         * m4/prereq.m4 (utmp_includes): Define.
33963         Check for ut_user and ut_name members in both struct utmpx
33964         and struct utmp.
33965
33966 2000-01-30  Jim Meyering  <meyering@lucent.com>
33967
33968         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
33969         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
33970         header files where only utmpx.ut_user is declared.
33971
33972         * lib/readutmp.h (UT_USER): Define.
33973
33974 2000-01-29  Jim Meyering  <meyering@lucent.com>
33975
33976         * m4/lib-check.m4: New file containing library-related checks from
33977         fileutils and sh-utils (textutils had none).
33978
33979 2000-01-28  Jim Meyering  <meyering@lucent.com>
33980
33981         * m4/perl.m4: Change format of warning message to look more like that
33982         from the missing script.  Suggestion from François Pinard.
33983
33984 2000-01-25  Jim Meyering  <meyering@lucent.com>
33985
33986         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
33987         well as time.h in the compile check.
33988         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
33989         Fix typo in cross-compiling case: s/yes/no/.
33990
33991 2000-01-23  Jim Meyering  <meyering@lucent.com>
33992
33993         * m4/jm-macros.m4: Move df-related tests here from
33994         fileutils/configure.in
33995
33996         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
33997         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
33998
33999         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
34000         s/space/ac_fsusage_space/.
34001         (jm_FILE_SYSTEM_USAGE): Take two parameters.
34002
34003         * m4/ftruncate.m4: New file (derived from part of
34004         fileutils/configure.in).
34005         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
34006         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
34007
34008         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
34009         AC_SUBST these here, rather than just in sh-util/configure.in, so
34010         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
34011         all the same.
34012         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
34013         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
34014         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
34015         (AC_SUBST(POW_LIBM)): Likewise.
34016         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
34017
34018 2000-01-23  Jim Meyering  <meyering@lucent.com>
34019
34020         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
34021         obstack.c.
34022
34023 2000-01-22  Jim Meyering  <meyering@lucent.com>
34024
34025         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
34026
34027         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
34028
34029         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
34030         configure.in
34031         (AC_CHECK_HEADERS): Likewise for sh-utils.
34032         (AC_CHECK_HEADERS): Likewise for textutils.
34033         Merge the three lists of headers.
34034
34035         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
34036         from fileutils' configure.in.
34037
34038         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
34039         code. Moved tests into their own function (_jm_DECL_HEADERS) in
34040         check-decl.m4.
34041
34042         * m4/check-decl.m4: Use #if rather than #ifdef.
34043         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
34044         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
34045         (_jm_DECL_HEADERS): Define new function.
34046         (jm_CHECK_DECLARATIONS): Require it.
34047
34048 2000-01-22  Jim Meyering  <meyering@lucent.com>
34049
34050         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
34051         [! HAVE_DECL_STRTOULL]: Declare strtoull.
34052         Required for some AIX systems.  Reported by Christian Krackowizer.
34053         [TESTING] (main): New function.
34054
34055         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
34056         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
34057         letters.
34058
34059         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
34060         iswprint.
34061
34062         * lib/strverscmp.c (ISDIGIT): Define.
34063         (strverscmp): Use ISDIGIT, not isdigit.
34064
34065 2000-01-19  Jim Meyering  <meyering@lucent.com>
34066
34067         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
34068         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
34069         defines `struct timespec' in <sys/time.h>
34070
34071         * m4/c-bs-a.m4: Remove uses of changequote altogether.
34072         Thanks to Akim for explaining.
34073
34074 2000-01-17  Paul Eggert  <eggert@twinsun.com>
34075
34076         * lib/nanosleep.c (nanosleep):
34077         Don't use SA_INTERRUPT to decide whether to call sigaction, as
34078         POSIX.1 doesn't require SA_INTERRUPT and some systems
34079         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
34080         it's been part of POSIX.1 since day 1 (in 1988).
34081
34082 2000-01-17  Jim Meyering  <meyering@lucent.com>
34083
34084         * lib/interlock: Remove unused file.  Reported by François Pinard.
34085
34086 2000-01-16  Paul Eggert  <eggert@twinsun.com>
34087
34088         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
34089         alert, backslash, formfeed, and vertical tab unnecessarily in
34090         shell quoting style.
34091
34092 2000-01-16  Jim Meyering  <meyering@lucent.com>
34093
34094         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
34095         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
34096         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
34097         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
34098
34099 2000-01-16  Jim Meyering  <meyering@lucent.com>
34100
34101         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
34102         because the latter didn't work.
34103
34104 2000-01-15  Jim Meyering  <meyering@lucent.com>
34105
34106         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
34107         (AC_REPLACE_FUNCS): Add memcpy and memset.
34108         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
34109         Add strpbrk.
34110         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
34111
34112 2000-01-12  Jim Meyering  <meyering@lucent.com>
34113
34114         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
34115         (jm_PREREQ): Use it.
34116         (jm_PREREQ_READUTMP): New macro.
34117         (jm_PREREQ): Use it.
34118
34119 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34120
34121         Quote multibyte characters correctly.
34122         * m4/c-bs-a.m4: New file.
34123         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
34124         (jm_PREREQ): Use it.
34125
34126 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34127
34128         * m4/uintmax_t.m4: Port to autoconf 2.13.
34129
34130 2000-01-08  Jim Meyering  <meyering@ascend.com>
34131
34132         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
34133         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
34134
34135 2000-01-04  Jim Meyering  <meyering@ascend.com>
34136
34137         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
34138         jm_STRUCT_DIRENT_D_TYPE.
34139         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
34140         jm_STRUCT_DIRENT_D_INO.
34141         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
34142         jm_STRUCT_UTIMBUF.
34143         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
34144         renamings.
34145         * m4/utime.m4: Likewise.
34146
34147         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
34148         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
34149
34150 2000-01-03  Paul Eggert  <eggert@twinsun.com>
34151
34152         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
34153         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
34154
34155 2000-01-02  Jim Meyering  <meyering@ascend.com>
34156
34157         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
34158         remember if this is necessary.
34159
34160 1999-12-26  Jim Meyering  <meyering@ascend.com>
34161
34162         * m4/jm-macros.m4: Use it here.
34163         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
34164
34165 1999-12-23  Jim Meyering  <meyering@ascend.com>
34166
34167         * m4/jm-macros.m4: Check for clock_gettime (moved from
34168         fileutils/configure.in)
34169         Check for gettimeofday.
34170
34171 1999-12-20  Jim Meyering  <meyering@ascend.com>
34172
34173         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
34174         autoconf-2.14a-1999-12-20.
34175
34176 1999-12-19  Jim Meyering  <meyering@ascend.com>
34177
34178         * m4/lstat-slash.m4: New file.
34179         * m4/jm-macros.m4: Use the new macro:
34180         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34181
34182 1999-12-07  Jim Meyering  <meyering@ascend.com>
34183
34184         * m4/perl.m4: Require that File::Compare be available, too.
34185         Too many systems seem to lack it.
34186
34187         * m4/strftime.m4: Add checks for most of the cpp macros tested in
34188         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
34189
34190 1999-11-18  Paul Eggert  <eggert@twinsun.com>
34191
34192         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
34193         problem with the QNX 4.25 shell, which doesn't propagate exit
34194         status of failed commands inside shell assignments.
34195
34196 1999-11-17  Jim Meyering  <meyering@ascend.com>
34197
34198         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
34199
34200 1999-11-07  Jim Meyering  <meyering@ascend.com>
34201
34202         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
34203
34204 1999-11-06  Jim Meyering  <meyering@ascend.com>
34205
34206         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
34207         * m4/jm-macros.m4 (jm_MACROS): Use it here.
34208
34209 1999-11-05  Jim Meyering  <meyering@ascend.com>
34210
34211         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
34212         configure.in of textutils, fileutils, and sh-utils into this one
34213         (shared between those packages) file.
34214         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
34215         AC_STRUCT_ST_BLKSIZE.
34216
34217 1999-11-03  Jim Meyering  <meyering@ascend.com>
34218
34219         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
34220         of AC_CHECK_TYPE checks includes unistd.h.
34221         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
34222         Suggestion from Akim Demaille.
34223
34224 1999-10-30  Jim Meyering  <meyering@ascend.com>
34225
34226         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
34227         m4-quoted string.
34228         * m4/ls-mntd-fs.m4: Likewise.
34229         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
34230         * m4/jm-winsz1.m4: Likewise.
34231
34232         * m4/const.m4: Remove file, since the fix made it into the experimental
34233         version of autoconf.
34234         * m4/mktime.m4: Likewise.
34235
34236         * m4/check-type.m4: Remove file, now that the latest version of
34237         AC_CHECK_TYPE takes a third arg to specify additional #includes.
34238
34239         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
34240         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
34241         AC_CHECK_TYPE.
34242
34243 1999-10-04  Jim Meyering  <meyering@ascend.com>
34244
34245         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
34246
34247 1999-09-22  Paul Eggert  <eggert@twinsun.com>
34248
34249         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
34250         2.95.1 bug with HP-UX 10.20.
34251
34252 1999-09-17  Jim Meyering  <meyering@ascend.com>
34253
34254         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
34255         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
34256         due to missing strdup (against sh-utils-2.0).
34257
34258 1999-08-29  Jim Meyering  <meyering@ascend.com>
34259
34260         * m4/jm-macros.m4: Require jm_BISON.
34261         * m4/bison.m4: New file.
34262
34263 1999-08-17  Paul Eggert  <eggert@twinsun.com>
34264
34265         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
34266         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
34267
34268 1999-08-05  Jim Meyering  <meyering@ascend.com>
34269
34270         * m4/getline.m4: Rename test file from conftestdata to conftest.data
34271         to avoid conflicts with `conftest' on 8+3 filesystems.
34272         Suggestion from Eli Zaretskii.
34273
34274 1999-08-04  Jim Meyering  <meyering@ascend.com>
34275
34276         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
34277         fileutils and sh-utils (textutils's getline test was inadequate).
34278         (AM_FUNC_GETLINE): Run this test.
34279         (AC_CHECK_FUNCS): Check for getdelim.
34280         Reported by Bob Proulx.
34281
34282 1999-08-02  Jim Meyering  <meyering@ascend.com>
34283
34284         * m4/jm-macros.m4: Add a comment.
34285
34286 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34287
34288         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
34289         <inttypes.h> defines strtoumax as a macro (and not as a
34290         function).
34291
34292 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34293
34294         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
34295         that we can shift, multiply and divide unsigned long long
34296         values; Ultrix cc can't do it.
34297
34298 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34299
34300         * m4/mktime.m4: New file, which is a preview of what should appear
34301         in the next public autoconf release.
34302
34303 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34304
34305         * m4/lfs.m4: Remove this file.
34306         * m4/largefile.m4: New file.  It contains the old contents of
34307         lfs.m4, except that all names with prefix AC_LFS have been
34308         changed to use the prefix AC_SYS_LARGEFILE instead, to be
34309         compatible with future autoconf versions.  Also, some minor m4
34310         quoting problems have been fixed.
34311
34312 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34313
34314         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
34315         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
34316         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
34317         and simplify the shell code.
34318
34319 1999-08-01  Jim Meyering  <meyering@ascend.com>
34320
34321         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
34322         m4.
34323
34324 1999-07-20  Jim Meyering  <meyering@ascend.com>
34325
34326         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
34327
34328 1999-07-15  Jim Meyering  <meyering@ascend.com>
34329
34330         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
34331
34332 1999-05-22  Jim Meyering  <meyering@ascend.com>
34333
34334         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
34335
34336 1999-05-20  Jim Meyering  <meyering@ascend.com>
34337
34338         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
34339         Add a colon after each `then' in case $4 is empty.
34340
34341 1999-05-16  Jim Meyering  <meyering@ascend.com>
34342
34343         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
34344
34345 1999-05-10  Jim Meyering  <meyering@ascend.com>
34346
34347         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
34348
34349         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
34350         AC_FUNC_MKTIME.
34351
34352 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
34353
34354         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
34355
34356 1999-05-04  Paul Eggert  <eggert@twinsun.com>
34357
34358         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
34359         not CPPFLAGS, so that linking works correctly in IRIX.
34360
34361 1999-04-30  Paul Eggert  <eggert@twinsun.com>
34362
34363         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
34364
34365 1999-04-20  Paul Eggert  <eggert@twinsun.com>
34366
34367         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
34368         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
34369         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
34370         jm_AC_TYPE_UNSIGNED_LONG_LONG.
34371         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
34372
34373         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
34374
34375 1999-04-20  Jim Meyering  <meyering@ascend.com>
34376
34377         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
34378         AC_REPLACE xstroull if necessary.  From Paul Eggert.
34379         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
34380
34381 1999-04-18  Jim Meyering  <meyering@ascend.com>
34382
34383         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
34384         * m4/jm-macros.m4: Use it.
34385
34386 1999-04-06  Jim Meyering  <meyering@ascend.com>
34387
34388         * m4/strftime.m4: Remove test for %f.
34389
34390 1999-03-29  Jim Meyering  <meyering@ascend.com>
34391
34392         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
34393         superset of the AC_TYPE_* checks in the textutils, fileutils,
34394         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
34395         AC_TYPE_PID_T.
34396
34397 1999-03-28  Jim Meyering  <meyering@ascend.com>
34398
34399         * m4/jm-macros.m4: Define GNU_PACKAGE here.
34400         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
34401         replaced e.g., in the *.sh files of the sh-utils.
34402
34403 1999-03-20  Jim Meyering  <meyering@ascend.com>
34404
34405         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
34406         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
34407         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
34408
34409 1999-03-19  Jim Meyering  <meyering@ascend.com>
34410
34411         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
34412
34413 1999-03-12  Jim Meyering  <meyering@ascend.com>
34414
34415         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
34416
34417 1999-03-07  Jim Meyering  <meyering@ascend.com>
34418
34419         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
34420         declared.
34421
34422 1999-02-17  Jim Meyering  <meyering@ascend.com>
34423
34424         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
34425         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
34426
34427 1999-02-07  Jim Meyering  <meyering@ascend.com>
34428
34429         * m4/group-member.m4: New file -- extracted from sh-utils'
34430         configure.in.
34431
34432         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
34433         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
34434
34435 1999-02-06  Jim Meyering  <meyering@ascend.com>
34436
34437         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
34438         * m4/fnmatch.m4: Likewise.
34439         * m4/getgroups.m4: Likewise.
34440         * m4/lstat.m4: Likewise.
34441         * m4/malloc.m4: Likewise.
34442         * m4/putenv.m4: Likewise.
34443         * m4/realloc.m4: Likewise.
34444         * m4/regex.m4: Likewise.
34445         * m4/stat.m4: Likewise.
34446         * m4/strftime.m4: Likewise.
34447         Suggestion from Alain Magloire.
34448
34449         * m4/chown.m4: Use `.$ac_objext', not `.o'.
34450         * m4/fnmatch.m4: Likewise.
34451         * m4/getgroups.m4: Likewise.
34452         * m4/getline.m4: Likewise.
34453         * m4/lstat.m4: Likewise.
34454         * m4/malloc.m4: Likewise.
34455         * m4/memcmp.m4: Likewise.
34456         * m4/putenv.m4: Likewise.
34457         * m4/realloc.m4: Likewise.
34458         * m4/regex.m4: Likewise.
34459         * m4/stat.m4: Likewise.
34460         * m4/strftime.m4: Likewise.
34461         Suggestion from Alain Magloire.
34462
34463         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
34464         an argument.
34465
34466         * m4/regex.m4: Add a run-time Test for proper operation of
34467         re_compile_pattern.
34468
34469 1999-01-31  Jim Meyering  <meyering@ascend.com>
34470
34471         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
34472
34473 1999-01-30  Jim Meyering  <meyering@ascend.com>
34474
34475         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
34476
34477         * m4/jm-mktime.m4: Make this a wrapper around the official
34478         AM_FUNC_MKTIME rather than my private copy, now that the official one
34479         is up to date.
34480         * m4/mktime.m4: Remove file.
34481
34482         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
34483         * m4/uptime.m4: Likewise.
34484         * m4/uintmax_t.m4: Likewise.
34485
34486 1999-01-28  Jim Meyering  <meyering@ascend.com>
34487
34488         * m4/jm-macros.m4: Use jm_AFS.
34489         * m4/afs.m4: New file (from fileutils' configure.in).
34490
34491         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
34492         * m4/chown.m4: Likewise.
34493         * m4/d-ino.m4: Likewise.
34494         * m4/d-type.m4: Likewise.
34495         * m4/fnmatch.m4: Likewise.
34496         * m4/getgroups.m4: Likewise.
34497         * m4/gettext.m4: Likewise.
34498         * m4/jm-mktime.m4: Likewise.
34499         * m4/jm-winsz2.m4: Likewise.
34500         * m4/lcmessage.m4: Likewise.
34501         * m4/ls-mntd-fs.m4: Likewise.
34502         * m4/malloc.m4: Likewise.
34503         * m4/memcmp.m4: Likewise.
34504         * m4/putenv.m4: Likewise.
34505         * m4/realloc.m4: Likewise.
34506         * m4/st_mtim.m4: Likewise.
34507         * m4/strftime.m4: Likewise.
34508
34509 1999-01-16  Jim Meyering  <meyering@ascend.com>
34510
34511         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
34512         (ARGMATCH_DIE_DECL): Define.
34513
34514 1999-01-12  Jim Meyering  <meyering@ascend.com>
34515
34516         * m4/Makefile.am.in: Rewrite to avoid using fmt.
34517         Reported by Lars Hecking.
34518
34519 1999-01-10  Jim Meyering  <meyering@ascend.com>
34520
34521         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
34522         gross kludge.
34523         * m4/inttypes_h.m4: Likewise.
34524         * m4/lstat.m4: Likewise.
34525         * m4/malloc.m4: Likewise.
34526         * m4/readdir.m4: Likewise.
34527         * m4/realloc.m4: Likewise.
34528         * m4/st_dm_mode.m4: Likewise.
34529         * m4/stat.m4: Likewise.
34530         * m4/utimbuf.m4: Likewise.
34531         * m4/utimes.m4: Likewise.
34532
34533         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
34534         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
34535         comments in config.h.in are meaningful.
34536
34537         * m4/jm-macros.m4: Require autoconf-2.13 here.
34538
34539         * m4/regex.m4: By default, don't use the included regex.c on systems
34540         with glibc 2.  Suggestion from Uli Drepper.
34541
34542 1999-01-02  Jim Meyering  <meyering@ascend.com>
34543
34544         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
34545
34546 1998-12-18  Jim Meyering  <meyering@ascend.com>
34547
34548         * m4/Makefile.am.in (Makefile.am): Simplify rule.
34549         Based on a suggestion from Lars Hecking.
34550
34551 1998-11-16  Paul Eggert  <eggert@twinsun.com>
34552
34553         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
34554
34555 1998-11-16  Jim Meyering  <meyering@ascend.com>
34556
34557         * m4/lfs.m4: Double-quote the `uname...` expression.
34558
34559 1998-11-14  Jim Meyering  <meyering@ascend.com>
34560
34561         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
34562         * m4/stat.m4: Likewise.
34563
34564 1998-11-03  Jim Meyering  <meyering@ascend.com>
34565
34566         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
34567         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
34568
34569 1998-10-18  Jim Meyering  <meyering@ascend.com>
34570
34571         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
34572
34573 1998-10-17  Jim Meyering  <meyering@ascend.com>
34574
34575         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
34576         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
34577         calls for those previously hard-coded headers.  Instead, take a new
34578         parameter.
34579         (jm_CHECK_DECLARATIONS): Reflect interface change.
34580         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
34581         (jm_CHECK_DECL_LOCALTIME_R): New macro.
34582
34583         * m4/mktime.m4: Test for spring-forward gap before long-running test.
34584
34585 1998-10-14  Jim Meyering  <meyering@ascend.com>
34586
34587         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
34588         instead of "TZ=America/Vancouver".  From Paul Eggert.
34589
34590 1998-10-11  Jim Meyering  <meyering@ascend.com>
34591
34592         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
34593         This adds a test for a recently added compatibility fix for mktime.c.
34594         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
34595
34596 1998-09-27  Jim Meyering  <meyering@ascend.com>
34597
34598         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
34599
34600         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
34601         ../configure.in, including a change from Gordon Matzigkeit to allow
34602         cross-compiling for the Hurd.
34603
34604         * m4/glibc.m4: New file/macro to test for the GNU C Library
34605         versions 1 and 2.  From Gordon Matzigkeit.
34606         Indent.
34607
34608 1998-09-21  Jim Meyering  <meyering@ascend.com>
34609
34610         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
34611
34612 1998-08-18  Paul Eggert  <eggert@twinsun.com>
34613
34614         Port nanosecond-resolution times to UnixWare 2.1.2 and
34615         pedantic Solaris 2.6.
34616
34617         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
34618         AC_STRUCT_ST_MTIM.
34619         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
34620         Generate name of ns member, instead of just 1 or undef.
34621         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
34622
34623 1998-08-15  Jim Meyering  <meyering@ascend.com>
34624
34625         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
34626         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
34627         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
34628         instead of jm_TYPE_SSIZE_T.
34629
34630 1998-08-12  Jim Meyering  <meyering@ascend.com>
34631
34632         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
34633
34634 1998-08-02  Jim Meyering  <meyering@ascend.com>
34635
34636         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
34637         in acconfig.h manually.
34638
34639 1998-07-31  Paul Eggert  <eggert@twinsun.com>
34640
34641         * m4/st_mtim.m4: New file.
34642
34643 1998-07-28  Jim Meyering  <meyering@ascend.com>
34644
34645         * m4/utimes.m4: Undef stat.
34646
34647 1998-07-25  Jim Meyering  <meyering@ascend.com>
34648
34649         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
34650         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
34651
34652 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
34653
34654         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
34655         uid and gid actually remain unchanged.
34656
34657 1998-07-07  Jim Meyering  <meyering@ascend.com>
34658
34659         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
34660
34661 1998-07-04  Jim Meyering  <meyering@ascend.com>
34662
34663         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
34664         to prove that this macro can be used in packages without regex.c.
34665
34666 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
34667
34668         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
34669         is to be used.
34670
34671 1998-07-03  Jim Meyering  <meyering@ascend.com>
34672
34673         * m4/gettext.m4: Add -lintl if it's found to be necessary.
34674
34675         * m4/gettext.m4: New file -- from gettext-0.10.35.
34676         * m4/lcmessage.m4: Likewise.
34677         * m4/progtest.m4: Likewise.
34678
34679         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
34680         * m4/jm-macros.m4: Require the new macro.
34681
34682 1998-06-29  Jim Meyering  <meyering@ascend.com>
34683
34684         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
34685         for the definition of NGROUPS (used in a system header included
34686         by sys/mount.h).
34687
34688 1998-06-28  Jim Meyering  <meyering@ascend.com>
34689
34690         * m4/ls-mntd-fs.m4: New file.
34691         * m4/fstypename.m4: New file.
34692
34693         * m4/jm-macros.m4: Require the new macro.
34694         * m4/jm-glibc-io.m4: New file.
34695
34696 1998-05-19  Jim Meyering  <meyering@ascend.com>
34697
34698         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
34699         * m4/lchown.m4: New file.
34700
34701         * m4/Makefile.am.in: New file.
34702         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
34703
34704 1998-05-14  Jim Meyering  <meyering@ascend.com>
34705
34706         * m4/Makefile.am (EXTRA_DIST): Add them.
34707         * m4/jm-macros.m4: New file.
34708         * m4/utimbuf.m4: New file.
34709
34710 1998-05-12  Jim Meyering  <meyering@ascend.com>
34711
34712         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
34713
34714 1998-05-11  Jim Meyering  <meyering@ascend.com>
34715
34716         * m4/isc-posix.m4: New file.
34717
34718 1998-05-10  Jim Meyering  <meyering@ascend.com>
34719
34720         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
34721
34722 1998-05-09  Jim Meyering  <meyering@ascend.com>
34723
34724         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
34725         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
34726         with automake.
34727
34728         * m4/ssize_t.m4: New file.
34729         * m4/mktime.m4: Remove file -- the new automake has this now.
34730
34731 1998-04-26  Jim Meyering  <meyering@ascend.com>
34732
34733         * m4/assert.m4: New file.
34734         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
34735
34736 1998-04-05  Jim Meyering  <meyering@ascend.com>
34737
34738         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
34739         (jm_PREREQ): Use it here.
34740
34741 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
34742
34743         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
34744         in acconfig.h.
34745
34746 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
34747
34748         * m4/prereq.m4: New file.
34749         * m4/error.m4: New file.
34750         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
34751
34752 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
34753
34754         * m4/getline.m4: Don't set am_cv_func_working_getline before the
34755         cache-check for the same variable -- that defeated the purpose of
34756         the test; the test program was never run.  This was a problem only
34757         on systems with losing getline functions -- HP-UX 10.20 is one.
34758         Reported by Bjorn Helgaas.
34759
34760 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
34761
34762         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
34763
34764 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
34765
34766         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
34767
34768         * m4/const.m4: New file.  Use an initializer in this declaration
34769         typedef int charset[2]; const charset x;
34770         Reported by Bob Glickstein.
34771
34772 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
34773
34774         * m4/chown.m4: Fix reversed types on -1 args to chown.
34775         From Kaveh Ghazi.
34776
34777 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
34778
34779         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
34780         Add lseek and memchr.
34781
34782         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
34783         T.E.Dickey <dickey@clark.net> said that some older preprocessors
34784         have a 20-character limit on names.
34785
34786 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
34787
34788         * m4/inttypes_h.m4: New file.
34789         * m4/uintmax_t.m4: New file.
34790         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
34791
34792 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
34793   Free Software Foundation, Inc.
34794 Copying and distribution of this file, with or without modification,
34795 are permitted provided the copyright notice and this notice are preserved.