Change copyright notice from LGPLv2.1+ to LGPLv3+.
[gnulib.git] / ChangeLog
1 2007-10-07  Bruno Haible  <bruno@clisp.org>
2
3         Change copyright notice from LGPLv2.1+ to LGPLv3+.
4         * tests/test-tsearch.c: Change copyright notice.
5
6 2007-10-07  Bruno Haible  <bruno@clisp.org>
7
8         Change copyright notice from LGPLv2.0+ to LGPLv3+.
9         * lib/c-strcaseeq.h: Change copyright notice.
10         * lib/streq.h: Likewise.
11         * lib/uniconv.h: Likewise.
12         * lib/uniconv/u-conv-from-enc.h: Likewise.
13         * lib/uniconv/u-conv-to-enc.h: Likewise.
14         * lib/uniconv/u-strconv-from-enc.h: Likewise.
15         * lib/uniconv/u-strconv-to-enc.h: Likewise.
16         * lib/uniconv/u16-conv-from-enc.c: Likewise.
17         * lib/uniconv/u16-conv-to-enc.c: Likewise.
18         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
19         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
20         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
21         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
22         * lib/uniconv/u32-conv-from-enc.c: Likewise.
23         * lib/uniconv/u32-conv-to-enc.c: Likewise.
24         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
25         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
26         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
27         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
28         * lib/uniconv/u8-conv-from-enc.c: Likewise.
29         * lib/uniconv/u8-conv-to-enc.c: Likewise.
30         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
31         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
32         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
33         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
34         * lib/uniname.h: Likewise.
35         * lib/uniname/uniname.c: Likewise.
36         * lib/unistdio.h: Likewise.
37         * lib/unistdio/u-asnprintf.h: Likewise.
38         * lib/unistdio/u-asprintf.h: Likewise.
39         * lib/unistdio/u-printf-args.c: Likewise.
40         * lib/unistdio/u-printf-args.h: Likewise.
41         * lib/unistdio/u-printf-parse.h: Likewise.
42         * lib/unistdio/u-snprintf.h: Likewise.
43         * lib/unistdio/u-sprintf.h: Likewise.
44         * lib/unistdio/u-vasprintf.h: Likewise.
45         * lib/unistdio/u-vsnprintf.h: Likewise.
46         * lib/unistdio/u-vsprintf.h: Likewise.
47         * lib/unistdio/u16-asnprintf.c: Likewise.
48         * lib/unistdio/u16-asprintf.c: Likewise.
49         * lib/unistdio/u16-printf-parse.c: Likewise.
50         * lib/unistdio/u16-snprintf.c: Likewise.
51         * lib/unistdio/u16-sprintf.c: Likewise.
52         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
53         * lib/unistdio/u16-u16-asprintf.c: Likewise.
54         * lib/unistdio/u16-u16-snprintf.c: Likewise.
55         * lib/unistdio/u16-u16-sprintf.c: Likewise.
56         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
57         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
58         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
59         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
60         * lib/unistdio/u16-vasnprintf.c: Likewise.
61         * lib/unistdio/u16-vasprintf.c: Likewise.
62         * lib/unistdio/u16-vsnprintf.c: Likewise.
63         * lib/unistdio/u16-vsprintf.c: Likewise.
64         * lib/unistdio/u32-asnprintf.c: Likewise.
65         * lib/unistdio/u32-asprintf.c: Likewise.
66         * lib/unistdio/u32-printf-parse.c: Likewise.
67         * lib/unistdio/u32-snprintf.c: Likewise.
68         * lib/unistdio/u32-sprintf.c: Likewise.
69         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
70         * lib/unistdio/u32-u32-asprintf.c: Likewise.
71         * lib/unistdio/u32-u32-snprintf.c: Likewise.
72         * lib/unistdio/u32-u32-sprintf.c: Likewise.
73         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
74         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
75         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
76         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
77         * lib/unistdio/u32-vasnprintf.c: Likewise.
78         * lib/unistdio/u32-vasprintf.c: Likewise.
79         * lib/unistdio/u32-vsnprintf.c: Likewise.
80         * lib/unistdio/u32-vsprintf.c: Likewise.
81         * lib/unistdio/u8-asnprintf.c: Likewise.
82         * lib/unistdio/u8-asprintf.c: Likewise.
83         * lib/unistdio/u8-printf-parse.c: Likewise.
84         * lib/unistdio/u8-snprintf.c: Likewise.
85         * lib/unistdio/u8-sprintf.c: Likewise.
86         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
87         * lib/unistdio/u8-u8-asprintf.c: Likewise.
88         * lib/unistdio/u8-u8-snprintf.c: Likewise.
89         * lib/unistdio/u8-u8-sprintf.c: Likewise.
90         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
91         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
92         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
93         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
94         * lib/unistdio/u8-vasnprintf.c: Likewise.
95         * lib/unistdio/u8-vasprintf.c: Likewise.
96         * lib/unistdio/u8-vsnprintf.c: Likewise.
97         * lib/unistdio/u8-vsprintf.c: Likewise.
98         * lib/unistdio/ulc-asnprintf.c: Likewise.
99         * lib/unistdio/ulc-asprintf.c: Likewise.
100         * lib/unistdio/ulc-printf-parse.c: Likewise.
101         * lib/unistdio/ulc-snprintf.c: Likewise.
102         * lib/unistdio/ulc-sprintf.c: Likewise.
103         * lib/unistdio/ulc-vasnprintf.c: Likewise.
104         * lib/unistdio/ulc-vasprintf.c: Likewise.
105         * lib/unistdio/ulc-vsnprintf.c: Likewise.
106         * lib/unistdio/ulc-vsprintf.c: Likewise.
107         * lib/unistr.h: Likewise.
108         * lib/unistr/u-cpy-alloc.h: Likewise.
109         * lib/unistr/u-cpy.h: Likewise.
110         * lib/unistr/u-endswith.h: Likewise.
111         * lib/unistr/u-move.h: Likewise.
112         * lib/unistr/u-set.h: Likewise.
113         * lib/unistr/u-startswith.h: Likewise.
114         * lib/unistr/u-stpcpy.h: Likewise.
115         * lib/unistr/u-stpncpy.h: Likewise.
116         * lib/unistr/u-strcat.h: Likewise.
117         * lib/unistr/u-strcpy.h: Likewise.
118         * lib/unistr/u-strcspn.h: Likewise.
119         * lib/unistr/u-strdup.h: Likewise.
120         * lib/unistr/u-strlen.h: Likewise.
121         * lib/unistr/u-strncat.h: Likewise.
122         * lib/unistr/u-strncpy.h: Likewise.
123         * lib/unistr/u-strnlen.h: Likewise.
124         * lib/unistr/u-strpbrk.h: Likewise.
125         * lib/unistr/u-strspn.h: Likewise.
126         * lib/unistr/u-strstr.h: Likewise.
127         * lib/unistr/u-strtok.h: Likewise.
128         * lib/unistr/u16-check.c: Likewise.
129         * lib/unistr/u16-chr.c: Likewise.
130         * lib/unistr/u16-cmp.c: Likewise.
131         * lib/unistr/u16-cpy-alloc.c: Likewise.
132         * lib/unistr/u16-cpy.c: Likewise.
133         * lib/unistr/u16-endswith.c: Likewise.
134         * lib/unistr/u16-mblen.c: Likewise.
135         * lib/unistr/u16-mbsnlen.c: Likewise.
136         * lib/unistr/u16-mbtouc-aux.c: Likewise.
137         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
138         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
139         * lib/unistr/u16-mbtouc.c: Likewise.
140         * lib/unistr/u16-mbtoucr.c: Likewise.
141         * lib/unistr/u16-move.c: Likewise.
142         * lib/unistr/u16-next.c: Likewise.
143         * lib/unistr/u16-prev.c: Likewise.
144         * lib/unistr/u16-set.c: Likewise.
145         * lib/unistr/u16-startswith.c: Likewise.
146         * lib/unistr/u16-stpcpy.c: Likewise.
147         * lib/unistr/u16-stpncpy.c: Likewise.
148         * lib/unistr/u16-strcat.c: Likewise.
149         * lib/unistr/u16-strchr.c: Likewise.
150         * lib/unistr/u16-strcmp.c: Likewise.
151         * lib/unistr/u16-strcpy.c: Likewise.
152         * lib/unistr/u16-strcspn.c: Likewise.
153         * lib/unistr/u16-strdup.c: Likewise.
154         * lib/unistr/u16-strlen.c: Likewise.
155         * lib/unistr/u16-strmblen.c: Likewise.
156         * lib/unistr/u16-strmbtouc.c: Likewise.
157         * lib/unistr/u16-strncat.c: Likewise.
158         * lib/unistr/u16-strncmp.c: Likewise.
159         * lib/unistr/u16-strncpy.c: Likewise.
160         * lib/unistr/u16-strnlen.c: Likewise.
161         * lib/unistr/u16-strpbrk.c: Likewise.
162         * lib/unistr/u16-strrchr.c: Likewise.
163         * lib/unistr/u16-strspn.c: Likewise.
164         * lib/unistr/u16-strstr.c: Likewise.
165         * lib/unistr/u16-strtok.c: Likewise.
166         * lib/unistr/u16-to-u32.c: Likewise.
167         * lib/unistr/u16-to-u8.c: Likewise.
168         * lib/unistr/u16-uctomb-aux.c: Likewise.
169         * lib/unistr/u16-uctomb.c: Likewise.
170         * lib/unistr/u32-check.c: Likewise.
171         * lib/unistr/u32-chr.c: Likewise.
172         * lib/unistr/u32-cmp.c: Likewise.
173         * lib/unistr/u32-cpy-alloc.c: Likewise.
174         * lib/unistr/u32-cpy.c: Likewise.
175         * lib/unistr/u32-endswith.c: Likewise.
176         * lib/unistr/u32-mblen.c: Likewise.
177         * lib/unistr/u32-mbsnlen.c: Likewise.
178         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
179         * lib/unistr/u32-mbtouc.c: Likewise.
180         * lib/unistr/u32-mbtoucr.c: Likewise.
181         * lib/unistr/u32-move.c: Likewise.
182         * lib/unistr/u32-next.c: Likewise.
183         * lib/unistr/u32-prev.c: Likewise.
184         * lib/unistr/u32-set.c: Likewise.
185         * lib/unistr/u32-startswith.c: Likewise.
186         * lib/unistr/u32-stpcpy.c: Likewise.
187         * lib/unistr/u32-stpncpy.c: Likewise.
188         * lib/unistr/u32-strcat.c: Likewise.
189         * lib/unistr/u32-strchr.c: Likewise.
190         * lib/unistr/u32-strcmp.c: Likewise.
191         * lib/unistr/u32-strcpy.c: Likewise.
192         * lib/unistr/u32-strcspn.c: Likewise.
193         * lib/unistr/u32-strdup.c: Likewise.
194         * lib/unistr/u32-strlen.c: Likewise.
195         * lib/unistr/u32-strmblen.c: Likewise.
196         * lib/unistr/u32-strmbtouc.c: Likewise.
197         * lib/unistr/u32-strncat.c: Likewise.
198         * lib/unistr/u32-strncmp.c: Likewise.
199         * lib/unistr/u32-strncpy.c: Likewise.
200         * lib/unistr/u32-strnlen.c: Likewise.
201         * lib/unistr/u32-strpbrk.c: Likewise.
202         * lib/unistr/u32-strrchr.c: Likewise.
203         * lib/unistr/u32-strspn.c: Likewise.
204         * lib/unistr/u32-strstr.c: Likewise.
205         * lib/unistr/u32-strtok.c: Likewise.
206         * lib/unistr/u32-to-u16.c: Likewise.
207         * lib/unistr/u32-to-u8.c: Likewise.
208         * lib/unistr/u32-uctomb.c: Likewise.
209         * lib/unistr/u8-check.c: Likewise.
210         * lib/unistr/u8-chr.c: Likewise.
211         * lib/unistr/u8-cmp.c: Likewise.
212         * lib/unistr/u8-cpy-alloc.c: Likewise.
213         * lib/unistr/u8-cpy.c: Likewise.
214         * lib/unistr/u8-endswith.c: Likewise.
215         * lib/unistr/u8-mblen.c: Likewise.
216         * lib/unistr/u8-mbsnlen.c: Likewise.
217         * lib/unistr/u8-mbtouc-aux.c: Likewise.
218         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
219         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
220         * lib/unistr/u8-mbtouc.c: Likewise.
221         * lib/unistr/u8-mbtoucr.c: Likewise.
222         * lib/unistr/u8-move.c: Likewise.
223         * lib/unistr/u8-next.c: Likewise.
224         * lib/unistr/u8-prev.c: Likewise.
225         * lib/unistr/u8-set.c: Likewise.
226         * lib/unistr/u8-startswith.c: Likewise.
227         * lib/unistr/u8-stpcpy.c: Likewise.
228         * lib/unistr/u8-stpncpy.c: Likewise.
229         * lib/unistr/u8-strcat.c: Likewise.
230         * lib/unistr/u8-strchr.c: Likewise.
231         * lib/unistr/u8-strcmp.c: Likewise.
232         * lib/unistr/u8-strcpy.c: Likewise.
233         * lib/unistr/u8-strcspn.c: Likewise.
234         * lib/unistr/u8-strdup.c: Likewise.
235         * lib/unistr/u8-strlen.c: Likewise.
236         * lib/unistr/u8-strmblen.c: Likewise.
237         * lib/unistr/u8-strmbtouc.c: Likewise.
238         * lib/unistr/u8-strncat.c: Likewise.
239         * lib/unistr/u8-strncmp.c: Likewise.
240         * lib/unistr/u8-strncpy.c: Likewise.
241         * lib/unistr/u8-strnlen.c: Likewise.
242         * lib/unistr/u8-strpbrk.c: Likewise.
243         * lib/unistr/u8-strrchr.c: Likewise.
244         * lib/unistr/u8-strspn.c: Likewise.
245         * lib/unistr/u8-strstr.c: Likewise.
246         * lib/unistr/u8-strtok.c: Likewise.
247         * lib/unistr/u8-to-u16.c: Likewise.
248         * lib/unistr/u8-to-u32.c: Likewise.
249         * lib/unistr/u8-uctomb-aux.c: Likewise.
250         * lib/unistr/u8-uctomb.c: Likewise.
251         * lib/unitypes.h: Likewise.
252         * lib/uniwidth.h: Likewise.
253         * lib/uniwidth/cjk.h: Likewise.
254         * lib/uniwidth/u16-strwidth.c: Likewise.
255         * lib/uniwidth/u16-width.c: Likewise.
256         * lib/uniwidth/u32-strwidth.c: Likewise.
257         * lib/uniwidth/u32-width.c: Likewise.
258         * lib/uniwidth/u8-strwidth.c: Likewise.
259         * lib/uniwidth/u8-width.c: Likewise.
260         * lib/uniwidth/width.c: Likewise.
261
262 2007-10-07  Bruno Haible  <bruno@clisp.org>
263
264         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
265         The file is still under LGPL (see modules/inttypes).
266
267 2007-10-06  Bruno Haible  <bruno@clisp.org>
268
269         * modules/trunc (Dependencies): Add 'extensions'.
270         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
271         Reported by Ben Pfaff <blp@gnu.org>.
272
273 2007-10-06  Bruno Haible  <bruno@clisp.org>
274
275         * modules/freopen-tests: New file.
276         * tests/test-freopen.c: New file.
277
278         * modules/fopen-tests: New file.
279         * tests/test-fopen.c: New file.
280
281         * modules/fopen: New file.
282         * lib/fopen.c: New file.
283         * m4/fopen.m4: New file.
284         * modules/freopen: New file.
285         * lib/freopen.c: New file.
286         * m4/freopen.m4: New file.
287         * lib/stdio.in.h (fopen, freopen): New declarations.
288         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
289         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
290         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
291         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
292         * doc/functions/fopen.texi: Mention the 'fopen' module.
293         * doc/functions/freopen.texi: Mention the 'freopen' module.
294
295 2007-10-06  Bruno Haible  <bruno@clisp.org>
296
297         * modules/open-tests: New file.
298         * tests/test-open.c: New file.
299
300         * modules/open: New file.
301         * lib/open.c: New file.
302         * m4/open.m4: New file.
303         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
304         lib/open.c does.
305         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
306         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
307         macros.
308         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
309         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
310         REPLACE_OPEN.
311         * doc/functions/open.texi: Mention the 'open' module.
312
313 2007-10-04  Bruno Haible  <bruno@clisp.org>
314
315         * modules/ceill-tests: New file.
316         * tests/test-ceill.c: New file.
317
318         * modules/ceill: New file.
319         * lib/ceill.c: Replace entire file.
320         * m4/ceill.m4: New file.
321         * lib/math.in.h (ceill): Replace declaration.
322         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
323         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
324         * doc/functions/ceill.texi: Mention the 'ceill' module.
325         * modules/mathl (Files): Remove lib/ceill.c.
326         (Depends-on): Add ceill.
327
328 2007-10-04  Bruno Haible  <bruno@clisp.org>
329
330         * modules/ceilf-tests: New file.
331         * tests/test-ceilf.c: New file.
332
333         * modules/ceilf: New file.
334         * lib/ceil.c: New file.
335         * lib/ceilf.c: New file.
336         * m4/ceilf.m4: New file.
337         * lib/math.in.h (ceilf): New declaration.
338         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
339         HAVE_DECL_CEILF.
340         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
341         HAVE_DECL_CEILF.
342         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
343
344 2007-10-04  Bruno Haible  <bruno@clisp.org>
345
346         * modules/floorl-tests: New file.
347         * tests/test-floorl.c: New file.
348
349         * modules/floorl: New file.
350         * lib/floorl.c: Replace entire file.
351         * m4/floorl.m4: New file.
352         * lib/math.in.h (floorl): Replace declaration.
353         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
354         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
355         * doc/functions/floorl.texi: Mention the 'floorl' module.
356         * modules/mathl (Files): Remove lib/floorl.c.
357         (Depends-on): Add floorl.
358
359 2007-10-04  Bruno Haible  <bruno@clisp.org>
360
361         * modules/floorf-tests: New file.
362         * tests/test-floorf.c: New file.
363
364         * modules/floorf: New file.
365         * lib/floor.c: New file.
366         * lib/floorf.c: New file.
367         * m4/floorf.m4: New file.
368         * lib/math.in.h (floorf): New declaration.
369         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
370         HAVE_DECL_FLOORF.
371         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
372         HAVE_DECL_FLOORF.
373         * doc/functions/floorf.texi: Mention the 'floorf' module.
374
375 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
376             Bruno Haible  <bruno@clisp.org>
377
378         Advertise for the Git server instead of the CVS server.
379         * doc/gnulib-intro.texi (Steady Development): Mention the Git
380         repository instead of the CVS one.
381         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
382         about all VCS systems generically.
383         * doc/gnulib.texi (Introduction): Capitalize `Git'.
384
385 2007-10-04  Bruno Haible  <bruno@clisp.org>
386
387         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
388         means.
389         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
390
391 2007-10-04  Bruno Haible  <bruno@clisp.org>
392
393         * modules/truncl-tests: New file.
394         * tests/test-truncl.c: New file.
395
396         * modules/truncl: New file.
397         * lib/truncl.c: New file.
398         * m4/truncl.m4: New file.
399         * lib/math.in.h (truncl): New declaration.
400         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
401         HAVE_DECL_TRUNCL.
402         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
403         HAVE_DECL_TRUNCL.
404         * doc/functions/truncl.texi: Mention the 'truncl' module.
405
406 2007-10-04  Bruno Haible  <bruno@clisp.org>
407
408         * modules/truncf-tests: New file.
409         * tests/test-truncf.c: New file.
410
411         * modules/truncf: New file.
412         * lib/trunc.c: Make paramerizable through USE_* macros.
413         * lib/truncf.c: New file.
414         * m4/truncf.m4: New file.
415         * lib/math.in.h (truncf): New declaration.
416         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
417         HAVE_DECL_TRUNCF.
418         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
419         HAVE_DECL_TRUNCF.
420         * doc/functions/truncf.texi: Mention the 'truncf' module.
421
422 2007-10-03  Bruno Haible  <bruno@clisp.org>
423
424         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
425         augmentation also for tests modules.
426         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
427         * modules/atexit-tests (Makefile.am): Likewise.
428         * modules/binary-io-tests (Makefile.am): Likewise.
429         * modules/c-strcase-tests (Makefile.am): Likewise.
430         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
431         * modules/canonicalize-tests (Makefile.am): Likewise.
432         * modules/closein-tests (Makefile.am): Likewise.
433         * modules/fprintf-posix-tests (Makefile.am): Likewise.
434         * modules/freadahead-tests (Makefile.am): Likewise.
435         * modules/fseek-tests (Makefile.am): Likewise.
436         * modules/fseeko-tests (Makefile.am): Likewise.
437         * modules/ftell-tests (Makefile.am): Likewise.
438         * modules/ftello-tests (Makefile.am): Likewise.
439         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
440         * modules/isnanl-tests (Makefile.am): Likewise.
441         * modules/lseek-tests (Makefile.am): Likewise.
442         * modules/mbscasecmp-tests (Makefile.am): Likewise.
443         * modules/mbscasestr-tests (Makefile.am): Likewise.
444         * modules/mbschr-tests (Makefile.am): Likewise.
445         * modules/mbscspn-tests (Makefile.am): Likewise.
446         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
447         * modules/mbspbrk-tests (Makefile.am): Likewise.
448         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
449         * modules/mbsrchr-tests (Makefile.am): Likewise.
450         * modules/mbsspn-tests (Makefile.am): Likewise.
451         * modules/mbsstr-tests (Makefile.am): Likewise.
452         * modules/printf-posix-tests (Makefile.am): Likewise.
453         * modules/snprintf-posix-tests (Makefile.am): Likewise.
454         * modules/sprintf-posix-tests (Makefile.am): Likewise.
455         * modules/tsearch-tests (Makefile.am): Likewise.
456         * modules/uniname/uniname-tests (Makefile.am): Likewise.
457         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
458         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
459         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
460         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
461         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
462         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
463         * modules/vprintf-posix-tests (Makefile.am): Likewise.
464         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
465         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
466         * modules/xstrtoimax-tests (Makefile.am): Likewise.
467         * modules/xstrtol-tests (Makefile.am): Likewise.
468         * modules/xstrtoumax-tests (Makefile.am): Likewise.
469         * modules/yesno-tests (Makefile.am): Likewise.
470
471 2007-10-03  Bruno Haible  <bruno@clisp.org>
472
473         * modules/trunc-tests: New file.
474         * tests/test-trunc.c: New file.
475
476         * modules/trunc: New file.
477         * lib/trunc.c: New file.
478         * m4/trunc.m4: New file.
479         * lib/math.in.h (trunc): New declaration.
480         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
481         HAVE_DECL_TRUNC.
482         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
483         HAVE_DECL_TRUNC.
484         * doc/functions/trunc.texi: Mention the 'trunc' module.
485
486 2007-10-03  Bruno Haible  <bruno@clisp.org>
487
488         * tests/test-fpending.c: New file, mostly copied
489         from coreutils/lib/t-fpending.c.
490         * modules/fpending-tests: New file.
491
492 2007-10-03  Bruno Haible  <bruno@clisp.org>
493
494         Port the stdio extensions to QNX (untested).
495         * lib/fseterr.c (fseterr): Add support for QNX.
496         * lib/fbufmode.c (fbufmode): Likewise.
497         * lib/freadable.c (freadable): Likewise.
498         * lib/fwritable.c (fwritable): Likewise.
499         * lib/freading.c (freading): Likewise.
500         * lib/fwriting.c (fwriting): Likewise.
501         * lib/freadahead.c (freadahed): Likewise.
502         * lib/fpurge.c (fpurge): Likewise.
503         * lib/fseeko.c (rpl_fseeko): Likewise.
504
505 2007-10-03  Bruno Haible  <bruno@clisp.org>
506             Jim Meyering  <jim@meyering.net>
507             Eric Blake  <ebb9@byu.net>
508
509         * doc/relocatable.texi: Use @command instead of @program.
510
511 2007-10-02  Jim Meyering  <jim@meyering.net>
512
513         Perform one more "_.h" -> ".in.h" substitution.
514         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
515         instead of unistd_.h here, too.
516
517 2007-10-01  Bruno Haible  <bruno@clisp.org>
518
519         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
520         Needed for the alloca-opt module.
521
522 2007-09-30  Bruno Haible  <bruno@clisp.org>
523
524         * lib/alloca.in.h: Renamed from lib/alloca_.h.
525         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
526         alloca_.h.
527         * lib/argz.in.h: Renamed from lib/argz_.h.
528         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
529         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
530         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
531         byteswap_.h.
532         * lib/dirent.in.h: Renamed from lib/dirent_.h.
533         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
534         dirent_.h.
535         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
536         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
537         fcntl_.h.
538         * lib/float.in.h: Renamed from lib/float_.h.
539         * modules/float (Files, Makefile.am): Use float.in.h instead of
540         float_.h.
541         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
542         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
543         fnmatch_.h.
544         * lib/getopt.in.h: Renamed from lib/getopt_.h.
545         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
546         getopt_.h.
547         * lib/glob.in.h: Renamed from lib/glob_.h.
548         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
549         * lib/iconv.in.h: Renamed from lib/iconv_.h.
550         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
551         iconv_.h.
552         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
553         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
554         inttypes_.h.
555         * lib/locale.in.h: Renamed from lib/locale_.h.
556         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
557         locale_.h.
558         * lib/math.in.h: Renamed from lib/math_.h.
559         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
560         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
561         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
562         of netinet_in_.h. Add dependency.
563         * lib/poll.in.h: Renamed from lib/poll_.h.
564         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
565         * lib/search.in.h: Renamed from lib/search_.h.
566         * modules/search (Files, Makefile.am): Use search.in.h instead of
567         search_.h.
568         * lib/signal.in.h: Renamed from lib/signal_.h.
569         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
570         _signal.h.
571         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
572         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
573         stdbool_.h.
574         * lib/stdint.in.h: Renamed from lib/stdint_.h.
575         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
576         stdint_.h.
577         * lib/stdio.in.h: Renamed from lib/stdio_.h.
578         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
579         stdio_.h.
580         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
581         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
582         stdlib_.h.
583         * lib/string.in.h: Renamed from lib/string_.h.
584         * modules/string (Files, Makefile.am): Use string.in.h instead of
585         string_.h.
586         * doc/gnulib-tool.texi (Initial import): Update.
587         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
588         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
589         of sys_select_.h. Add dependency.
590         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
591         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
592         of sys_socket_.h.
593         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
594         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
595         sys_stat_.h.
596         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
597         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
598         sys_time_.h.
599         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
600         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
601         sysexits_.h.
602         * lib/time.in.h: Renamed from lib/time_.h.
603         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
604         * lib/unistd.in.h: Renamed from lib/unistd_.h.
605         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
606         unistd_.h.
607         * lib/wchar.in.h: Renamed from lib/wchar_.h.
608         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
609         wchar_.h.
610         * lib/wctype.in.h: Renamed from lib/wctype_.h.
611         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
612         wctype_.h.
613         * build-aux/bootstrap (slurp): Update.
614         * lib/.cppi-disable: Update.
615
616 2007-09-30  Bruno Haible  <bruno@clisp.org>
617
618         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
619         Needed on BeOS.
620
621 2007-09-30  Bruno Haible  <bruno@clisp.org>
622
623         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
624
625 2007-09-29  Bruno Haible  <bruno@clisp.org>
626
627         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
628
629 2007-09-29  Bruno Haible  <bruno@clisp.org>
630
631         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
632         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
633         * build-aux/install-reloc: Compile also areadlink.c.
634         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
635
636 2007-09-29  Bruno Haible  <bruno@clisp.org>
637
638         * gnulib-tool (func_emit_initmacro_done): Indentation.
639
640 2007-09-29  Bruno Haible  <bruno@clisp.org>
641
642         * README: Add CVS checkout update instructions.
643         Info from Bob Proulx <bob@proulx.com>.
644
645 2007-09-28  Eric Blake  <ebb9@byu.net>
646
647         Provide move-if-change.
648         * build-aux/move-if-change: New file, based on best practice
649         rather than any canonical upstream location.
650
651 2007-09-28  Jim Meyering  <jim@meyering.net>
652
653         Fix canonicalize loop-detection corner case.
654         Do not attempt to stat the symlink values stored via seen_triple.
655         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
656         on linux-2.6.18, (but not 2.6.22).
657         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
658         triple_compare.  The former compares dev,ino,filename, while the latter
659         would actually stat dirname(filename) when dev and ino were equal.
660         * lib/hash-triple.c: Install <string.h>.
661         (STREQ): Define.
662         (triple_compare_ino_str): New function.
663         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
664
665 2007-09-28  Eric Blake  <ebb9@byu.net>
666
667         Enforce that AC_REPLACE_FUNCS files exist.
668         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
669         override check for typos.
670
671         Fix test-closein on Solaris 10.
672         * tests/test-closein.c (main): Don't assume stdin can be inherited
673         closed on all systems.
674         * tests/test-closein.sh: Likewise.
675         Reported by Piotr Tarnowski.
676
677 2007-09-28  Jim Meyering  <jim@meyering.net>
678
679         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
680
681 2007-09-27  Jim Meyering  <jim@meyering.net>
682
683         canonicalize: Avoid a false-positive cycle failure.
684         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
685         Sort.  Remove cycle-check.
686         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
687         not cycle-check.h.
688         (seen_triple): New function.
689         (canonicalize_filename_mode): Use it instead of cycle-check.
690         * tests/test-canonicalize.c: Add a test for this bug.
691         * tests/test-canonicalize.sh: Set up and run the test.
692
693         New module, file-set, from coreutils.
694         * modules/file-set: Define it.
695         * lib/file-set.c, lib/file-set.h: Implement.
696
697         New module, hash-triple, from coreutils.
698         * modules/hash-triple: Define it.
699         * lib/hash-triple.c, lib/hash-triple.h: Implement.
700
701 2007-09-25  Eric Blake  <ebb9@byu.net>
702
703         Fix strerror on Interix.
704         * lib/string_.h (strerror): Declare replacement.
705         * doc/functions/strerror.texi (strerror): Document the Interix
706         shortcoming.
707         * modules/string (Makefile.am): Support new hooks.
708         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
709         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
710         gl_FUNC_STRERROR_SEPARATE.
711         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
712         * lib/strerror.c (rpl_strerror): Provide replacement.
713         * modules/strerror (Depends-on): Add string.
714         (configure.ac): Detect use of module.
715         * tests/test-strerror.c: New file.
716         * modules/strerror-tests: New test module.
717         * modules/argp (Depends-on): Add strerror.
718         * modules/error (Depends-on): Likewise.
719         Reported by Martin Koeppe.
720
721 2007-09-24  Bruno Haible  <bruno@clisp.org>
722
723         * README: Update git instructions.
724
725 2007-09-24  Eric Blake  <ebb9@byu.net>
726
727         Revert fpending breakage from 2007-09-08.
728         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
729         __fpending.c.
730
731 2007-09-24  Jim Meyering  <jim@meyering.net>
732
733         filenamecat.c: Add a test.
734         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
735         showing how the function works when DIR is the empty string.
736
737 2007-09-21  Simon Josefsson  <simon@josefsson.org>
738
739         * tests/test-canonicalize.sh: Turn on executable bit.
740
741 2007-09-19  Eric Blake  <ebb9@byu.net>
742
743         * README: Update CVS instructions.
744
745 2007-09-18  Bruno Haible  <bruno@clisp.org>
746
747         * modules/areadlink: New file.
748         * lib/areadlink.h (areadlink): New declaration.
749         * lib/areadlink.c: New file, based on lib/xreadlink.c.
750
751 2007-09-17  Jim Meyering  <jim@meyering.net>
752
753         * lib/savewd.c (ESTALE) [!defined]: Define.
754         Reported to be required on Interix by Martin Koeppe.
755
756 2007-09-17  Bruno Haible  <bruno@clisp.org>
757
758         * gnulib-tool (func_version): Use $version.
759
760 2007-09-16  Bruno Haible  <bruno@clisp.org>
761
762         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
763         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
764         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
765         Reported by Greg Schafer <gschafer@zip.com.au>.
766
767 2007-09-15  Bruno Haible  <bruno@clisp.org>
768
769         * gnulib-tool (sed): Try a little harder to make bash understand the
770         alias.
771         Reported by Bruce Korb <bruce.korb@gmail.com>.
772
773 2007-09-13  Eric Blake  <ebb9@byu.net>
774
775         * ChangeLog: Remove conflict markers.
776
777 2007-09-13  Simon Josefsson  <simon@josefsson.org>
778
779         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
780         Reported by Bruno Haible <bruno@clisp.org>.
781
782 2007-09-12  Bruno Haible  <bruno@clisp.org>
783
784         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
785         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
786         is not defined.
787
788 2007-09-12  Eric Blake  <ebb9@byu.net>
789
790         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
791         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
792         Autoconf definition.
793         * modules/euidaccess (Depends-on): Add extensions, for
794         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
795         * modules/fnmatch (Depends-on): Likewise.
796         * modules/getaddrinfo (Depends-on): Likewise.
797         * modules/getdelim (Depends-on): Likewise.
798         * modules/getline (Depends-on): Likewise.
799         * modules/getsubopt (Depends-on): Likewise.
800         * modules/gettext (Depends-on): Likewise.
801         * modules/group-member (Depends-on): Likewise.
802         * modules/mbchar (Depends-on): Likewise.
803         * modules/memmem (Depends-on): Likewise.
804         * modules/mempcpy (Depends-on): Likewise.
805         * modules/memrchr (Depends-on): Likewise.
806         * modules/pagealign_alloc (Depends-on): Likewise.
807         * modules/readutmp (Depends-on): Likewise.
808         * modules/stpcpy (Depends-on): Likewise.
809         * modules/stpncpy (Depends-on): Likewise.
810         * modules/strchrnul (Depends-on): Likewise.
811         * modules/strndup (Depends-on): Likewise.
812         * modules/strsep (Depends-on): Likewise.
813         * modules/strverscmp (Depends-on): Likewise.
814         * modules/vasprintf (Depends-on): Likewise.
815         * modules/wcwidth (Depends-on): Likewise.
816         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
817         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
818         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
819         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
820         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
821         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
822         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
823         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
824         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
825         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
826         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
827         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
828         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
829         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
830         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
831         * m4/readutmp.m4 (gl_READUTMP): Likewise.
832         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
833         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
834         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
835         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
836         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
837         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
838         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
839         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
840         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
841         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
842         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
843         so that lock.m4 can be used in gettext without extensions module.
844
845 2007-09-11  Bruno Haible  <bruno@clisp.org>
846
847         * m4/isc-posix.m4: Remove file.
848         Suggested by Eric Blake.
849
850 2007-09-11  Eric Blake  <ebb9@byu.net>
851
852         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
853
854 2007-09-10  Bruno Haible  <bruno@clisp.org>
855
856         * posix-modules: Fix typo in error message.
857         Reported by Matt <mkraai@beckman.com>.
858
859 2007-09-09  Bruno Haible  <bruno@clisp.org>
860
861         * doc/functions/getdelim.texi: Update list of platforms lacking the
862         function.
863         * doc/functions/getline.texi: Likewise.
864
865 2007-09-09  Jim Meyering  <jim@meyering.net>
866
867         * lib/hash.c (hash_initialize): Detect calloc failure.
868         Reported by Bruno Haible.
869
870 2007-09-09  Bruno Haible  <bruno@clisp.org>
871
872         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
873         malloc or realloc fails.
874
875 2007-09-09  Bruno Haible  <bruno@clisp.org>
876
877         * modules/getcwd (Depends-on): Add malloc-posix.
878         * modules/glob (Depends-on): Likewise.
879         * modules/putenv (Depends-on): Likewise.
880         * modules/strdup (Depends-on): Likewise.
881         * modules/getdelim (Depends-on): Add realloc-posix.
882         * modules/read-file (Depends-on): Likewise.
883
884 2007-09-09  Bruno Haible  <bruno@clisp.org>
885
886         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
887         (gl_FUNC_MALLOC_POSIX): Require it.
888         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
889         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
890         * modules/realloc (Files): Add m4/malloc.m4.
891         * modules/calloc (Files): Likewise.
892
893 2007-09-09  Bruno Haible  <bruno@clisp.org>
894
895         * modules/malloc-posix: New file.
896         * modules/malloc (Depends-on): Add malloc-posix.
897         * lib/malloc.c: Include errno.h.
898         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
899         and a POSIX-compatible malloc into a single function. Set ENOMEM
900         when returning NULL.
901         * m4/malloc.m4: New file.
902         * doc/functions/malloc.texi: Mention the malloc-posix module.
903         * lib/stdlib_.h (malloc): New declaration.
904         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
905         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
906         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
907         and HAVE_MALLOC_POSIX.
908
909 2007-09-09  Bruno Haible  <bruno@clisp.org>
910
911         * modules/realloc-posix: New file.
912         * modules/realloc (Depends-on): Add realloc-posix.
913         * lib/realloc.c: Include errno.h.
914         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
915         and a POSIX-compatible realloc into a single function. Set ENOMEM
916         when returning NULL.
917         * m4/realloc.m4: New file.
918         * doc/functions/realloc.texi: Mention the realloc-posix module.
919         * lib/stdlib_.h (realloc): New declaration.
920         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
921         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
922         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
923         and HAVE_REALLOC_POSIX.
924
925 2007-09-09  Bruno Haible  <bruno@clisp.org>
926
927         * modules/calloc-posix: New file.
928         * modules/calloc (Depends-on): Add calloc-posix.
929         * lib/calloc.c: Include errno.h.
930         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
931         and a POSIX-compatible calloc into a single function. Set ENOMEM
932         when returning NULL.
933         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
934         * doc/functions/calloc.texi: Mention the calloc-posix module.
935         * lib/stdlib_.h (calloc): New declaration.
936         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
937         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
938         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
939         and HAVE_CALLOC_POSIX.
940
941 2007-09-09  Bruno Haible  <bruno@clisp.org>
942
943         Allow for modules to show an arbitrary notice.
944         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
945         * gnulib-tool: New option --extract-notice.
946         (func_usage): Document it.
947         (sed_extract_prog): Update.
948         (func_get_notice): New function.
949         (func_modules_notice): New function.
950         (func_import, func_create_testdir): Invoke it.
951         Suggested by Jim Meyering.
952
953 2007-09-09  Bruno Haible  <bruno@clisp.org>
954
955         * gnulib-tool: New options --verbose, --quiet.
956         (func_usage): Document them.
957         (verbose): New variable.
958         (func_execute_command): New function.
959         (func_import): Don't show the module list and the file list if
960         $verbose < 0.
961         (func_create_testdir): Likewise. Use func_execute_command.
962         (func_create_megatestdir): Use func_execute_command.
963
964 2007-09-08  Bruno Haible  <bruno@clisp.org>
965
966         * gnulib-tool (func_import): Prefer rsync over wget when available,
967         for fetching the PO files.
968
969 2007-09-08  Bruno Haible  <bruno@clisp.org>
970
971         * posix-modules: New file. Portions copied from gnulib-tool.
972         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
973
974 2007-09-08  Jim Meyering  <jim@meyering.net>
975
976         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
977         * lib/fpending.h: Rename from __fpending.h.
978         * lib/fpending.c: Rename from __fpending.c.
979         Include "fpending.h", not "__fpending.h".
980         * lib/__fpending.h, lib/__fpending.c: Remove files.
981         * modules/fpending (Files): Reflect new file names.
982         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
983
984 2007-09-08  Bruno Haible  <bruno@clisp.org>
985
986         * m4/inttypes-h.m4: Remove stub file.
987
988 2007-09-07  Simon Josefsson  <simon@josefsson.org>
989
990         * doc/headers/stdint.texi: Discuss #include_next issue.
991
992 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
993
994         * build-aux/bootstrap: Remove obsolete comment about wget --help.
995
996 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
997
998         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
999         in variable name.
1000
1001 2007-09-03  Jim Meyering  <jim@meyering.net>
1002
1003         New module: git-version-gen.
1004         * modules/git-version-gen: New file.
1005
1006         Import changes from coreutils for bootstrap script.
1007
1008         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
1009
1010         bootstrap: uses rsync to download the .po files
1011         * build-aux/bootstrap (po_download_command_format): New global.
1012         (download_po_files): Use rsync.
1013         (update_po_files): Don't remove .po files after download,
1014         so future rsync runs can take advantage of the copies.
1015
1016         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
1017
1018         Solve the unnecessary-.po-file-regeneration problem once and for all.
1019         * build-aux/bootstrap (download_po_files): New function, renamed from
1020         get_translations.  Now, downloads, but doesn't update LINGUAS.
1021         (update_po_files): New function.
1022
1023         bootstrap: Ignore more.
1024         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
1025         uniwidth to e.g., lib/.gitignore.
1026         (slurp): Handle the sys_stat_.h -> sys mapping, too.
1027
1028         * build-aux/bootstrap: New setting: vc_ignore.
1029         (insert_sorted_if_absent): Create $file if absent.
1030         Adapt to new, possibly empty, list: $vc_ignore.
1031
1032         bootstrap: generate more ignorable names
1033         * build-aux/bootstrap (slurp): When generating ignorable names,
1034         also map .sin to .sed, .gperf to .c, and .y to .c.
1035
1036 2007-09-03  Jim Meyering  <jim@meyering.net>
1037
1038         * build-aux/git-version-gen: New file, from coreutils.  For details, see
1039         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
1040
1041 2007-09-02  Bruno Haible  <bruno@clisp.org>
1042
1043         Fix mis-recognition of 'mcs' on QNX 6.
1044         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
1045         output contains the string "Mono".
1046         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
1047         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
1048
1049 2007-09-01  Bruno Haible  <bruno@clisp.org>
1050
1051         Fix collision between uniwidth/* and linebreak modules.
1052         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
1053         u32_width): Remove declarations.
1054         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
1055         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
1056         streq3, streq2, streq1, streq0): Remove functions.
1057         (STREQ): Remove macro.
1058         (is_cjk_encoding): Remove function.
1059         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
1060         (uc_width, u8_width, u16_width, u32_width): Remove functions.
1061         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
1062         * NEWS: Document the change.
1063
1064 2007-09-01  Bruno Haible  <bruno@clisp.org>
1065
1066         * lib/streq.h: Add double-inclusion guard.
1067
1068 2007-09-01  Karl Berry  <karl@gnu.org>
1069
1070         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
1071
1072 2007-08-28  Jim Meyering  <jim@meyering.net>
1073
1074         Rename mreadlink_with_size to areadlink_with_size.
1075         * NEWS: Document the change.
1076         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
1077         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
1078         * lib/mreadlink.h: Rename this to...
1079         * lib/areadlink.h: ...this.
1080         * modules/mreadlink-with-size: Rename this to...
1081         * modules/areadlink-with-size: ...this.
1082         * lib/canonicalize.c: Reflect the renaming.
1083         * modules/canonicalize: Likewise.
1084
1085 2007-08-26  Bruno Haible  <bruno@clisp.org>
1086
1087         * gnulib-tool (func_import): When deciding which files to remove,
1088         consider also dangling symbolic links.
1089         Reported by Eric Blake.
1090
1091 2007-08-26  Bruno Haible  <bruno@clisp.org>
1092
1093         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
1094
1095 2007-08-23  Simon Josefsson  <simon@josefsson.org>
1096
1097         * lib/readline.c: Don't include getline.h, the prototype is now
1098         found in stdio.h.
1099
1100 2007-08-23  Jim Meyering  <jim@meyering.net>
1101
1102         Getdelim touchup.
1103         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
1104         around the funlockfile call, since funlockfile never sets errno.
1105         Don't set errno upon failed realloc.
1106
1107 2007-08-22  Eric Blake  <ebb9@byu.net>
1108
1109         Getline touchups.
1110         * lib/getdelim.c (getdelim): Revert regression that required *n to
1111         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
1112         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
1113         getdelim, rather than whether implementation is missing.
1114         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
1115         * lib/stdio_.h (getline): Also declare if replacement is
1116         required.
1117         * doc/functions/getdelim.texi: New file.
1118         * doc/functions/getline.texi: Likewise.
1119         * doc/gnulib.texi (Function Substitutes): Add new files.
1120         Reported by Bruno Haible.
1121
1122 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
1123
1124         * users.txt: Add Guile.
1125
1126 2007-08-22  Eric Blake  <ebb9@byu.net>
1127
1128         * tests/test-getdelim.c (main): Use remove, not unlink.
1129         * tests/test-getline.c (main): Likewise.
1130
1131         Move getline and getdelim into stdio.h, per POSIX 200x.
1132         * modules/getline (Files): Remove getline.h.
1133         (Depends-on): Add stdio.
1134         (configure.ac): Add module indicator.
1135         * modules/getdelim (Files): Remove getdelim.h.
1136         (Depends-on): Add stdio.
1137         (configure.ac): Add module indicator.
1138         * modules/stdio (Makefile.am): Work with new indicators.
1139         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
1140         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
1141         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
1142         * lib/getdelim.h: Delete.
1143         * lib/getline.h: Delete.
1144         * lib/stdio_.h (getdelim, getline): Declare.
1145         * modules/getdelim-tests: New module.
1146         * modules/getline-tests: Likewise.
1147         * tests/test-getdelim.c: New file.
1148         * tests/test-getline.c: Likewise.
1149         * NEWS: Document the change.
1150         * lib/getline.c: Update choice of header.
1151         * lib/csharpcomp.c: Likewise.
1152         * lib/getpass.c: Likewise.
1153         * lib/javacomp.c: Likewise.
1154         * lib/javaversion.c: Likewise.
1155         * lib/yesno.c: Likewise.
1156         * lib/getdelim.c: Likewise.
1157         (getdelim): Set errno on failure, and avoid memory leak.
1158
1159 2007-08-19  Bruno Haible  <bruno@clisp.org>
1160
1161         * modules/closein (Depends-on): Add freadahead.
1162         * lib/closein.c: Include freadahead.h.
1163         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
1164         is zero.
1165
1166 2007-08-19  Bruno Haible  <bruno@clisp.org>
1167
1168         * modules/freadahead-tests: New file.
1169         * tests/test-freadahead.sh: New file.
1170         * tests/test-freadahead.c: New file.
1171
1172         * modules/freadahead: New file.
1173         * lib/freadahead.h: New file.
1174         * lib/freadahead.c: New file.
1175         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
1176         fbufmode, fpurge, freadable, fwritable.
1177
1178 2007-08-19  Eric Blake  <ebb9@byu.net>
1179
1180         Test yesno in combination with closein.
1181         * lib/yesno.c (yesno): Document use of stdin.
1182         * modules/yesno-tests (Files): New module.
1183         * tests/test-yesno.c (main): New file.
1184         * tests/test-yesno.sh: Likewise.
1185
1186 2007-08-19  Bruno Haible  <bruno@clisp.org>
1187
1188         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
1189         * lib/fseeko.c (rpl_fseeko): Likewise.
1190         * lib/fseterr.c (fseterr): Likewise.
1191
1192 2007-08-19  Bruno Haible  <bruno@clisp.org>
1193
1194         * tests/test-lseek.c (main): Disable a test for BeOS.
1195         * doc/functions/lseek.texi: Document the BeOS bug.
1196
1197 2007-08-19  Bruno Haible  <bruno@clisp.org>
1198             Eric Blake  <ebb9@byu.net>
1199
1200         * lib/lseek.c: Include <sys/stat.h>.
1201         (rpl_lseek): Add workaround code also for Unix platforms.
1202         Needed for BeOS.
1203         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
1204         * doc/functions/lseek.texi: Document BeOS definiency.
1205
1206 2007-08-18  Bruno Haible  <bruno@clisp.org>
1207
1208         * modules/fstrcmp-tests: New file.
1209         * tests/test-fstrcmp.c: New file.
1210
1211 2007-08-18  Bruno Haible  <bruno@clisp.org>
1212
1213         * modules/fstrcmp: New file, from GNU gettext with modifications.
1214         * lib/fstrcmp.h: New file, from GNU gettext.
1215         * lib/fstrcmp.c: New file, from GNU gettext.
1216         * MODULES.html.sh (String handling): Add fstrcmp.
1217
1218 2007-08-18  Bruno Haible  <bruno@clisp.org>
1219
1220         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
1221         'bool'.
1222         (diag, compareseq): Remove const from the ctxt argument.
1223         (USE_HEURISTIC): Undefine at the end.
1224
1225 2007-08-18  Jim Meyering  <jim@meyering.net>
1226
1227         New file: lib/idcache.h
1228         * NEWS: Mention the addition.
1229         * modules/idcache (Files): Add lib/idcache.h
1230         * lib/idcache.c: Include "idcache.h".
1231         Don't include <sys/types.h>.
1232         Add a FIXME comment.
1233         Move file-scoped "static" declarations to the top.
1234         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
1235
1236 2007-08-17  Bruno Haible  <bruno@clisp.org>
1237         and Paul Eggert  <eggert@cs.ucla.edu>
1238
1239         * MODULES.html.sh: Add diffseq.
1240         * modules/diffseq: New file.
1241         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
1242         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
1243
1244 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
1245
1246         Import changes from coreutils for bootstrap script.
1247
1248         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
1249
1250         * build-aux/bootstrap (slurp): Work even in environments where
1251         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
1252         current code does not slurp files whose names start with ".", and
1253         this looks like it might be a troublesome area.
1254
1255         2007-07-11  Jim Meyering  <jim@meyering.net>
1256
1257         If there's a GPL vN copyright comment, require that N == 3.
1258
1259         2007-07-08  Jim Meyering  <jim@meyering.net>
1260
1261         Run the coreutils-specific code only if tests/Makefile.am.in exists.
1262         * build-aux/bootstrap (mam_template): Move definition out of loop.
1263
1264         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
1265
1266         * build-aux/bootstrap (symlink_to_dir): Rename function from
1267         symlink_to_gnulib.  Add a directory parameter.  Update all
1268         callers.
1269         (cp_mark_as_generated): Also check for -- and link to -- files in
1270         gl/.
1271
1272         2007-07-08  Jim Meyering  <jim@meyering.net>
1273
1274         Adapt to deeper hierarchy in gnulib.
1275         * build-aux/bootstrap (symlink_to_dir): If the destination
1276         directory doesn't exist, create it. This is required at least for
1277         "lib/uniwidth/cjk.h".
1278
1279         2007-05-15  Jim Meyering  <jim@meyering.net>
1280
1281         * build-aux/bootstrap: Now that generated Makefile.am files
1282         are no longer under version control, they must be created at
1283         bootstrap time.
1284
1285 2007-08-14  Ben Pfaff  <blp@gnu.org>
1286
1287         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
1288
1289 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
1290
1291         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
1292         given the changes below.
1293         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
1294         even on hosts that have padding bits beyond the supported 64.
1295
1296 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
1297
1298         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
1299         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
1300         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
1301         depends on it.
1302         (xstrtol_error): Remove.
1303         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
1304         but with a different signature.
1305         (ATTRIBUTE_NORETURN, __attribute__): New macros.
1306         * lib/xstrtol-error.c: Include exitfail.h.
1307         (xstrtol_fatal): New function, with a different signature from the
1308         old xstrtol_error, so that the caller need not worry about passing
1309         in an exit status, or about storage management of the option argument.
1310         (xstrtol_error): Now a static function.  Redo signature to
1311         implement xstrtol_fatal.  Output the correct number of hyphens in
1312         front of the option so that the caller need not worry about
1313         storage management.
1314         (N_): New macro.
1315         (_): Remove; not used now.
1316         * modules/xstrtol: Depend on getopt.
1317         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
1318         of old STRTOL_FATAL_ERROR macro.
1319         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
1320         of test program.
1321         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
1322         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
1323
1324 2007-08-08  Eric Blake  <ebb9@byu.net>
1325
1326         * lib/xstrtol-error.c: Add missing include.
1327
1328         Move xstrtol messages into gnulib domain, when --pobase is used.
1329         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
1330         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
1331         * modules/xstrtol (Files): Distribute new file.
1332         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
1333         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
1334         * tests/test-xstrtol.c: ...into new file.
1335         * tests/test-xstrtoul.c: Also test xstrtoul.
1336         * tests/test-xstrtoimax.c: Also test xstrtoimax.
1337         * tests/test-xstrtoumax.c: Also test xstrtoumax.
1338         * tests/test-xstrtol.sh: Drive the tests.
1339         * tests/test-xstrtoimax.sh: Likewise.
1340         * tests/test-xstrtoumax.sh: Likewise.
1341         * modules/xstrtol-tests: New module.
1342         * modules/xstrtoimax-tests: Likewise.
1343         * modules/xstrtoumax-tests: Likewise.
1344
1345 2007-08-08  Jim Meyering  <jim@meyering.net>
1346
1347         New function: mfile_name_concat.
1348         * lib/filenamecat.c (mfile_name_concat): New function, just like
1349         file_name_concat, but return NULL upon failure rather than exiting
1350         with a diagnostic.
1351         * lib/filenamecat.h: Declare it.
1352
1353 2007-08-07  Bruno Haible  <bruno@clisp.org>
1354
1355         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
1356         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
1357         warning from gcc.
1358         Reported by Eric Blake.
1359
1360 2007-08-07  Simon Josefsson  <simon@josefsson.org>
1361
1362         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
1363         * modules/crypto/arcfour (License): Likewise.
1364         * modules/crypto/des-tests (License): Likewise.
1365         * modules/crypto/gc-arctwo-tests (License): Likewise.
1366         * modules/crypto/gc-des-tests (License): Likewise.
1367         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
1368         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
1369         * modules/crypto/gc-md2-tests (License): Likewise.
1370         * modules/crypto/gc-md4-tests (License): Likewise.
1371         * modules/crypto/gc-md5-tests (License): Likewise.
1372         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
1373         * modules/crypto/gc-rijndael-tests (License): Likewise.
1374         * modules/crypto/gc-sha1-tests (License): Likewise.
1375         * modules/crypto/gc-tests (License): Likewise.
1376         * modules/crypto/hmac-md5 (License): Likewise.
1377         * modules/crypto/hmac-sha1 (License): Likewise.
1378         * modules/crypto/md2-tests (License): Likewise.
1379         * modules/crypto/md4-tests (License): Likewise.
1380         * modules/crypto/md5 (License): Likewise.
1381         * modules/crypto/rijndael (License): Likewise.
1382         * modules/crypto/sha1 (License): Likewise.
1383         * modules/memxor (License): Likewise.
1384
1385 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
1386         and Bruno Haible  <bruno@clisp.org>
1387
1388         * NEWS: Describe interface changes to human, xstrtol.
1389         * lib/human.h: Include <xstrtol.h>.
1390         (human_options): Return enum strtol_error, not int.  Remove
1391         bool arg; take int * instead.
1392         * lib/human.c: Don't include "gettext.h".
1393         (_): Remove; no longer used.
1394         Don't include <xstrtol.h>, since human.h does it.
1395         (human_options): Adjust to abovementioned interface changes.
1396         Do not report error to stderr; that's now the caller's
1397         responsibility.
1398         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
1399         interface change.
1400         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
1401         Str, Argument_type_string.  All uses changed.  Put " argument"
1402         in diagnostics to make them clearer.  Change wording of suffix
1403         message for clarity.
1404         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
1405         Argument_type_string.
1406         (STRTOL_FATAL_WARN): Remove; no longer used.
1407         * modules/human (Depends-on): Remove gettext-h.
1408
1409 2007-08-06  Simon Josefsson  <simon@josefsson.org>
1410
1411         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
1412
1413 2007-07-31  Bruno Haible  <bruno@clisp.org>
1414
1415         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
1416         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
1417         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
1418
1419 2007-07-31  Bruno Haible  <bruno@clisp.org>
1420
1421         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
1422         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
1423
1424 2007-07-30  Bruno Haible  <bruno@clisp.org>
1425
1426         * modules/base64 (License): Use the synonymous term "LGPLv2+".
1427         * modules/c-ctype (License): Likewise.
1428         * modules/c-strcase (License): Likewise.
1429         * modules/check-version (License): Likewise.
1430         * modules/iconv (License): Likewise.
1431         * modules/iconv_open (License): Likewise.
1432         * modules/read-file (License): Likewise.
1433         * modules/striconv (License): Likewise.
1434         * modules/strverscmp (License): Likewise.
1435         * modules/vasprintf (License): Likewise.
1436         * modules/crypto/des (License): Likewise.
1437         * modules/crypto/gc (License): Likewise.
1438         * modules/crypto/gc-arcfour (License): Likewise.
1439         * modules/crypto/gc-arctwo (License): Likewise.
1440         * modules/crypto/gc-des (License): Likewise.
1441         * modules/crypto/gc-hmac-md5 (License): Likewise.
1442         * modules/crypto/gc-hmac-sha1 (License): Likewise.
1443         * modules/crypto/gc-md2 (License): Likewise.
1444         * modules/crypto/gc-md4 (License): Likewise.
1445         * modules/crypto/gc-md5 (License): Likewise.
1446         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
1447         * modules/crypto/gc-random (License): Likewise.
1448         * modules/crypto/gc-rijndael (License): Likewise.
1449         * modules/crypto/gc-sha1 (License): Likewise.
1450         * modules/crypto/md2 (License): Likewise.
1451         * modules/crypto/md4 (License): Likewise.
1452
1453 2007-07-30  Jim Meyering  <jim@meyering.net>
1454
1455         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
1456         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
1457         it has valid stat data.  This bug would cause du not to count the
1458         sizes of inaccessible directories.
1459         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
1460         in <http://bugzilla.redhat.com/250077>.
1461
1462 2007-07-25  Peter O'Gorman  <peter@pogma.com>
1463             Bruno Haible  <bruno@clisp.org>
1464
1465         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
1466         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
1467         #include_next, gives a diagnostic about it, but reports no error in
1468         the exit code.
1469         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
1470
1471 2007-07-24  Ben Pfaff  <blp@gnu.org>
1472
1473         Improve name: "count-one-bits" is better than "popcount".
1474         * MODULES.html.sh: Update name.
1475         * lib/popcount.h: Renamed lib/count-one-bits.h.
1476         (popcount): Renamed count_one_bits.
1477         (popcountl): Renamed count_one_bits_l.
1478         (popcountll): Renamed count_one_bits_ll.
1479         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
1480         * modules/popcount: Renamed module/count-one-bits.
1481         * modules/popcount-tests: Renamed module/count-one-bits-tests.
1482         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
1483
1484 2007-07-23  Ben Pfaff  <blp@gnu.org>
1485
1486         * lib/popcount.h (popcount32): Reduce size of constants, to allow
1487         better code generation, and add U to large constants to avoid
1488         warnings, in non-GCC case.
1489         Suggested by Bruno Haible.
1490
1491 2007-07-23  Ben Pfaff  <blp@gnu.org>
1492
1493         * lib/popcount.h: Use verify_true instead of if...abort.
1494         * modules/popcount: Depend on verify module.
1495         Suggested by Jim Meyering.
1496
1497 2007-07-23  Bruno Haible  <bruno@clisp.org>
1498
1499         * gnulib-tool (func_import): Create a .cvsignore file also when the
1500         directory is not yet in CVS but the toplevel directory is. When
1501         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
1502         Reported by Karl Berry.
1503
1504 2007-07-22  Ben Pfaff  <blp@gnu.org>
1505
1506         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
1507         case.
1508         Suggested by Eric Blake.
1509
1510 2007-07-22  Ben Pfaff  <blp@gnu.org>
1511
1512         New module: popcount.
1513         * MODULES.html.sh: Add popcount.
1514         * modules/popcount: New file.
1515         * modules/popcount-tests: New file.
1516         * tests/test-popcount.c: New file.
1517         * lib/popcount.h: New file.
1518         * m4/popcount.m4: New file.
1519
1520 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
1521
1522         * build-aux/announce-gen: Update to GPLv3.
1523
1524         * build-aux/config.guess: Update from config.
1525
1526 2007-07-21  Bruno Haible  <bruno@clisp.org>
1527
1528         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
1529         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
1530
1531 2007-07-20  Jim Meyering  <jim@meyering.net>
1532
1533         * check-module: Diagnose a self-dependency.
1534
1535 2007-07-19  Bruno Haible  <bruno@clisp.org>
1536
1537         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
1538         empty.
1539         Reported by Eric Blake.
1540
1541 2007-07-18  Bruno Haible  <bruno@clisp.org>
1542
1543         * gnulib-tool: New options --po-base, --po-domain.
1544         (func_usage): Document them.
1545         (pobase, po_domain): New variables.
1546         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
1547         DEFAULT_TEXT_DOMAIN.
1548         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
1549         (func_import): Consider pobase and po_domain. Create a po/ directory.
1550         (func_create_testdir): Set pobase and po_domain to empty.
1551         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
1552         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
1553
1554 2007-07-18  Bruno Haible  <bruno@clisp.org>
1555
1556         * gnulib-tool (func_get_automake_snippet): Synthesize also an
1557         EXTRA_DIST augmentation for files in build-aux/.
1558
1559 2007-07-16  Bruno Haible  <bruno@clisp.org>
1560
1561         * modules/lseek (License): Use the synonymous term "LGPLv2+".
1562         * modules/getdelim (License): Likewise.
1563
1564 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1565
1566         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
1567         * modules/d-type (License): Likewise.
1568         * modules/extensions (License): Likewise.
1569         * modules/fnmatch (License): Likewise.
1570         * modules/fseeko (License): Likewise.
1571         * modules/getaddrinfo (License): Likewise.
1572         * modules/getline (License): Likewise.
1573         * modules/getlogin_r (License): Likewise.
1574         * modules/getpass (License): Likewise.
1575         * modules/gettimeofday (License): Likewise.
1576         * modules/glob (License): Likewise.
1577         * modules/inet_ntop (License): Likewise.
1578         * modules/malloc (License): Likewise.
1579         * modules/malloca (License): Likewise.
1580         * modules/memmem (License): Likewise.
1581         * modules/mempcpy (License): Likewise.
1582         * modules/memset (License): Likewise.
1583         * modules/minmax (License): Likewise.
1584         * modules/mktime (License): Likewise.
1585         * modules/netinet_in (License): Likewise.
1586         * modules/pathmax (License): Likewise.
1587         * modules/poll (License): Likewise.
1588         * modules/regex (License): Likewise.
1589         * modules/snprintf (License): Likewise.
1590         * modules/stdbool (License): Likewise.
1591         * modules/stdint (License): Likewise.
1592         * modules/stdio (License): Likewise.
1593         * modules/strcase (License): Likewise.
1594         * modules/strcasestr (License): Likewise.
1595         * modules/strdup (License): Likewise.
1596         * modules/string (License): Likewise.
1597         * modules/strndup (License): Likewise.
1598         * modules/strnlen (License): Likewise.
1599         * modules/strpbrk (License): Likewise.
1600         * modules/strptime (License): Likewise.
1601         * modules/strsep (License): Likewise.
1602         * modules/sys_select (License): Likewise.
1603         * modules/sys_socket (License): Likewise.
1604         * modules/sys_stat (License): Likewise.
1605         * modules/sys_time (License): Likewise.
1606         * modules/time (License): Likewise.
1607         * modules/time_r (License): Likewise.
1608         * modules/timegm (License): Likewise.
1609         * modules/unistd (License): Likewise.
1610         * modules/vsnprintf (License): Likewise.
1611         * modules/wctype (License): Likewise.
1612
1613 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1614
1615         * modules/argz (License): LGPLv2+.
1616
1617 2007-07-15  Karl Berry  <karl@gnu.org>
1618
1619         * doc/gnulib.texi: revise node structure per new fdl.texi.
1620
1621 2007-07-14  Bruno Haible  <bruno@clisp.org>
1622
1623         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
1624         the output file.
1625         * lib/uniname/uninames.h: Regenerated.
1626
1627 2007-07-14  Karl Berry  <karl@gnu.org>
1628
1629         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
1630         omitting sectioning and index commands.
1631
1632 2007-07-13  Bruno Haible  <bruno@clisp.org>
1633
1634         New gnulib-tool option --more-symlinks.
1635         * gnulib-tool (func_usage): Document --more-symlinks.
1636         (do_copyrights): New variable.
1637         Recognize option --more-symlinks.
1638         (func_import): Don't add a copyright notice transform to
1639         sed_transform_lib_file if do_copyrights is empty.
1640
1641 2007-07-13  Bruno Haible  <bruno@clisp.org>
1642
1643         * lib/vasnprintf.c (decimal_point_char): Define also if
1644         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
1645         && !NEED_PRINTF_DIRECTIVE_A.
1646         Reported by Clemens Koller <clemens.koller@anagramm.de> via
1647         Gary V. Vaughan <gary@gnu.org>.
1648
1649 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
1650
1651         * lib/inttypes_.h: Undo previous change, since it was fixed
1652         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
1653
1654 2007-07-13  Bruno Haible  <bruno@clisp.org>
1655
1656         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
1657         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
1658
1659 2007-07-13  Jim Meyering  <jim@meyering.net>
1660
1661         df: Don't fail for Tru64's "file-on-file mount".
1662         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
1663         so we fall through and use statfs instead.  Details here:
1664         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
1665         Reported by Albert Chin.
1666
1667 2007-07-13  Bruno Haible  <bruno@clisp.org>
1668
1669         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
1670         * modules/configmake (License): Likewise.
1671         * modules/gettext (License): Likewise.
1672         * modules/gettext-h (License): Likewise.
1673         * modules/include_next (License): Likewise.
1674         * modules/link-warning (License): Likewise.
1675         * modules/localcharset (License): Likewise.
1676         * modules/localename (License): Likewise.
1677         * modules/lock (License): Likewise.
1678         * modules/relocatable-lib-lgpl (License): Likewise.
1679         * modules/size_max (License): Likewise.
1680         * modules/vasnprintf (License): Likewise.
1681         * modules/wchar (License): Likewise.
1682         * modules/xsize (License): Likewise.
1683
1684 2007-07-13  Bruno Haible  <bruno@clisp.org>
1685
1686         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
1687         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
1688
1689 2007-07-12  Bruno Haible  <bruno@clisp.org>
1690
1691         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
1692         in the modules files.
1693
1694 2007-07-11  Karl Berry  <karl@gnu.org>
1695
1696         * MODULES.html.sh (func_module): use
1697          sed -e '\|^'"${includefile}"'$|d'
1698          instead of /.../d, to avoid errors on $includefile's containing /.
1699
1700 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
1701
1702         * gnulib-tool (func_import): Avoid duplication of --avoid
1703         statements
1704         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
1705         names to `_' in variable names.
1706
1707 2007-07-10  Eric Blake  <ebb9@byu.net>
1708
1709         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
1710         * NEWS: Document this change.
1711
1712 2007-07-08  Bruno Haible  <bruno@clisp.org>
1713
1714         Update to Unicode 5.0.
1715         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
1716         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
1717         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
1718         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
1719         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
1720         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
1721         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
1722         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
1723         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
1724         U+10A3F, U+1D242..U+1D244.
1725         (nonspacing_table_ind): Update.
1726         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
1727         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
1728
1729 2007-07-08  Bruno Haible  <bruno@clisp.org>
1730
1731         Update to Unicode 5.0.
1732         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
1733         code transform. Extend the name index field of unicode_name_to_code and
1734         unicode_code_to_name from 16 to 24 bits.
1735         * lib/uniname/uniname.c (unicode_character_name,
1736         unicode_name_character): Add the range 0x12xxx to the code transform.
1737         * lib/uniname/uninames.h: Regenerated.
1738         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
1739
1740 2007-07-07  Bruno Haible  <bruno@clisp.org>
1741
1742         * modules/wcwidth-tests: New file.
1743         * tests/test-wcwidth.c: New file.
1744
1745         Work around MacOS X wcwidth() bug.
1746         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
1747         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
1748         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
1749         original wcwidth in non-UTF-8 locales.
1750         * modules/wcwidth (Depends-on): Add localcharset, streq,
1751         uniwidth/width.
1752         * doc/functions/wcwidth.texi: Update.
1753
1754 2007-07-07  Bruno Haible  <bruno@clisp.org>
1755
1756         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
1757         (wcwidth): New declaration.
1758         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
1759         macros.
1760         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
1761         here. Prepare for creating <wchar.h> unconditionally.
1762         * modules/wchar (Depends-on): Add link-warning.
1763         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
1764         REPLACE_WCWIDTH, and GL_LINK_WARNING.
1765         * lib/wcwidth.h: Remove file.
1766         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
1767         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
1768         * modules/wcwidth (Files): Remove lib/wcwidth.h.
1769         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
1770         (Include): Replace wcwidth.h with <wchar.h>.
1771         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
1772         * lib/mbchar.h: Don't include wcwidth.h.
1773         * lib/mbswidth.c: Likewise.
1774         * NEWS: Mention the change.
1775
1776 2007-07-07  Bruno Haible  <bruno@clisp.org>
1777
1778         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
1779         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
1780         definition with an external declaration.
1781         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
1782         defined as a function. Remove AC_C_INLINE requirement.
1783         * modules/wcwidth (Files): Add lib/wcwidth.c.
1784         (Makefile.am): Remove redundant statement.
1785
1786 2007-07-07  Bruno Haible  <bruno@clisp.org>
1787
1788         * MODULES.html.sh (Unicode string functions): Add the new modules.
1789
1790         * tests/uniwidth/test-u32-strwidth.c: New file.
1791         * modules/uniwidth/u32-strwidth-tests: New file.
1792
1793         * lib/uniwidth/u32-strwidth.c: New file.
1794         * modules/uniwidth/u32-strwidth: New file.
1795
1796         * tests/uniwidth/test-u16-strwidth.c: New file.
1797         * modules/uniwidth/u16-strwidth-tests: New file.
1798
1799         * lib/uniwidth/u16-strwidth.c: New file.
1800         * modules/uniwidth/u16-strwidth: New file.
1801
1802         * tests/uniwidth/test-u8-strwidth.c: New file.
1803         * modules/uniwidth/u8-strwidth-tests: New file.
1804
1805         * lib/uniwidth/u8-strwidth.c: New file.
1806         * modules/uniwidth/u8-strwidth: New file.
1807
1808         * tests/uniwidth/test-u32-width.c: New file.
1809         * modules/uniwidth/u32-width-tests: New file.
1810
1811         * lib/uniwidth/u32-width.c: New file.
1812         * modules/uniwidth/u32-width: New file.
1813
1814         * tests/uniwidth/test-u16-width.c: New file.
1815         * modules/uniwidth/u16-width-tests: New file.
1816
1817         * lib/uniwidth/u16-width.c: New file.
1818         * modules/uniwidth/u16-width: New file.
1819
1820         * tests/uniwidth/test-u8-width.c: New file.
1821         * modules/uniwidth/u8-width-tests: New file.
1822
1823         * lib/uniwidth/u8-width.c: New file.
1824         * modules/uniwidth/u8-width: New file.
1825
1826         * tests/uniwidth/test-uc_width.c: New file.
1827         * modules/uniwidth/width-tests: New file.
1828
1829         * lib/uniwidth/width.c: New file, from GNU libiconv.
1830         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
1831         * modules/uniwidth/width: New file.
1832
1833         * lib/uniwidth.h: New file, from GNU libiconv.
1834         * modules/uniwidth/base: New file.
1835
1836 2007-07-07  Bruno Haible  <bruno@clisp.org>
1837
1838         * lib/uniname.h: New file, from GNU gettext.
1839         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
1840         * lib/uniname/uninames.h: New file, from GNU gettext.
1841         * lib/uniname/uniname.c: New file, from GNU gettext.
1842         * tests/uniname/test-uninames.sh: New file.
1843         * tests/uniname/test-uninames.c: New file, from GNU gettext.
1844         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
1845         * modules/uniname/base: New file.
1846         * modules/uniname/uniname: New file.
1847         * modules/uniname/uniname-tests: New file.
1848         * MODULES.html.sh (Unicode string functions): Add the new modules.
1849
1850 2007-07-06  Bruno Haible  <bruno@clisp.org>
1851
1852         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
1853
1854 2007-07-06  Bruno Haible  <bruno@clisp.org>
1855
1856         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
1857         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
1858         includes <cygwin/sys_time.h> which includes <sys/select.h> which
1859         include <sys/time.h>.
1860         Reported by Eric Blake.
1861
1862 2007-07-06  Eric Blake  <ebb9@byu.net>
1863
1864         Fix testing canonicalize on cygwin.
1865         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
1866         Revert patch from 2007-06-19.
1867         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
1868         canonicalize module is also in use.
1869         * tests/test-canonicalize.c: New file.
1870         * tests/test-canonicalize.sh: Likewise.
1871         * modules/canonicalize-tests: Likewise.
1872
1873 2007-07-06  Jim Meyering  <jim@meyering.net>
1874
1875         * lib/getugroups.c (getugroups): Detect getgrent failure.
1876         Adjust comment to reflect reality: this function may return -1.
1877
1878 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
1879
1880         * build-aux/bootstrap (TP_URL,get_translations): Update to use
1881         the new TP address.
1882         (usage): Fix typo
1883         (gnulib_mk): New variable.
1884
1885 2007-07-05  Jim Meyering  <jim@meyering.net>
1886
1887         Don't let endgrent clobber errno, no matter how improbable.
1888         * lib/getugroups.c (getugroups): Save and restore errno around
1889         endgrent call.
1890
1891         Close the group DB even when failing with 2^31 or more members.
1892         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
1893
1894 2007-07-04  Jim Meyering  <jim@meyering.net>
1895
1896         * lib/getugroups.h: New file.
1897         * lib/getugroups.c: Include "getugroups.h".
1898         Remove uses of "register" keyword.
1899         Move local variable, "cp", down into scope where used.
1900         Give "username" parameter the "const" attribute.
1901         * modules/getugroups (Files): Add lib/getugroups.h
1902
1903 2007-07-04  Karl Berry  <karl@gnu.org>
1904
1905         * MODULES.html.sh (func_all_modules): Complete rename of
1906         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
1907
1908 2007-07-02  Bruno Haible  <bruno@clisp.org>
1909
1910         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
1911         mode, when inttypes.h comes from gnulib.
1912         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
1913
1914 2007-07-02  Simon Josefsson  <simon@josefsson.org>
1915
1916         * NEWS: Mention lgpl module name change.
1917
1918         * modules/lgpl-2.1: Renamed from lgpl.
1919
1920         * NEWS: Mention gpl module name change.
1921
1922         * modules/gpl-3.0: New file, based on gpl-2.0.
1923
1924         * modules/gpl-2.0: Renamed from gpl.
1925
1926         * modules/gpl: Fix filename, doc/gpl.texi is now found at
1927         doc/gpl-2.0.texi.
1928
1929 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
1930
1931         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
1932         #define __STDC_LIMIT_MACROS temporarily while including
1933         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
1934         Problem reported by Joel E. Denny in
1935         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
1936
1937 2007-07-01  Bruno Haible  <bruno@clisp.org>
1938
1939         * lib/unistdio.h: New file.
1940         * lib/unistdio/u-asnprintf.h: New file.
1941         * lib/unistdio/u-asprintf.h: New file.
1942         * lib/unistdio/u-printf-args.c: New file.
1943         * lib/unistdio/u-printf-args.h: New file.
1944         * lib/unistdio/u-printf-parse.h: New file.
1945         * lib/unistdio/u-snprintf.h: New file.
1946         * lib/unistdio/u-sprintf.h: New file.
1947         * lib/unistdio/u-vasprintf.h: New file.
1948         * lib/unistdio/u-vsnprintf.h: New file.
1949         * lib/unistdio/u-vsprintf.h: New file.
1950         * lib/unistdio/ulc-asnprintf.c: New file.
1951         * lib/unistdio/ulc-asprintf.c: New file.
1952         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
1953         * lib/unistdio/ulc-printf-parse.c: New file.
1954         * lib/unistdio/ulc-snprintf.c: New file.
1955         * lib/unistdio/ulc-sprintf.c: New file.
1956         * lib/unistdio/ulc-vasnprintf.c: New file.
1957         * lib/unistdio/ulc-vasprintf.c: New file.
1958         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
1959         * lib/unistdio/ulc-vsnprintf.c: New file.
1960         * lib/unistdio/ulc-vsprintf.c: New file.
1961         * lib/unistdio/u8-asnprintf.c: New file.
1962         * lib/unistdio/u8-asprintf.c: New file.
1963         * lib/unistdio/u8-printf-parse.c: New file.
1964         * lib/unistdio/u8-snprintf.c: New file.
1965         * lib/unistdio/u8-sprintf.c: New file.
1966         * lib/unistdio/u8-vasnprintf.c: New file.
1967         * lib/unistdio/u8-vasprintf.c: New file.
1968         * lib/unistdio/u8-vsnprintf.c: New file.
1969         * lib/unistdio/u8-vsprintf.c: New file.
1970         * lib/unistdio/u8-u8-asnprintf.c: New file.
1971         * lib/unistdio/u8-u8-asprintf.c: New file.
1972         * lib/unistdio/u8-u8-snprintf.c: New file.
1973         * lib/unistdio/u8-u8-sprintf.c: New file.
1974         * lib/unistdio/u8-u8-vasnprintf.c: New file.
1975         * lib/unistdio/u8-u8-vasprintf.c: New file.
1976         * lib/unistdio/u8-u8-vsnprintf.c: New file.
1977         * lib/unistdio/u8-u8-vsprintf.c: New file.
1978         * lib/unistdio/u16-asnprintf.c: New file.
1979         * lib/unistdio/u16-asprintf.c: New file.
1980         * lib/unistdio/u16-printf-parse.c: New file.
1981         * lib/unistdio/u16-snprintf.c: New file.
1982         * lib/unistdio/u16-sprintf.c: New file.
1983         * lib/unistdio/u16-vasnprintf.c: New file.
1984         * lib/unistdio/u16-vasprintf.c: New file.
1985         * lib/unistdio/u16-vsnprintf.c: New file.
1986         * lib/unistdio/u16-vsprintf.c: New file.
1987         * lib/unistdio/u16-u16-asnprintf.c: New file.
1988         * lib/unistdio/u16-u16-asprintf.c: New file.
1989         * lib/unistdio/u16-u16-snprintf.c: New file.
1990         * lib/unistdio/u16-u16-sprintf.c: New file.
1991         * lib/unistdio/u16-u16-vasnprintf.c: New file.
1992         * lib/unistdio/u16-u16-vasprintf.c: New file.
1993         * lib/unistdio/u16-u16-vsnprintf.c: New file.
1994         * lib/unistdio/u16-u16-vsprintf.c: New file.
1995         * lib/unistdio/u32-asnprintf.c: New file.
1996         * lib/unistdio/u32-asprintf.c: New file.
1997         * lib/unistdio/u32-printf-parse.c: New file.
1998         * lib/unistdio/u32-snprintf.c: New file.
1999         * lib/unistdio/u32-sprintf.c: New file.
2000         * lib/unistdio/u32-vasnprintf.c: New file.
2001         * lib/unistdio/u32-vasprintf.c: New file.
2002         * lib/unistdio/u32-vsnprintf.c: New file.
2003         * lib/unistdio/u32-vsprintf.c: New file.
2004         * lib/unistdio/u32-u32-asnprintf.c: New file.
2005         * lib/unistdio/u32-u32-asprintf.c: New file.
2006         * lib/unistdio/u32-u32-snprintf.c: New file.
2007         * lib/unistdio/u32-u32-sprintf.c: New file.
2008         * lib/unistdio/u32-u32-vasnprintf.c: New file.
2009         * lib/unistdio/u32-u32-vasprintf.c: New file.
2010         * lib/unistdio/u32-u32-vsnprintf.c: New file.
2011         * lib/unistdio/u32-u32-vsprintf.c: New file.
2012         * tests/unistdio/test-ulc-asnprintf1.c: New file.
2013         * tests/unistdio/test-ulc-asnprintf1.h: New file.
2014         * tests/unistdio/test-ulc-printf1.h: New file.
2015         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
2016         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
2017         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
2018         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
2019         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
2020         * tests/unistdio/test-ulc-vasprintf1.c: New file.
2021         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
2022         * tests/unistdio/test-ulc-vsprintf1.c: New file.
2023         * tests/unistdio/test-u8-asnprintf1.c: New file.
2024         * tests/unistdio/test-u8-asnprintf1.h: New file.
2025         * tests/unistdio/test-u8-printf1.h: New file.
2026         * tests/unistdio/test-u8-vasnprintf1.c: New file.
2027         * tests/unistdio/test-u8-vasnprintf2.c: New file.
2028         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
2029         * tests/unistdio/test-u8-vasnprintf3.c: New file.
2030         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
2031         * tests/unistdio/test-u8-vasprintf1.c: New file.
2032         * tests/unistdio/test-u8-vsnprintf1.c: New file.
2033         * tests/unistdio/test-u8-vsprintf1.c: New file.
2034         * tests/unistdio/test-u16-asnprintf1.c: New file.
2035         * tests/unistdio/test-u16-asnprintf1.h: New file.
2036         * tests/unistdio/test-u16-printf1.h: New file.
2037         * tests/unistdio/test-u16-vasnprintf1.c: New file.
2038         * tests/unistdio/test-u16-vasnprintf2.c: New file.
2039         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
2040         * tests/unistdio/test-u16-vasnprintf3.c: New file.
2041         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
2042         * tests/unistdio/test-u16-vasprintf1.c: New file.
2043         * tests/unistdio/test-u16-vsnprintf1.c: New file.
2044         * tests/unistdio/test-u16-vsprintf1.c: New file.
2045         * tests/unistdio/test-u32-asnprintf1.c: New file.
2046         * tests/unistdio/test-u32-asnprintf1.h: New file.
2047         * tests/unistdio/test-u32-printf1.h: New file.
2048         * tests/unistdio/test-u32-vasnprintf1.c: New file.
2049         * tests/unistdio/test-u32-vasnprintf2.c: New file.
2050         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
2051         * tests/unistdio/test-u32-vasnprintf3.c: New file.
2052         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
2053         * tests/unistdio/test-u32-vasprintf1.c: New file.
2054         * tests/unistdio/test-u32-vsnprintf1.c: New file.
2055         * tests/unistdio/test-u32-vsprintf1.c: New file.
2056         * modules/unistdio/base: New file.
2057         * modules/unistdio/u-printf-args: New file.
2058         * modules/unistdio/ulc-asnprintf: New file.
2059         * modules/unistdio/ulc-asprintf: New file.
2060         * modules/unistdio/ulc-fprintf: New file.
2061         * modules/unistdio/ulc-printf-parse: New file.
2062         * modules/unistdio/ulc-snprintf: New file.
2063         * modules/unistdio/ulc-sprintf: New file.
2064         * modules/unistdio/ulc-vasnprintf: New file.
2065         * modules/unistdio/ulc-vasprintf: New file.
2066         * modules/unistdio/ulc-vfprintf: New file.
2067         * modules/unistdio/ulc-vsnprintf: New file.
2068         * modules/unistdio/ulc-vsprintf: New file.
2069         * modules/unistdio/u8-asnprintf: New file.
2070         * modules/unistdio/u8-asprintf: New file.
2071         * modules/unistdio/u8-printf-parse: New file.
2072         * modules/unistdio/u8-snprintf: New file.
2073         * modules/unistdio/u8-sprintf: New file.
2074         * modules/unistdio/u8-vasnprintf: New file.
2075         * modules/unistdio/u8-vasprintf: New file.
2076         * modules/unistdio/u8-vsnprintf: New file.
2077         * modules/unistdio/u8-vsprintf: New file.
2078         * modules/unistdio/u8-u8-asnprintf: New file.
2079         * modules/unistdio/u8-u8-asprintf: New file.
2080         * modules/unistdio/u8-u8-snprintf: New file.
2081         * modules/unistdio/u8-u8-sprintf: New file.
2082         * modules/unistdio/u8-u8-vasnprintf: New file.
2083         * modules/unistdio/u8-u8-vasprintf: New file.
2084         * modules/unistdio/u8-u8-vsnprintf: New file.
2085         * modules/unistdio/u8-u8-vsprintf: New file.
2086         * modules/unistdio/u16-asnprintf: New file.
2087         * modules/unistdio/u16-asprintf: New file.
2088         * modules/unistdio/u16-printf-parse: New file.
2089         * modules/unistdio/u16-snprintf: New file.
2090         * modules/unistdio/u16-sprintf: New file.
2091         * modules/unistdio/u16-vasnprintf: New file.
2092         * modules/unistdio/u16-vasprintf: New file.
2093         * modules/unistdio/u16-vsnprintf: New file.
2094         * modules/unistdio/u16-vsprintf: New file.
2095         * modules/unistdio/u16-u16-asnprintf: New file.
2096         * modules/unistdio/u16-u16-asprintf: New file.
2097         * modules/unistdio/u16-u16-snprintf: New file.
2098         * modules/unistdio/u16-u16-sprintf: New file.
2099         * modules/unistdio/u16-u16-vasnprintf: New file.
2100         * modules/unistdio/u16-u16-vasprintf: New file.
2101         * modules/unistdio/u16-u16-vsnprintf: New file.
2102         * modules/unistdio/u16-u16-vsprintf: New file.
2103         * modules/unistdio/u32-asnprintf: New file.
2104         * modules/unistdio/u32-asprintf: New file.
2105         * modules/unistdio/u32-printf-parse: New file.
2106         * modules/unistdio/u32-snprintf: New file.
2107         * modules/unistdio/u32-sprintf: New file.
2108         * modules/unistdio/u32-vasnprintf: New file.
2109         * modules/unistdio/u32-vasprintf: New file.
2110         * modules/unistdio/u32-vsnprintf: New file.
2111         * modules/unistdio/u32-vsprintf: New file.
2112         * modules/unistdio/u32-u32-asnprintf: New file.
2113         * modules/unistdio/u32-u32-asprintf: New file.
2114         * modules/unistdio/u32-u32-snprintf: New file.
2115         * modules/unistdio/u32-u32-sprintf: New file.
2116         * modules/unistdio/u32-u32-vasnprintf: New file.
2117         * modules/unistdio/u32-u32-vasprintf: New file.
2118         * modules/unistdio/u32-u32-vsnprintf: New file.
2119         * modules/unistdio/u32-u32-vsprintf: New file.
2120         * modules/unistdio/ulc-asnprintf-tests: New file.
2121         * modules/unistdio/ulc-vasnprintf-tests: New file.
2122         * modules/unistdio/ulc-vasprintf-tests: New file.
2123         * modules/unistdio/ulc-vsnprintf-tests: New file.
2124         * modules/unistdio/ulc-vsprintf-tests: New file.
2125         * modules/unistdio/u8-asnprintf-tests: New file.
2126         * modules/unistdio/u8-vasnprintf-tests: New file.
2127         * modules/unistdio/u8-vasprintf-tests: New file.
2128         * modules/unistdio/u8-vsnprintf-tests: New file.
2129         * modules/unistdio/u8-vsprintf-tests: New file.
2130         * modules/unistdio/u16-asnprintf-tests: New file.
2131         * modules/unistdio/u16-vasnprintf-tests: New file.
2132         * modules/unistdio/u16-vasprintf-tests: New file.
2133         * modules/unistdio/u16-vsnprintf-tests: New file.
2134         * modules/unistdio/u16-vsprintf-tests: New file.
2135         * modules/unistdio/u32-asnprintf-tests: New file.
2136         * modules/unistdio/u32-vasnprintf-tests: New file.
2137         * modules/unistdio/u32-vasprintf-tests: New file.
2138         * modules/unistdio/u32-vsnprintf-tests: New file.
2139         * modules/unistdio/u32-vsprintf-tests: New file.
2140         * MODULES.html.sh (Unicode string functions): Add the new modules.
2141
2142 2007-07-01  Bruno Haible  <bruno@clisp.org>
2143
2144         * lib/sprintf.c (sprintf): Limit the available length estimation,
2145         to avoid address wraparound.
2146         * lib/vsprintf.c (vsprintf): Likewise.
2147         * modules/sprintf-posix (Dependencies): Add stdint.
2148         * modules/vsprintf-posix (Dependencies): Likewise.
2149
2150 2007-07-01  Bruno Haible  <bruno@clisp.org>
2151
2152         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
2153         Windows PATH as well. Conservative double-quoting. Comments.
2154
2155 2007-07-01  Bruno Haible  <bruno@clisp.org>
2156             Eric Blake  <ebb9@byu.net>
2157             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2158
2159         * gnulib-tool (self_abspathname): Fix algorithm to cope with
2160         empty components in $PATH, denoting '.'.
2161
2162 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2163
2164         * gnulib-tool: Fix indentation.
2165         (func_create_megatestdir): Likewise.
2166         Report by Bruno Haible.
2167
2168 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2169
2170         Sync from Automake.
2171         * build-aux/gnupload: Fix shell portability issues with for loops.
2172         Report by Karl Berry.
2173
2174 2007-06-29  Simon Josefsson  <simon@josefsson.org>
2175
2176         * build-aux/maint.mk (POURL): Use translationproject.org.
2177
2178 2007-06-27  Simon Josefsson  <simon@josefsson.org>
2179             Bruno Haible  <bruno@clisp.org>
2180
2181         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
2182         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
2183         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
2184         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
2185         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
2186
2187 2007-06-27  Bruno Haible  <bruno@clisp.org>
2188
2189         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
2190         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
2191
2192 2007-06-26  Karl Berry  <karl@gnu.org>
2193
2194         * MODULES.html.sh: remove xreadlink-with-size.
2195
2196 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
2197
2198         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
2199         method that I hope also handles the double-include problem noted
2200         by Bruno Haible in
2201         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
2202
2203 2007-06-23  Bruno Haible  <bruno@clisp.org>
2204
2205         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2206         Don't let the 'mostlyclean' target fail if the last subdirectory could
2207         not be removed.
2208         Reported by Karl Berry.
2209
2210 2007-06-23  Bruno Haible  <bruno@clisp.org>
2211
2212         * gnulib-tool (echo): Add a speedier workaround for ksh.
2213         * tests/test-echo.sh: Likewise.
2214
2215 2007-06-23  Bruno Haible  <bruno@clisp.org>
2216
2217         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
2218         * tests/test-echo.sh: Likewise.
2219
2220 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2221
2222         * gnulib-tool (IFS): Initialize early, so we don't set it to
2223         empty later.
2224         (self_abspathname): Rewrite algorithm to set it, reindent.
2225         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
2226         (func_create_megatestdir): Merge some sed scripts.
2227
2228 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
2229
2230         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
2231         exposed by Sun Studio 11 cc on Solaris 8.
2232
2233 2007-06-22  Bruno Haible  <bruno@clisp.org>
2234
2235         * gnulib-tool (echo): Ensure the echo primitive does not interpret
2236         backslashes.
2237         * tests/test-echo.sh: New file.
2238
2239 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2240
2241         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
2242         simplify `sed_replace_build_aux' scripts, they are portable but
2243         echoing them with `echo' is not.
2244         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
2245
2246 2007-06-21  Karl Berry  <karl@gnu.org>
2247
2248         * config/srclist.txt: guess we can't handle the licenses via
2249         srclist at the moment.
2250
2251 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
2252
2253         * MODULES.html.sh: Add include_next.
2254         * modules/include_next: New file.
2255
2256 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
2257
2258         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
2259         INCLUDE_NEXT.
2260         (gl_CHECK_NEXT_HEADERS): New macro.
2261         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
2262         the obsolescent gl_ABSOLUTE_HEADER.
2263         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
2264         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
2265         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
2266         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
2267         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
2268         * m4/math_h.m4 (gl_MATH_H): Likewise.
2269         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
2270         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
2271         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
2272         * m4/stdint.m4 (gl_STDINT_H): Likewise.
2273         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
2274         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
2275         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
2276         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
2277         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
2278         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
2279         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
2280         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
2281         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
2282         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
2283         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
2284         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
2285         * m4/inttypes.m4 (gl_INTTYPES_H): Define
2286         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
2287         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
2288         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
2289         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
2290         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
2291         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
2292         * lib/float_.h: Likewise.
2293         * lib/inttypes_.h: Likewise.
2294         * lib/math_.h: Likewise.
2295         * lib/search_.h: Likewise.
2296         * lib/signal_.h: Likewise.
2297         * lib/stdint_.h: Likewise.
2298         * lib/stdio_.h: Likewise.
2299         * lib/stdlib_.h: Likewise.
2300         * lib/string_.h: Likewise.
2301         * lib/sys_stat_.h: Likewise.
2302         * lib/sys_time_.h: Likewise.
2303         * lib/time_.h: Likewise.
2304         * lib/unistd_.h: Likewise.
2305         * lib/wchar_.h: Likewise.
2306         * lib/wctype_.h: Likewise.
2307         * lib/dirent_.h: Likewise.
2308         * lib/iconv_.h: Likewise.
2309         * lib/locale_.h: Likewise.
2310         * lib/netinet_in_.h: Likewise.
2311         * lib/sys_select_.h: Likewise.
2312         * lib/sys_socket_.h: Likewise.
2313         * lib/sysexits_.h: Likewise.
2314         * modules/fcntl (Depends-on): Depend on include_next, not
2315         absolute_header.
2316         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
2317         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
2318         * modules/fchdir: Likewise.
2319         * modules/float: Likewise.
2320         * modules/iconv_open: Likewise.
2321         * modules/inttypes: Likewise.
2322         * modules/locale: Likewise.
2323         * modules/math: Likewise.
2324         * modules/netinet_in: Likewise.
2325         * modules/search: Likewise.
2326         * modules/signal: Likewise.
2327         * modules/stdint: Likewise.
2328         * modules/stdio: Likewise.
2329         * modules/stdlib: Likewise.
2330         * modules/string: Likewise.
2331         * modules/sys_select: Likewise.
2332         * modules/sys_socket: Likewise.
2333         * modules/sys_stat: Likewise.
2334         * modules/sys_time: Likewise.
2335         * modules/sysexits: Likewise.
2336         * modules/time: Likewise.
2337         * modules/unistd: Likewise.
2338         * modules/wchar: Likewise.
2339         * modules/wctype: Likewise.
2340         * modules/sys_stat: Change maintainer to "all".
2341         * modules/unistd: Likewise.
2342
2343 2007-06-20  Karl Berry  <karl@gnu.org>
2344
2345         * config/srclist.txt: track www changes in license files.
2346
2347 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
2348
2349         * build-aux/bootstrap: Remove stray dot.
2350         Make sure build_aux settings are honored when linking
2351         gnulib_extra_files.
2352
2353 2007-06-19  Eric Blake  <ebb9@byu.net>
2354
2355         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
2356         Allow compilation on cygwin.
2357
2358 2007-06-19  Jim Meyering  <jim@meyering.net>
2359
2360         xreadlink-with-size: Remove module.  No longer used.
2361         Ex-callers now use xreadlink or mreadlink-with-size.
2362         * modules/xreadlink-with-size: Remove module.
2363         * lib/xreadlink-with-size.c: Remove file.
2364         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
2365         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
2366         just before the function definition *is* accurate.
2367
2368         Eliminate one way canonicalize_filename_mode could exit.
2369         * lib/canonicalize.c (canonicalize_filename_mode):
2370         Use mreadlink_with_size, not xreadlink_with_size.
2371
2372 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
2373
2374         Detect porting problems to FreeBSD/arm, which has time_t wider than
2375         long int.  Original problem reported for GNU diff by Xin Li in
2376         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
2377         * modules/getdate (Depends-on): Add intprops, verify.
2378         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
2379         is an integer type no wider than long int.
2380
2381 2007-06-18  Jim Meyering  <jim@meyering.net>
2382
2383         New module: mreadlink-with-size.
2384         * MODULES.html.sh: Add mreadlink-with-size.
2385         * modules/mreadlink-with-size: New module
2386         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
2387         not xreadlink-with-size.
2388         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
2389
2390 2007-06-16  Bruno Haible  <bruno@clisp.org>
2391
2392         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
2393         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
2394         Reported by Gary V. Vaughan <gary@gnu.org>.
2395
2396 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
2397
2398         Revamp lchown so that it lives in unistd.h where it belongs.
2399         * lib/lchown.h: Remove.
2400         * lib/dirchownmod.c: Don't include lib/lchown.h.
2401         * lib/fchownat.c: Likewise.
2402         * lib/openat.c: Likewise.
2403         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
2404         does not follow symlinks.
2405         (EOPNOTSUPP): Define if not defined.
2406         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
2407         is defined to 0.
2408         (lchown): New decl.
2409         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
2410         Do not check for lchown decl.
2411         Set REPLACE_LCHOWN.
2412         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
2413         REPLACE_LCHOWN.
2414         * modules/chown: Make it clear it follows symlinks.
2415         * modules/lchown: Make it clear it doesn't follow symlinks.
2416         (Files): Remove lib/lchown.h
2417         (Depends-on): Add unistd.
2418         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
2419         (Include): Include <unistd.h>, not "lchown.h".
2420         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
2421         REPLACE_LCHOWN.
2422
2423 2007-06-15  Jim Meyering  <jim@meyering.net>
2424
2425         Change license (GPL to LGPL) of fsusage and dependents.
2426         * modules/fsusage (License): Change to LGPL.
2427         * modules/full-read (License): Likewise.
2428         * modules/full-write (License): Likewise.
2429         * modules/safe-read (License): Likewise.
2430         * modules/safe-write (License): Likewise.
2431
2432 2007-06-14  Ben Pfaff  <blp@gnu.org>
2433
2434         Missing part of allocsa -> malloca transition.
2435         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
2436         gl_MALLOCA.
2437
2438 2007-06-12  Bruno Haible  <bruno@clisp.org>
2439
2440         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
2441         to ia64, x86_64, i386.
2442         Reported by Eric Blake.
2443
2444 2007-06-12  Bruno Haible  <bruno@clisp.org>
2445
2446         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
2447         cross-compiling to x86_64.
2448
2449 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
2450
2451         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
2452         glitch reported by Ralf Wildenhues in
2453         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
2454
2455         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
2456         Vin Shelton.
2457
2458 2007-06-11  Bruno Haible  <bruno@clisp.org>
2459
2460         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
2461         replacement string.
2462         Reported by Eric Blake.
2463
2464 2007-06-10  Bruno Haible  <bruno@clisp.org>
2465
2466         Prepare vasnprintf code for use with Unicode strings.
2467         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
2468         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
2469         TYPE_U32_STRING.
2470         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
2471         a_u32_string variants.
2472         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
2473         * lib/printf-args.c: Don't include config.h and the specification
2474         header if PRINTF_FETCHARGS is already defined.
2475         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
2476         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
2477         TYPE_U16_STRING, TYPE_U32_STRING.
2478         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
2479         u16_directive, u16_directives, u32_directive, u32_directives): New
2480         types.
2481         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
2482         New declarations.
2483         * lib/printf-parse.c: Don't include config.h and the specification
2484         header if PRINTF_PARSE is already defined. Eliminate the set of
2485         parameters for WIDE_CHAR_VERSION; the user of this file must provide
2486         them now. Include c-ctype.h.
2487         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
2488         directive and CHAR_T_ONLY_ASCII.
2489         * lib/vasnprintf.c: Don't include config.h and the specification header
2490         if VASNPRINTF is already defined.
2491         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
2492         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
2493         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
2494         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
2495         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
2496         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
2497         code accordingly.
2498         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
2499         pad_ourselves also in this case, with the 'c' and 's' directives, and
2500         with a different notion of "width".
2501         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
2502
2503 2007-06-10  Bruno Haible  <bruno@clisp.org>
2504
2505         * modules/unistr/u32-mbsnlen: New file.
2506         * lib/unistr/u32-mbsnlen.c: New file.
2507
2508         * modules/unistr/u16-mbsnlen: New file.
2509         * lib/unistr/u16-mbsnlen.c: New file.
2510
2511         * modules/unistr/u8-mbsnlen: New file.
2512         * lib/unistr/u8-mbsnlen.c: New file.
2513
2514         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
2515         declarations.
2516
2517 2007-06-10  Bruno Haible  <bruno@clisp.org>
2518
2519         * lib/string_.h (mbsnlen): New declaration.
2520         * lib/mbsnlen.c: New file.
2521         * m4/mbsnlen.m4: New file.
2522         * modules/mbsnlen: New file.
2523         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
2524         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
2525         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
2526
2527 2007-06-10  Bruno Haible  <bruno@clisp.org>
2528
2529         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
2530
2531 2007-06-10  Bruno Haible  <bruno@clisp.org>
2532
2533         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
2534         * lib/mbuiter.h: Likewise.
2535
2536 2007-06-10  Bruno Haible  <bruno@clisp.org>
2537
2538         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
2539         declaration.
2540
2541 2007-06-10  Karl Berry  <karl@gnu.org>
2542
2543         * config/srclist.txt: remove gettext entries, Bruno prefers
2544         to update individually.
2545
2546 2007-06-10  Bruno Haible  <bruno@clisp.org>
2547
2548         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
2549         'maxlen'. Ensure only length + width bytes are allocated, not
2550         length + 1 + width.
2551
2552 2007-06-09  Bruno Haible  <bruno@clisp.org>
2553
2554         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
2555         (CHAR_T): Remove macro.
2556         (VASNPRINTF): Update.
2557
2558 2007-06-09  Bruno Haible  <bruno@clisp.org>
2559
2560         * MODULES.html.sh (Unicode string functions): Add the new modules.
2561
2562         * modules/uniconv/u32-conv-to-enc: New file.
2563         * lib/uniconv/u32-conv-to-enc.c: New file.
2564         * modules/uniconv/u32-conv-to-enc-tests: New file.
2565         * tests/uniconv/test-u32-conv-to-enc.c: New file.
2566
2567         * modules/uniconv/u16-conv-to-enc: New file.
2568         * lib/uniconv/u16-conv-to-enc.c: New file.
2569         * lib/uniconv/u-conv-to-enc.h: New file.
2570         * modules/uniconv/u16-conv-to-enc-tests: New file.
2571         * tests/uniconv/test-u16-conv-to-enc.c: New file.
2572
2573         * modules/uniconv/u8-conv-to-enc: New file.
2574         * lib/uniconv/u8-conv-to-enc.c: New file.
2575         * modules/uniconv/u8-conv-to-enc-tests: New file.
2576         * tests/uniconv/test-u8-conv-to-enc.c: New file.
2577
2578         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
2579         u32_conv_to_encoding): New declarations.
2580
2581 2007-06-09  Bruno Haible  <bruno@clisp.org>
2582
2583         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
2584
2585 2007-06-09  Bruno Haible  <bruno@clisp.org>
2586
2587         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
2588         * modules/malloca: Renamed from modules/allocsa, updated.
2589         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
2590         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
2591         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
2592         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
2593         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
2594         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
2595         * modules/xmalloca: Renamed from modules/xallocsa, updated.
2596         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
2597         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
2598         * modules/c-strcasestr (Depends-on): Update.
2599         * lib/c-strcasestr.c: Update.
2600         * modules/c-strstr (Depends-on): Update.
2601         * lib/c-strstr.c: Update.
2602         * modules/canonicalize-lgpl (Depends-on): Update.
2603         * lib/canonicalize-lgpl.c: Update.
2604         * modules/clean-temp (Depends-on): Update.
2605         * lib/clean-temp.c: Update.
2606         * modules/csharpcomp (Depends-on): Update.
2607         * lib/csharpcomp.c: Update.
2608         * modules/csharpexec (Depends-on): Update.
2609         * lib/csharpexec.c: Update.
2610         * modules/javacomp (Depends-on): Update.
2611         * lib/javacomp.c: Update.
2612         * modules/javaexec (Depends-on): Update.
2613         * lib/javaexec.c: Update.
2614         * modules/mbscasestr (Depends-on): Update.
2615         * lib/mbscasestr.c: Update.
2616         * modules/mbsstr (Depends-on): Update.
2617         * lib/mbsstr.c: Update.
2618         * modules/setenv (Depends-on): Update.
2619         * lib/setenv.c: Update.
2620         * modules/strcasestr (Depends-on): Update.
2621         * lib/strcasestr.c: Update.
2622         * modules/striconveha (Depends-on): Update.
2623         * lib/striconveha.c: Update.
2624         * modules/relocatable-prog-wrapper (Files): Update.
2625         * lib/relocwrapper.c: Update.
2626         * build-aux/install-reloc: Update.
2627         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
2628
2629 2007-06-08  Bruno Haible  <bruno@clisp.org>
2630
2631         Port to uClibc.
2632         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
2633         * lib/fpurge.c (fpurge): Likewise.
2634         * lib/freading.c (freading): Likewise.
2635         * lib/fseeko.c (rpl_fseeko): Likewise.
2636         * lib/fseterr.c (fseterr): Likewise.
2637         * lib/fwriting.c (fwriting): Likewise.
2638         * tests/test-fflush.c (main): Avoid a failure on uClibc.
2639
2640 2007-06-08  Bruno Haible  <bruno@clisp.org>
2641
2642         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
2643         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
2644         * modules/gettext (Files): Add m4/intlmacosx.m4.
2645
2646 2007-06-07  Bruno Haible  <bruno@clisp.org>
2647
2648         * modules/localename-tests: New file.
2649         * tests/test-localename.c: New file.
2650
2651         New module 'localename'.
2652         * lib/localename.h: New file.
2653         * lib/localename.c: New file, from GNU gettext.
2654         * m4/localename.m4: New file.
2655         * modules/localename: New file.
2656
2657 2007-06-07  Bruno Haible  <bruno@clisp.org>
2658
2659         Work around the lack of <wchar.h> on some builds of uClibc.
2660         * doc/headers/wchar.texi: Update.
2661         * lib/wchar_.h: Include <wchar.h> only if it exists.
2662         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
2663         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
2664         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
2665         doesn't exist.
2666         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
2667         * modules/mbfile (Depends-on): Add wchar.
2668         * modules/mbiter (Depends-on): Likewise.
2669         * modules/mbuiter (Depends-on): Likewise.
2670         Reported by Simon Josefsson.
2671
2672 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
2673
2674         Work around problem reported by Steven M. Schweda in
2675         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
2676         Tru64 5.1B with the Compaq compiler environment installed declares
2677         an 'isblank' function but does not define it in the C library.
2678         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
2679         * lib/regex_internal.h (isblank): Likewise.
2680         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
2681         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
2682
2683 2007-06-05  Bruno Haible  <bruno@clisp.org>
2684
2685         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
2686         ia64.
2687         * modules/printf-safe: New file.
2688         * modules/fprintf-posix (Depends-on): Add printf-safe.
2689         * modules/printf-posix (Depends-on): Likewise.
2690         * modules/snprintf-posix (Depends-on): Likewise.
2691         * modules/sprintf-posix (Depends-on): Likewise.
2692         * modules/vasnprintf-posix (Depends-on): Likewise.
2693         * modules/vasprintf-posix (Depends-on): Likewise.
2694         * modules/vfprintf-posix (Depends-on): Likewise.
2695         * modules/vprintf-posix (Depends-on): Likewise.
2696         * modules/vsnprintf-posix (Depends-on): Likewise.
2697         * modules/vsprintf-posix (Depends-on): Likewise.
2698         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
2699         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
2700         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
2701         "no" on i386, x86_64, ia64.
2702         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
2703         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
2704         on i386, x86_64, ia64.
2705         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
2706         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
2707         on i386, x86_64, ia64.
2708         * tests/test-vasnprintf-posix.c: Include float.h.
2709         (LDBL80_WORDS): New macro.
2710         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
2711         on i386, x86_64, ia64.
2712         * tests/test-vasprintf-posix.c: Include float.h.
2713         (LDBL80_WORDS): New macro.
2714         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
2715         on i386, x86_64, ia64.
2716         * tests/test-snprintf-posix.c: Include float.h.
2717         * tests/test-sprintf-posix.c: Likewise.
2718         * tests/test-vsnprintf-posix.c: Likewise.
2719         * tests/test-vsprintf-posix.c: Likewise.
2720
2721 2007-06-05  Bruno Haible  <bruno@clisp.org>
2722
2723         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
2724         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
2725         non-IEEE numbers on i386, x86_64, ia64.
2726         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
2727         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
2728         * tests/test-isnanl.h: Include float.h.
2729         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
2730
2731 2007-06-05  Bruno Haible  <bruno@clisp.org>
2732
2733         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
2734         also the %a / %A. Handle the %a / %A code before this extra handling.
2735
2736 2007-06-05  Bruno Haible  <bruno@clisp.org>
2737
2738         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
2739         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
2740
2741 2007-06-05  Bruno Haible  <bruno@clisp.org>
2742
2743         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
2744         typo in variable name.
2745
2746 2007-06-05  Eric Blake  <ebb9@byu.net>
2747
2748         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
2749         Reported by Simon Josefsson.
2750
2751 2007-06-04  Bruno Haible  <bruno@clisp.org>
2752
2753         Avoid test failures on some PowerPC platforms.
2754         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
2755         Define differently for PowerPC.
2756         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
2757         Reported by Gary V. Vaughan <gary@gnu.org>.
2758
2759 2007-06-02  Bruno Haible  <bruno@clisp.org>
2760
2761         Fix test-stdint failure on FreeBSD/ia64.
2762         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
2763         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
2764         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
2765         * doc/headers/stdint.texi: Update.
2766
2767 2007-06-01  Bruno Haible  <bruno@clisp.org>
2768
2769         * tests/test-binary-io.c (main): Pass a third argument to open().
2770         Reported by Gary V. Vaughan <gary@gnu.org>.
2771
2772 2007-06-01  Bruno Haible  <bruno@clisp.org>
2773
2774         * doc/functions/frexpl.texi: Update for mingw.
2775
2776 2007-06-01  Bruno Haible  <bruno@clisp.org>
2777
2778         * tests/test-lseek.c (main): Disable test of errno for invalid third
2779         argument.
2780         * doc/functions/lseek.texi: Update.
2781         Reported by Gary V. Vaughan <gary@gnu.org>.
2782
2783 2007-05-28  Bruno Haible  <bruno@clisp.org>
2784
2785         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
2786
2787 2007-05-31  Eric Blake  <ebb9@byu.net>
2788
2789         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
2790         cross compiling.
2791
2792 2007-05-30  Eric Blake  <ebb9@byu.net>
2793         and Bruno Haible  <bruno@clisp.org>
2794
2795         Work around mingw test failures exposed by m4-1.4.9b.
2796         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
2797         * tests/test-unistd.c: Disable uid_t and git_t tests for the
2798         moment.
2799
2800 2007-05-30  Bruno Haible  <bruno@clisp.org>
2801
2802         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
2803         assuming that they are closed. Needed on HP-UX 11.
2804
2805 2007-05-29  Bruno Haible  <bruno@clisp.org>
2806
2807         Fix a problem with #include_next.
2808         * lib/dirent_.h: Split the double-inclusion guard.
2809         * lib/fcntl_.h: Likewise.
2810         * lib/float_.h: Likewise.
2811         * lib/iconv_.h: Likewise.
2812         * lib/inttypes_.h: Likewise.
2813         * lib/locale_.h: Likewise.
2814         * lib/math_.h: Likewise.
2815         * lib/netinet_in_.h: Likewise.
2816         * lib/search_.h: Likewise.
2817         * lib/signal_.h: Likewise.
2818         * lib/stdint_.h: Likewise.
2819         * lib/stdio_.h: Likewise.
2820         * lib/stdlib_.h: Likewise.
2821         * lib/string_.h: Likewise.
2822         * lib/sys_select_.h: Likewise.
2823         * lib/sys_socket_.h: Likewise.
2824         * lib/sys_stat_.h: Likewise.
2825         * lib/sys_time_.h: Likewise.
2826         * lib/sysexits_.h: Likewise.
2827         * lib/time_.h: Likewise.
2828         * lib/unistd_.h: Likewise.
2829         * lib/wchar_.h: Likewise.
2830         * lib/wctype_.h: Likewise.
2831
2832 2007-05-29  Bruno Haible  <bruno@clisp.org>
2833
2834         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
2835         for the moment.
2836
2837 2007-05-29  Bruno Haible  <bruno@clisp.org>
2838
2839         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
2840         invocation.
2841         Reported by Eric Blake.
2842
2843 2007-05-29  Bruno Haible  <bruno@clisp.org>
2844
2845         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
2846         compiling case.
2847
2848 2007-05-29  Eric Blake  <ebb9@byu.net>
2849             Bruno Haible  <bruno@clisp.org>
2850
2851         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
2852         cross compiles.
2853
2854 2007-05-28  Eric Blake  <ebb9@byu.net>
2855
2856         * modules/closein-tests (test_closein_LDADD): Support test on
2857         cygwin with libtool.
2858
2859 2007-05-28  Bruno Haible  <bruno@clisp.org>
2860
2861         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
2862         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
2863         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
2864         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
2865         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
2866         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
2867         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
2868         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
2869         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
2870
2871 2007-05-28  Eric Blake  <ebb9@byu.net>
2872
2873         Unconditionally include <config.h> in unit tests.
2874         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
2875         * tests/test-allocsa.c, tests/test-arcfour.c,
2876         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
2877         tests/test-array_list.c, tests/test-array_oset.c,
2878         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
2879         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
2880         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
2881         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
2882         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
2883         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
2884         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
2885         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
2886         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
2887         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
2888         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
2889         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
2890         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
2891         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
2892         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
2893         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
2894         test-md5.c, test-memmem.c, test-printf-posix.c,
2895         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
2896         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
2897         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
2898         test-strcasestr.c, test-striconv.c, test-striconveh.c,
2899         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
2900         test-vasnprintf-posix2.c, test-vasnprintf.c,
2901         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
2902         test-vfprintf-posix.c, test-vprintf-posix.c,
2903         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
2904         test-xvasprintf.c: Likewise.
2905
2906 2007-05-28  Bruno Haible  <bruno@clisp.org>
2907
2908         * gnulib-tool (func_import): Remember the --with-tests command-line
2909         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
2910         Reported by Eric Blake.
2911
2912 2007-05-28  Bruno Haible  <bruno@clisp.org>
2913
2914         * modules/ftell-tests: New file.
2915         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
2916         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
2917
2918         * lib/ftell.c: New file.
2919         * modules/ftell: New file.
2920         * m4/ftell.m4: New file.
2921         * doc/functions/ftell.texi: Update.
2922         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
2923         REPLACE_FTELL.
2924         * lib/stdio_.h (rpl_ftell): New declaration.
2925         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
2926         REPLACE_FTELL.
2927
2928 2007-05-28  Eric Blake  <ebb9@byu.net>
2929
2930         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
2931
2932 2007-05-28  Bruno Haible  <bruno@clisp.org>
2933
2934         * modules/fseek-tests: New file.
2935         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
2936         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
2937
2938         * lib/fseek.c: New file.
2939         * modules/fseek: New file.
2940         * m4/fseek.m4: New file.
2941         * doc/functions/fseek.texi: Update.
2942         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
2943         REPLACE_FSEEK.
2944         * lib/stdio_.h (rpl_fseek): New declaration.
2945         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
2946         REPLACE_FSEEK.
2947
2948 2007-05-28  Bruno Haible  <bruno@clisp.org>
2949
2950         * lib/stdio_.h (fflush): More comments.
2951
2952 2007-05-28  Bruno Haible  <bruno@clisp.org>
2953
2954         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
2955         runtime test.
2956
2957 2007-05-28  Eric Blake  <ebb9@byu.net>
2958
2959         Improve lseek module.
2960         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
2961         * lib/unistd_.h (lseek): Scale back link warning message.
2962         * tests/test-lseek.c: Beef up test.
2963         * tests/test-lseek.sh: Exercise more facets of lseek.
2964         Reported by Bruno Haible.
2965
2966 2007-05-28  Bruno Haible  <bruno@clisp.org>
2967
2968         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
2969         to define.
2970
2971 2007-05-27  Bruno Haible  <bruno@clisp.org>
2972
2973         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
2974
2975 2007-05-27  Bruno Haible  <bruno@clisp.org>
2976
2977         * modules/openmp: New file.
2978         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
2979         Noah Misch.
2980
2981 2007-05-26  Bruno Haible  <bruno@clisp.org>
2982
2983         * modules/chdir-long (Depends-on): Add fchdir.
2984         * modules/chdir-safer (Depends-on): Likewise.
2985         * modules/fts (Depends-on): Likewise.
2986         * modules/fts-lgpl (Depends-on): Likewise.
2987         * modules/openat (Depends-on): Likewise.
2988         * modules/savewd (Depends-on): Likewise.
2989
2990 2007-05-24  Eric Blake  <ebb9@byu.net>
2991
2992         Fix lseek on mingw.
2993         * modules/lseek: New module.
2994         * m4/lseek.m4: New file.
2995         * lib/lseek.c: New file.
2996         * modules/lseek-tests: New file.
2997         * tests/test-lseek.c: New file.
2998         * tests/test-lseek.sh: New file.
2999         * MODULES.html.sh: Document lseek module.
3000         * modules/fflush (Depends-on): Add lseek, fseeko.
3001         * modules/fseeko (Depends-on): Likewise.
3002         * modules/ftello (Depends-on): Likewise.
3003         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
3004         broken.
3005         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
3006         broken.
3007         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
3008         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
3009         * lib/ftello.c (rpl_ftello): Likewise.
3010         * tests/test-fseeko.c (main): Test this.
3011         * tests/test-fseeko.sh: Likewise.
3012         * tests/test-ftello.c (main): Likewise.
3013         * tests/test-ftello.sh: Likewise.
3014         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
3015         implies replacing fseek.
3016         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
3017         HAVE_FTELLO.
3018         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
3019         * modules/unistd (Makefile.am): Likewise.
3020         * lib/unistd_.h (lseek): Declare a replacement.
3021         * doc/functions/lseek.texi (lseek): Document this fix.
3022         * doc/functions/fseek.texi (fseek): Likewise.
3023         * doc/functions/ftell.texi (ftell): Likewise.
3024
3025 2007-05-24  Bruno Haible  <bruno@clisp.org>
3026
3027         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
3028         in the printed representation of a NaN.
3029         * tests/test-vasprintf-posix.c (test_function): Likewise.
3030         * tests/test-snprintf-posix.h (test_function): Likewise.
3031         * tests/test-sprintf-posix.h (test_function): Likewise.
3032         Reported by Eric Blake.
3033
3034 2007-05-23  Eric Blake  <ebb9@byu.net>
3035
3036         Fix fseeko/ftello on cygwin 1.5.24.
3037         * doc/functions/fseeko.texi (fseeko): Document the fix.
3038         * doc/functions/ftello.texi (ftello): Document the fix.
3039         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
3040         * doc/functions/stdout.text (stdout): New file.
3041         * doc/functions/stderr.text (stderr): New file.
3042         * doc/gnulib.texi (Function Substitutes): Use new files.
3043         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
3044         prior to 1.7.0.
3045         * tests/test-ftello.c (main): Likewise for ftello.
3046         * tests/test-fseeko.sh: New file.
3047         * tests/test-ftello.sh: New file.
3048         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
3049         with seekable stdin.
3050         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
3051         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
3052         (gl_REPLACE_FSEEKO): New macro.
3053         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
3054         * modules/fseeko (Files): Distribute fseeko.c.
3055         * modules/ftello (Files): Distribute ftello.c.
3056         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
3057         mode.
3058         * lib/ftello.c (rpl_ftello): New file.
3059         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
3060         fseeko, ftello.
3061         (gl_STDIN_LARGE_OFFSET): New macro.
3062         * modules/stdio (Makefile.am): Perform the replacement.
3063         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
3064
3065 2007-05-23  Bruno Haible  <bruno@clisp.org>
3066
3067         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
3068         GNULIB_POSIXCHECK is defined.
3069
3070 2007-05-21  Bruno Haible  <bruno@clisp.org>
3071
3072         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
3073         Check also the output for NaN arguments. When cross-compiling, guess
3074         no on IRIX.
3075         * lib/vasnprintf.c: Update comments.
3076         * tests/test-vasnprintf-posix.c (strisnan): New function.
3077         (test_function): Use it.
3078         * tests/test-vasprintf-posix.c (strisnan): New function.
3079         (test_function): Use it.
3080         * tests/test-snprintf-posix.h (strisnan): New function.
3081         (test_function): Use it.
3082         * tests/test-sprintf-posix.h (strisnan): New function.
3083         (test_function): Use it.
3084         Reported by Eric Blake.
3085
3086 2007-05-20  Bruno Haible  <bruno@clisp.org>
3087
3088         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
3089         numbers that fails on BeOS.
3090         * doc/functions/frexpl.texi: Update.
3091
3092 2007-05-20  Jim Meyering  <jim@meyering.net>
3093
3094         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
3095         forced upon us by glibc-2.6.
3096
3097 2007-05-20  Bruno Haible  <bruno@clisp.org>
3098
3099         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
3100         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
3101         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
3102         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
3103         NEED_PRINTF_INFINITE.
3104         (is_infinitel): New function.
3105         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
3106         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
3107         gl_PREREQ_VASNPRINTF_INFINITE.
3108         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
3109         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3110         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
3111         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
3112         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
3113         gl_PREREQ_VASNPRINTF_INFINITE.
3114         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
3115         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3116         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3117         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3118         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3119         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3120         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3121         * doc/functions/fprintf.texi: Update.
3122         * doc/functions/printf.texi: Update.
3123         * doc/functions/snprintf.texi: Update.
3124         * doc/functions/sprintf.texi: Update.
3125         * doc/functions/vfprintf.texi: Update.
3126         * doc/functions/vprintf.texi: Update.
3127         * doc/functions/vsnprintf.texi: Update.
3128         * doc/functions/vsprintf.texi: Update.
3129
3130 2007-05-20  Bruno Haible  <bruno@clisp.org>
3131
3132         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
3133         was not found in libc.
3134         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
3135
3136 2007-05-20  Bruno Haible  <bruno@clisp.org>
3137
3138         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
3139         printed as "-nan" instead of "nan".
3140         * tests/test-vasprintf-posix.c (test_function): Likewise.
3141         * tests/test-snprintf-posix.h (test_function): Likewise.
3142         * tests/test-sprintf-posix.h (test_function): Likewise.
3143         Needed for HP-UX 11.
3144
3145 2007-05-20  Jim Meyering  <jim@meyering.net>
3146
3147         Fix buggy test for the fchownat-deref bug.
3148         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
3149         symlink required for the run-test.  Without it, this test would
3150         always declare that fchownat doesn't work, and client code would
3151         unnecessarily use the replacement function with fixed libc.
3152         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
3153         Reported by Greg Schafer.
3154
3155 2007-05-19  Bruno Haible  <bruno@clisp.org>
3156
3157         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
3158         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
3159         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
3160         Needed for IRIX 6.5 and Solaris 2.5.1.
3161
3162 2007-05-19  Bruno Haible  <bruno@clisp.org>
3163
3164         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
3165         (test_function): Skip tests involving -0.0 on platforms where
3166         -0.0 = 0.0.
3167         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
3168         (test_function): Skip tests involving -0.0 on platforms where
3169         -0.0 = 0.0.
3170         * tests/test-snprintf-posix.h (have_minus_zero): New function.
3171         (test_function): Skip tests involving -0.0 on platforms where
3172         -0.0 = 0.0.
3173         * tests/test-sprintf-posix.h (have_minus_zero): New function.
3174         (test_function): Skip tests involving -0.0 on platforms where
3175         -0.0 = 0.0.
3176         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
3177         tests.
3178         * tests/test-printf-posix.h (test_function): Likewise.
3179         * tests/test-printf-posix.output: Remove all -0.0 related results.
3180         Needed for IRIX 6.5.
3181
3182 2007-05-19  Bruno Haible  <bruno@clisp.org>
3183
3184         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
3185         printed as "nan0x7fffffff" instead of "nan".
3186         * tests/test-vasprintf-posix.c (test_function): Likewise.
3187         * tests/test-snprintf-posix.h (test_function): Likewise.
3188         * tests/test-sprintf-posix.h (test_function): Likewise.
3189         * tests/test-fprintf-posix.h (NaN): Remove macro.
3190         (test_function): Remove all NaN related tests.
3191         * tests/test-printf-posix.h (NaN): Remove macro.
3192         (test_function): Remove all NaN related tests.
3193         * tests/test-printf-posix.output: Remove all NaN related results.
3194         Needed for IRIX 6.5.
3195
3196 2007-05-19  Bruno Haible  <bruno@clisp.org>
3197
3198         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
3199         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
3200
3201 2007-05-19  Bruno Haible  <bruno@clisp.org>
3202
3203         * lib/float_.h: New file.
3204         * m4/float_h.m4: New file.
3205         * modules/float: New file.
3206         * modules/isnanl (Dependencies): Add float.
3207         * modules/isnanl-nolibm (Dependencies): Likewise.
3208         * modules/mathl (Dependencies): Likewise.
3209         * modules/printf-frexpl (Dependencies): Likewise.
3210         * modules/signbit (Dependencies): Likewise.
3211         * modules/vasnprintf (Dependencies): Likewise.
3212         * doc/headers/float.texi: Update.
3213
3214 2007-05-19  Jim Meyering  <jim@meyering.net>
3215
3216         * lib/utimens.c (gl_futimens): Rename from futimens,
3217         now that glibc-2.6 declares futimens.
3218         * lib/utimens.h: Likewise.
3219
3220 2007-05-19  Bruno Haible  <bruno@clisp.org>
3221
3222         Avoid test failures on mingw.
3223         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
3224         * tests/test-printf-posix.sh: Likewise.
3225         * tests/test-vfprintf-posix.sh: Likewise.
3226         * tests/test-vprintf-posix.sh: Likewise.
3227
3228 2007-05-19  Bruno Haible  <bruno@clisp.org>
3229
3230         Fix *printf result for NaN, Inf, -0.0 on mingw.
3231         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
3232         * lib/vasnprintf.c: Include math.h and isnan.h.
3233         (is_infinite_or_zero): New function.
3234         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
3235         values in the %f, %F, %e, %E, %g, %G directives.
3236         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
3237         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3238         gl_PRINTF_INFINITE and test its result. Invoke
3239         gl_PREREQ_VASNPRINTF_INFINITE.
3240         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
3241         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3242         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3243         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3244         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3245         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3246         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3247         * doc/functions/fprintf.texi: Update.
3248         * doc/functions/printf.texi: Update.
3249         * doc/functions/snprintf.texi: Update.
3250         * doc/functions/sprintf.texi: Update.
3251         * doc/functions/vfprintf.texi: Update.
3252         * doc/functions/vprintf.texi: Update.
3253         * doc/functions/vsnprintf.texi: Update.
3254         * doc/functions/vsprintf.texi: Update.
3255
3256 2007-05-19  Bruno Haible  <bruno@clisp.org>
3257
3258         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
3259         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
3260         Instead of multiplying with 10^k, set extra_zeroes to k.
3261         (scale10_round_long_double): Remove function.
3262
3263 2007-05-18  Bruno Haible  <bruno@clisp.org>
3264
3265         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
3266         introduced on 2007-05-06.
3267
3268 2007-05-18  Bruno Haible  <bruno@clisp.org>
3269
3270         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
3271         %g directives.
3272         * tests/test-vasprintf-posix.c (test_function): Likewise.
3273         * tests/test-snprintf-posix.h (test_function): Likewise.
3274         * tests/test-sprintf-posix.h (test_function): Likewise.
3275
3276 2007-05-18  Bruno Haible  <bruno@clisp.org>
3277
3278         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
3279         (strmatch): New function.
3280         (test_function): Test the %f directive on numbers of various exponents.
3281         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
3282         (strmatch): New function.
3283         (test_function): Test the %f directive on numbers of various exponents.
3284         * tests/test-snprintf-posix.h (strmatch): New function.
3285         (test_function): Test the %f directive on numbers of various exponents.
3286         * tests/test-sprintf-posix.h (strmatch): New function.
3287         (test_function): Test the %f directive on numbers of various exponents.
3288         * tests/test-snprintf-posix.c (SIZEOF): New macro.
3289         * tests/test-sprintf-posix.c (SIZEOF): New macro.
3290         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
3291         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
3292
3293 2007-05-18  Bruno Haible  <bruno@clisp.org>
3294
3295         Add support for 'long double' number output.
3296         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
3297         * lib/vasnprintf.c: Include math.h and float+.h.
3298         (mp_limb_t): New type.
3299         (GMP_LIMB_BITS): New macro.
3300         (mp_twolimb_t): New type.
3301         (GMP_TWOLIMB_BITS): New macro.
3302         (mpn_t): New type.
3303         (multiply, divide, convert_to_decimal, decode_long_double,
3304         scale10_round_long_double, scale10_round_decimal_long_double,
3305         floorlog10l): New functions.
3306         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
3307         for the %f, %F, %e, %E, %g, %G directives.
3308         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
3309         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3310         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
3311         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
3312         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
3313         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3314         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3315         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3316         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3317         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3318         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3319         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
3320         * modules/snprintf-posix (Depends-on): Likewise.
3321         * modules/sprintf-posix (Depends-on): Likewise.
3322         * modules/vasnprintf-posix (Depends-on): Likewise.
3323         * modules/vasprintf-posix (Depends-on): Likewise.
3324         * modules/vfprintf-posix (Depends-on): Likewise.
3325         * modules/vsnprintf-posix (Depends-on): Likewise.
3326         * modules/vsprintf-posix (Depends-on): Likewise.
3327         * modules/vasnprintf (Files): Add lib/float+.h.
3328         * doc/functions/fprintf.texi: Update.
3329         * doc/functions/printf.texi: Update.
3330         * doc/functions/snprintf.texi: Update.
3331         * doc/functions/sprintf.texi: Update.
3332         * doc/functions/vfprintf.texi: Update.
3333         * doc/functions/vprintf.texi: Update.
3334         * doc/functions/vsnprintf.texi: Update.
3335         * doc/functions/vsprintf.texi: Update.
3336
3337 2007-05-18  Bruno Haible  <bruno@clisp.org>
3338
3339         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
3340
3341 2007-05-18  Bruno Haible  <bruno@clisp.org>
3342
3343         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
3344         for printing 64-bit integers. Needed for mingw.
3345
3346 2007-05-18  Bruno Haible  <bruno@clisp.org>
3347
3348         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
3349         gl_FUNC_FREXPL_WORKS.
3350         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
3351
3352 2007-05-18  Bruno Haible  <bruno@clisp.org>
3353
3354         * modules/frexpl-nolibm-tests: New file.
3355
3356         * modules/frexpl-nolibm: New file.
3357         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
3358
3359 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
3360
3361         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
3362         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
3363         GCC 4.2, which otherwise issues a lot of warnings.
3364         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
3365         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
3366         Likewise.
3367         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
3368         * modules/iconv_open (iconv.h): Likewise.
3369         * modules/locale (locale.h): Likewise.
3370         * modules/netinet_in (netinet/in.h): Likewise.
3371         * modules/sys_select (sys_select.h): Likewise.
3372         * modules/sys_socket (sys/socket.h): Likewise.
3373         * modules/sys_stat (sys/stat.h): Likewise.
3374         * modules/sysexits (sysexits.h): Likewise.
3375         * modules/unistd (unistd.h): Likewise.
3376
3377 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3378
3379         * modules/closein-tests (Makefile.am): Distribute
3380         `test-closein.sh'.
3381
3382 2007-05-17  Bruno Haible  <bruno@clisp.org>
3383
3384         * tests/test-printf-posix.output: Renamed from
3385         tests/test-fprintf-posix.out.
3386         * modules/fprintf-posix-tests: Update.
3387         * modules/printf-posix-tests: Update.
3388         * modules/vfprintf-posix-tests: Update.
3389         * modules/vprintf-posix-tests: Update.
3390         * tests/test-fprintf-posix.sh: Update.
3391         * tests/test-printf-posix.sh: Update.
3392         * tests/test-vfprintf-posix.sh: Update.
3393         * tests/test-vprintf-posix.sh: Update.
3394         Reported by Ralf Wildenhues.
3395
3396 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
3397
3398         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
3399         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
3400         GCC 4.2, which otherwise issues a lot of warnings.
3401         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
3402         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
3403         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
3404         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
3405         it should no longer be needed.
3406         * lib/string_.h: Likewise.
3407         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
3408         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
3409         * modules/inttypes (inttypes.h): Likewise.
3410         * modules/math (math.h): Likewise.
3411         * modules/search (search.h): Likewise.
3412         * modules/signal (signal.h): Likewise.
3413         * modules/stdint (stdint.h): Likewise.
3414         * modules/stdio (stdio.h): Likewise.
3415         * modules/stdlib (stdlib.h): Likewise.
3416         * modules/string (string.h): Likewise.
3417         * modules/sys_time (sys/time.h): Likewise.
3418         * modules/time (time.h): Likewise.
3419         * modules/wchar (wchar.h): Likewise.
3420         * modules/wctype (wtype.h): Likewise.
3421
3422 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
3423
3424         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
3425
3426 2007-05-13  Bruno Haible  <bruno@clisp.org>
3427
3428         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
3429         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
3430         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
3431         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
3432         (gl_PREREQ_STRTOK_R): Don't require it here.
3433
3434 2007-05-13  Bruno Haible  <bruno@clisp.org>
3435
3436         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
3437         when used in C++ mode.
3438
3439 2007-05-12  Bruno Haible  <bruno@clisp.org>
3440
3441         * lib/linebuffer.h: Tweak doc.
3442         * lib/linebuffer.c: Likewise.
3443
3444 2007-05-12  James Youngman  <jay@gnu.org>
3445
3446         * lib/linebuffer.c (readlinebuffer_delim): New function,
3447         like readlinebuffer, but use a caller-specified delimiter.
3448         (readlinebuffer): Just call readlinebuffer_delim with '\n'
3449         as the delimiter.
3450         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
3451
3452 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
3453
3454         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
3455         * modules/openat (Files): Remove openat-die.c.
3456         (Depends-on): Add openat-die.
3457         * modules/openat-die: New module.
3458
3459 2007-05-06  Bruno Haible  <bruno@clisp.org>
3460
3461         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
3462         Update with info about Cygwin.
3463         * doc/functions/fprintf.texi: Update.
3464         * doc/functions/printf.texi: Update.
3465         * doc/functions/snprintf.texi: Update.
3466         * doc/functions/sprintf.texi: Update.
3467         * doc/functions/vfprintf.texi: Update.
3468         * doc/functions/vprintf.texi: Update.
3469         * doc/functions/vsnprintf.texi: Update.
3470         * doc/functions/vsprintf.texi: Update.
3471         Reported by Eric Blake.
3472
3473 2007-05-06  Bruno Haible  <bruno@clisp.org>
3474
3475         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
3476         padding ourselves for the floating-point directives.
3477         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
3478         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
3479         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
3480         gl_PRINTF_FLAG_ZERO and test its result. Invoke
3481         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
3482         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3483         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
3484         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3485         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3486         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3487         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3488         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3489         * tests/test-snprintf-posix.h (test_function): Also check the width
3490         and some flags in the %f directive.
3491         * tests/test-sprintf-posix.h (test_function): Likewise.
3492         * tests/test-vasnprintf-posix.c (test_function): Likewise.
3493         * tests/test-vasprintf-posix.c (test_function): Likewise.
3494         * doc/functions/fprintf.texi: Update.
3495         * doc/functions/printf.texi: Update.
3496         * doc/functions/snprintf.texi: Update.
3497         * doc/functions/sprintf.texi: Update.
3498         * doc/functions/vfprintf.texi: Update.
3499         * doc/functions/vprintf.texi: Update.
3500         * doc/functions/vsnprintf.texi: Update.
3501         * doc/functions/vsprintf.texi: Update.
3502
3503 2007-05-06  Bruno Haible  <bruno@clisp.org>
3504
3505         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
3506         pass the ' flag character to sprintf or snprintf.
3507         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
3508         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
3509         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
3510         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
3511         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
3512         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3513         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
3514         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3515         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3516         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3517         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3518         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3519         * tests/test-snprintf-posix.h (test_function): Also check the grouping
3520         flag.
3521         * tests/test-sprintf-posix.h (test_function): Likewise.
3522         * tests/test-vasnprintf-posix.c (test_function): Likewise.
3523         * tests/test-vasprintf-posix.c (test_function): Likewise.
3524         * doc/functions/fprintf.texi: Update.
3525         * doc/functions/printf.texi: Update.
3526         * doc/functions/snprintf.texi: Update.
3527         * doc/functions/sprintf.texi: Update.
3528         * doc/functions/vfprintf.texi: Update.
3529         * doc/functions/vprintf.texi: Update.
3530         * doc/functions/vsnprintf.texi: Update.
3531         * doc/functions/vsprintf.texi: Update.
3532
3533 2007-05-01  Bruno Haible  <bruno@clisp.org>
3534
3535         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
3536
3537 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
3538
3539         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
3540         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
3541
3542 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
3543
3544         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
3545         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
3546         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
3547
3548 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
3549
3550         * lib/argp-help.c (struct hol_entry): New member `ord'.
3551         (HOL_ENTRY_PTRCMP): Use ord for comparison
3552         (hol_sort): Initialize ord.
3553
3554 2007-05-01  Bruno Haible  <bruno@clisp.org>
3555
3556         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
3557         Reported by Eric Blake.
3558         * doc/gnulib.texi (Function Substitutes): Update.
3559
3560 2007-05-01  Bruno Haible  <bruno@clisp.org>
3561
3562         * doc/functions.texi: Remove file, now redundant through
3563         doc/functions/*.texi.
3564
3565 2007-05-01  Bruno Haible  <bruno@clisp.org>
3566
3567         * modules/argp (Depends-on): Add sleep.
3568
3569 2007-05-01  Bruno Haible  <bruno@clisp.org>
3570
3571         * modules/sleep-tests: New file.
3572         * tests/test-sleep.c: New file.
3573
3574         * modules/sleep: New file.
3575         * lib/sleep.c: New file.
3576         * m4/sleep.m4: New file.
3577         * lib/unistd_.h (sleep): New declaration.
3578         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
3579         HAVE_SLEEP.
3580         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
3581         * doc/functions/sleep.texi: Document the sleep module.
3582
3583 2007-05-01  Bruno Haible  <bruno@clisp.org>
3584
3585         * lib/sigprocmask.h: Remove file.
3586         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
3587         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
3588         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
3589         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
3590         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
3591         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
3592         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
3593         HAVE_SIGSET_T as a shell variable.
3594         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
3595         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
3596         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
3597         (Depends-on): Add signal. Remove verify.
3598         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
3599         (Include): Mention <signal.h> instead of sigprocmask.h.
3600         * NEWS: Mention the change.
3601         * lib/fatal-signal.c: Don't include sigprocmask.h.
3602
3603 2007-05-01  Bruno Haible  <bruno@clisp.org>
3604
3605         * modules/signal: New file.
3606         * lib/signal_.h: New file.
3607         * m4/signal_h.m4: New file.
3608
3609 2007-05-01  Bruno Haible  <bruno@clisp.org>
3610
3611         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
3612         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
3613         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
3614         HAVE_WCTYPE_CTMP_BUG into wctype.h.
3615
3616 2007-05-01  Bruno Haible  <bruno@clisp.org>
3617
3618         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
3619         configure time.
3620         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
3621         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
3622         * modules/sys_stat (Makefile.am): Substitute their values into
3623         sys/stat.h.
3624
3625 2007-05-01  Bruno Haible  <bruno@clisp.org>
3626
3627         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
3628         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
3629         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
3630
3631 2007-05-01  Bruno Haible  <bruno@clisp.org>
3632
3633         * doc/header/assert.texi: Undo last change: don't mention the gnulib
3634         'assert' module here.
3635
3636 2007-05-01  Bruno Haible  <bruno@clisp.org>
3637
3638         * doc/functions/*.texi: New files.
3639         * doc/functions/google-ranking.txt: New file.
3640         * doc/gnulib.texi (Function Substitutes): New chapter.
3641         (ctime, inet_ntoa): Remove sections.
3642         * doc/ctime.texi: Remove file.
3643         * doc/inet_ntoa.texi: Remove file.
3644         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
3645         dependencies.
3646         (%.info): New rule, specifying a --reference-limit.
3647
3648 2007-05-01  Bruno Haible  <bruno@clisp.org>
3649
3650         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
3651
3652 2007-05-01  Bruno Haible  <bruno@clisp.org>
3653
3654         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
3655         the portability of 'mkdir' to mingw systems.
3656
3657 2007-05-01  Bruno Haible  <bruno@clisp.org>
3658
3659         * doc/headers/google-ranking.txt: New file.
3660
3661 2007-04-30  Eric Blake  <ebb9@byu.net>
3662
3663         Prefer fseeko to fseek.
3664         * modules/getpass (Depends-on): Add fseeko.
3665         * lib/getpass.c (getpass): Use fseeko, not fseek.
3666
3667 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
3668
3669         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
3670         assumes the sorting is stable, while most qsort implementations
3671         are not.  Use argument addresses to ensure they never compare as
3672         equal.
3673
3674         * tests/test-argp-2.sh (usage-indent test): Fix output
3675         (func_compare): Restore diff options
3676         * tests/test-argp.c: Restore #include "progname.h"
3677
3678 2007-04-29  Bruno Haible  <bruno@clisp.org>
3679
3680         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
3681         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
3682         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
3683         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3684         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
3685         (configure.ac): Define CHECK_SNPRINTF_POSIX.
3686         (TESTS, check_PROGRAMS): Add test-snprintf.
3687         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
3688         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
3689         (TESTS, check_PROGRAMS): Add test-vsnprintf.
3690         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
3691         assertions that fail on HP-UX, OSF/1, or IRIX.
3692         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
3693
3694 2007-04-29  Bruno Haible  <bruno@clisp.org>
3695
3696         * MODULES.html.sh (posix_functions): Remove 'contents'.
3697
3698 2007-04-29  Karl Berry  <karl@gnu.org>
3699
3700         * config/srclist.txt (gendocs_template_min): new entry.
3701
3702 2007-04-29  Bruno Haible  <bruno@clisp.org>
3703
3704         Work around fpurge bug on BSD systems.
3705         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
3706         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
3707         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
3708         fpurge to rpl_fpurge if the system already has this function.
3709         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
3710         the case where the system already has this function. Correct invariants
3711         on BSD systems.
3712         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
3713         BSD systems.
3714
3715 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
3716
3717         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
3718         proposed by Sven Verdoolaege.
3719
3720         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
3721         options.
3722         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
3723         (usage and help tests): Update
3724
3725 2007-04-29  Bruno Haible  <bruno@clisp.org>
3726
3727         * tests/test-fflush.c (main): Use a file of size 17, not 10.
3728         Print more information in case of failure. Disable a test on BeOS.
3729
3730 2007-04-29  Bruno Haible  <bruno@clisp.org>
3731
3732         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
3733         This helps debugging on systems on which no gdb is available.
3734
3735 2007-04-29  Bruno Haible  <bruno@clisp.org>
3736
3737         * lib/freading.h: Improve comments.
3738         * lib/fwriting.h: Likewise.
3739         * tests/test-freading.c (main): Don't check freading immediately after
3740         repositioning. Needed for glibc.
3741
3742 2007-04-29  Bruno Haible  <bruno@clisp.org>
3743
3744         * lib/freading.c (freading): Trivial simplification.
3745
3746 2007-04-28  Bruno Haible  <bruno@clisp.org>
3747
3748         * tests/test-fwriting.c (main): Also test the interaction between
3749         fflush and fwriting.
3750         * modules/fwriting-tests (Depends-on): Add fflush.
3751
3752         * tests/test-freading.c (main): Also test the interaction between
3753         fflush and freading.
3754         * modules/freading-tests (Depends-on): Add fflush.
3755
3756 2007-04-28  Bruno Haible  <bruno@clisp.org>
3757
3758         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
3759         fseeko and ftello.
3760         Suggested by Eric Blake.
3761
3762 2007-04-28  Jim Meyering  <jim@meyering.net>
3763
3764         Avoid false-negative in gl_STDINT_H's C99 conformance test.
3765         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
3766         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
3767
3768 2007-04-27  Eric Blake  <ebb9@byu.net>
3769
3770         * doc/headers/assert.texi (assert.h): Document assert module use.
3771
3772 2007-04-27  Bruno Haible  <bruno@clisp.org>
3773
3774         * doc/headers/*.texi: New files.
3775         * doc/gnulib.texi (Header File Substitutes): New chapter.
3776         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
3777         dependencies.
3778         (standards.info ,standards.html, standards.dvi): Update dependencies.
3779         (mostlyclean, clean): New targets.
3780
3781 2007-04-27  Bruno Haible  <bruno@clisp.org>
3782
3783         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
3784         * modules/sysexits (Files, Makefile.am): Update.
3785
3786         * lib/sys_socket_.h: Renamed from lib/socket_.h.
3787         * modules/sys_socket (Files, Makefile.am): Update.
3788
3789         * lib/sys_stat_.h: Renamed from lib/stat_.h.
3790         * modules/sys_stat (Files, Makefile.am): Update.
3791
3792 2007-04-27  Eric Blake  <ebb9@byu.net>
3793
3794         * lib/freading.h: Improve comments.
3795         * lib/fwriting.h: Likewise.
3796         * lib/fflush.c: Likewise.
3797
3798         Fix closein for mingw.
3799         * modules/closein-tests: Add tests for closein.
3800         * tests/test-closein.c: New file.
3801         * tests/test-closein.sh: Likewise.
3802         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
3803         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
3804
3805 2007-04-27  Bruno Haible  <bruno@clisp.org>
3806
3807         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
3808         version is < 6.
3809         * lib/math_.h [__DECC]: Likewise.
3810         * lib/stdio_.h [__DECC]: Likewise.
3811         * lib/stdlib_.h [__DECC]: Likewise.
3812         * lib/string_.h [__DECC]: Likewise.
3813         * lib/time_.h [__DECC]: Likewise.
3814         * lib/wchar_.h [__DECC]: Likewise.
3815         * lib/wctype_.h [__DECC]: Likewise.
3816
3817 2007-04-27  Bruno Haible  <bruno@clisp.org>
3818
3819         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
3820
3821 2007-04-27  Bruno Haible  <bruno@clisp.org>
3822
3823         * lib/fflush.c: Add comments.
3824         * modules/fpurge-tests (Depends-on): Add fflush.
3825         * modules/freadable-tests (Depends-on): Likewise.
3826         * modules/fwritable-tests (Depends-on): Likewise.
3827
3828 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
3829
3830         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
3831         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
3832         Report by Bruno Haible <bruno@clisp.org>.
3833
3834 2007-04-26  Eric Blake  <ebb9@byu.net>
3835
3836         Fix fflush on mingw.
3837         * modules/fflush (Depends-on): Add freading.
3838         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
3839         but unread data.
3840
3841 2007-04-26  Eric Blake  <ebb9@byu.net>
3842         and Bruno Haible  <bruno@clisp.org>
3843
3844         Implement freading and fwriting.
3845         * lib/freading.c: New file.
3846         * lib/freading.h: Likewise.
3847         * m4/freading.m4: Likewise.
3848         * modules/freading: Likewise.
3849         * modules/freading-tests: Likewise.
3850         * tests/test-freading.c: Likewise.
3851         * lib/fwriting.c: New file.
3852         * lib/fwriting.h: Likewise.
3853         * m4/fwriting.m4: Likewise.
3854         * modules/fwriting: Likewise.
3855         * modules/fwriting-tests: Likewise.
3856         * tests/test-fwriting.c: Likewise.
3857         * MODULES.html.sh (File stream based Input/Output): Mention them.
3858
3859 2007-04-26  Bruno Haible  <bruno@clisp.org>
3860
3861         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
3862         'long' when we assume it.
3863         Suggested by Eric Blake.
3864
3865 2007-04-26  Bruno Haible  <bruno@clisp.org>
3866
3867         Ensure fseeko, ftello are declared on glibc systems.
3868         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
3869         * modules/fseeko (configure.ac-early): Likewise.
3870         * modules/ftello (configure.ac-early): Likewise.
3871         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
3872         AC_FUNC_FSEEKO for this.
3873         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
3874         (gl_CHECK_FSEEKO): Remove macro.
3875
3876 2007-04-26  Bruno Haible  <bruno@clisp.org>
3877
3878         * tests/test-fflush.c (main): Also check the ftell result after
3879         fflush and fseek/fseeko.
3880         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
3881         file descriptor position cache in the stream.
3882         * lib/fseeko.c (rpl_fseeko): Likewise.
3883
3884 2007-04-26  Bruno Haible  <bruno@clisp.org>
3885
3886         * modules/fflush-tests (Depends-on): Add fseeko.
3887
3888 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
3889             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3890
3891         * lib/argz_.h: ensure error_t definition is obtained in same
3892         mechanism system argz.h would have.
3893         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
3894         argz facilities are known bad.  Err on the side of caution if
3895         cross-compiling.
3896
3897 2007-04-25  Eric Blake  <ebb9@byu.net>
3898
3899         * lib/fpurge.c (includes): Use stdlib.h for free.
3900         * tests/test-fflush.c (main): Also test fflush-fseeko.
3901
3902 2007-04-25  Bruno Haible  <bruno@clisp.org>
3903
3904         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
3905         * lib/fseeko.c: New file.
3906         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
3907         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
3908         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
3909         gl_FUNC_FSEEKO.
3910         (gl_FUNC_FSEEKO): Invoke it.
3911         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
3912         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
3913         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
3914
3915 2007-04-25  Bruno Haible  <bruno@clisp.org>
3916
3917         * modules/fflush (Depends-on): Add ftello.
3918
3919 2007-04-25  Bruno Haible  <bruno@clisp.org>
3920
3921         * modules/ftello-tests: New file.
3922         * tests/test-ftello.c: New file.
3923
3924         * modules/ftello: New file.
3925         * m4/ftello.m4: New file.
3926         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
3927         HAVE_FTELLO.
3928         * lib/stdio_.h (ftello): New declaration.
3929         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
3930         HAVE_FTELLO.
3931
3932 2007-04-25  Bruno Haible  <bruno@clisp.org>
3933
3934         * modules/fseeko-tests: New file.
3935         * tests/test-fseeko.c: New file.
3936
3937         * modules/fseeko: New file.
3938         * m4/fseeko.m4: New file.
3939         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
3940         HAVE_FSEEKO.
3941         * lib/stdio_.h (fseeko): New declaration.
3942         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
3943         HAVE_FSEEKO.
3944
3945 2007-04-25  Bruno Haible  <bruno@clisp.org>
3946
3947         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
3948
3949 2007-04-25  Bruno Haible  <bruno@clisp.org>
3950
3951         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
3952         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
3953         * tests/test-unistd.c: Likewise.
3954         * tests/test-fcntl.c: Likewise.
3955
3956 2007-04-23  Eric Blake  <ebb9@byu.net>
3957
3958         * lib/fflush.c: Fix missing include.
3959         Reported by Bruno Haible.
3960
3961 2007-04-23  Bruno Haible  <bruno@clisp.org>
3962
3963         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
3964         Reported by Eric Blake.
3965
3966 2007-04-23  Bruno Haible  <bruno@clisp.org>
3967
3968         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
3969
3970 2007-04-23  Bruno Haible  <bruno@clisp.org>
3971
3972         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
3973
3974 2007-04-23  Bruno Haible  <bruno@clisp.org>
3975
3976         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
3977         Needed on HP-UX 11.
3978
3979 2007-04-16  Eric Blake  <ebb9@byu.net>
3980
3981         Make fflush rely on fpurge.
3982         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
3983         open coding all variants.
3984         * modules/fflush (Depends-on): Add fpurge and unistd.
3985         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
3986         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
3987
3988         Fix --with-tests compilation on cygwin.
3989         * modules/argmatch-tests (Makefile.am): List gnulib library first
3990         in LDADD.
3991         * modules/argp-tests (Makefile.am): Likewise.
3992         * modules/array-list-tests (Makefile.am): Likewise.
3993         * modules/array-oset-tests (Makefile.am): Likewise.
3994         * modules/avltree-list-tests (Makefile.am): Likewise.
3995         * modules/avltree-oset-tests (Makefile.am): Likewise.
3996         * modules/avltreehash-list-tests (Makefile.am): Likewise.
3997         * modules/carray-list-tests (Makefile.am): Likewise.
3998         * modules/dirname-tests (Makefile.am): Likewise.
3999         * modules/frexp-tests (Makefile.am): Likewise.
4000         * modules/isnanl-tests (Makefile.am): Likewise.
4001         * modules/linked-list-tests (Makefile.am): Likewise.
4002         * modules/linkedhash-list-tests (Makefile.am): Likewise.
4003         * modules/lock-tests (Makefile.am): Likewise.
4004         * modules/rbtree-list-tests (Makefile.am): Likewise.
4005         * modules/rbtree-oset-tests (Makefile.am): Likewise.
4006         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
4007         * modules/tls-tests (Makefile.am): Likewise.
4008         * modules/tsearch-tests (Makefile.am): Likewise.
4009         * modules/xvasprintf-tests (Makefile.am): Likewise.
4010
4011         Fix fpurge for cygwin.
4012         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
4013         value.
4014         * modules/fpurge-tests (Depends-on): Clean up trash.
4015
4016 2007-04-16  Simon Josefsson  <simon@josefsson.org>
4017
4018         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
4019
4020         * m4/autobuild.m4: Re-indent.
4021
4022 2007-04-13  Bruno Haible  <bruno@clisp.org>
4023
4024         * modules/fpurge-tests: New file.
4025         * tests/test-fpurge.c: New file.
4026
4027         * modules/fpurge: New file.
4028         * lib/fpurge.h: New file.
4029         * lib/fpurge.c: New file.
4030         * m4/fpurge.m4: New file.
4031
4032 2007-04-13  Bruno Haible  <bruno@clisp.org>
4033
4034         * modules/fbufmode-tests: New file.
4035         * tests/test-fbufmode.c: New file.
4036
4037         * modules/fbufmode: New file.
4038         * lib/fbufmode.h: New file.
4039         * lib/fbufmode.c: New file.
4040         * m4/fbufmode.m4: New file.
4041
4042 2007-04-13  Bruno Haible  <bruno@clisp.org>
4043
4044         * modules/fwritable-tests: New file.
4045         * tests/test-fwritable.c: New file.
4046
4047         * modules/fwritable: New file.
4048         * lib/fwritable.h: New file.
4049         * lib/fwritable.c: New file.
4050         * m4/fwritable.m4: New file.
4051
4052 2007-04-13  Bruno Haible  <bruno@clisp.org>
4053
4054         * modules/freadable-tests: New file.
4055         * tests/test-freadable.c: New file.
4056
4057         * modules/freadable: New file.
4058         * lib/freadable.h: New file.
4059         * lib/freadable.c: New file.
4060         * m4/freadable.m4: New file.
4061
4062 2007-04-13  Bruno Haible  <bruno@clisp.org>
4063
4064         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
4065         MOSTLYCLEANFILES.
4066
4067 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
4068
4069         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
4070         gzip bootstrap.conf to avoid dragging in i18n machinery.
4071         (gnulib_tool_option): Use it.
4072
4073 2007-04-13  Bruno Haible  <bruno@clisp.org>
4074
4075         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
4076         %F directives.
4077         * tests/test-vasprintf-posix.c (test_function): Likewise.
4078         * tests/test-snprintf-posix.h (test_function): Likewise.
4079         * tests/test-sprintf-posix.h (test_function): Likewise.
4080         * tests/test-fprintf-posix.h (test_function): Likewise.
4081         * tests/test-printf-posix.h (test_function): Likewise.
4082         * tests/test-fprintf-posix.out: Likewise.
4083
4084 2007-04-13  Bruno Haible  <bruno@clisp.org>
4085
4086         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
4087         * modules/tls-tests (configure.ac): Likewise.
4088         Reported by Arto C. Nirkko <anirkko@insel.ch>.
4089
4090 2007-04-13  Bruno Haible  <bruno@clisp.org>
4091
4092         * lib/tls.c (glthread_tls_get): Fix return type.
4093         Patch by Arto C. Nirkko <anirkko@insel.ch>.
4094
4095 2007-04-12  Eric Blake  <ebb9@byu.net>
4096
4097         * modules/gettime (Depends-on): Remove gettime.
4098         Reported by Dmitry V. Levin.
4099
4100 2007-04-12  Bruno Haible  <bruno@clisp.org>
4101
4102         * modules/fflush (Include): Mention <stdio.h>.
4103         * modules/strtoimax (Include): Mention <inttypes.h>.
4104         * modules/strtoumax (Include): Likewise.
4105
4106 2007-04-12  Eric Blake  <ebb9@byu.net>
4107
4108         * .cvsignore: New file.
4109         * .gitignore: Likewise.
4110
4111 2007-04-12  Bruno Haible  <bruno@clisp.org>
4112
4113         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
4114         not before, since $(LDADD) often contains libgnu.a.
4115         * modules/striconv-tests (test_striconv_LDADD): Likewise.
4116         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
4117         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
4118         Needed on Cygwin.
4119
4120 2007-04-12  Eric Blake  <ebb9@byu.net>
4121
4122         Work around glibc's failure to flush stdin on fclose.
4123         * lib/closein.c (close_stdin): Flush stdin before closing.
4124
4125         Work around glibc's failure to reset seekable stdin on exit.
4126         * modules/closein: New module.
4127         * lib/closein.c: New file.
4128         * lib/closein.h: Likewise.
4129         * m4/closein.m4: Likewise.
4130         * MODULES.html.sh (File stream based Input/Output): Document it.
4131
4132 2007-04-12  Simon Josefsson  <simon@josefsson.org>
4133
4134         * gnulib-tool: Rename generated 'autobuild' script to
4135         'do-autobuild' in --create-megatestdir output.
4136
4137         * doc/gnulib.texi (Build robot for gnulib): Fix.
4138
4139 2007-04-12  Simon Josefsson  <simon@josefsson.org>
4140
4141         * modules/sysexits (Depends-on): Add absolute-header.
4142
4143 2007-04-12  Eric Blake  <ebb9@byu.net>
4144
4145         No need to preserve errno on success.
4146         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
4147         Reported by Bruno Haible.
4148
4149 2007-04-12  Simon Josefsson  <simon@josefsson.org>
4150
4151         * MODULES.html.sh (Support for maintaining and releasing
4152         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
4153
4154 2007-04-12  Simon Josefsson  <simon@josefsson.org>
4155
4156         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
4157
4158 2007-04-12  Simon Josefsson  <simon@josefsson.org>
4159
4160         * modules/autobuild: New module.
4161
4162         * m4/autobuild.m4: New file.
4163
4164 2007-04-11  Bruno Haible  <bruno@clisp.org>
4165
4166         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
4167         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
4168         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
4169         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
4170         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4171         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
4172         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
4173         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4174         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
4175         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
4176         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
4177         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
4178         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
4179         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
4180         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
4181         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
4182         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
4183         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
4184         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
4185         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
4186         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
4187         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
4188         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
4189         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
4190         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
4191         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
4192         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
4193         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
4194         Reported by Eric Blake.
4195
4196 2007-04-11  Bruno Haible  <bruno@clisp.org>
4197
4198         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
4199
4200 2007-04-10  Bruno Haible  <bruno@clisp.org>
4201
4202         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
4203         for NaN and Infinity. Needed on FreeBSD 6.1.
4204         * tests/test-vasnprintf-posix.c (test_function): Undo last change
4205         regarding results for "%010a" of Infinity and NaN.
4206         * tests/test-vasprintf-posix.c (test_function): Likewise.
4207         * tests/test-snprintf-posix.h (test_function): Likewise.
4208         * tests/test-sprintf-posix.h (test_function): Likewise.
4209         * tests/test-fprintf-posix.h (test_function): Likewise.
4210         * tests/test-printf-posix.h (test_function): Likewise.
4211         * tests/test-fprintf-posix.out: Likewise.
4212
4213 2007-04-10  Bruno Haible  <bruno@clisp.org>
4214
4215         * modules/locale-tests: New file.
4216         * tests/test-locale.c: New file.
4217
4218         * modules/locale: New file.
4219         * lib/locale_.h: New file.
4220         * m4/locale_h.m4: New file.
4221
4222 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
4223             Bruno Haible  <bruno@clisp.org>
4224
4225         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
4226         be determined, test for availability of the copysignf, copysign,
4227         copysignl functions.
4228         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
4229         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
4230         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
4231
4232 2007-04-09  Eric Blake  <ebb9@byu.net>
4233
4234         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
4235         * modules/stdio (Makefile.am): Support fflush.
4236         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
4237         * modules/fflush: New file.
4238         * lib/fflush.c: Likewise.
4239         * m4/fflush.m4: Likewise.
4240         * modules/fflush-tests: New test.
4241         * tests/test-fflush.c: Likewise.
4242         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
4243
4244 2007-04-06  Bruno Haible  <bruno@clisp.org>
4245
4246         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
4247         (VASNPRINTF): Use signbit for faster determination whether to print a
4248         minus sign.
4249         * modules/vasnprintf (Files): Remove lib/float+.h.
4250         * modules/fprintf-posix (Depends-on): Add signbit.
4251         * modules/snprintf-posix (Depends-on): Likewise.
4252         * modules/sprintf-posix (Depends-on): Likewise.
4253         * modules/vasnprintf-posix (Depends-on): Likewise.
4254         * modules/vasprintf-posix (Depends-on): Likewise.
4255         * modules/vfprintf-posix (Depends-on): Likewise.
4256         * modules/vsnprintf-posix (Depends-on): Likewise.
4257         * modules/vsprintf-posix (Depends-on): Likewise.
4258
4259 2007-04-06  Bruno Haible  <bruno@clisp.org>
4260
4261         * tests/test-frexp.c (main): Test also the sign bit of zero results.
4262         * tests/test-frexpl.c (main): Likewise.
4263         * tests/test-ldexpl.c (main): Likewise.
4264         * modules/frexp-tests (Depends-on): Add signbit.
4265         * modules/frexpl-tests (Depdends-on): Likewise.
4266         * modules/ldexpl-tests (Depdends-on): Likewise.
4267
4268 2007-04-06  Bruno Haible  <bruno@clisp.org>
4269
4270         * modules/signbit-tests: New file.
4271         * tests/test-signbit.c: New file.
4272
4273         * modules/signbit: New file.
4274         * lib/signbitf.c: New file.
4275         * lib/signbitd.c: New file.
4276         * lib/signbitl.c: New file.
4277         * m4/signbit.m4: New file.
4278         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
4279         (signbit): New macro.
4280         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
4281         REPLACE_SIGNBIT.
4282         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
4283         REPLACE_FREXPL into math.h.
4284
4285 2007-04-06  Bruno Haible  <bruno@clisp.org>
4286
4287         * modules/isnanf-nolibm-tests: New file.
4288         * tests/test-isnanf.c: New file.
4289
4290         * modules/isnanf-nolibm: New file.
4291         * lib/isnanf.h: New file.
4292         * lib/isnanf.c: New file.
4293         * lib/isnan.c: Consider the USE_FLOAT macro.
4294         * m4/isnanf.m4: New file.
4295
4296 2007-04-06  Bruno Haible  <bruno@clisp.org>
4297
4298         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
4299         (Link): New section.
4300
4301         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
4302
4303 2007-04-06  Bruno Haible  <bruno@clisp.org>
4304
4305         Assume the 'long double' type.
4306         * m4/longdouble.m4: Remove file.
4307         * config/srclist.txt: Don't mention longdouble.m4.
4308         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
4309         * lib/float+.h: Likewise.
4310         * lib/frexp.c: Likewise.
4311         * lib/printf-args.h: Likewise.
4312         * lib/printf-args.c: Likewise.
4313         * lib/printf-frexp.c: Likewise.
4314         * lib/printf-parse.c: Likewise.
4315         * lib/vasnprintf.c: Likewise.
4316         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
4317         * m4/intl.m4: Likewise.
4318         * m4/isnanl.m4: Likewise.
4319         * m4/printf.m4: Likewise.
4320         * m4/printf-frexpl.m4: Likewise.
4321         * m4/vasnprintf.m4: Likewise.
4322         * modules/allocsa (Files): Remove m4/longdouble.m4.
4323         * modules/gettext (Files): Likewise.
4324         * modules/relocatable-prog-wrapper (Files): Likewise.
4325         * modules/vasnprintf (Files): Likewise.
4326         * modules/isnanl (Files): Likewise.
4327         (Include): Simplify.
4328         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
4329         (Include): Simplify.
4330         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
4331         (Include): Simplify.
4332         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
4333         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
4334         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
4335         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
4336         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
4337         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
4338         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
4339         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
4340         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
4341         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
4342         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
4343         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
4344         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
4345         * tests/test-isnanl.c: Likewise.
4346         * tests/test-snprintf-posix.h: Likewise.
4347         * tests/test-sprintf-posix.h: Likewise.
4348         * tests/test-vasnprintf-posix.c: Likewise.
4349         * tests/test-vasnprintf-posix2.c: Likewise.
4350         * tests/test-vasprintf-posix.c: Likewise.
4351
4352 2007-04-06  Bruno Haible  <bruno@clisp.org>
4353
4354         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
4355         * lib/math_.h [__DECC]: Include the overridden include file through
4356         #include_next, outside the double-inclusion guard.
4357         * lib/stdio_.h [__DECC]: Likewise.
4358         * lib/stdlib_.h [__DECC]: Likewise.
4359         * lib/string_.h [__DECC]: Likewise.
4360         * lib/time_.h [__DECC]: Likewise.
4361         * lib/wchar_.h [__DECC]: Likewise.
4362         * lib/wctype_.h [__DECC]: Likewise.
4363         * lib/inttypes_.h [__DECC]: Likewise.
4364         Reported by Albert Chin <china@thewrittenword.com> in
4365         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
4366
4367 2007-04-04  Eric Blake  <ebb9@byu.net>
4368
4369         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
4370         1.5.x.
4371
4372 2007-04-04  Bruno Haible  <bruno@clisp.org>
4373
4374         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
4375         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
4376
4377 2007-04-04  Bruno Haible  <bruno@clisp.org>
4378
4379         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
4380         results for "%010a" of Infinity and NaN.
4381         * tests/test-vasprintf-posix.c (test_function): Likewise.
4382         * tests/test-snprintf-posix.h (test_function): Likewise.
4383         * tests/test-sprintf-posix.h (test_function): Likewise.
4384         * tests/test-fprintf-posix.h (test_function): Remove these tests.
4385         * tests/test-printf-posix.h (test_function): Likewise.
4386         * tests/test-fprintf-posix.out: Update.
4387         Needed for FreeBSD 6.1.
4388
4389 2007-04-04  Bruno Haible  <bruno@clisp.org>
4390
4391         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
4392         directly used by the gnulib modules nor by gnulib-tool.
4393
4394 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
4395
4396         * DEPENDENCIES: Give overall description of version dependency
4397         desirability.  Use more-typical names for apps.
4398         Add shell, coreutils, diffutils, grep, tar, gzip.
4399
4400 2007-04-04  Simon Josefsson  <simon@josefsson.org>
4401
4402         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
4403
4404 2007-04-04  Karl Berry  <karl@gnu.org>
4405
4406         * MODULES.html.sh (func_module): missing '.
4407
4408 2007-04-03  Bruno Haible  <bruno@clisp.org>
4409
4410         * modules/argmatch-tests (Makefile.am): New variable
4411         test_argmatch_LDADD.
4412         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
4413         * modules/array-list-tests (Makefile.am): New variable
4414         test_array_list_LDADD.
4415         * modules/array-oset-tests (Makefile.am): New variable
4416         test_array_oset_LDADD.
4417         * modules/avltree-list-tests (Makefile.am): New variable
4418         test_avltree_list_LDADD.
4419         * modules/avltree-oset-tests (Makefile.am): New variable
4420         test_avltree_oset_LDADD.
4421         * modules/avltreehash-list-tests (Makefile.am): New variable
4422         test_avltreehash_list_LDADD.
4423         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
4424         test_canonicalize_lgpl_LDADD.
4425         * modules/carray-list-tests (Makefile.am): New variable
4426         test_carray_list_LDADD.
4427         * modules/dirname-tests (Makefile.am): New variable
4428         test_dirname_LDADD.
4429         * modules/linked-list-tests (Makefile.am): New variable
4430         test_linked_list_LDADD.
4431         * modules/linkedhash-list-tests (Makefile.am): New variable
4432         test_linkedhash_list_LDADD.
4433         * modules/rbtree-list-tests (Makefile.am): New variable
4434         test_rbtree_list_LDADD.
4435         * modules/rbtree-oset-tests (Makefile.am): New variable
4436         test_rbtree_oset_LDADD.
4437         * modules/rbtreehash-list-tests (Makefile.am): New variable
4438         test_rbtreehash_list_LDADD.
4439         * modules/xvasprintf-tests (Makefile.am): New variable
4440         test_xvasprintf_LDADD.
4441         Reported by Eric Blake.
4442
4443 2007-04-03  Eric Blake  <ebb9@byu.net>
4444
4445         * DEPENDENCIES: Weaken m4 requirements.
4446
4447 2007-04-03  Bruno Haible  <bruno@clisp.org>
4448
4449         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
4450         * modules/isnanl-tests (configure.ac): Likewise.
4451
4452 2007-04-03  Ben Pfaff  <blp@gnu.org>
4453
4454         * modules/iconv_open: Add $(srcdir)/ to source directory
4455         references in Makefile fragments that call gperf, to fix VPATH
4456         builds.
4457
4458 2007-04-03  Bruno Haible  <bruno@clisp.org>
4459
4460         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
4461         * lib/ldexpl.c: Undo last change.
4462
4463 2007-04-03  Bruno Haible  <bruno@clisp.org>
4464
4465         * modules/printf-frexpl (Depends-on): Undo last change.
4466         (Files): Add m4/ldexpl.m4.
4467
4468 2007-04-03  Bruno Haible  <bruno@clisp.org>
4469
4470         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
4471         * modules/isnanl (Link): New section.
4472
4473         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
4474         * modules/frexp (Link): New section.
4475
4476         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
4477         * modules/frexpl (Link): New section.
4478
4479         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
4480         * modules/ldexpl (Link): New section.
4481
4482 2007-04-03  Bruno Haible  <bruno@clisp.org>
4483
4484         * modules/TEMPLATE-EXTENDED: New file.
4485         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
4486
4487 2007-04-03  Bruno Haible  <bruno@clisp.org>
4488
4489         * DEPENDENCIES: New file.
4490         Suggested by Simon Josefsson.
4491
4492 2007-04-03  Bruno Haible  <bruno@clisp.org>
4493
4494         * doc/gnulib.texi: Escape @.
4495
4496 2007-04-03  James Youngman  <jay@gnu.org>
4497         and Paul Eggert  <eggert@cs.ucla.edu>
4498
4499         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
4500         birthtime on all systems that have birthtime, not just those which
4501         use st_birthtimensec rather than st_birthtim.  Putting zero in
4502         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
4503         that the birth time is not available for files on an NFS mount.
4504
4505 2007-04-03  Simon Josefsson  <simon@josefsson.org>
4506
4507         * modules/memxor: Move back from crypto/, suggested by Bruno.
4508         * modules/crypto/hmac-sha1: Fix memxor dependency.
4509
4510         * modules/crypto/gc: Moved from ../.
4511
4512 2007-04-02  Eric Blake  <ebb9@byu.net>
4513
4514         * lib/ldexpl.c (includes): Avoid libm.
4515
4516         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
4517
4518 2007-04-02  Bruno Haible  <bruno@clisp.org>
4519
4520         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
4521         on IRIX.
4522
4523 2007-04-02  Bruno Haible  <bruno@clisp.org>
4524
4525         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
4526         x86 or x86_64 platforms running MacOS X.
4527         Reported by Ryan Schmidt <@ryandesign.com>.
4528
4529 2007-04-02  Bruno Haible  <bruno@clisp.org>
4530
4531         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
4532         i386.
4533
4534 2007-04-01  Simon Josefsson  <simon@josefsson.org>
4535
4536         * modules/crypto/arcfour: Moved from ../.
4537         * modules/crypto/arcfour-tests: Moved from ../.
4538         * modules/crypto/arctwo: Moved from ../.
4539         * modules/crypto/arctwo-tests: Moved from ../.
4540         * modules/crypto/des: Moved from ../.
4541         * modules/crypto/des-tests: Moved from ../.
4542         * modules/crypto/gc-arcfour: Moved from ../.
4543         * modules/crypto/gc-arcfour-tests: Moved from ../.
4544         * modules/crypto/gc-arctwo: Moved from ../.
4545         * modules/crypto/gc-arctwo-tests: Moved from ../.
4546         * modules/crypto/gc-des: Moved from ../.
4547         * modules/crypto/gc-des-tests: Moved from ../.
4548         * modules/crypto/gc-hmac-md5: Moved from ../.
4549         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
4550         * modules/crypto/gc-hmac-sha1: Moved from ../.
4551         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
4552         * modules/crypto/gc-md2: Moved from ../.
4553         * modules/crypto/gc-md2-tests: Moved from ../.
4554         * modules/crypto/gc-md4: Moved from ../.
4555         * modules/crypto/gc-md4-tests: Moved from ../.
4556         * modules/crypto/gc-md5: Moved from ../.
4557         * modules/crypto/gc-md5-tests: Moved from ../.
4558         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
4559         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
4560         * modules/crypto/gc-random: Moved from ../.
4561         * modules/crypto/gc-rijndael: Moved from ../.
4562         * modules/crypto/gc-rijndael-tests: Moved from ../.
4563         * modules/crypto/gc-sha1: Moved from ../.
4564         * modules/crypto/gc-sha1-tests: Moved from ../.
4565         * modules/crypto/gc-tests: Moved from ../.
4566         * modules/crypto/hmac-md5: Moved from ../.
4567         * modules/crypto/hmac-md5-tests: Moved from ../.
4568         * modules/crypto/hmac-sha1: Moved from ../.
4569         * modules/crypto/hmac-sha1-tests: Moved from ../.
4570         * modules/crypto/md2: Moved from ../.
4571         * modules/crypto/md2-tests: Moved from ../.
4572         * modules/crypto/md4: Moved from ../.
4573         * modules/crypto/md4-tests: Moved from ../.
4574         * modules/crypto/md5: Moved from ../.
4575         * modules/crypto/md5-tests: Moved from ../.
4576         * modules/crypto/memxor: Moved from ../.
4577         * modules/crypto/rijndael: Moved from ../.
4578         * modules/crypto/rijndael-tests: Moved from ../.
4579         * modules/crypto/sha1: Moved from ../.
4580
4581 2007-03-30  James Youngman  <jay@gnu.org>
4582
4583         * tests/test-stat-time.c (prepare_test): use chmod() rather than
4584         rename() to change the ctime of a file (because ctime is unaffected
4585         by rename on jfs2 on AIX 5.1).
4586         (main): Start by doing cleanup, in case a previous run failed leaving
4587         test files behind.
4588
4589 2007-03-31  Bruno Haible  <bruno@clisp.org>
4590
4591         Support old proprietary implementations of iconv.
4592         * modules/iconv_open: New file.
4593         * lib/iconv_.h: New file.
4594         * m4/iconv_h.m4: New file.
4595         * lib/iconv_open.c: New file.
4596         * lib/iconv_open-aix.gperf: New file.
4597         * lib/iconv_open-hpux.gperf: New file.
4598         * lib/iconv_open-irix.gperf: New file.
4599         * lib/iconv_open-osf.gperf: New file.
4600         * m4/iconv_open.m4: New file.
4601         * modules/linebreak (Depends-on): Add iconv_open.
4602         * modules/striconv (Depends-on): Likewise.
4603         * modules/striconveh (Depends-on): Likewise.
4604         * modules/unicodeio (Depends-on): Likewise.
4605         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
4606         (iconv_t)(-1).
4607         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
4608         conversion if cd is (iconv_t)(-1).
4609         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
4610         is not possible.
4611
4612 2007-03-31  Bruno Haible  <bruno@clisp.org>
4613
4614         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
4615         work on Solaris either. Protect also second use of "autodetect_jp".
4616
4617 2007-03-31  Bruno Haible  <bruno@clisp.org>
4618
4619         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
4620         the function is not present.
4621
4622 2007-03-31  Bruno Haible  <bruno@clisp.org>
4623
4624         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
4625         the function is not present.
4626
4627 2007-03-31  Bruno Haible  <bruno@clisp.org>
4628
4629         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
4630         a bug in HP-UX iconv_open().
4631
4632 2007-03-31  Bruno Haible  <bruno@clisp.org>
4633
4634         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
4635         (Mathematics <math.h>): New section, add fpieee.
4636         (Input/output <stdio.h>): Add fseterr.
4637         (Mathematics <math.h>): New section, add printf-frexp.
4638         (Container data structures): Add sublist.
4639         (Core language properties): Add fpucw, inline.
4640         (Functions for greatest-width integer types <inttypes.h>): Add
4641         imaxabs, imaxdiv, inttypes.
4642         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
4643         isnanl-nolibm, ldexp.
4644         (Mathematics <math.h>): New section, add printf-frexpl.
4645         (Support for systems lacking POSIX:2001): Add fprintf-posix,
4646         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
4647         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
4648         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
4649         (Unicode string functions): Add unistr/u*-mbtoucr.
4650         (Java): Add javacomp-script, javaexec-script.
4651         (C#): Add csharpcomp-script, csharpexec-script.
4652         (Support for building libraries and executables): Add havelib,
4653         relocatable-*.
4654         (Support for maintaining and releasing projects): Renamed from
4655         'Support for maintaining and release projects'. Add announce-gen.
4656
4657 2007-03-31  Bruno Haible  <bruno@clisp.org>
4658
4659         * README: Talk primarily about git.
4660         (git and CVS): Renamed from CVS.
4661         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
4662         gnulib is available through git.
4663         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
4664
4665 2007-03-30  Bruno Haible  <bruno@clisp.org>
4666
4667         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
4668         * lib/poll_.h: Likewise.
4669         * lib/stat_.h: Likewise.
4670         * lib/sys_time_.h: Likewise.
4671         * lib/sysexit_.h: Likewise.
4672         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
4673         * lib/stdbool_.h: Likewise.
4674         * lib/byteswap_.h: Add double-inclusion guard.
4675
4676 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
4677
4678         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
4679
4680 2007-03-30  Karl Berry  <karl@gnu.org>
4681
4682         * config/srclist-update: double space after USA in the license
4683         substitution, since that's how it's usually (?) written.
4684
4685 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
4686
4687         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
4688         reported by Bruno Haible.
4689
4690 2007-03-29  Bruno Haible  <bruno@clisp.org>
4691
4692         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
4693         a bug in AIX iconv().
4694
4695 2007-03-29  Bruno Haible  <bruno@clisp.org>
4696
4697         * modules/ldexpl-tests: New file.
4698         * tests/test-ldexpl.c: New file.
4699
4700 2007-03-29  Bruno Haible  <bruno@clisp.org>
4701
4702         * lib/ldexpl.c: Include fpucw.h.
4703         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
4704         multiplication.
4705         * modules/ldexpl (Depends-on): Add fpucw.
4706
4707 2007-03-29  Bruno Haible  <bruno@clisp.org>
4708
4709         * modules/ldexpl: New file.
4710         * m4/ldexpl.m4: New file.
4711         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
4712         set.
4713         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
4714         REPLACE_LDEXPL.
4715         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
4716         REPLACE_LDEXPL.
4717         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
4718         gl_FUNC_LDEXPL_WORKS.
4719         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
4720         * modules/mathl (Files): Remove lib/ldexpl.c.
4721         (Depends-on): Add ldexpl.
4722
4723 2007-03-29  Bruno Haible  <bruno@clisp.org>
4724
4725         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
4726
4727 2007-03-29  Bruno Haible  <bruno@clisp.org>
4728
4729         * tests/test-striconveh.c (main): Don't assume that a direct conversion
4730         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
4731         and possibly also HP-UX.
4732         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
4733         work on AIX, IRIX, HP-UX, OSF/1.
4734         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
4735         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
4736         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
4737         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
4738         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
4739         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
4740
4741 2007-03-29  Bruno Haible  <bruno@clisp.org>
4742
4743         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
4744
4745 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
4746
4747         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
4748         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
4749
4750 2007-03-29  Eric Blake  <ebb9@byu.net>
4751
4752         * lib/acl-internal.h: Remove redundant include.
4753         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
4754         Cygwin when a file is locked.
4755
4756 2007-03-29  Bruno Haible  <bruno@clisp.org>
4757
4758         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
4759         file.
4760         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
4761
4762 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
4763
4764         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
4765         try to remove a parent directory if the child couldn't be removed
4766         (except for the first rmdir, which could fail because the child
4767         doesn't exist).  Problem reported by Jeff Blaine in
4768         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
4769
4770 2007-03-28  Bruno Haible  <bruno@clisp.org>
4771
4772         * lib/striconveh.c (utf8conv_carefully): New function.
4773         (mem_cd_iconveh_internal): Invoke it.
4774
4775 2007-03-28  Bruno Haible  <bruno@clisp.org>
4776
4777         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
4778         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
4779         input.
4780         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
4781         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
4782         unistr/u8-uctomb.
4783
4784 2007-03-28  Bruno Haible  <bruno@clisp.org>
4785
4786         * modules/unistr/u8-mbtoucr: New file.
4787         * lib/unistr/u8-mbtoucr.c: New file.
4788         * modules/unistr/u16-mbtoucr: New file.
4789         * lib/unistr/u16-mbtoucr.c: New file.
4790         * modules/unistr/u16-mbtoucr: New file.
4791         * lib/unistr/u16-mbtoucr.c: New file.
4792         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
4793
4794 2007-03-27  Simon Josefsson  <simon@josefsson.org>
4795             Bruno Haible  <bruno@clisp.org>
4796
4797         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
4798         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
4799         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
4800
4801         * m4/stdio_h.m4: Add stubs for vasprintf too.
4802
4803         * modules/stdio: Support vasprintf in sed command.
4804
4805         * modules/vasprintf: Depend on stdio for prototypes.  Remove
4806         vasprintf.h.  Add stdio module indicator.
4807
4808         * lib/stdio_.h: Declare asprintf and vasprintf, based on
4809         vasprintf.h.
4810
4811         * lib/vasprintf.h: File removed.
4812
4813         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
4814         * lib/vasprintf.c: Ditto.
4815         * lib/xvasprintf.c: Ditto.
4816         * tests/test-vasprintf-posix.c: Ditto.
4817         * tests/test-vasprintf.c: Ditto.
4818
4819 2007-03-27  Bruno Haible  <bruno@clisp.org>
4820
4821         Make vasnprintf multithread-safe.
4822         * lib/vasnprintf.c (decimal_point_char): New function.
4823         (VASNPRINTF): Use it.
4824         Suggested by Simon Josefsson.
4825
4826 2007-03-27  Eric Blake  <ebb9@byu.net>
4827
4828         Support sub-second birthtime on cygwin.
4829         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
4830         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
4831         (get_stat_birthtime): Also work with st_birthtim.
4832
4833 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
4834
4835         * lib/stat-time.h (USE_BIRTHTIME): Remove.
4836         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
4837         (get_stat_birthtime_ns): Do not try to use "spare" fields.
4838         (get_stat_birthtime_ns): Simplify compile-time tests.
4839         (get_stat_birthtime): Change the API to look like
4840         get_stat_mtime etc., except return a negative tv_nsec on error.
4841         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
4842         Don't check for "spare" fields.
4843         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
4844         or for struct stat.st_birthtime, as these tests aren't used.
4845         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
4846
4847 2007-03-27  Bruno Haible  <bruno@clisp.org>
4848
4849         * lib/stat-time.h: Include <sys/stat.h>.
4850
4851 2007-03-27  James Youngman  <jay@gnu.org>
4852
4853         * lib/stat-time.h (get_stat_birthtime): New function for
4854           retrieving st_birthtime as provided by UFS2 (hence *BSD).
4855         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
4856           and its variants.
4857         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
4858         * modules/stat-time-test: New file.
4859         * tests/test-stat-time.c: New test, devised by Bruno Haible.
4860
4861 2007-03-26  Bruno Haible  <bruno@clisp.org>
4862
4863         Better support of signalling NaNs.
4864         * lib/atanl.c: Include isnanl.h.
4865         (atanl): Perform test for NaN at the beginning of the function and
4866         through a call to isnanl.
4867         * lib/cosl.c: Include isnanl.h.
4868         (cosl): Perform test for NaN at the beginning of the function and
4869         through a call to isnanl.
4870         * lib/ldexpl.c: Include isnanl.h.
4871         (ldexpl): Perform test for NaN through a call to isnanl.
4872         * lib/logl.c: Include isnanl.h.
4873         (logl): Perform test for NaN at the beginning of the function and
4874         through a call to isnanl.
4875         * lib/sinl.c: Include isnanl.h.
4876         (sinl): Perform test for NaN at the beginning of the function and
4877         through a call to isnanl.
4878         * lib/sqrtl.c: Include isnanl.h.
4879         (sqrtl): Perform test for NaN at the beginning of the function and
4880         through a call to isnanl.
4881         * lib/tanl.c: Include isnanl.h.
4882         (tanl): Perform test for NaN at the beginning of the function and
4883         through a call to isnanl.
4884         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
4885         * modules/mathl (Depends-on): Add isnanl.
4886
4887 2007-03-26  Eric Blake  <ebb9@byu.net>
4888
4889         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
4890         regression in logic sense of previous patch.
4891
4892 2007-03-26  Bruno Haible  <bruno@clisp.org>
4893
4894         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
4895         unportable shell command "if ! ...".
4896         Reported by Ralf Wildenhues.
4897
4898 2007-03-25  Bruno Haible  <bruno@clisp.org>
4899
4900         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
4901         <sysexits.h> file, and only add EX_CONFIG.
4902         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
4903         absolute file name and whether it is sufficient. Substitute also
4904         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
4905         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
4906         ABSOLUTE_SYSEXITS_H into sysexits.h.
4907
4908 2007-03-25  Bruno Haible  <bruno@clisp.org>
4909
4910         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
4911         hints is NULL.
4912
4913 2007-03-25  Bruno Haible  <bruno@clisp.org>
4914
4915         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
4916         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
4917
4918 2007-03-25  Bruno Haible  <bruno@clisp.org>
4919
4920         * lib/vasnprintf.c: Include langinfo.h.
4921         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
4922         multithread-safe.
4923         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
4924         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
4925         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4926         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4927         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4928         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4929         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4930         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
4931         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4932         Reported by Simon Josefsson.
4933
4934 2007-03-25  Bruno Haible  <bruno@clisp.org>
4935
4936         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
4937         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
4938         * modules/vasnprintf (Depends-on): Add stdint.
4939
4940 2007-03-25  Bruno Haible  <bruno@clisp.org>
4941
4942         * modules/fpieee: New file.
4943         * m4/fpieee.m4: New file.
4944         * modules/isnan-nolibm (Depends-on): Add fpieee.
4945         * modules/isnanl-nolibm (Depends-on): Add fpieee.
4946         * modules/isnanl (Depends-on): Add fpieee.
4947
4948 2007-03-25  Bruno Haible  <bruno@clisp.org>
4949
4950         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
4951
4952 2007-03-25  Bruno Haible  <bruno@clisp.org>
4953
4954         Avoid test failures on IRIX 6.5.
4955         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
4956         (main): Use it.
4957         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
4958         macros.
4959         (main): Use them.
4960
4961 2007-03-25  Bruno Haible  <bruno@clisp.org>
4962
4963         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
4964         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
4965         exists but doesn't work.
4966         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
4967         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
4968         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
4969         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
4970
4971 2007-03-25  Bruno Haible  <bruno@clisp.org>
4972
4973         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
4974         returns inf. Needed on IRIX 6.5.
4975
4976 2007-03-25  Bruno Haible  <bruno@clisp.org>
4977
4978         * tests/test-frexpl.c: Include isnanl-nolibm.h.
4979         (main): Use isnanl instead of x != x idiom.
4980         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
4981
4982         * tests/test-frexp.c: Include isnan.h.
4983         (main): Use isnan instead of x != x idiom.
4984         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
4985
4986 2007-03-25  Bruno Haible  <bruno@clisp.org>
4987
4988         * tests/test-frexp.c (NaN): New function/macro.
4989         (main): Use it instead of 0.0 / 0.0.
4990         * tests/test-isnan.c (NaN): New function/macro.
4991         (main): Use it instead of 0.0 / 0.0.
4992         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
4993         (test_function): Use it instead of 0.0 / 0.0.
4994         * tests/test-vasprintf-posix.c (NaN): New function/macro.
4995         (test_function): Use it instead of 0.0 / 0.0.
4996         * tests/test-snprintf-posix.h (NaN): New function/macro.
4997         (test_function): Use it instead of 0.0 / 0.0.
4998         * tests/test-sprintf-posix.h (NaN): New function/macro.
4999         (test_function): Use it instead of 0.0 / 0.0.
5000         * tests/test-fprintf-posix.h (NaN): New function/macro.
5001         (test_function): Use it instead of 0.0 / 0.0.
5002         * tests/test-printf-posix.h (NaN): New function/macro.
5003         (test_function): Use it instead of 0.0 / 0.0.
5004
5005         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
5006
5007 2007-03-25  Bruno Haible  <bruno@clisp.org>
5008
5009         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
5010
5011 2007-03-25  Bruno Haible  <bruno@clisp.org>
5012
5013         * lib/regexec.c (merge_state_with_log): Make static.
5014
5015 2007-03-25  Bruno Haible  <bruno@clisp.org>
5016
5017         * lib/trigl.c (kernel_rem_pio2): Make static.
5018
5019 2007-03-25  Bruno Haible  <bruno@clisp.org>
5020
5021         * lib/sincosl.c (sincosl_table): Make static.
5022
5023 2007-03-25  Bruno Haible  <bruno@clisp.org>
5024
5025         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
5026         if the compiler does not support C99.
5027
5028 2007-03-25  Bruno Haible  <bruno@clisp.org>
5029
5030         * modules/time (Makefile.am): Ensure all rule action lines start with a
5031         tab.
5032
5033 2007-03-24  Bruno Haible  <bruno@clisp.org>
5034
5035         * modules/tsearch-tests: New file.
5036         * tests/test-tsearch.sh: New file.
5037         * tests/test-tsearch.c: New file, mostly copied from glibc.
5038
5039         * modules/search-tests: New file.
5040         * tests/test-search.c: New file.
5041
5042         * modules/search: New file.
5043         * lib/search_.h: New file, incorporating lib/tsearch.h.
5044         * m4/search_h.m4: New file.
5045         * lib/tsearch.h: Remove file.
5046         * lib/tsearch.c: Include search.h instead of tsearch.h.
5047         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
5048         HAVE_TSEARCH.
5049         * modules/tsearch (Files): Remove lib/tsearch.h.
5050         (Depends-on): Add search.
5051         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
5052         (Include): Change tsearch.h into search.h.
5053
5054 2007-03-24  Bruno Haible  <bruno@clisp.org>
5055
5056         * modules/fpucw: New file.
5057         * lib/fpucw.h: New file.
5058         * lib/frexp.c: Include fpucw.h.
5059         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
5060         (FUNC): Use them.
5061         * lib/printf-frexp.c: Include fpucw.h.
5062         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
5063         (FUNC): Use them.
5064         * lib/vasnprintf.c: Include fpucw.h.
5065         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
5066         'long double' calculations.
5067         * tests/test-frexpl.c: Include fpucw.h.
5068         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
5069         * tests/test-printf-frexpl.c: Include fpucw.h.
5070         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
5071         * modules/frexpl (Depends-on): Add fpucw.
5072         * modules/printf-frexpl (Depends-on): Likewise.
5073         * modules/fprintf-posix (Depends-on): Likewise.
5074         * modules/snprintf-posix (Depends-on): Likewise.
5075         * modules/sprintf-posix (Depends-on): Likewise.
5076         * modules/vasnprintf-posix (Depends-on): Likewise.
5077         * modules/vasprintf-posix (Depends-on): Likewise.
5078         * modules/vfprintf-posix (Depends-on): Likewise.
5079         * modules/vsnprintf-posix (Depends-on): Likewise.
5080         * modules/vsprintf-posix (Depends-on): Likewise.
5081         * modules/frexpl-tests (Depends-on): Likewise.
5082         * modules/printf-frexpl-tests (Depends-on): Likewise.
5083
5084 2007-03-24  Bruno Haible  <bruno@clisp.org>
5085
5086         * lib/float+.h: New file.
5087         * lib/isnan.c: Include float+.h.
5088         (SIZE): New macro.
5089         (FUNC): Compare only SIZE bytes of the value.
5090         * lib/vasnprintf.c: Include float+.h.
5091         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
5092         SIZEOF_LDBL or SIZEOF_DBL bytes.
5093         * modules/isnan-nolibm (Files): Add lib/float+.h.
5094         * modules/isnanl-nolibm (Files): Add lib/float+.h.
5095         * modules/isnanl (Files): Add lib/float+.h.
5096         * modules/vasnprintf (Files): Add lib/float+.h.
5097
5098 2007-03-24  Bruno Haible  <bruno@clisp.org>
5099
5100         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
5101         include isnanl-nolibm.h.
5102
5103 2007-03-24  Bruno Haible  <bruno@clisp.org>
5104
5105         * tests/test-read-file.c (main): Don't produce spurious output for
5106         expected situations. Make the test fail if it encountered unexpected
5107         results.
5108
5109 2007-03-24  Bruno Haible  <bruno@clisp.org>
5110
5111         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
5112         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
5113
5114 2007-03-24  Bruno Haible  <bruno@clisp.org>
5115
5116         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
5117
5118 2007-03-24  Bruno Haible  <bruno@clisp.org>
5119
5120         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
5121         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
5122
5123         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
5124         * modules/utf8-ucs4: Turn into a symbolic link to module
5125         unistr/u8-mbtouc.
5126
5127         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
5128         utf8-ucs4-unsafe.
5129         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
5130         unistr/u8-mbtouc-unsafe.
5131
5132         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
5133         * modules/utf16-ucs4: Turn into a symbolic link to module
5134         unistr/u16-mbtouc.
5135
5136         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
5137         utf16-ucs4-unsafe.
5138         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
5139         unistr/u16-mbtouc-unsafe.
5140
5141         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
5142         * modules/ucs4-utf8: Turn into a symbolic link to module
5143         unistr/u8-ubtomb.
5144
5145         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
5146         * modules/ucs4-utf16: Turn into a symbolic link to module
5147         unistr/u16-ubtomb.
5148
5149 2007-03-24  Bruno Haible  <bruno@clisp.org>
5150
5151         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
5152         Enable the function only if HAVE_INLINE.
5153         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
5154         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
5155         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
5156         Enable the function only if HAVE_INLINE.
5157         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
5158         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
5159         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
5160         Enable the function only if HAVE_INLINE.
5161         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
5162         Enable the function only if HAVE_INLINE.
5163         * modules/utf8-ucs4: Update.
5164         * modules/utf8-ucs4-unsafe: Update.
5165         * modules/utf16-ucs4: Update.
5166         * modules/utf16-ucs4-unsafe: Update.
5167         * modules/ucs4-utf8: Update.
5168         * modules/ucs4-utf16: Update.
5169
5170 2007-03-24  Bruno Haible  <bruno@clisp.org>
5171
5172         * lib/utf8-ucs4.h: Remove file.
5173         * lib/utf8-ucs4-unsafe.h: Remove file.
5174         * lib/utf16-ucs4.h: Remove file.
5175         * lib/utf16-ucs4-unsafe.h: Remove file.
5176         * lib/ucs4-utf8.h: Remove file.
5177         * lib/ucs4-utf16.h: Remove file.
5178         * lib/unistr.h: Include their previous contents.
5179         * m4/utf-ucs4.m4: Remove file.
5180         * m4/ucs4-utf.m4: Remove file.
5181         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
5182         (Depends-on): Add unistr/base.
5183         (configure.ac): Remove gl_UTF_UCS4.
5184         (Makefile.am): Update.
5185         (Include): Change to unistr.h.
5186         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
5187         (Depends-on): Add unistr/base.
5188         (configure.ac): Remove gl_UTF_UCS4.
5189         (Makefile.am): Update.
5190         (Include): Change to unistr.h.
5191         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
5192         (Depends-on): Add unistr/base.
5193         (configure.ac): Remove gl_UTF_UCS4.
5194         (Makefile.am): Update.
5195         (Include): Change to unistr.h.
5196         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
5197         (Depends-on): Add unistr/base.
5198         (configure.ac): Remove gl_UTF_UCS4.
5199         (Makefile.am): Update.
5200         (Include): Change to unistr.h.
5201         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
5202         (Depends-on): Add unistr/base.
5203         (configure.ac): Remove gl_UCS4_UTF.
5204         (Makefile.am): Update.
5205         (Include): Change to unistr.h.
5206         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
5207         (Depends-on): Add unistr/base.
5208         (configure.ac): Remove gl_UCS4_UTF.
5209         (Makefile.am): Update.
5210         (Include): Change to unistr.h.
5211         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
5212         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
5213         utf8-ucs4-unsafe.h.
5214         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
5215         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
5216         utf16-ucs4-unsafe.h.
5217         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
5218         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
5219         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
5220         * lib/unistr/u8-strchr.c: Likewise.
5221         * lib/unistr/u8-strrchr.c: Likewise.
5222         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
5223         * lib/unistr/u16-strchr.c: Likewise.
5224         * lib/unistr/u16-strrchr.c: Likewise.
5225         * lib/striconveh.c: Update.
5226         * lib/linebreak.c: Update.
5227
5228 2007-03-24  Bruno Haible  <bruno@clisp.org>
5229
5230         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
5231         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
5232
5233 2007-03-22  Bruno Haible  <bruno@clisp.org>
5234
5235         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
5236
5237 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
5238
5239         * MODULES.html.sh (File system functions): New module write-any-file.
5240         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
5241         * m4/write-any-file.m4: New files.
5242
5243 2007-03-23  Eric Blake  <ebb9@byu.net>
5244
5245         * gnulib-tool: Rearrange space-tab sequences, since some editors
5246         like to eat them.
5247
5248 2007-03-23  Eric Blake  <ebb9@byu.net>
5249
5250         * lib/version-etc.c (version_etc_va): Update license wording to
5251         be more concise.  Recommended by Richard Stallman.
5252
5253 2007-03-22  Bruno Haible  <bruno@clisp.org>
5254
5255         * lib/poll.c (MSG_PEEK): New fallback definition.
5256
5257 2007-03-22  Bruno Haible  <bruno@clisp.org>
5258
5259         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
5260         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
5261         (main): Update.
5262         Fixes a compilation error on BeOS.
5263
5264 2007-03-22  Bruno Haible  <bruno@clisp.org>
5265
5266         * modules/frexpl-tests: New file.
5267         * tests/test-frexpl.c: New file.
5268
5269         * modules/frexpl: New file.
5270         * m4/frexpl.m4: New file.
5271         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
5272         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
5273         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
5274         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
5275         (Depends-on): Add frexpl. Remove isnanl-nolibm.
5276         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
5277
5278 2007-03-22  Bruno Haible  <bruno@clisp.org>
5279
5280         * lib/frexpl.c: Share code with lib/frexp.c.
5281         * modules/mathl (Files): Add lib/frexp.c.
5282         (Depends-on): Add isnanl-nolibm.
5283
5284 2007-03-22  Bruno Haible  <bruno@clisp.org>
5285
5286         * modules/printf-frexp (Files): Add m4/frexp.m4.
5287         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
5288         only if the found frexp function actually works.
5289
5290 2007-03-22  Bruno Haible  <bruno@clisp.org>
5291
5292         * lib/frexp.c: Remove older implementation that uses divisions.
5293
5294 2007-03-21  Bruno Haible  <bruno@clisp.org>
5295
5296         * modules/frexp-tests: New file.
5297         * tests/test-frexp.c: New file.
5298
5299         * modules/frexp: New file.
5300         * lib/frexp.c: New file.
5301         * m4/frexp.m4: New file.
5302         * lib/math_.h (frexp): New declaration.
5303         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
5304         REPLACE_FREXP.
5305         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
5306
5307 2007-03-21  Bruno Haible  <bruno@clisp.org>
5308
5309         * modules/isnanl-tests: New file.
5310         * tests/test-isnanl.c: New file.
5311
5312         * modules/isnanl: New file.
5313         * lib/isnanl.h: New file.
5314         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
5315         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
5316         gl_FUNC_ISNANL_WORKS.
5317         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
5318         New macros.
5319
5320 2007-03-21  Bruno Haible  <bruno@clisp.org>
5321
5322         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
5323         lib/isnanl.h.
5324         (Include): Update.
5325         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
5326         * lib/vasnprintf.c: Update.
5327         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
5328         tests/test-isnanl.h, remove tests/test-isnanl.c.
5329         (Makefile.am): Update.
5330         * tests/test-isnanl-nolibm.c: New file.
5331         * tests/test-isnanl.h: New file.
5332         * tests/test-isnanl.c: Remove file.
5333
5334 2007-03-21  Jim Meyering  <jim@meyering.net>
5335
5336         When trying to open ".", treat ESTALE like EACCES.
5337         * lib/savewd.c (savewd_save): Resort to forking not just upon
5338         failure with EACCES, but also when errno is ESTALE.
5339
5340 2007-03-20  Bruno Haible  <bruno@clisp.org>
5341
5342         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
5343         Needed on AIX 5.1. Reported by Matthew Woehlke.
5344
5345 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
5346
5347         Suggestions by Bruno Haible:
5348         * lib/acl-internal.h: Include "gettext.h" rather than rolling
5349         our own.
5350         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
5351         * modules/acl (Depends-on): Add gettext.
5352
5353 2007-03-19  Bruno Haible  <bruno@clisp.org>
5354
5355         * modules/iconvme: Remove file.
5356         * lib/iconvme.h: Remove file.
5357         * lib/iconvme.c: Remove file.
5358         * m4/iconvme.m4: Remove file.
5359
5360 2007-03-19  Bruno Haible  <bruno@clisp.org>
5361
5362         * doc/relocatable-maint.texi: Break long shell script line.
5363         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
5364
5365 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
5366
5367         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
5368         handle file_has_acl.
5369         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
5370         * lib/acl.c: Move header inclusions and related macro defns into
5371         lib/acl-internal.h.
5372         (S_ISLNK): Remove defn, since that's now done for us.
5373         (file_has_acl): Move to lib/file-has-acl.c.
5374         Call acl_trivial if available.  This is the crucial part of the fix.
5375         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
5376         shared within the library.  Rewrite a bit, partly to make it compatible
5377         with the GNU coding style.
5378         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
5379         Remove unnecessary double-quotes.
5380         Don't test for acl_to_text; the build will catch that.
5381         Replace acl_entries if it doesn't exist and it is needed.
5382         Check for -lsec and acl_trivial (as used on Solaris 10).
5383         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
5384         lib/file-has-acl.c.
5385         (Depends-on): Add sys_stat, for S_ISLNK.
5386
5387 2007-03-19  Ben Pfaff  <blp@gnu.org>
5388
5389         * doc/gnulib.texi: Fix typos.
5390         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
5391
5392 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
5393
5394         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
5395         If size is zero here, buf must be zero.
5396
5397 2007-03-19  Simon Josefsson  <simon@josefsson.org>
5398
5399         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
5400         <bruno@clisp.org>.
5401
5402 2007-03-18  Bruno Haible  <bruno@clisp.org>
5403
5404         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
5405         Suggested by Eric Blake.
5406
5407 2007-03-18  Ben Pfaff  <blp@gnu.org>
5408
5409         * doc/relocatable.texi: Recommend using as prefix a directory
5410         that does not exist and will never be created.  Based on
5411         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
5412         and others.
5413
5414 2007-03-17  Bruno Haible  <bruno@clisp.org>
5415
5416         * lib/fchownat.c: Include lchown.h.
5417
5418 2007-03-17  Bruno Haible  <bruno@clisp.org>
5419
5420         Fix endless loop when the given allocated size was > INT_MAX.
5421         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
5422         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
5423         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
5424         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
5425         * lib/sprintf.c (sprintf): Likewise.
5426
5427 2007-03-17  Bruno Haible  <bruno@clisp.org>
5428
5429         * tests/test-argp-2.sh (func_compare): Output a context diff.
5430
5431 2007-03-17  Bruno Haible  <bruno@clisp.org>
5432
5433         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
5434         locale's decimal-point character.
5435
5436 2007-03-17  Bruno Haible  <bruno@clisp.org>
5437
5438         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
5439         before comparing it. Needed because on some platforms (e.g. x86) a
5440         'long double' occupies less bytes than sizeof (long double).
5441
5442 2007-03-17  Bruno Haible  <bruno@clisp.org>
5443
5444         * tests/test-crc.c (main): Make printf statements 64-bit clean.
5445         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
5446         * tests/test-getaddrinfo.c (simple): Likewise.
5447         * tests/test-read-file.c (main): Likewise.
5448
5449 2007-03-17  Bruno Haible  <bruno@clisp.org>
5450
5451         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
5452
5453 2007-03-17  Bruno Haible  <bruno@clisp.org>
5454
5455         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
5456         unused variable.
5457
5458 2007-03-17  Bruno Haible  <bruno@clisp.org>
5459
5460         * tests/test-c-strcasecmp.c: Include c-strcase.h.
5461         * tests/test-c-strncasecmp.c: Likewise.
5462
5463 2007-03-17  Bruno Haible  <bruno@clisp.org>
5464
5465         * modules/stdlib (Depends-on): Add unistd.
5466         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
5467         Needed for MacOS X 10.3.
5468
5469 2007-03-17  Bruno Haible  <bruno@clisp.org>
5470
5471         * lib/unistr/u-strdup.h: Include <stdlib.h>.
5472
5473 2007-03-17  Bruno Haible  <bruno@clisp.org>
5474
5475         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
5476
5477 2007-03-17  Bruno Haible  <bruno@clisp.org>
5478
5479         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
5480         to reflect files copied from gnulib (with or without modifications).
5481         Suggested by Jim Meyering.
5482
5483 2007-03-17  Eric Blake  <ebb9@byu.net>
5484
5485         * NEWS: Document stdlib change from 2007-02-18.
5486
5487 2007-03-17  Jim Meyering  <jim@meyering.net>
5488
5489         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
5490         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
5491         someone uses a name containing shell meta-characters.
5492         Reported by Alfred M. Szmidt.
5493
5494         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
5495
5496 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
5497
5498         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
5499         and copy gettext configuration files only if configure.ac contains
5500         a use of AM_GNU_GETTEXT_VERSION.
5501
5502 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
5503
5504         * build-aux/bootstrap (gnulib_name): New variable.
5505         (gnulib_tool_options): Use it.
5506
5507 2007-03-13  Simon Josefsson  <simon@josefsson.org>
5508
5509         * tests/test-des.c: Use new namespace.
5510
5511 2007-03-15  Bruno Haible  <bruno@clisp.org>
5512
5513         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
5514         Reported by James Youngman <jay@gnu.org>.
5515
5516 2007-03-15  Bruno Haible  <bruno@clisp.org>
5517
5518         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
5519         declared prototype. Needed with cc on OSF/1 5.1.
5520
5521 2007-03-15  Bruno Haible  <bruno@clisp.org>
5522
5523         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
5524         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
5525         (struct gl_list_implementation): Add dispose_fn argument to the
5526         'create_empty', 'create' methods.
5527         (struct gl_list_impl_base): Add field 'dispose_fn'.
5528         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
5529         argument.
5530         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
5531         dispose_fn argument.
5532         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
5533         dispose_fn on the dropped values.
5534         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
5535         dispose_fn argument.
5536         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
5537         dropped values.
5538         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
5539         (gl_tree_remove_node): Call dispose_fn on the dropped value.
5540         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
5541         (gl_tree_remove_node): Call dispose_fn on the dropped value.
5542         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
5543         argument.
5544         (gl_tree_list_free): Call dispose_fn on the dropped values.
5545         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
5546         the dropped values.
5547         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
5548         Add dispose_fn argument.
5549         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
5550         Call dispose_fn on the dropped values.
5551         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
5552         Add dispose_fn argument.
5553         (gl_sublist_create): Initialize the 'dispose_fn' field.
5554         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
5555         * tests/test-array_list.c (main): Update.
5556         * tests/test-carray_list.c (main): Update.
5557         * tests/test-avltree_list.c (main): Update.
5558         * tests/test-rbtree_list.c (main): Update.
5559         * tests/test-avltreehash_list.c (main): Update.
5560         * tests/test-rbtreehash_list.c (main): Update.
5561         * tests/test-linked_list.c (main): Update.
5562         * tests/test-linkedhash_list.c (main): Update.
5563         * tests/test-array_oset.c (main): Update.
5564
5565 2007-03-15  Bruno Haible  <bruno@clisp.org>
5566
5567         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
5568         (gl_oset_create_empty): Add dispose_fn argument.
5569         (struct gl_oset_implementation): Add dispose_fn argument to
5570         'create_empty' method.
5571         (struct gl_oset_impl_base): Add dispose_fn field.
5572         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
5573         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
5574         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
5575         values.
5576         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
5577         (gl_tree_oset_free): Call dispose_fn on the dropped values.
5578         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
5579         dropped value.
5580         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
5581         dropped value.
5582         * tests/test-array_oset.c (main): Update.
5583         * tests/test-avltree_oset.c (main): Update.
5584         * tests/test-rbtree_oset.c (main): Update.
5585         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
5586
5587 2007-03-13  Bruno Haible  <bruno@clisp.org>
5588
5589         * tests/test-stdbool.c (i): Update after last patch.
5590
5591 2007-03-12  Bruno Haible  <bruno@clisp.org>
5592
5593         * lib/quotearg.c: Include <wctype.h> early, before the definition of
5594         the iswprint macro. Needed on Solaris 2.5.1.
5595
5596 2007-03-12  Bruno Haible  <bruno@clisp.org>
5597
5598         * tests/test-printf-frexp.c (main): Declare x as volatile.
5599
5600 2007-03-12  Simon Josefsson  <simon@josefsson.org>
5601
5602         * doc/gnulib.texi (Build robot for gnulib): New section.
5603
5604 2007-03-12  Jim Meyering  <jim@meyering.net>
5605
5606         * build-aux/bootstrap: New file.
5607         * build-aux/bootstrap.conf: New file, from coreutils.
5608
5609 2007-03-11  Bruno Haible  <bruno@clisp.org>
5610
5611         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
5612
5613 2007-03-12  Simon Josefsson  <simon@josefsson.org>
5614
5615         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
5616         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
5617         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
5618
5619 2007-03-11  Bruno Haible  <bruno@clisp.org>
5620
5621         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
5622         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
5623
5624 2007-03-11  Bruno Haible  <bruno@clisp.org>
5625
5626         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
5627         formula. Needed for SunPRO C 5.0.
5628
5629 2007-03-11  Bruno Haible  <bruno@clisp.org>
5630
5631         * modules/long-options (Depends-on): Add getopt.
5632
5633 2007-03-11  Bruno Haible  <bruno@clisp.org>
5634
5635         * modules/modechange (Depends-on): Add stdbool.
5636
5637 2007-03-11  Bruno Haible  <bruno@clisp.org>
5638
5639         * modules/i-ring (Depends-on): Add stdbool.
5640
5641 2007-03-11  Bruno Haible  <bruno@clisp.org>
5642
5643         * modules/gc-des (Depends-on): Add stdbool.
5644
5645 2007-03-11  Bruno Haible  <bruno@clisp.org>
5646
5647         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
5648
5649 2007-03-11  Bruno Haible  <bruno@clisp.org>
5650
5651         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
5652
5653 2007-03-11  Bruno Haible  <bruno@clisp.org>
5654
5655         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
5656
5657 2007-03-11  Bruno Haible  <bruno@clisp.org>
5658
5659         * lib/vasnprintf.c (sprintf): Undefine.
5660
5661 2007-03-11  Bruno Haible  <bruno@clisp.org>
5662
5663         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
5664         initializers in SunPRO C and Compaq C compilers.
5665
5666 2007-03-11  Bruno Haible  <bruno@clisp.org>
5667
5668         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
5669         decrementing code ANSI C compliant.
5670
5671 2007-03-11  Bruno Haible  <bruno@clisp.org>
5672
5673         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
5674         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
5675
5676 2007-03-11  Bruno Haible  <bruno@clisp.org>
5677
5678         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
5679         <stdbool.h> substitute doesn't pass.
5680
5681 2007-03-11  Bruno Haible  <bruno@clisp.org>
5682
5683         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
5684
5685 2007-03-11  Bruno Haible  <bruno@clisp.org>
5686
5687         * gnulib-tool (func_create_megatestdir): Create also an autobuild
5688         script, for submission to autobuild.josefsson.org.
5689
5690 2007-03-10  Bruno Haible  <bruno@clisp.org>
5691
5692         * modules/canonicalize-lgpl-tests: New file.
5693         * tests/test-canonicalize-lgpl.sh: New file.
5694         * tests/test-canonicalize-lgpl.c: New file.
5695
5696         * modules/c-strcase-tests: New file.
5697         * tests/test-c-strcase.sh: New file.
5698         * tests/test-c-strcasecmp.c: New file.
5699         * tests/test-c-strncasecmp.c: New file.
5700
5701         * modules/atexit-tests: New file.
5702         * tests/test-atexit.sh: New file.
5703         * tests/test-atexit.c: New file.
5704
5705 2007-03-10  Bruno Haible  <bruno@clisp.org>
5706
5707         * tests/test-binary-io.sh: Use temporary filenames that are not so
5708         likely to clash with those of other tests (in a parallel make).
5709         * tests/test-binary-io.c: Likewise.
5710
5711 2007-03-10  Bruno Haible  <bruno@clisp.org>
5712
5713         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
5714         fallback; use #error instead.
5715         Suggested by Simon Josefsson.
5716
5717 2007-03-10  Bruno Haible  <bruno@clisp.org>
5718
5719         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
5720         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
5721         first and the last.
5722
5723 2007-03-10  Bruno Haible  <bruno@clisp.org>
5724
5725         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
5726
5727 2007-03-10  Bruno Haible  <bruno@clisp.org>
5728
5729         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
5730         "make distcheck".
5731         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
5732         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
5733         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
5734
5735 2007-03-10  Bruno Haible  <bruno@clisp.org>
5736
5737         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
5738         variable.
5739         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
5740         variable.
5741
5742 2007-03-09  Eric Blake  <ebb9@byu.net>
5743         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
5744
5745         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
5746         types are not being provided by gnulib.
5747         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
5748         types are supported.
5749
5750 2007-03-10  Bruno Haible  <bruno@clisp.org>
5751
5752         * lib/stdio_.h (__attribute__): New macro.
5753         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
5754         vsprintf): Specify __attribute__ __format__ for GCC.
5755         Suggested by Eric Blake.
5756
5757 2007-03-09  Bruno Haible  <bruno@clisp.org>
5758
5759         * modules/printf-posix-tests: New file.
5760         * tests/test-printf-posix.sh: New file.
5761         * tests/test-printf-posix.c: New file.
5762
5763         * modules/printf-posix: New file.
5764         * lib/printf.c: New file.
5765         * m4/printf-posix-rpl.m4: New file.
5766         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
5767         REPLACE_PRINTF.
5768         * lib/stdio_.h (printf): New declaration.
5769         (format, __format__, ____printf____, ____scanf____, ____strftime____,
5770         ____strfmon____): New macros.
5771         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
5772         REPLACE_PRINTF.
5773
5774 2007-03-09  Bruno Haible  <bruno@clisp.org>
5775
5776         * tests/test-vasnprintf-posix2.sh: New file.
5777         * tests/test-vasnprintf-posix2.c: New file.
5778         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
5779         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
5780         (Makefile.am): Activate test-vasnprintf-posix2.sh.
5781
5782         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
5783         a locale dependent decimal point, rather than always '.'.
5784
5785 2007-03-09  Eric Blake  <ebb9@byu.net>
5786
5787         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
5788         spite of platforms like Tandem/NSK that define it to -1.
5789
5790 2007-03-08  Bruno Haible  <bruno@clisp.org>
5791
5792         * modules/vprintf-posix-tests: New file.
5793         * tests/test-vprintf-posix.sh: New file.
5794         * tests/test-vprintf-posix.c: New file.
5795         * tests/test-printf-posix.h: New file.
5796
5797         * modules/vprintf-posix: New file.
5798         * lib/vprintf.c: New file.
5799         * m4/vprintf-posix.m4: New file.
5800         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
5801         REPLACE_VPRINTF.
5802         * lib/stdio_.h (vprintf): New declaration.
5803         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
5804         REPLACE_VPRINTF.
5805
5806 2007-03-08  Bruno Haible  <bruno@clisp.org>
5807
5808         * modules/fprintf-posix-tests: New file.
5809         * tests/test-fprintf-posix.sh: New file.
5810         * tests/test-fprintf-posix.c: New file.
5811
5812         * modules/fprintf-posix: New file.
5813         * lib/fprintf.c: New file.
5814         * m4/fprintf-posix.m4: New file.
5815         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
5816         REPLACE_FPRINTF.
5817         * lib/stdio_.h (fprintf): New declaration.
5818         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
5819         REPLACE_FPRINTF.
5820
5821 2007-03-08  Bruno Haible  <bruno@clisp.org>
5822
5823         * modules/vfprintf-posix-tests: New file.
5824         * tests/test-vfprintf-posix.sh: New file.
5825         * tests/test-vfprintf-posix.c: New file.
5826         * tests/test-fprintf-posix.h: New file.
5827         * tests/test-fprintf-posix.out: New file.
5828
5829         * modules/vfprintf-posix: New file.
5830         * lib/vfprintf.c: New file.
5831         * m4/vfprintf-posix.m4: New file.
5832         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
5833         REPLACE_VFPRINTF.
5834         * lib/stdio_.h (vfprintf): New declaration.
5835         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
5836         REPLACE_VFPRINTF.
5837
5838 2007-03-08  Bruno Haible  <bruno@clisp.org>
5839
5840         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
5841
5842 2007-03-08  Bruno Haible  <bruno@clisp.org>
5843
5844         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
5845         instead of 'expr' invocations.
5846         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5847         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5848         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5849         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5850         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5851         Suggested by Paul Eggert.
5852
5853 2007-03-08  Bruno Haible  <bruno@clisp.org>
5854
5855         * modules/fseterr-tests: New file.
5856         * tests/test-fseterr.c: New file.
5857
5858         * modules/fseterr: New file.
5859         * lib/fseterr.h: New file.
5860         * lib/fseterr.c: New file.
5861
5862 2007-03-08  Bruno Haible  <bruno@clisp.org>
5863
5864         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
5865         * lib/getopt_.h: Likewise.
5866         * lib/mbswidth.h: Likewise.
5867         * lib/setenv.h: Likewise.
5868         * lib/vasnprintf.h: Likewise.
5869         * lib/vasprintf.h: Likewise.
5870         * lib/verror.h: Likewise.
5871         * lib/xsetenv.h: Likewise.
5872         * lib/xvasprintf.h: Likewise.
5873
5874 2007-03-08  Jim Meyering  <jim@meyering.net>
5875
5876         * users.txt: Add parted.
5877
5878         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
5879
5880 2007-03-07  Bruno Haible  <bruno@clisp.org>
5881
5882         * m4/printf.m4: Make the shell script snippets copy&pastable.
5883
5884 2007-03-02  Bruno Haible  <bruno@clisp.org>
5885
5886         * lib/netinet_in_.h: New file.
5887         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
5888         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
5889         * modules/netinet_in (Files): Add lib/netinet_in_.h.
5890         (Depends-on): Add absolute-header.
5891         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
5892         into netinet/in.h.
5893
5894 2007-03-03  Bruno Haible  <bruno@clisp.org>
5895
5896         * lib/sys_select_.h: New file.
5897         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
5898         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
5899         * modules/sys_select (Files): Add lib/sys_select_.h.
5900         (Depends-on): Add absolute-header.
5901         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
5902         into sys/select.h.
5903
5904 2007-03-02  Bruno Haible  <bruno@clisp.org>
5905
5906         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
5907         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
5908         values.
5909         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
5910         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
5911         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
5912         * modules/sys_socket (Depends-on): Add absolute-header.
5913         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
5914         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
5915         (Include): Remove requirement of inclusion of <sys/types.h>.
5916
5917 2007-03-02  Bruno Haible  <bruno@clisp.org>
5918
5919         * lib/byteswap_.h (bswap_32): Fix formula.
5920
5921 2007-03-06  Bruno Haible  <bruno@clisp.org>
5922
5923         * modules/sprintf-posix-tests: New file.
5924         * tests/test-sprintf-posix.c: New file.
5925
5926         * modules/sprintf-posix: New file.
5927         * lib/sprintf.c: New file.
5928         * m4/sprintf-posix.m4: New file.
5929         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
5930         REPLACE_SPRINTF.
5931         * lib/stdio_.h (sprintf): New declaration.
5932         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
5933         REPLACE_SPRINTF.
5934
5935 2007-03-06  Bruno Haible  <bruno@clisp.org>
5936
5937         * modules/vsprintf-posix-tests: New file.
5938         * tests/test-vsprintf-posix.c: New file.
5939         * tests/test-sprintf-posix.h: New file.
5940
5941         * modules/vsprintf-posix: New file.
5942         * lib/vsprintf.c: New file.
5943         * m4/vsprintf-posix.m4: New file.
5944         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
5945         REPLACE_VSPRINTF.
5946         * lib/stdio_.h (vsprintf): New declaration.
5947         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
5948         REPLACE_VSPRINTF.
5949
5950 2007-03-06  Bruno Haible  <bruno@clisp.org>
5951
5952         * modules/vsnprintf (Depend-on): Remove minmax.
5953
5954 2007-03-06  Bruno Haible  <bruno@clisp.org>
5955
5956         * modules/snprintf-posix-tests: New file.
5957         * tests/test-snprintf-posix.c: New file.
5958
5959         * modules/snprintf-posix: New file.
5960         * m4/snprintf-posix.m4: New file.
5961         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
5962         gl_FUNC_SNPRINTF.
5963         (gl_FUNC_SNPRINTF): Invoke it.
5964         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
5965         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
5966         is set.
5967         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
5968
5969 2007-03-06  Bruno Haible  <bruno@clisp.org>
5970
5971         * modules/vsnprintf-posix-tests: New file.
5972         * tests/test-vsnprintf-posix.c: New file.
5973         * tests/test-snprintf-posix.h: New file.
5974
5975         * modules/vsnprintf-posix: New file.
5976         * m4/vsnprintf-posix.m4: New file.
5977         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
5978         gl_FUNC_VSNPRINTF.
5979         (gl_FUNC_VSNPRINTF): Invoke it.
5980         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
5981         * lib/stdio_.h (vsnprintf): Define as a replacement if
5982         REPLACE_VSNPRINTF is set.
5983         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
5984
5985 2007-03-06  Bruno Haible  <bruno@clisp.org>
5986
5987         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
5988         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
5989
5990 2007-03-06  Bruno Haible  <bruno@clisp.org>
5991
5992         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
5993         (asinl): Declare also if HAVE_DECL_ASINL is set.
5994         (atanl): Declare also if HAVE_DECL_ATANL is set.
5995         (ceill): Declare also if HAVE_DECL_CEILL is set.
5996         (cosl): Declare also if HAVE_DECL_COSL is set.
5997         (expl): Declare also if HAVE_DECL_EXPL is set.
5998         (floorl): Declare also if HAVE_DECL_FLOORL is set.
5999         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
6000         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
6001         (logl): Declare also if HAVE_DECL_LOGL is set.
6002         (sinl): Declare also if HAVE_DECL_SINL is set.
6003         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
6004         (tanl): Declare also if HAVE_DECL_TANL is set.
6005         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
6006         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
6007         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
6008         declaration of frexpl, ldexpl.
6009         * modules/printf-frexpl (Depends-on): Add math.
6010         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
6011
6012 2007-03-05  Bruno Haible  <bruno@clisp.org>
6013
6014         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
6015         frexpl and ldexpl are declared.
6016         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
6017
6018 2007-03-05  Bruno Haible  <bruno@clisp.org>
6019
6020         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
6021         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
6022
6023 2007-03-05  Bruno Haible  <bruno@clisp.org>
6024
6025         * lib/stdio_.h: Include <stddef.h>.
6026
6027 2007-03-05  Bruno Haible  <bruno@clisp.org>
6028
6029         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
6030
6031 2007-03-05  Bruno Haible  <bruno@clisp.org>
6032
6033         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
6034         NetBSD 4, from Ralf Wildenhues.
6035
6036 2007-03-04  Bruno Haible  <bruno@clisp.org>
6037
6038         * lib/vasprintf.h: Update #if logic for the case when the functions
6039         exist but are overridden.
6040
6041 2007-03-04  Bruno Haible  <bruno@clisp.org>
6042
6043         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
6044         implementations: glibc-2.4 and MacOS X 10.3.
6045         * tests/test-vasnprintf-posix.c (test_function): Test also the case
6046         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
6047         * tests/test-vasprintf-posix.c (test_function): Likewise.
6048
6049 2007-03-04  Bruno Haible  <bruno@clisp.org>
6050
6051         * modules/vasprintf-posix-tests: New file.
6052         * tests/test-vasprintf-posix.c: New file.
6053
6054         * modules/vasprintf-posix: New file.
6055         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
6056         defined.
6057         * m4/vasprintf-posix.m4: New file.
6058         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
6059         gl_FUNC_VASPRINTF.
6060         (gl_FUNC_VASPRINTF): Invoke it.
6061         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
6062         here.
6063         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
6064
6065 2007-03-04  Bruno Haible  <bruno@clisp.org>
6066
6067         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
6068         REPLACE_GETTIMEOFDAY.
6069         * modules/sys_time (Makefile.am): Likewise.
6070         * m4/sys_time_h.m4: Likewise.
6071         * m4/gettimeofday.m4: Likewise.
6072
6073 2007-03-04  Bruno Haible  <bruno@clisp.org>
6074
6075         * modules/vasnprintf-posix-tests: New file.
6076         * tests/test-vasnprintf-posix.c: New file.
6077
6078         * modules/vasnprintf-posix: New file.
6079         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
6080         printf-frexpl.h.
6081         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
6082         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
6083         REPLACE_VASNPRINTF is defined.
6084         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
6085         gl_FUNC_VASNPRINTF.
6086         (gl_FUNC_VASNPRINTF): Invoke it.
6087         * m4/vasnprintf-posix.m4: New file.
6088         * m4/printf.m4: New file.
6089
6090 2007-03-04  Bruno Haible  <bruno@clisp.org>
6091
6092         Compile progreloc.c only if --enable-relocatable is specified.
6093         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
6094         if --enable-relocatable was specified.
6095         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
6096         lib_SOURCES.
6097
6098 2007-03-04  Jim Meyering  <jim@meyering.net>
6099
6100         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
6101         Use it consistently, rather than enumerating errno constants.
6102
6103 2007-03-04  Bruno Haible  <bruno@clisp.org>
6104
6105         * modules/xvasprintf-tests: New file.
6106         * tests/test-xvasprintf.c: New file.
6107
6108         * modules/vasprintf-tests: New file.
6109         * tests/test-vasprintf.c: New file.
6110
6111         * modules/vasnprintf-tests: New file.
6112         * tests/test-vasnprintf.c: New file.
6113
6114         * modules/vsnprintf-tests: New file.
6115         * tests/test-vsnprintf.c: New file.
6116
6117         * modules/snprintf-tests: New file.
6118         * tests/test-snprintf.c: New file.
6119
6120 2007-03-04  Bruno Haible  <bruno@clisp.org>
6121
6122         Compile relocatable.c only if --enable-relocatable is specified.
6123         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
6124         gl_RELOCATABLE_LIBRARY.
6125         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
6126         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
6127         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
6128         gl_RELOCATABLE_LIBRARY.
6129         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
6130         (Makefile.am): Remove lib_SOURCES.
6131         * modules/relocatable-lib-lgpl (configure.ac): Invoke
6132         gl_RELOCATABLE_LIBRARY.
6133         (Makefile.am): Remove lib_SOURCES.
6134         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
6135         always.
6136         * modules/relocatable-prog-wrapper (configure.ac): Invoke
6137         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
6138
6139 2007-03-04  Bruno Haible  <bruno@clisp.org>
6140
6141         * modules/argmatch-tests: New file.
6142         * tests/test-argmatch.c: New file.
6143
6144         * tests/test-allocsa.c (main): Halve the number of loop runs.
6145
6146         * modules/alloca-opt-tests: New file.
6147         * tests/test-alloca-opt.c: New file.
6148
6149 2007-03-04  Jim Meyering  <jim@meyering.net>
6150
6151         Work around difference between Linux ACLs and Solaris 10 ZFS.
6152         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
6153         for EINVAL.
6154
6155 2007-03-03  Bruno Haible  <bruno@clisp.org>
6156
6157         * modules/relocatable-prog (Depends-on): Add back progreloc's
6158         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
6159
6160 2007-03-03  Bruno Haible  <bruno@clisp.org>
6161
6162         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
6163         * modules/relocatable-lib: New file.
6164
6165 2007-03-03  Bruno Haible  <bruno@clisp.org>
6166
6167         * modules/relocatable-prog: Renamed from modules/relocatable.
6168         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
6169
6170 2007-03-03  Bruno Haible  <bruno@clisp.org>
6171
6172         * modules/relocatable-script (Files): Add doc/relocatable.texi,
6173         m4/relocatable-lib.m4.
6174         (Depends-on): Remove 'relocatable'.
6175         (configure.ac): Add gl_RELOCATABLE_NOP.
6176
6177 2007-03-03  Bruno Haible  <bruno@clisp.org>
6178
6179         * modules/relocatable-prog-wrapper: New file.
6180         * modules/relocatable (Depends-on): Add it. Remove all other
6181         dependencies except progname.
6182         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
6183
6184         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
6185         (gl_FUNC_STRERROR): Nop.
6186         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
6187
6188         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
6189         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
6190
6191         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
6192         (gl_FUNC_READLINK): Update.
6193
6194         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
6195
6196 2007-03-03  Bruno Haible  <bruno@clisp.org>
6197
6198         * lib/xreadlink.c: Include <unistd.h> unconditionally.
6199         * modules/xreadlink (Depends-on): Add unistd.
6200         * modules/xreadlink-with-size (Depends-on): Likewise.
6201
6202 2007-03-03  Bruno Haible  <bruno@clisp.org>
6203
6204         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
6205         extracted from gt_FUNC_SETENV.
6206         (gt_FUNC_SETENV): Remove macro.
6207         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
6208         remove gt_FUNC_SETENV.
6209
6210 2007-03-03  Bruno Haible  <bruno@clisp.org>
6211
6212         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
6213         ENABLE_RELOCATABLE here.
6214         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
6215
6216 2007-03-03  Bruno Haible  <bruno@clisp.org>
6217
6218         * modules/rbtreehash-list-tests (Depends-on): Add progname.
6219         * tests/test-rbtreehash_list.c: Include progname.h.
6220         (main): Call set_program_name.
6221
6222         * modules/rbtree-oset-tests (Depends-on): Add progname.
6223         * tests/test-rbtree_oset.c: Include progname.h.
6224         (main): Call set_program_name.
6225
6226         * modules/rbtree-list-tests (Depends-on): Add progname.
6227         * tests/test-rbtree_list.c: Include progname.h.
6228         (main): Call set_program_name.
6229
6230         * modules/linked-list-tests (Depends-on): Add progname.
6231         * tests/test-linked_list.c: Include progname.h.
6232         (main): Call set_program_name.
6233
6234 2007-03-03  Bruno Haible  <bruno@clisp.org>
6235
6236         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
6237         All uses of __restrict changed to _Restrict_.
6238         * lib/glob_.h (__restrict): Remove macro.
6239
6240 2007-03-02  Bruno Haible  <bruno@clisp.org>
6241
6242         * modules/gettext (configure.ac): Require gettext infrastructure
6243         from version 0.16.1.
6244
6245 2007-03-02  Bruno Haible  <bruno@clisp.org>
6246
6247         * modules/linkedhash-list-tests (Depends-on): Add progname.
6248         * tests/test-linkedhash_list.c: Include progname.h.
6249         (main): Call set_program_name.
6250
6251         * modules/carray-list-tests (Depends-on): Add progname.
6252         * tests/test-carray_list.c: Include progname.h.
6253         (main): Call set_program_name.
6254
6255         * modules/avltreehash-list-tests (Depends-on): Add progname.
6256         * tests/test-avltreehash_list.c: Include progname.h.
6257         (main): Call set_program_name.
6258
6259         * modules/avltree-oset-tests (Depends-on): Add progname.
6260         * tests/test-avltree_oset.c: Include progname.h.
6261         (main): Call set_program_name.
6262
6263         * modules/avltree-list-tests (Depends-on): Add progname.
6264         * tests/test-avltree_list.c: Include progname.h.
6265         (main): Call set_program_name.
6266
6267         * modules/array-oset-tests (Depends-on): Add progname.
6268         * tests/test-array_oset.c: Include progname.h.
6269         (main): Call set_program_name.
6270
6271         * modules/array-list-tests (Depends-on): Add progname.
6272         * tests/test-array_list.c: Include progname.h.
6273         (main): Call set_program_name.
6274
6275         * modules/argp-tests (Depends-on): Add progname.
6276         * tests/test-argp.c: Include argp.h first. Include progname.h.
6277         (main): Call set_program_name.
6278
6279 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
6280
6281         * doc/gnulib-tool.texi (Initial import): Reword description of
6282         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
6283         limited effect even if defined after the first system include.
6284
6285 2007-03-01  Bruno Haible  <bruno@clisp.org>
6286
6287         * build-aux/config.libpath: Update to libtool-1.5.22.
6288         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6289
6290 2007-03-01  Bruno Haible  <bruno@clisp.org>
6291
6292         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
6293         foo_CFLAGS.
6294         Reported by Ralf Wildenhues.
6295
6296 2007-03-01  Bruno Haible  <bruno@clisp.org>
6297
6298         * build-aux/install-reloc: Remove object files left over by some
6299         compilers.
6300         Reported by Ralf Wildenhues.
6301
6302 2007-03-01  Bruno Haible  <bruno@clisp.org>
6303
6304         * build-aux/install-reloc: Break long lines.
6305
6306 2007-03-01  Bruno Haible  <bruno@clisp.org>
6307
6308         * doc/relocatable.texi: Document that it may not work on OpenBSD.
6309         Reported by Ralf Wildenhues.
6310
6311 2007-03-01  Bruno Haible  <bruno@clisp.org>
6312
6313         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
6314         include ordering constraints.
6315
6316 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
6317
6318         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
6319         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
6320         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
6321         as another example.
6322         * lib/time_.h: Fix misspelling.
6323         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
6324         Require gl_HEADER_TIME_H_DEFAULTS.
6325         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
6326         * m4/time_r.m4 (gl_TIME_R): Likewise.
6327         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
6328
6329 2007-03-01  Bruno Haible  <bruno@clisp.org>
6330
6331         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
6332         * m4/utimens.m4 (gl_UTIMENS): Likewise.
6333
6334 2007-03-01  Jim Meyering  <jim@meyering.net>
6335
6336         * modules/xreadlink (Maintainer): Add my name.
6337         * modules/xreadlink-with-size (Depends-on): Alphabetize.
6338
6339 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
6340             Bruno Haible  <bruno@clisp.org>
6341
6342         * build-aux/install-reloc: Compile also c-ctype.c.
6343         * build-aux/relocatable.sh.in: New file.
6344         * doc/relocatable.texi: New file.
6345         * doc/relocatable-maint.texi: New file.
6346         * doc/gnulib.texi: Include relocatable-maint.texi.
6347         * lib/progreloc.c: Include unistd.h unconditionally.
6348         * lib/relocwrapper.c: Include unistd.h unconditionally.
6349         Include c-ctype.h.
6350         (add_dotbin): Use c_tolower.
6351         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
6352         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
6353         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
6354         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
6355         to m4/relocatable-lib.m4.
6356         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
6357         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
6358         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
6359         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
6360         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
6361         * modules/relocatable: New file.
6362         * modules/relocatable-lib: New file.
6363         * modules/relocatable-script: New file.
6364
6365 2007-02-28  Bruno Haible  <bruno@clisp.org>
6366
6367         Import --enable-relocatable infrastructure.
6368         * build-aux/config.libpath: New file, from GNU gettext.
6369         * build-aux/install-reloc: New file, from GNU gettext.
6370         * build-aux/reloc-ldflags: New file, from GNU gettext.
6371         * lib/relocatable.h: New file, from GNU gettext.
6372         * lib/relocatable.c: New file, from GNU gettext.
6373         * lib/relocwrapper.c: New file, from GNU gettext.
6374         * m4/relocatable.m4: New file, from GNU gettext.
6375
6376 2007-02-28  Bruno Haible  <bruno@clisp.org>
6377
6378         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
6379
6380         * modules/xreadlink: New file, from GNU gettext with modifications.
6381         * lib/xreadlink.c: New file, from GNU gettext.
6382         * lib/xreadlink.h: Add comments.
6383         (xreadlink): New declaration.
6384
6385         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
6386         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
6387         lib/xreadlink-with-size.c.
6388         (configure.ac): Remove gl_XREADLINK invocation.
6389         (Makefile.am): Augment lib_SOURCES.
6390         * m4/xreadlink.m4: Remove file.
6391         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
6392         (xreadlink_with_size): Renamed from xreadink.
6393         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
6394         * modules/canonicalize (Depends-on): Replace xreadlink with
6395         xreadlink-with-size.
6396         * lib/canonicalize.c (canonicalize_filename_mode): Update.
6397
6398 2007-02-25  Jim Meyering  <jim@meyering.net>
6399
6400         * build-aux/announce-gen: When complaining about excess arguments,
6401         list them.
6402
6403 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
6404
6405         * README: Document signed integer overflow situation more
6406         accurately.
6407
6408 2007-02-25  Bruno Haible  <bruno@clisp.org>
6409
6410         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
6411         'a' or 'A' conversion.
6412
6413 2007-02-25  Bruno Haible  <bruno@clisp.org>
6414
6415         * modules/filename: Renamed from modules/pathname.
6416         (Files): Replace lib/pathname.h with lib/filename.h. Replace
6417         lib/concatpath.c with lib/concat-filename.c.
6418         (Makefile.am): Update.
6419         (Include): Replace pathname.h with filename.h.
6420         * lib/filename.h: Renamed from lib/pathname.h.
6421         (concatenated_filename): Renamed from concatenated_pathname.
6422         * lib/concat-filename.c: Renamed from lib/concatpath.c.
6423         (concatenated_filename): Renamed from concatenated_pathname.
6424         * lib/findprog.c: Include filename.h instead of pathname.h.
6425         (find_in_path): Update.
6426         * lib/javacomp.c: Include filename.h instead of pathname.h.
6427         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
6428         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
6429         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
6430         is_oldgcj_14_13_usable, is_javac_usable): Update.
6431         * lib/javaexec.c: Include filename.h instead of pathname.h.
6432         (execute_java_class): Update.
6433         * modules/findprog: Update.
6434         * modules/javacomp: Update.
6435         * modules/javaexec: Update.
6436         * MODULES.html.sh (File system functions): Add 'filename', remove
6437         'pathname'.
6438
6439 2007-02-25  Bruno Haible  <bruno@clisp.org>
6440
6441         * modules/printf-frexpl-tests: New file.
6442         * tests/test-printf-frexpl.c: New file.
6443
6444         * modules/printf-frexpl: New file.
6445         * lib/printf-frexpl.h: New file.
6446         * lib/printf-frexpl.c: New file.
6447         * m4/printf-frexpl.m4: New file.
6448
6449 2007-02-25  Bruno Haible  <bruno@clisp.org>
6450
6451         * modules/printf-frexp-tests: New file.
6452         * tests/test-printf-frexp.c: New file.
6453
6454         * modules/printf-frexp: New file.
6455         * lib/printf-frexp.h: New file.
6456         * lib/printf-frexp.c: New file.
6457         * m4/printf-frexp.m4: New file.
6458
6459 2007-02-25  Bruno Haible  <bruno@clisp.org>
6460
6461         Assume automake >= 1.10 for the tests.
6462         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
6463         * modules/arctwo-tests: Likewise.
6464         * modules/argp-tests: Likewise.
6465         * modules/avltree-list-tests: Likewise.
6466         * modules/avltree-oset-tests: Likewise.
6467         * modules/avltreehash-list-tests: Likewise.
6468         * modules/carray-list-tests: Likewise.
6469         * modules/crc-tests: Likewise.
6470         * modules/des-tests: Likewise.
6471         * modules/gc-arcfour-tests: Likewise.
6472         * modules/gc-arctwo-tests: Likewise.
6473         * modules/gc-des-tests: Likewise.
6474         * modules/gc-hmac-md5-tests: Likewise.
6475         * modules/gc-hmac-sha1-tests: Likewise.
6476         * modules/gc-md2-tests: Likewise.
6477         * modules/gc-md4-tests: Likewise.
6478         * modules/gc-md5-tests: Likewise.
6479         * modules/gc-pbkdf2-sha1-tests: Likewise.
6480         * modules/gc-rijndael-tests: Likewise.
6481         * modules/gc-sha1-tests: Likewise.
6482         * modules/gc-tests: Likewise.
6483         * modules/getaddrinfo-tests: Likewise.
6484         * modules/hmac-md5-tests: Likewise.
6485         * modules/hmac-sha1-tests: Likewise.
6486         * modules/linked-list-tests: Likewise.
6487         * modules/linkedhash-list-tests: Likewise.
6488         * modules/lock-tests: Likewise.
6489         * modules/md2-tests: Likewise.
6490         * modules/md4-tests: Likewise.
6491         * modules/md5-tests: Likewise.
6492         * modules/rbtree-list-tests: Likewise.
6493         * modules/rbtree-oset-tests: Likewise.
6494         * modules/rbtreehash-list-tests: Likewise.
6495         * modules/read-file-tests: Likewise.
6496         * modules/rijndael-tests: Likewise.
6497         * modules/stdint-tests: Likewise.
6498         * modules/tls-tests: Likewise.
6499
6500 2007-02-24  Bruno Haible  <bruno@clisp.org>
6501
6502         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
6503         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
6504         function; instead check whether isnan with a double argument links.
6505         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
6506         function; instead check whether isnan with a 'long double' argument
6507         links.
6508         Reported by Eric Blake <ebb9@byu.net>.
6509
6510 2007-02-24  Bruno Haible  <bruno@clisp.org>
6511
6512         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
6513         defined.
6514         * lib/isnanl.c: Remove all code. Just include isnan.c.
6515         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
6516
6517 2007-02-25  Jim Meyering  <jim@meyering.net>
6518
6519         Avoid conflicting types for 'unsetenv' on FreeBSD.
6520         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
6521         conflicting with FreeBSD's (5.0 and 6.1) function declaration
6522         in stdlib.h.
6523
6524 2007-02-24  Bruno Haible  <bruno@clisp.org>
6525
6526         * modules/isnanl-nolibm-tests: New file.
6527         * tests/test-isnanl.c: New file.
6528
6529         * modules/isnanl-nolibm: New file.
6530         * lib/isnanl.h: New file.
6531         * lib/isnanl.c: New file.
6532         * m4/isnanl.m4: New file.
6533
6534 2007-02-24  Bruno Haible  <bruno@clisp.org>
6535
6536         * modules/isnan-nolibm-tests: New file.
6537         * tests/test-isnan.c: New file.
6538
6539         * modules/isnan-nolibm: New file.
6540         * lib/isnan.h: New file.
6541         * lib/isnan.c: New file.
6542         * m4/isnan.m4: New file.
6543
6544 2007-02-24  Bruno Haible  <bruno@clisp.org>
6545
6546         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
6547         assume that an exponent fits in 20 bits.
6548
6549 2007-02-24  Jim Meyering  <jim@meyering.net>
6550
6551         * m4/regex.m4: Update the description of the configure-time option,
6552         --without-included-regex, to state accurately what the defaults are,
6553         and perhaps to give people an idea why using this option is risky.
6554
6555 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
6556
6557         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
6558         loops on small arguments.  This attempts to avoid the problem
6559         Bruno Haible reported for AIX 4.3.2 in
6560         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
6561
6562 2007-02-23  Bruno Haible  <bruno@clisp.org>
6563
6564         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
6565         Needed for help2man.
6566
6567 2007-02-23  Karl Berry  <karl@gnu.org>
6568
6569         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
6570         exists, foo.h should be cvs-ignored, not committed.
6571
6572 2007-02-23  Eric Blake  <ebb9@byu.net>
6573
6574         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
6575         * lib/stat-time.h (includes): Likewise.
6576         * lib/utimecmp.c (includes): Likewise.
6577         * lib/utimens.h (includes): Likewise.
6578         * lib/getdate.y (includes): Also include "timespec.h" for use
6579         internal to the module.
6580         * modules/utimens (Depends-on): Revert yesterday's patch.
6581         * modules/nanosleep (Depends-on): Add missing dependency.
6582
6583 2007-02-22  Bruno Haible  <bruno@clisp.org>
6584
6585         * lib/glob.c: Don't include getlogin_r.h.
6586
6587 2007-02-22  Jim Meyering  <jim@meyering.net>
6588
6589         * modules/utimens (Depends-on): Add timespec, required for
6590         utimens.h's inclusion of timespec.h.
6591
6592 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
6593
6594         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
6595         long unreadable paths in GNU/Linux.  Problem reported by Andreas
6596         Schwab in
6597         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
6598         I'll try to think of a better way to fix the Solaris problem.
6599
6600         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
6601         like glibc; on Solaris 10, it fails with errno == EINVAL.
6602         POSIX says the behavior is unspecified if the first argument is NULL,
6603         so play it safe and never pass NULL to the system getcwd.
6604
6605 2007-02-21  Jim Meyering  <jim@meyering.net>
6606
6607         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
6608         of gettimeofday.  It would conflict with the one now always
6609         provided via sys_time_.h.  Reported by Matthew Woehlke, as
6610         an IRIX 6.5 build failure.
6611
6612 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
6613
6614         Minor fixups to port to Solaris 10 with Sun C 5.8.
6615         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
6616         * modules/getcwd (Depends-on): Add dirfd.
6617         * lib/putenv.c (putenv): #undef it.
6618         (rpl_putenv): New decl.
6619         (malloc, free): Include <stdlib.h> rather than prototyping separately.
6620
6621 2007-02-20  Bruno Haible  <bruno@clisp.org>
6622
6623         * modules/stdio-tests: New file.
6624         * tests/test-stdio.c: New file.
6625
6626         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
6627         (Depends-on): Add stdio.
6628         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
6629         (Include): Use <stdio.h> instead of vsnprintf.h.
6630         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
6631         HAVE_DECL_VSNPRINTF.
6632         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
6633
6634         * modules/snprintf (Files): Remove lib/snprintf.h.
6635         (Depends-on): Add stdio.
6636         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
6637         (Include): Use <stdio.h> instead of snprintf.h.
6638         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
6639         HAVE_DECL_SNPRINTF.
6640         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
6641         * lib/getaddrinfo.c: Likewise.
6642
6643         * modules/stdio: New file.
6644         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
6645         * lib/snprintf.h: Remove file.
6646         * lib/vsnprintf.h: Remove file.
6647         * lib/.cppi-disable: Remove snprintf.h.
6648         * m4/stdio_h.m4: New file.
6649         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
6650
6651 2007-02-20  Jim Meyering  <jim@meyering.net>
6652
6653         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
6654         used by e.g., mingw.  From Bruno Haible.
6655
6656 2007-02-19  Bruno Haible  <bruno@clisp.org>
6657
6658         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
6659         warnings.
6660         Reported by Ben Pfaff <blp@cs.stanford.edu>.
6661
6662 2007-02-19  Bruno Haible  <bruno@clisp.org>
6663
6664         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
6665         from mingw users.
6666
6667 2007-02-19  Bruno Haible  <bruno@clisp.org>
6668
6669         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
6670         warnings.
6671         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
6672
6673 2007-02-19  Jim Meyering  <jim@meyering.net>
6674
6675         Don't use FD after a successful "fdopendir (fd)".
6676         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
6677         Reset it by calling dirfd on the just-obtained DIR*.
6678
6679         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
6680         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
6681
6682 2007-02-18  Bruno Haible  <bruno@clisp.org>
6683
6684         * lib/readlink.c: Include <unistd.h>.
6685         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
6686         HAVE_READLINK.
6687         * modules/readlink (Depends-on): Add unistd.
6688         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6689         (Include): Add <unistd.h>.
6690
6691         * lib/getlogin_r.h: Remove file.
6692         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
6693         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
6694         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
6695         HAVE_DECL_GETLOGIN_R.
6696         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
6697         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6698         (Include): Use <unistd.h> instead of getlogin_r.h.
6699
6700         * lib/getcwd.h: Remove file.
6701         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
6702         * lib/xgetcwd.c: Likewise.
6703         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
6704         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
6705         * modules/getcwd (Files): Remove lib/getcwd.h.
6706         (Depends-on): Add unistd.
6707         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6708         (Include): Use <unistd.h> instad of getcwd.h.
6709
6710         * lib/ftruncate.c: Include <unistd.h> first.
6711         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
6712         Set HAVE_FTRUNCATE.
6713         * modules/ftruncate (Depends-on): Add unistd.
6714         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6715
6716         * lib/fchdir.c: Include <unistd.h> first.
6717         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
6718         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
6719         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
6720         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6721         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
6722
6723         * lib/dup2.c: Include <unistd.h> first.
6724         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
6725         HAVE_DUP2.
6726         * modules/dup2 (Depends-on): Add unistd.
6727         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6728
6729         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
6730         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
6731         REPLACE_CHOWN. Don't define chown as a macro here.
6732         * modules/chown (Depends-on): Add unistd.
6733         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
6734
6735         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
6736         Add definition for GL_LINK_WARNING.
6737         (chown, dup2): New declarations.
6738         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
6739         link warning.
6740         (ftruncate): New declaration.
6741         (getcwd): New declaration, taken from old getcwd.h.
6742         (getlogin_r): New declaration, taken from old getlogin_r.h.
6743         (readlink): New declaration.
6744         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
6745         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
6746         (gl_PREREQ_UNISTD): Remove macro.
6747         (gl_UNISTD_MODULE_INDICATOR): New macro.
6748         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
6749         many new variables. Don't set UNISTD_H.
6750         * modules/unistd (Description): Change.
6751         (Depends-on): Add link-warning.
6752         (configure.ac): Update.
6753         (Makefile.am): Create unistd.h always. Substitute many new variables
6754         into it.
6755
6756 2007-02-18  Bruno Haible  <bruno@clisp.org>
6757
6758         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
6759         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
6760         HAVE_GETSUBOPT.
6761         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
6762         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
6763         * lib/getsubopt.h: Remove file.
6764         * modules/getsubopt (Files): Remove lib/getsubopt.h.
6765         (Depends-on): Add stdlib.
6766         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
6767         (Includes): Use <stdlib.h> instead of getsubopt.h.
6768         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
6769         Set HAVE_GETSUBOPT.
6770         * lib/getsubopt.c: Don't include getsubopt.h.
6771
6772 2007-02-18  Bruno Haible  <bruno@clisp.org>
6773
6774         * modules/fchdir (Depends-on): Add dup2.
6775
6776 2007-02-18  Bruno Haible  <bruno@clisp.org>
6777
6778         * lib/stdlib_.h: Handle glibc's special invocation convention
6779         specially.
6780
6781 2007-02-18  Bruno Haible  <bruno@clisp.org>
6782
6783         * modules/stdlib-tests: New file.
6784         * tests/test-stdlib.c: New file.
6785
6786         * modules/mkstemp (Files): Remove lib/mkstemp.h.
6787         (Depends-on): Add stdlib.
6788         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
6789         (Includes): Use <stdlib.h> instead of mkstemp.h.
6790         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
6791         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
6792         * lib/mkstemp.c: Don't include mkstemp.h.
6793         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
6794         * lib/stdlib--.h: Don't include mkstemp.h.
6795
6796         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
6797         (Depends-on): Add stdlib.
6798         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
6799         (Includes): Use <stdlib.h> instead of mkdtemp.h.
6800         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
6801         HAVE_MKDTEMP.
6802         * lib/mkdtemp.c: Don't include mkdtemp.h.
6803         * lib/clean-temp.c: Don't include mkdtemp.h.
6804
6805         * modules/exit (Files): Remove lib/exit.h.
6806         (Depends-on): Add stdlib.
6807         (Makefile.am): Remove lib_SOURCES.
6808         (Include): Use <stdlib.h> instead of exit.h.
6809         * lib/argmatch.c: Don't include exit.h.
6810         * lib/execute.c: Likewise.
6811         * lib/pagealign_alloc.c: Likewise.
6812         * lib/pipe.c: Likewise.
6813         * lib/wait-process.c: Likewise.
6814         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
6815         * lib/exitfail.c: Likewise.
6816         * lib/savewd.c: Likewise.
6817         * lib/xsetenv.c: Likewise.
6818
6819         * modules/stdlib: New file.
6820         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
6821         and extra comments about mkstemp().
6822         * lib/exit.h: Remove file.
6823         * lib/mkdtemp.h: Remove file.
6824         * lib/mkstemp.h: Remove file.
6825         * m4/stdlib_h.m4: New file.
6826         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
6827
6828 2007-02-18  Bruno Haible  <bruno@clisp.org>
6829
6830         * modules/math-tests: New file.
6831         * tests/test-math.c: New file.
6832
6833         * modules/math: New file.
6834         * modules/mathl (Files): Remove lib/mathl.h.
6835         (Depends-on): Add math.
6836         (Makefile.am): Don't mention mathl.h.
6837         (Include): Use <math.h> instead of mathl.h.
6838         * lib/math_.h: New file.
6839         * lib/mathl.h: Remove file.
6840         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
6841         mathl.h.
6842         * lib/asinl.c: Likewise.
6843         * lib/atanl.c: Likewise.
6844         * lib/ceill.c: Likewise.
6845         * lib/cosl.c: Likewise.
6846         * lib/expl.c: Likewise.
6847         * lib/floorl.c: Likewise.
6848         * lib/frexpl.c: Likewise.
6849         * lib/ldexpl.c: Likewise.
6850         * lib/logl.c: Likewise.
6851         * lib/sincosl.c: Likewise.
6852         * lib/sinl.c: Likewise.
6853         * lib/sqrtl.c: Likewise.
6854         * lib/tanl.c: Likewise.
6855         * lib/trigl.c: Likewise.
6856         * m4/math_h.m4: New file.
6857         * MODULES.html.sh (Mathematics): Add math.
6858
6859 2007-02-17  Bruno Haible  <bruno@clisp.org>
6860
6861         * modules/wctype-tests: New file.
6862         * tests/test-wctype.c: New file.
6863
6864         * modules/wchar-tests: New file.
6865         * tests/test-wchar.c: New file.
6866
6867         * modules/unistd-tests: New file.
6868         * tests/test-unistd.c: New file.
6869
6870         * modules/time-tests: New file.
6871         * tests/test-time.c: New file.
6872
6873         * modules/sysexits-tests: New file.
6874         * tests/test-sysexits.c: New file.
6875
6876         * modules/sys_time-tests: New file.
6877         * tests/test-sys_time.c: New file.
6878
6879         * modules/sys_stat-tests: New file.
6880         * tests/test-sys_stat.c: New file.
6881
6882         * modules/sys_socket-tests: New file.
6883         * tests/test-sys_socket.c: New file.
6884
6885         * modules/sys_select-tests: New file.
6886         * tests/test-sys_select.c: New file.
6887
6888         * modules/string-tests: New file.
6889         * tests/test-string.c: New file.
6890
6891         * modules/stdbool-tests: New file.
6892         * tests/test-stdbool.c: New file.
6893
6894         * modules/netinet_in-tests: New file.
6895         * tests/test-netinet_in.c: New file.
6896
6897         * modules/inttypes-tests: New file.
6898         * tests/test-inttypes.c: New file.
6899
6900         * modules/fcntl-tests: New file.
6901         * tests/test-fcntl.c: New file.
6902
6903         * modules/byteswap-tests: New file.
6904         * tests/test-byteswap.c: New file.
6905
6906         * modules/arpa_inet-tests: New file.
6907         * tests/test-arpa_inet.c: New file.
6908
6909 2007-02-17  Bruno Haible  <bruno@clisp.org>
6910
6911         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
6912         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
6913         if the corresponding module is not enabled. Emit link warnings if
6914         the function is used nevertheless.
6915         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
6916         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
6917         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
6918         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
6919         * modules/inttypes (Depends-on): Add link-warning.
6920         (Makefile.am): Copy the contents of build-aux/link-warning.h into
6921         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
6922         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
6923         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
6924         * modules/imaxdiv (configure.ac): Likewise.
6925         * modules/strtoimax (configure.ac): Likewise.
6926         * modules/strtoumax (configure.ac): Likewise.
6927
6928 2007-02-17  Bruno Haible  <bruno@clisp.org>
6929
6930         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
6931         gl_STRING_MODULE_INDICATOR_DEFAULTS.
6932         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
6933         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
6934
6935 2007-02-17  Bruno Haible  <bruno@clisp.org>
6936
6937         * modules/link-warning: New file.
6938         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
6939         * lib/string_.h (GL_LINK_WARNING): Remove definition.
6940         * modules/string (Depends-on): Add link-warning.
6941         (Makefile.am): Copy the contents of build-aux/link-warning.h into
6942         string.h.
6943         * MODULES.html.sh (Support for building libraries and executables): Add
6944         link-warning.
6945
6946 2007-02-17  Bruno Haible  <bruno@clisp.org>
6947
6948         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
6949         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
6950         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
6951         long lines.
6952
6953 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
6954             Bruno Haible  <bruno@clisp.org>
6955
6956         * modules/tmpfile: New file.
6957         * lib/tmpfile.c: New file.
6958         * m4/tmpfile.m4: New file.
6959         * MODULES.html.sh (func_all_modules): New section "Input/output".
6960
6961 2007-02-15  Bruno Haible  <bruno@clisp.org>
6962
6963         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
6964         (supports_delete_on_close): New function.
6965         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
6966
6967 2007-02-14  Bruno Haible  <bruno@clisp.org>
6968
6969         * modules/mbspcasecmp-tests: New file.
6970         * tests/test-mbspcasecmp.sh: New file.
6971         * tests/test-mbspcasecmp.c: New file.
6972
6973         New module mbspcasecmp.
6974         * modules/mbspcasecmp: New file.
6975         * lib/mbspcasecmp.c: New file.
6976         * lib/string_.h (strncasecmp): Change warning message.
6977         (mbspcasecmp): New declaration.
6978         * m4/mbspcasecmp.m4: New file.
6979         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6980         GNULIB_MBSPCASECMP.
6981         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
6982         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
6983
6984 2007-02-14  Bruno Haible  <bruno@clisp.org>
6985
6986         * modules/mbsncasecmp-tests: New file.
6987         * tests/test-mbsncasecmp.sh: New file.
6988         * tests/test-mbsncasecmp.c: New file.
6989
6990         New module mbsncasecmp.
6991         * modules/mbsncasecmp: New file.
6992         * lib/mbsncasecmp.c: New file.
6993         * lib/string_.h (mbsncasecmp): New declaration.
6994         * m4/mbsncasecmp.m4: New file.
6995         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
6996         GNULIB_MBSNCASECMP.
6997         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
6998         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
6999
7000 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
7001
7002         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
7003         Verify that it doesn't overlap with our flags.
7004         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
7005         do not have the desired effect in multibyte locales; instead, use
7006         mbscasecmp.
7007         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
7008         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
7009         we don't require GNU fnmatch ourselves (if our users require it, they
7010         should do so explicitly).
7011
7012         Fix regex code so it doesn't rely on strcasecmp.
7013         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
7014         Otherwise, include gnulib's langinfo.h.
7015         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
7016         undesirable behavior in non-C locales.  Instead, rely on localecharset.
7017         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
7018         * modules/regex (FILES): Remove m4/codeset.m4.
7019         (Depends-on): Add localcharset.  Remove strcase.
7020
7021 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7022
7023         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
7024         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
7025
7026 2007-02-13  Bruno Haible  <bruno@clisp.org>
7027
7028         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
7029         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7030
7031 2007-02-12  Bruno Haible  <bruno@clisp.org>
7032
7033         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
7034         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
7035         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
7036         time warning rather than a link error.
7037
7038 2007-02-12  Bruno Haible  <bruno@clisp.org>
7039
7040         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
7041         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
7042         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7043
7044 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
7045
7046         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
7047         args, not 2.
7048
7049 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
7050
7051         New module 'time', so that apps can include <time.h> as per
7052         POSIX and GNU instead of separate include files like time_r.h
7053         and timegm.h.  This implementation tries out a simpler approach
7054         for replacing decls in standard include files (as compared to
7055         the string module), somewhat as an experiment.
7056
7057         * config/srclist.txt: Comment out mktime.c for now.
7058         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
7059         since it doesn't apply any more.  Use generic wording instead.
7060         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
7061         'time'.
7062         * lib/time_.h, m4/time_h.m4, modules/time: New files.
7063         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
7064         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
7065         Don't include <sys/types.h>; no longer needed since we assume C89.
7066         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
7067         * lib/strftime.c: Likewise.
7068         * lib/time_r.c: Likewise.
7069         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
7070         * lib/nanosleep.c: Include <time.h> first, to check interface.
7071         * lib/strptime.c: Likewise.
7072         * lib/time_r.c: Likewise.
7073         * lib/timegm.c: Likewise.
7074         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
7075         needed.
7076         * lib/timegm.c: Don't include timegm.h; no longer needed.
7077         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
7078         time.h now handles any problems in that area.
7079         (struct timespec, nanosleep): Remove; time.h now arranges for these.
7080         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
7081         that time.h defines struct timespec.
7082         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
7083         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
7084         handles that.
7085         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
7086         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
7087         needed.  Set REPLACE_LOCALTIME.
7088         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
7089         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
7090         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
7091         nanosleep; time_h.m4 now does that.  Don't require
7092         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
7093         module handles this now.
7094         * modules/getdate (Depends-on): Remove timespec.  Add time.
7095         * modules/nanosleep (Depends-on): Likewise.
7096         * modules/stat-time (Depends-on): Likewise.
7097         * modules/nanosleep (Include): Include time.h, not timespec.h.
7098         * modules/strptime (Files): Remove lib/strptime.h.
7099         (Depends-on): Add extensions, time.
7100         (Include): Include time.h, not strptime.h.
7101         * modules/time_r (Files): Remove lib/time_r.h.
7102         (Depends-on): Add time.
7103         (Include): Include time.h, not time_r.h.
7104         * modules/timegm: Likewise.
7105         * modules/timespec (Description): Now does timespec-related decls
7106         of our own, instead of struct timespec itself.
7107         (Depends-on): Add time; remove extensions.
7108         (Maintainer): Add self.
7109         * modules/utimecmp (Depends-on): Add time; remove timespec.
7110         * modules/utimens (Depends-on): Likewise.
7111         * modules/xnanosleep (Depends-on): Likewise.
7112
7113 2007-02-11  Bruno Haible  <bruno@clisp.org>
7114
7115         * lib/c-strstr.c: Include allocsa.h.
7116         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
7117         * lib/c-strcasestr.c: Include allocsa.h.
7118         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
7119         * lib/strcasestr.c: Include allocsa.h.
7120         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
7121         * lib/mbsstr.c: Include allocsa.h.
7122         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
7123         allocsa/freesa instead of malloc/free.
7124         * lib/mbscasestr.c: Include allocsa.h.
7125         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
7126         allocsa/freesa instead of malloc/free.
7127         * modules/c-strstr (Depends-on): Add allocsa.
7128         * modules/c-strcasestr (Depends-on): Likewise.
7129         * modules/strcasestr (Depends-on): Likewise.
7130         * modules/mbsstr (Depends-on): Likewise.
7131         * modules/mbscasestr (Depends-on): Likewise.
7132
7133 2007-02-11  Bruno Haible  <bruno@clisp.org>
7134
7135         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
7136
7137         * modules/mbsspn-tests: New file.
7138         * tests/test-mbsspn.sh: New file.
7139         * tests/test-mbsspn.c: New file.
7140
7141 2007-02-11  Bruno Haible  <bruno@clisp.org>
7142
7143         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
7144
7145         * modules/mbspbrk-tests: New file.
7146         * tests/test-mbspbrk.sh: New file.
7147         * tests/test-mbspbrk.c: New file.
7148
7149 2007-02-11  Bruno Haible  <bruno@clisp.org>
7150
7151         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
7152         unneeded cast.
7153
7154         * modules/mbscspn-tests: New file.
7155         * tests/test-mbscspn.sh: New file.
7156         * tests/test-mbscspn.c: New file.
7157
7158 2007-02-11  Bruno Haible  <bruno@clisp.org>
7159
7160         * modules/mbscasecmp-tests: New file.
7161         * tests/test-mbscasecmp.sh: New file.
7162         * tests/test-mbscasecmp.c: New file.
7163
7164 2007-02-11  Bruno Haible  <bruno@clisp.org>
7165
7166         Ensure O(n) worst-case complexity of mbscasestr.
7167         * lib/mbscasestr.c: Include stdbool.h.
7168         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
7169         functions.
7170         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
7171         the bookkeeping indicates that it's worth it.
7172         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
7173
7174         * modules/mbscasestr-tests: New file.
7175         * tests/test-mbscasestr1.c: New file.
7176         * tests/test-mbscasestr2.sh: New file.
7177         * tests/test-mbscasestr2.c: New file.
7178         * tests/test-mbscasestr3.sh: New file.
7179         * tests/test-mbscasestr3.c: New file.
7180         * tests/test-mbscasestr4.sh: New file.
7181         * tests/test-mbscasestr4.c: New file.
7182         * m4/locale-tr.m4: New file.
7183
7184 2007-02-11  Bruno Haible  <bruno@clisp.org>
7185
7186         Ensure O(n) worst-case complexity of mbsstr.
7187         * lib/mbsstr.c: Include stdbool.h.
7188         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
7189         functions.
7190         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
7191         bookkeeping indicates that it's worth it.
7192         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
7193
7194         * modules/mbsstr-tests: New file.
7195         * tests/test-mbsstr1.c: New file.
7196         * tests/test-mbsstr2.sh: New file.
7197         * tests/test-mbsstr2.c: New file.
7198         * tests/test-mbsstr3.sh: New file.
7199         * tests/test-mbsstr3.c: New file.
7200         * m4/locale-fr.m4: New file.
7201
7202 2007-02-11  Bruno Haible  <bruno@clisp.org>
7203
7204         * lib/mbsrchr.c (mbsrchr): Fix bug.
7205
7206         * modules/mbsrchr-tests: New file.
7207         * tests/test-mbsrchr.sh: New file.
7208         * tests/test-mbsrchr.c: New file.
7209
7210 2007-02-11  Bruno Haible  <bruno@clisp.org>
7211
7212         * lib/mbschr.c (mbschr): Fix bug.
7213
7214         * modules/mbschr-tests: New file.
7215         * tests/test-mbschr.sh: New file.
7216         * tests/test-mbschr.c: New file.
7217         * m4/locale-zh.m4: New file.
7218
7219 2007-02-11  Bruno Haible  <bruno@clisp.org>
7220
7221         Support for copying multibyte string iterators.
7222         * lib/mbiter.h: Include <string.h>.
7223         (mbiter_multi_copy): New function.
7224         (mbi_copy): New macro.
7225         * lib/mbuiter.h: Include <string.h>.
7226         (mbuiter_multi_copy): New function.
7227         (mbui_copy): New macro.
7228
7229 2007-02-11  Bruno Haible  <bruno@clisp.org>
7230
7231         New module mbslen.
7232         * modules/mbslen: New file.
7233         * lib/mbslen.c: New file.
7234         * lib/string_.h (mbslen): New declaration.
7235         * m4/mbslen.m4: New file.
7236         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7237         GNULIB_MBSLEN.
7238         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
7239         * MODULES.html.sh (Internationalization functions): Add mbslen.
7240
7241 2007-02-11  Bruno Haible  <bruno@clisp.org>
7242
7243         Ensure O(n) worst-case complexity of strcasestr substitute.
7244         * lib/strcasestr.c: Include stdbool.h.
7245         (knuth_morris_pratt): New function.
7246         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
7247         bookkeeping indicates that it's worth it.
7248         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
7249
7250         * modules/strcasestr-tests: New file.
7251         * tests/test-strcasestr.c: New file.
7252
7253 2007-02-11  Bruno Haible  <bruno@clisp.org>
7254
7255         Ensure O(n) worst-case complexity of c_strcasestr.
7256         * lib/c-strcasestr.c: Include stdbool.h, string.h.
7257         (knuth_morris_pratt): New function.
7258         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
7259         the bookkeeping indicates that it's worth it.
7260         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
7261
7262         * modules/c-strcasestr-tests: New file.
7263         * tests/test-c-strcasestr.c: New file.
7264
7265 2007-02-11  Bruno Haible  <bruno@clisp.org>
7266
7267         Ensure O(n) worst-case complexity of c_strstr.
7268         * lib/c-strstr.c: Include stdbool.h, string.h.
7269         (knuth_morris_pratt): New function.
7270         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
7271         bookkeeping indicates that it's worth it.
7272         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
7273
7274         * lib/c-strstr.c: Complete rewrite for maintainability.
7275
7276         * modules/c-strstr-tests: New file.
7277         * tests/test-c-strstr.c: New file.
7278
7279 2007-02-11  Bruno Haible  <bruno@clisp.org>
7280
7281         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
7282         5.2.1 and earlier, whereby \055 was treated just like the range
7283         delimiter '-'.
7284         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
7285
7286 2007-02-08  Bruno Haible  <bruno@clisp.org>
7287
7288         * modules/regex (Depends-on): Add stdbool.
7289         Reported by Dalibor Topic <robilad@kaffe.org>.
7290
7291 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
7292
7293         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
7294         Prefer returning from main to exiting from it.
7295         Remove unnecessary parens after sizeof.
7296
7297 2007-02-05  Bruno Haible  <bruno@clisp.org>
7298
7299         New module mbssep.
7300         * modules/mbssep: New file.
7301         * lib/mbssep.c: New file.
7302         * lib/string_.h (strsep): Add a conditional link warning.
7303         (mbssep): New declaration.
7304         * m4/mbssep.m4: New file.
7305         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7306         GNULIB_MBSSEP.
7307         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
7308         * MODULES.html.sh (Internationalization functions): Add mbssep.
7309
7310 2007-02-05  Bruno Haible  <bruno@clisp.org>
7311
7312         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
7313         Optimize search in case of 1 delimiter.
7314
7315 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
7316
7317         * lib/acl.h: Include sys/types.h before sys/acl.h.
7318
7319 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
7320
7321         Merge upstream fix for glibc bugzilla #3957:
7322
7323         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
7324
7325         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
7326         bit for RE_HAT_LISTS_NOT_NEWLINE.
7327         (build_charclass_op): Remove bogus comment.
7328
7329 2007-02-05  Simon Josefsson  <simon@josefsson.org>
7330
7331         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
7332
7333 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
7334
7335         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
7336         * lib/memmem.c [!defined _LIBC]: Include config.h.
7337
7338 2007-02-04  Bruno Haible  <bruno@clisp.org>
7339
7340         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
7341         warning message.
7342
7343 2007-02-04  Bruno Haible  <bruno@clisp.org>
7344
7345         New module mbstok_r.
7346         * modules/mbstok_r: New file.
7347         * lib/mbstok_r.c: New file.
7348         * lib/string_.h (strtok_r): Change argument names to match the
7349         comments. Add a conditional link warning.
7350         (mbstok_r): New declaration.
7351         * m4/mbstok_r.m4: New file.
7352         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7353         GNULIB_MBSTOK_R.
7354         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
7355         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
7356
7357 2007-02-04  Bruno Haible  <bruno@clisp.org>
7358
7359         New module mbsspn.
7360         * modules/mbsspn: New file.
7361         * lib/mbsspn.c: New file.
7362         * lib/string_.h (strspn): Add a conditional link warning.
7363         (mbsspn): New declaration.
7364         * m4/mbsspn.m4: New file.
7365         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7366         GNULIB_MBSSPN.
7367         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
7368         * MODULES.html.sh (Internationalization functions): Add mbsspn.
7369
7370 2007-02-04  Bruno Haible  <bruno@clisp.org>
7371
7372         New module mbspbrk.
7373         * modules/mbspbrk: New file.
7374         * lib/mbspbrk.c: New file.
7375         * lib/string_.h (strpbrk): Add a conditional link warning.
7376         (mbspbrk): New declaration.
7377         * m4/mbspbrk.m4: New file.
7378         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7379         GNULIB_MBSPBRK.
7380         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
7381         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
7382
7383 2007-02-04  Bruno Haible  <bruno@clisp.org>
7384
7385         New module mbscspn.
7386         * modules/mbscspn: New file.
7387         * lib/mbscspn.c: New file.
7388         * lib/string_.h (strcspn): Add a conditional link warning.
7389         (mbscspn): New declaration.
7390         * m4/mbscspn.m4: New file.
7391         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7392         GNULIB_MBSCSPN.
7393         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
7394         * MODULES.html.sh (Internationalization functions): Add mbscspn.
7395
7396 2007-02-04  Bruno Haible  <bruno@clisp.org>
7397
7398         New module mbscasestr, reduced goal of strcasestr.
7399         * modules/mbscasestr: New file.
7400         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
7401         (mbscasestr): Renamed from strcasestr.
7402         * lib/strcasestr.c: Don't include mbuiter.h.
7403         (strcasestr): Remove support for multibyte locales.
7404         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
7405         Change the conditional link warning.
7406         (mbscasestr): New declaration.
7407         * m4/mbscasestr.m4: New file.
7408         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
7409         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
7410         REPLACE_STRCASESTR.
7411         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
7412         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
7413         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
7414         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
7415         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
7416         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
7417         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
7418         (Depends-on): Remove mbuiter.
7419         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
7420
7421 2007-02-04  Bruno Haible  <bruno@clisp.org>
7422
7423         Simplify handling of strncasecmp.
7424         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
7425         the conditional link warning.
7426         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
7427         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
7428         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
7429         * modules/strcase (configure.ac): Don't invoke
7430         gl_STRING_MODULE_INDICATOR.
7431         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
7432
7433 2007-02-04  Bruno Haible  <bruno@clisp.org>
7434
7435         New module mbscasecmp, reduced goal of strcasecmp.
7436         * modules/mbscasecmp: New file.
7437         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
7438         (mbscasecmp): Renamed from strcasecmp.
7439         * lib/strcasecmp.c: Don't include mbuiter.h.
7440         (strcasecmp): Remove support for multibyte locales.
7441         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
7442         Change the conditional link warning.
7443         (mbscasecmp): New declaration.
7444         * m4/mbscasecmp.m4: New file.
7445         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
7446         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
7447         REPLACE_STRCASECMP.
7448         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
7449         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7450         GNULIB_MBSCASECMP.
7451         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
7452         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
7453         * modules/strcase (Files): Remove m4/mbrtowc.m4.
7454         (Depends-on): Remove mbuiter.
7455         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
7456
7457 2007-02-04  Bruno Haible  <bruno@clisp.org>
7458
7459         New module mbsstr. Remove module strstr.
7460         * modules/mbsstr: New file.
7461         * modules/strstr: Remove file.
7462         * lib/mbsstr.c: Renamed from lib/strstr.c.
7463         (mbsstr): Renamed from strstr.
7464         * lib/string_.h (strstr): Remove declaration. Change the conditional
7465         link warning.
7466         (mbsstr): New declaration.
7467         * m4/mbsstr.m4: New file.
7468         * m4/strstr.m4: Remove file.
7469         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
7470         REPLACE_STRSTR.
7471         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
7472         Don't initialize GNULIB_STRSTR.
7473         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
7474         substitute GNULIB_STRSTR and REPLACE_STRSTR.
7475         * MODULES.html.sh (Internationalization functions): Add mbsstr.
7476         (Support for systems lacking ANSI C 89): Remove strstr.
7477
7478 2007-02-04  Bruno Haible  <bruno@clisp.org>
7479
7480         New module mbsrchr.
7481         * modules/mbsrchr: New file.
7482         * lib/mbsrchr.c: New file.
7483         * lib/string_.h (strrchr): Add a conditional link warning.
7484         (mbsrchr): New declaration.
7485         * m4/mbsrchr.m4: New file.
7486         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7487         GNULIB_MBSRCHR.
7488         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
7489         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
7490
7491 2007-02-04  Bruno Haible  <bruno@clisp.org>
7492
7493         New module mbschr.
7494         * modules/mbschr: New file.
7495         * lib/mbschr.c: New file.
7496         * lib/string_.h (strchr): Add a conditional link warning.
7497         (mbschr): New declaration.
7498         * m4/mbschr.m4: New file.
7499         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
7500         GNULIB_MBSCHR.
7501         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
7502         * MODULES.html.sh (Internationalization functions): Add mbschr.
7503
7504 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
7505
7506         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
7507
7508         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
7509
7510 2007-02-04  Bruno Haible  <bruno@clisp.org>
7511
7512         New module description section 'configure.ac-early'.
7513         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
7514         (func_get_autoconf_early_snippet): New function.
7515         (func_import, func_create_testdir): Use it. Remove special cases for
7516         modules 'extensions' and 'lock'.
7517         * modules/extensions (configure.ac-early): Require
7518         gl_USE_SYSTEM_EXTENSIONS.
7519         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
7520
7521 2007-02-04  Bruno Haible  <bruno@clisp.org>
7522
7523         Make use of gcj-4.3's -fsource and -ftarget option.
7524         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
7525         and if so try the options -fsource and -ftarget.
7526         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
7527         source_version, ftarget_option, target_version arguments.
7528         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
7529         (is_envjavac_oldgcj_14_14_usable): Renamed from
7530         is_envjavac_gcj_14_14_usable.
7531         (is_envjavac_oldgcj_14_13_usable): Renamed from
7532         is_envjavac_gcj_14_13_usable.
7533         (is_gcj_present): Update.
7534         (is_gcj_43, is_gcj43_usable): New functions.
7535         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
7536         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
7537         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
7538         try the options -fsource and -ftarget.
7539
7540 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
7541
7542         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
7543         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
7544         larger value.
7545
7546 2007-02-03  Jim Meyering  <jim@meyering.net>
7547
7548         Give tools a better chance to allocate space for very large buffers.
7549         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
7550
7551         Make pwd and readlink work also when run with an unreadable parent dir
7552         on systems with openat support.
7553         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
7554         provided getcwd function, even when we have openat support.
7555         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
7556
7557 2007-02-02  Bruno Haible  <bruno@clisp.org>
7558
7559         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
7560         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
7561         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
7562         portability problems if one of these functions is only used on specific
7563         platforms.
7564         Reported by Paul Eggert.
7565
7566 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
7567
7568         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
7569         is causing more trouble than it's curing.
7570         * lib/regex_internal.h (__mempcpy): Remove.
7571         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
7572         (and make the code a tad smaller to boot).
7573         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
7574
7575 2007-02-02  Jim Meyering  <jim@meyering.net>
7576
7577         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
7578         section, not in the Makefile.am: one.
7579
7580 2007-02-02  Eric Blake  <ebb9@byu.net>
7581
7582         * lib/strchrnul.c: Always include config.h first.
7583
7584         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
7585         gnulib strstr is not necessary here.
7586
7587 2007-02-02  Simon Josefsson  <simon@josefsson.org>
7588
7589         * m4/socklen.m4: Fix typo.
7590
7591 2007-02-02  Eric Blake  <ebb9@byu.net>
7592
7593         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
7594         * modules/netinet_in (Makefile.am): Likewise.
7595
7596 2007-02-01  Bruno Haible  <bruno@clisp.org>
7597
7598         * lib/string_.h (GL_LINK_WARNING): New macro.
7599         (strcasecmp, strstr, strcasestr): If provided by the system,
7600         conditionally define as a macro that leads to a warning instead of to
7601         an error.
7602         (strncasecmp): Conditionally define as a macro that leads to a warning.
7603
7604 2007-02-01  Karl Berry  <karl@gnu.org>
7605
7606         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
7607
7608 2007-02-01  Bruno Haible  <bruno@clisp.org>
7609
7610         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
7611         renamings.
7612
7613 2007-02-01  Eric Blake  <ebb9@byu.net>
7614
7615         * modules/regex (Depends-on): Revert dependence on mempcpy.
7616         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
7617         module's definition of mempcpy.
7618         Reported by Paul Eggert.
7619
7620 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
7621
7622         * lib/string_.h: If the gnulib module XYZ is not present, undefine
7623         the symbol XYZ before redefining it.  This fixes a problem with
7624         programs that don't use XYZ, when compiled on systems that define
7625         XYZ to something else.
7626
7627 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
7628
7629         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
7630         occurs when "mkdir -m foo" creates a setgid directory that is (1)
7631         writeable to group or other and (2) is intended to have a special
7632         mode bit that is set or cleared.  In such a case, the directory
7633         should be neither group- nor other-writeable until the special
7634         mode bits are right.
7635
7636 2007-01-31  Eric Blake  <ebb9@byu.net>
7637
7638         * modules/mountlist (Depends-on): Add strstr.
7639
7640         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
7641         bug.
7642         * modules/string (Makefile.am): Remove redundant replacement.
7643         * modules/regex (Depends-on): Add mempcpy.
7644
7645 2007-01-31  Bruno Haible  <bruno@clisp.org>
7646
7647         New module description field 'Link'.
7648         * gnulib-tool (func_usage): Document --extract-link-directive.
7649         (sed_extract_prog): Recognize 'Link' directive.
7650         (func_get_link_directive): New function.
7651         (func_import): Show summary of link directives.
7652         Handle --extract-link-directive option.
7653         * modules/acl (Link): New section.
7654         * modules/clock-time (Link): New section.
7655         * modules/euidaccess (Link): New section.
7656         * modules/gettext (Link): New section.
7657         * modules/iconv (Link): New section.
7658         * modules/lock (Link): New section.
7659         * modules/nanosleep (Link): New section.
7660         * modules/readline (Link): New section.
7661
7662 2007-01-27  Bruno Haible  <bruno@clisp.org>
7663
7664         Enforce the use of gnulib modules for unportable <string.h> functions.
7665         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
7666         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
7667         (gl_HEADER_STRING_H_BODY): Require it.
7668         * lib/string_.h: If the gnulib module XYZ is not present, redefine
7669         the symbol XYZ to one that gives a link error.
7670         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
7671         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
7672         * modules/mempcpy (configure.ac): Likewise.
7673         * modules/memrchr (configure.ac): Likewise.
7674         * modules/stpcpy (configure.ac): Likewise.
7675         * modules/stpncpy (configure.ac): Likewise.
7676         * modules/strcase (configure.ac): Likewise.
7677         * modules/strcasestr (configure.ac): Likewise.
7678         * modules/strchrnul (configure.ac): Likewise.
7679         * modules/strdup (configure.ac): Likewise.
7680         * modules/strndup (configure.ac): Likewise.
7681         * modules/strnlen (configure.ac): Likewise.
7682         * modules/strpbrk (configure.ac): Likewise.
7683         * modules/strsep (configure.ac): Likewise.
7684         * modules/strstr (configure.ac): Likewise.
7685         * modules/strtok_r (configure.ac): Likewise.
7686
7687 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
7688
7689         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
7690
7691 2007-01-30  Jim Meyering  <jim@meyering.net>
7692
7693         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
7694
7695 2007-01-29  Bruno Haible  <bruno@clisp.org>
7696
7697         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
7698         * lib/execute.c: Likewise.
7699         * lib/pipe.c: Likewise.
7700         * lib/printf-args.h: Likewise.
7701         * lib/printf-args.c: Likewise.
7702         * lib/printf-parse.c: Likewise.
7703         * lib/vasnprintf.c: Likewise.
7704
7705 2007-01-29  Eric Blake  <ebb9@byu.net>
7706
7707         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
7708         declaration.
7709
7710 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
7711
7712         * lib/strptime.h (strptime): Use 'restrict' for args where
7713         POSIX requires this.
7714         * lib/strptime.c (strptime): Likewise.
7715         Change license notice from LGPL to GPL, since gnulib-tool will
7716         change this as needed.
7717         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
7718         defined.
7719         Include "strptime.h" first, to check interface.
7720         Do not #undef _LIBC and _NL_CURRENT.
7721         Do not include <stdlib.h>; no longer needed.
7722         Include "time_r.h" and declare ptime_locale_status
7723         only if _LIBC is not defined.
7724         (__P): Remove unused macro.
7725         (match_string): Bring back glibc version, but use it only if _LIBC
7726         is defined.
7727         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
7728         Remove unnecessary assertion and abort() call.
7729         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
7730         * m4/strptime.m4: Fix serial number comment.
7731         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
7732         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
7733         (Depends-on): Add time_r.
7734
7735 2007-01-29  Bruno Haible  <bruno@clisp.org>
7736
7737         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
7738         strptime.
7739         * modules/strptime (Depends-on): Add stdbool.
7740         * lib/strptime.h: Include <time.h> always. Add comments.
7741
7742 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
7743
7744         * modules/strptime: New file.
7745         * lib/strptime.h: New file.
7746         * lib/strptime.c: New file.
7747         * m4/strptime.m4: New file.
7748
7749 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
7750
7751         * MODULES.html.sh: New module mpsort.
7752         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
7753
7754         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
7755         a circularity problem with HP-UX ia64 reported by Bob Proulx in
7756         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
7757         All uses changed.
7758         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
7759         All uses changed.
7760         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
7761         to _Restrict_.
7762         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
7763         the parameter matches the prototype.
7764
7765 2007-01-28  Jim Meyering  <jim@meyering.net>
7766
7767         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
7768         sys/time.h here, reverting that part of the previous patch:
7769         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
7770
7771 2007-01-28  Bruno Haible  <bruno@clisp.org>
7772
7773         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
7774         value of $(SYS_TIME_H).
7775         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
7776         remove it conditionally, too. [added by Jim Meyering]
7777         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
7778         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
7779         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
7780         GETTIMEOFDAY_REPLACEMENT to 1.
7781
7782 2007-01-28  Bruno Haible  <bruno@clisp.org>
7783
7784         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
7785         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
7786         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
7787         Set UNISTD_H instead of UNISTD_H2.
7788         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
7789
7790 2007-01-28  Bruno Haible  <bruno@clisp.org>
7791
7792         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
7793         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
7794
7795 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7796
7797         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
7798         (func_create_testdir): Ensure C locale for `grep' and `tr'
7799         character ranges.
7800         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
7801         ACLOCAL_AMFLAGS parsing state machine.
7802
7803 2007-01-27  Bruno Haible  <bruno@clisp.org>
7804
7805         * modules/unistr/base: Update.
7806
7807 2007-01-27  Bruno Haible  <bruno@clisp.org>
7808
7809         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
7810         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
7811         * modules/unistr/u32-mbtouc-unsafe: Renamed from
7812         modules/unistr/u32-mbtouc.
7813         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
7814         * lib/unistr.h: Update.
7815         * lib/linebreak.c: Update.
7816         * modules/unistr/u32-mbtouc: Renamed from
7817         modules/unistr/u32-mbtouc-safe.
7818         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
7819         * lib/unistr.h: Update.
7820         * lib/unistr/u32-to-u8.c: Update.
7821         * lib/unistr/u32-to-u16.c: Update.
7822
7823 2007-01-27  Bruno Haible  <bruno@clisp.org>
7824
7825         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
7826         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
7827         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
7828         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
7829         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
7830         * modules/unistr/u16-mbtouc-unsafe: Renamed from
7831         modules/unistr/u16-mbtouc.
7832         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
7833         * lib/unistr.h: Update.
7834         * lib/linebreak.c: Update.
7835         * modules/linebreak: Update.
7836         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
7837         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
7838         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
7839         * modules/unistr/u16-mbtouc: Renamed from
7840         modules/unistr/u16-mbtouc-safe.
7841         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
7842         * lib/unistr.h: Update.
7843         * lib/unistr/u16-to-u8.c: Update.
7844         * modules/unistr/u16-to-u8: Update.
7845         * lib/unistr/u16-to-u32.c: Update.
7846         * modules/unistr/u16-to-u32: Update.
7847
7848 2007-01-27  Bruno Haible  <bruno@clisp.org>
7849
7850         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
7851         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
7852         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
7853         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
7854         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
7855         * modules/unistr/u8-mbtouc-unsafe: Renamed from
7856         modules/unistr/u8-mbtouc.
7857         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
7858         * lib/unistr.h: Update.
7859         * lib/striconveh.c: Update.
7860         * modules/striconveh: Update.
7861         * lib/linebreak.c: Update.
7862         * modules/linebreak: Update.
7863         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
7864         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
7865         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
7866         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
7867         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
7868         * lib/unistr.h: Update.
7869         * lib/striconveh.c: Update.
7870         * modules/striconveh: Update.
7871         * lib/unistr/u8-to-u16.c: Update.
7872         * modules/unistr/u8-to-u16: Update.
7873         * lib/unistr/u8-to-u32.c: Update.
7874         * modules/unistr/u8-to-u32: Update.
7875
7876 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7877
7878         Sync from Libtool.
7879         * lib/argz.c: Do not include strings.h nor memory.h, include
7880         string.h unconditionally.  Patch by Simon Josefsson.
7881
7882 2007-01-27  Bruno Haible  <bruno@clisp.org>
7883
7884         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
7885         from gl_HEADER_STRING_H_BODY.
7886         (gl_HEADER_STRING_H_BODY): Require it.
7887         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
7888         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
7889         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
7890         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
7891         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
7892         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
7893         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7894         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
7895         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
7896         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
7897         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
7898         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
7899         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
7900         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
7901         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
7902
7903 2007-01-27  Bruno Haible  <bruno@clisp.org>
7904
7905         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
7906         check_PROGRAMS into noinst_PROGRAMS.
7907         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
7908         check_PROGRAMS in this case.
7909         (func_import): Set for_test to false.
7910         (func_create_testdir): Set for_test to true.
7911
7912 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
7913             Bruno Haible  <bruno@clisp.org>
7914
7915         * modules/strcasestr (Files): Remove lib/strcasestr.h.
7916         (Depends-on): Add string.
7917         (Includes): Use <string.h> instead of strcasestr.h.
7918         * modules/string (Makefile.am): Also substitute the value of
7919         REPLACE_STRCASESTR.
7920         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
7921         assume strcasestr is declared in <string.h> not <strings.h>. Also
7922         set REPLACE_STRCASESTR.
7923         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
7924         REPLACE_STRCASESTR.
7925         * lib/strcasestr.h: Remove file.
7926         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
7927         * lib/string_.h (strcasestr): New declaration.
7928
7929 2007-01-27  Bruno Haible  <bruno@clisp.org>
7930
7931         * lib/string_.h: Use 'extern'.
7932
7933 2007-01-27  Jim Meyering  <jim@meyering.net>
7934
7935         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
7936         of set-but-not-used local, "q".
7937
7938         * lib/mempcpy.c: Include <config.h> before <string.h>.
7939         This fixes a compilation error on HP-UX, due to the system's
7940         "restrict"-using mempcpy prototype.
7941
7942 2007-01-26  Bruno Haible  <bruno@clisp.org>
7943
7944         Small optimization.
7945         * lib/javacomp.c: Include c-strstr.h.
7946          (is_envjavac_gcj): Use c_strstr instead of strstr.
7947         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
7948
7949 2007-01-26  Bruno Haible  <bruno@clisp.org>
7950
7951         * MODULES.html.sh (Unicode string functions): Add the new modules.
7952
7953         * modules/uniconv/u32-strconv-to-locale: New file.
7954         * lib/uniconv/u32-strconv-to-locale.c: New file.
7955
7956         * modules/uniconv/u16-strconv-to-locale: New file.
7957         * lib/uniconv/u16-strconv-to-locale.c: New file.
7958
7959         * modules/uniconv/u8-strconv-to-locale: New file.
7960         * lib/uniconv/u8-strconv-to-locale.c: New file.
7961
7962         * modules/uniconv/u32-strconv-from-locale: New file.
7963         * lib/uniconv/u32-strconv-from-locale.c: New file.
7964
7965         * modules/uniconv/u16-strconv-from-locale: New file.
7966         * lib/uniconv/u16-strconv-from-locale.c: New file.
7967
7968         * modules/uniconv/u8-strconv-from-locale: New file.
7969         * lib/uniconv/u8-strconv-from-locale.c: New file.
7970
7971         * modules/uniconv/u32-strconv-to-enc: New file.
7972         * lib/uniconv/u32-strconv-to-enc.c: New file.
7973         * modules/uniconv/u32-strconv-to-enc-tests: New file.
7974         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
7975
7976         * modules/uniconv/u16-strconv-to-enc: New file.
7977         * lib/uniconv/u16-strconv-to-enc.c: New file.
7978         * lib/uniconv/u-strconv-to-enc.h: New file.
7979         * modules/uniconv/u16-strconv-to-enc-tests: New file.
7980         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
7981
7982         * modules/uniconv/u8-strconv-to-enc: New file.
7983         * lib/uniconv/u8-strconv-to-enc.c: New file.
7984         * modules/uniconv/u8-strconv-to-enc-tests: New file.
7985         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
7986
7987         * modules/uniconv/u32-strconv-from-enc: New file.
7988         * lib/uniconv/u32-strconv-from-enc.c: New file.
7989         * modules/uniconv/u32-strconv-from-enc-tests: New file.
7990         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
7991
7992         * modules/uniconv/u16-strconv-from-enc: New file.
7993         * lib/uniconv/u16-strconv-from-enc.c: New file.
7994         * modules/uniconv/u16-strconv-from-enc-tests: New file.
7995         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
7996
7997         * modules/uniconv/u8-strconv-from-enc: New file.
7998         * lib/uniconv/u8-strconv-from-enc.c: New file.
7999         * lib/uniconv/u-strconv-from-enc.h: New file.
8000         * modules/uniconv/u8-strconv-from-enc-tests: New file.
8001         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
8002
8003         * modules/uniconv/u32-conv-from-enc: New file.
8004         * lib/uniconv/u32-conv-from-enc.c: New file.
8005         * modules/uniconv/u32-conv-from-enc-tests: New file.
8006         * tests/uniconv/test-u32-conv-from-enc.c: New file.
8007
8008         * modules/uniconv/u16-conv-from-enc: New file.
8009         * lib/uniconv/u16-conv-from-enc.c: New file.
8010         * lib/uniconv/u-conv-from-enc.h: New file.
8011         * modules/uniconv/u16-conv-from-enc-tests: New file.
8012         * tests/uniconv/test-u16-conv-from-enc.c: New file.
8013
8014         * modules/uniconv/u8-conv-from-enc: New file.
8015         * lib/uniconv/u8-conv-from-enc.c: New file.
8016         * modules/uniconv/u8-conv-from-enc-tests: New file.
8017         * tests/uniconv/test-u8-conv-from-enc.c: New file.
8018
8019         * modules/uniconv/base: New file.
8020         * lib/uniconv.h: New file.
8021
8022 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
8023
8024         * doc/gnulib-tool.texi (Initial import): Update to match current
8025         behavior with strdup module.
8026         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
8027         * lib/memmem.h: Remove; all uses removed.  This is now done
8028         by <string.h>.
8029         * lib/mempcpy.h: Likewise.
8030         * lib/memrchr.h: Likewise.
8031         * lib/stpcpy.h: Likewise.
8032         * lib/stpncpy.h: Likewise.
8033         * lib/strcase.h: Likewise.
8034         * lib/strchrnul.h: Likewise.
8035         * lib/strdup.h: Likewise.
8036         * lib/strndup.h: Likewise.
8037         * lib/strnlen.h: Likewise.
8038         * lib/strpbrk.h: Likewise.
8039         * lib/strsep.h: Likewise.
8040         * lib/strstr.h: Likewise.
8041         * lib/strtok_r.h: Likewise.
8042         * lib/string_.h: New file.
8043         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
8044         Rely on <string.h> instead.
8045         * lib/canon-host.c: Likewise.
8046         * lib/chdir-long.c: Likewise.
8047         * lib/concatpath.c: Likewise.
8048         * lib/exclude.c: Likewise.
8049         * lib/fchdir.c: Likewise.
8050         * lib/getaddrinfo.c: Likewise.
8051         * lib/getcwd.c: Likewise.
8052         * lib/getsubopt.c: Likewise.
8053         * lib/glob.c: Likewise.
8054         * lib/hard-locale.c: Likewise.
8055         * lib/iconvme.c: Likewise.
8056         * lib/javacomp.c: Likewise.
8057         * lib/mempcpy.c: Likewise.
8058         * lib/memrchr.c: Likewise.
8059         * lib/regex_internal.h: Likewise.
8060         * lib/stpncpy.c: Likewise.
8061         * lib/strcasecmp.c: Likewise.
8062         * lib/strchrnul.c: Likewise.
8063         * lib/strdup.c: Likewise.
8064         * lib/striconv.c: Likewise.
8065         * lib/striconveh.c: Likewise.
8066         * lib/striconveha.c: Likewise.
8067         * lib/strncasecmp.c: Likewise.
8068         * lib/strndup.c: Likewise.
8069         * lib/strnlen.c: Likewise.
8070         * lib/strsep.c: Likewise.
8071         * lib/strstr.c: Likewise.
8072         * lib/strtok_r.c: Likewise.
8073         * lib/userspec.c: Likewise.
8074         * lib/w32spawn.h: Likewise.
8075         * lib/xstrndup.c: Likewise.
8076         * lib/mountlist.c (strstr): Remove decl.
8077         * m4/string_h.m4: New file.
8078         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
8079         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
8080         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
8081         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
8082         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
8083         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
8084         Set REPLACE_STRCASECMP if necessary.
8085         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
8086         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
8087         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
8088         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
8089         HAVE_DECL_STRDUP if necessary.
8090         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
8091         since gl_FUNC_STRNDUP does that now.
8092         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
8093         Check for decl here...
8094         (gl_PREREQ_STRNLEN): ... not here.
8095         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
8096         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
8097         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
8098         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
8099         necessary.
8100         * modules/string: New file.
8101         * modules/memmem (Files): Remove special-purpose include file.
8102         (Depends-on): Add string.
8103         (Include): Include <string.h>, not the removed file.
8104         * modules/mempcpy: Likewise.
8105         * modules/memrchr: Likewise.
8106         * modules/stpcpy: Likewise.
8107         * modules/stpncpy: Likewise.
8108         * modules/strcase: Likewise.
8109         * modules/strchrnul: Likewise.
8110         * modules/strdup: Likewise.
8111         * modules/strndup: Likewise.
8112         * modules/strnlen: Likewise.
8113         * modules/strpbrk: Likewise.
8114         * modules/strsep: Likewise.
8115         * modules/strstr: Likewise.
8116         * modules/strtok_r: Likewise.
8117         * tests/test-dirname.c: Don't include "strdup.h", since
8118         <string.h> now suffices.
8119         * tests/test-memmem.c: Don't include "memmem.h", since
8120         <string.h> now suffices.
8121
8122 2007-01-25  Bruno Haible  <bruno@clisp.org>
8123
8124         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
8125         *resultp is 0.
8126
8127         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
8128         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
8129         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
8130         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
8131
8132         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
8133         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
8134         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
8135         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
8136         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
8137         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
8138
8139 2007-01-24  Bruno Haible  <bruno@clisp.org>
8140
8141         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
8142         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
8143         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
8144         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
8145         gl_FUNC_FTS_CORE.
8146         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
8147         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
8148         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
8149         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
8150         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
8151         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
8152         gl_FUNC_FCHOWNAT.
8153         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
8154         gl_FUNC_STRFTIME.
8155         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
8156         Reported by Ralf Wildenhues.
8157
8158 2007-01-24  Bruno Haible  <bruno@clisp.org>
8159
8160         Drop AC_REQUIRE calls that are redundant with the module dependencies.
8161         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
8162         gl_GETADDRINFO.
8163         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
8164         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
8165         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
8166
8167 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
8168
8169         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
8170         Don't use 'exit'; just return from 'main'.
8171         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
8172
8173         * lib/fnmatch_.h: Readjust white space and comments to match
8174         glibc, to avoid spurious diffs.
8175
8176 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
8177
8178         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
8179         2004-12-01 change by Jakub Jelinek, since this code won't compile
8180         if !LIBC.  Problem reported by Bob Proulx.
8181
8182 2007-01-23  Bruno Haible  <bruno@clisp.org>
8183
8184         * lib/striconveh.c: Include c-strcaseeq.h.
8185         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
8186         * modules/striconveh (Depends-on): Add c-strcaseeq.
8187
8188 2007-01-23  Bruno Haible  <bruno@clisp.org>
8189
8190         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
8191
8192         * modules/c-strcaseeq: New file.
8193         * lib/c-strcaseeq.h: New file.
8194
8195         * modules/streq: New file.
8196         * lib/streq.h: New file.
8197
8198 2007-01-23  Bruno Haible  <bruno@clisp.org>
8199
8200         * modules/striconveha-tests: New file.
8201         * tests/test-striconveha.c: New file.
8202
8203         * lib/striconveha.h: Include <stdbool.h>.
8204         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
8205         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
8206         (mem_iconveha_notranslit): Renamed from mem_iconveha.
8207         (mem_iconveha): New function.
8208         (str_iconveha_notranslit): Renamed from str_iconveha.
8209         (str_iconveha): New function.
8210         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
8211         c-strcase.
8212
8213 2007-01-23  Bruno Haible  <bruno@clisp.org>
8214
8215         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
8216         encodings without forgiving before trying any encoding with handler.
8217         (str_iconveha): Try all encodings without forgiving before trying any
8218         encoding with handler.
8219
8220 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
8221
8222         Import the following changes from libc.
8223
8224         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
8225
8226         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
8227
8228         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
8229
8230         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
8231         normal_bracket label.
8232
8233         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
8234
8235         [BZ #361]
8236         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
8237         to normal_bracket after fetching the next character.
8238
8239 2007-01-22  Bruno Haible  <bruno@clisp.org>
8240
8241         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
8242         argument.
8243         * lib/striconveh.c (iconv_carefully_1): New function.
8244         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
8245         argument.
8246         (str_cd_iconveh): Update.
8247         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
8248         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
8249         * tests/test-striconveh.c (MAGIC): New macro.
8250         (new_offsets): New function.
8251         (main): Test call with and without offsets.
8252
8253 2007-01-22  Bruno Haible  <bruno@clisp.org>
8254
8255         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
8256         * modules/sys_select (Makefile.am): Likewise.
8257         * modules/sys_socket (Makefile.am): Likewise.
8258         * modules/sys_time (Makefile.am): Likewise.
8259
8260 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
8261
8262         * modules/gettimeofday (License): Change from GPL to LGPL, since
8263         gettimeofday is a library function.
8264
8265 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8266
8267         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
8268
8269 2007-01-21  Bruno Haible  <bruno@clisp.org>
8270
8271         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
8272
8273 2007-01-21  Bruno Haible  <bruno@clisp.org>
8274
8275         * modules/striconveha: New file.
8276         * lib/striconveha.h: New file.
8277         * lib/striconveha.c: New file.
8278         * MODULES.html.sh (Internationalization functions): Add striconveha.
8279         * lib/striconv.c (str_iconv): Optimize the case of an empty input
8280         string.
8281         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
8282
8283 2007-01-21  Bruno Haible  <bruno@clisp.org>
8284
8285         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
8286         * lib/striconveh.c (str_iconveh): Likewise.
8287
8288 2007-01-21  Bruno Haible  <bruno@clisp.org>
8289
8290         * lib/striconveh.h (mem_iconveh): New declaration.
8291         * lib/striconveh.c (mem_iconveh): New function.
8292         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
8293
8294 2007-01-21  Bruno Haible  <bruno@clisp.org>
8295
8296         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
8297
8298         * lib/striconveh.h (mem_cd_iconveh): Change specification.
8299         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
8300         original result buffer.
8301         (str_cd_iconveh): Update.
8302         * tests/test-striconveh.c (main): Update.
8303
8304         * lib/striconv.h (mem_cd_iconv): Change specification.
8305         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
8306         result buffer.
8307         (str_cd_iconv): Update.
8308         * tests/test-striconv.c (main): Update.
8309
8310 2007-01-21  Bruno Haible  <bruno@clisp.org>
8311
8312         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
8313
8314 2007-01-20  Jim Meyering  <jim@meyering.net>
8315
8316         * lib/userspec.c (parse_with_separator): If a user or group string
8317         starts with "+", skip the corresponding name-to-ID look-up, since
8318         such a look-up must fail: user and group names may not include "+".
8319
8320 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
8321
8322         * lib/poll.c: Include sys/time.h and time.h unconditionally,
8323         since we now assume the sys_time module.
8324         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
8325         check for sys/time.h; no longer needed.
8326         * modules/poll (Depends-on): Depend on sys_time.
8327
8328 2007-01-18  Bruno Haible  <bruno@clisp.org>
8329
8330         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
8331         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
8332
8333         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
8334         gettimeofday.
8335
8336         * tests/test-gettimeofday.c: Include <time.h>.
8337         (dummy): Remove variable.
8338
8339         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
8340         gl_HEADER_SYS_TIME_H.
8341         (gl_HEADER_SYS_TIME_H): New macro.
8342
8343         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
8344         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
8345         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
8346         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
8347         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
8348         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
8349         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
8350         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
8351         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
8352         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
8353         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
8354
8355         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
8356         last change; it caused a compilation error when cross-compiling to
8357         Cygwin.
8358
8359 2007-01-18  Jim Meyering  <jim@meyering.net>
8360
8361         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
8362         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
8363         than the race-prone "test -d sys || mkdir sys".
8364         (configure.ac): Use AC_PROG_MKDIR_P.
8365         * modules/sys_select: Likewise.
8366         * modules/sys_socket: Likewise.
8367         * modules/sys_time: Likewise.
8368
8369 2007-01-18  Eric Blake  <ebb9@byu.net>
8370
8371         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
8372         replace gettimeofday.
8373         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
8374         name, to avoid infinite recursion.
8375
8376 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
8377
8378         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
8379         module sys_time.
8380         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
8381         assume timespec.h defines struct timeval.
8382         * lib/settime.c: Likewise.
8383         * lib/utimens.c: Likewise.
8384         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
8385         since we now assume the gettimeofday module.
8386         * lib/tempname.c (__gen_tempname): Likewise.
8387         * lib/gettimeofday.h: Remove.
8388         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
8389         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
8390         Include <time.h>, for 'time()'.
8391         (localtime_buffer_addr): Also use this workaround if
8392         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
8393         to simplify the uses.  All uses changed.
8394         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
8395         that #undef is inside {}, and 'const' follows type name consistently.
8396         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
8397         (gettimeofday): Do not use the maximum possible value for
8398         tv->tv_usec, since that might break usages other than ls.c.
8399         Instead, we'll leave ls.c alone.  This undoes today's patch
8400         by Bruno.  Add a compile-time warning for 1s-clock resolution;
8401         we've never observed the problem but might as well keep the
8402         canary.
8403         * lib/nanosleep.c: Include timespec.h first, for interface check.
8404         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
8405         now assume the sys_time module.
8406         * lib/tempname.c: Likewise.
8407         * lib/timespec.h: Likewise.
8408         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
8409         needed.
8410         * lib/strftime.c: Likewise.
8411         * lib/timespec.h: Likewise.
8412         * lib/posixtm.c: Include posixtm.h first, for interface check.
8413         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
8414         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
8415         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
8416         * lib/sys_time_.h: New file.
8417         * lib/timespec.h (struct timespec): Use long int, not long.
8418         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
8419         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
8420         Remove obsolescent call to AC_HEADER_TIME.
8421         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
8422         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
8423         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
8424         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
8425         Likewise.
8426         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
8427         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
8428         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
8429         into the sys_time module.  Check for gettimeofday just once.
8430         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
8431         for gettimeofday signature to just check the signature.  Merely
8432         compile it, since linking doesn't test signature.  Improve test for
8433         whether gettimeofday.o is actually needed.
8434         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
8435         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
8436         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
8437         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
8438         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
8439         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
8440         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
8441         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
8442         than worrying about sys/time.h.
8443         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
8444         Don't bother worrying about TIME_WITH_SYS_TIME.
8445         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
8446         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
8447         * m4/sys_time_h.m4: New file.
8448         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
8449         Don't include sys/time.h.  Return from main rather than exiting.
8450         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
8451         all uses changed.
8452         * modules/gethrxtime (Depends-on): Add sys_time.
8453         * modules/gettime (Depends-on): Likewise.
8454         * modules/gettimeofday (Depends-on): Likewise.
8455         * modules/nanosleep (Depends-on): Likewise.
8456         * modules/settime (Depends-on): Likewise.
8457         * modules/tempname (Depends-on): Likewise.
8458         * modules/utimens (Depends-on): Likewise.
8459         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
8460         (Include:) Change back to <sys/time.h>.
8461         (Maintainer:) Add self.
8462         * modules/sys_time: New file.
8463         * modules/tempname (Depends-on): Add gettimeofday.
8464         * tests/test-gettimeofday.c: Include <sys/time.h>
8465         rather than gettimeofday.h.
8466
8467 2007-01-17  Bruno Haible  <bruno@clisp.org>
8468
8469         * gnulib-tool (func_get_license): Revert last patch. Instead, let
8470         the license default to GPL.
8471         (func_create_testdir): Don't complain if a module is LGPL and its
8472         tests module depends on GPLed modules.
8473
8474 2007-01-17  Bruno Haible  <bruno@clisp.org>
8475
8476         * lib/gettimeofday.c (gettimeofday): Add code for the case
8477         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
8478         maximum possible value for tv->tv_usec, rather than the minimum one.
8479
8480 2005-10-08  Martin Lambers  <marlam@marlam.de>
8481 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
8482 2007-01-16  Bruno Haible  <bruno@clisp.org>
8483
8484         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
8485         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
8486         gl_FUNC_GETTIMEOFDAY.
8487         (Include): Add gettimeofday.h.
8488         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
8489         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
8490         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
8491         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
8492         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
8493         * lib/gettimeofday.h: New file.
8494         * lib/gettimeofday.c: Include <sys/timeb.h>.
8495         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
8496         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
8497         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
8498         fall back on time().
8499
8500         * tests/test-gettimeofday.c: New file.
8501         * modules/gettimeofday-tests: New file.
8502
8503 2007-01-16  Eric Blake  <ebb9@byu.net>
8504
8505         * modules/fnmatch (Depends-on): Depend on wchar.
8506         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
8507         * m4/fnmatch.m4: Likewise.
8508         * modules/mbchar (Makefile.am): Assume <wchar.h>.
8509         * m4/mbchar.m4: Likewise.
8510         * modules/mbswidth (Depends-on): Depend on wchar.
8511         * lib/mbswidth.c: Assume <wchar.h>.
8512         * m4/mbswidth.m4: Likewise.
8513         * modules/quotearg (Depends-on): Depend on wchar.
8514         * lib/quotearg.c: Assume <wchar.h>.
8515         * m4/quotearg.m4: Likewise.
8516         * modules/regex (Depends-on): Depend on wchar.
8517         * lib/regex_internal.h: Assume <wchar.h>.
8518         * m4/regex.m4: Likewise.
8519         * modules/stdint (Depends-on): Depend on wchar.
8520         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
8521         * m4/stdint.m4: Likewise.
8522         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
8523         * modules/strftime (Depends-on): Depend on wchar.
8524         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
8525         * modules/strtol (Depends-on): Depend on wchar.
8526         * lib/strtol.c: Assume <wchar.h>.
8527         * modules/wcwidth (Depends-on): Depend on wchar.
8528         * lib/wcwidth.h: Assume <wchar.h>.
8529         * m4/wcwidth.m4: Likewise.
8530
8531 2007-01-16  Bruno Haible  <bruno@clisp.org>
8532
8533         * modules/csharpexec-script: New, created from...
8534         * modules/csharpexec: ... this.
8535
8536 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
8537
8538         * modules/javaexec-script: New, created from...
8539         * modules/javaexec: ... this.
8540
8541 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8542
8543         * modules/poll (Dependencies): Add sys_select.
8544
8545 2007-01-15  Jim Meyering  <jim@meyering.net>
8546
8547         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
8548         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
8549         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
8550         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
8551
8552 2007-01-15  Bruno Haible  <bruno@clisp.org>
8553
8554         * modules/striconveh: New file.
8555         * lib/striconveh.h: New file.
8556         * lib/striconveh.c: New file.
8557         * MODULES.html.sh (Internationalization functions): Add striconveh.
8558
8559         * modules/striconveh-tests: New file.
8560         * tests/test-striconveh.c: New file.
8561
8562 2007-01-15  Bruno Haible  <bruno@clisp.org>
8563
8564         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
8565         not from GNU libiconv or GNU libc.
8566
8567 2007-01-15  Bruno Haible  <bruno@clisp.org>
8568
8569         * doc/gnulib-intro.texi (Copyright): Explain the different license
8570         terms for module descriptions, autoconf macros, tests, documentation.
8571
8572 2007-01-14  Bruno Haible  <bruno@clisp.org>
8573
8574         * modules/striconv-tests: New file.
8575         * tests/test-striconv.c: New file.
8576
8577 2007-01-14  Bruno Haible  <bruno@clisp.org>
8578
8579         * modules/iconv-tests: New file.
8580         * tests/test-iconv.c: New file.
8581
8582 2007-01-14  Bruno Haible  <bruno@clisp.org>
8583
8584         * gnulib-tool (func_get_license): For test modules, use the license of
8585         the main module.
8586
8587 2007-01-14  Bruno Haible  <bruno@clisp.org>
8588
8589         * modules/iconv (Include): Clarify that <iconv.h> can only be included
8590         if iconv is found to exist.
8591
8592 2007-01-14  Bruno Haible  <bruno@clisp.org>
8593
8594         * modules/c-ctype-tests: New file.
8595         * tests/test-c-ctype.c: New file.
8596
8597 2007-01-14  Bruno Haible  <bruno@clisp.org>
8598
8599         * modules/binary-io-tests: New file.
8600         * tests/test-binary-io.sh: New file.
8601         * tests/test-binary-io.c: New file.
8602
8603 2007-01-14  Bruno Haible  <bruno@clisp.org>
8604
8605         * modules/array-oset-tests: New file.
8606         * tests/test-array_oset.c: New file.
8607
8608 2007-01-14  Bruno Haible  <bruno@clisp.org>
8609
8610         * modules/array-list-tests: New file.
8611         * tests/test-array_list.c: New file.
8612
8613 2007-01-14  Bruno Haible  <bruno@clisp.org>
8614
8615         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
8616         and make.
8617         Reported by Simon Josefsson in
8618         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
8619
8620 2007-01-14  Bruno Haible  <bruno@clisp.org>
8621
8622         * modules/allocsa-tests: New file.
8623         * tests/test-allocsa.c: New file.
8624
8625 2007-01-14  Bruno Haible  <bruno@clisp.org>
8626
8627         * modules/fchdir (Depends-on): Add absolute-header.
8628         * modules/unistd (Depends-on): Likewise.
8629
8630 2006-12-30  Bruno Haible  <bruno@clisp.org>
8631
8632         * modules/fchdir: New file.
8633         * modules/unistd (Files): Add lib/unistd_.h.
8634         (Makefile.am): Generate unistd.h from unistd_.h.
8635         * lib/fchdir.c: New file.
8636         * lib/dirent_.h: New file.
8637         * lib/unistd_.h: New file.
8638         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
8639         * m4/fchdir.m4: New file.
8640         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
8641         (gl_HEADER_UNISTD): Invoke it.
8642         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
8643         function.
8644         * lib/backupfile.c (opendir, closedir): Undefine.
8645         * lib/chown.c (open, close): Undefine.
8646         * lib/clean-temp.c (open, close): Undefine.
8647         * lib/copy-file.c (open, close): Undefine.
8648         * lib/execute.c (open, close): Undefine.
8649         * lib/fsusage.c (open, close): Undefine.
8650         * lib/gc-gnulib.c (open, close): Undefine.
8651         * lib/getcwd.c (opendir, closedir): Undefine.
8652         * lib/glob.c (opendir, closedir): Undefine.
8653         * lib/javacomp.c (open, close): Undefine.
8654         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
8655         * lib/openat-proc.c (open, close): Undefine.
8656         * lib/pagealign_alloc.c (open, close): Undefine.
8657         * lib/pipe.c (open, close): Undefine.
8658         * lib/progreloc.c (open, close): Undefine.
8659         * lib/savedir.c (opendir, closedir): Undefine.
8660         * lib/utime.c (open, close): Undefine.
8661         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
8662
8663 2007-01-10  Bruno Haible  <bruno@clisp.org>
8664
8665         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
8666
8667 2007-01-12  Eric Blake  <ebb9@byu.net>
8668
8669         Provide a robust <wchar.h>.  Further simplifications are now
8670         possible in other modules, but not included here.
8671         * modules/wchar: New module.
8672         * m4/wchar.m4: New file.
8673         * lib/wchar_.h: Likewise.
8674         * modules/mbchar (Depends-on): Depend on wchar, as the first use
8675         of the new module.
8676         * MODULES.html.sh (Extended multibyte and wide character utilities):
8677         New section.
8678
8679 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
8680
8681         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
8682         to a reasonable default for memory allocation.
8683         (xreadlink): Don't allocate a huge buffer, to work around a buggy
8684         file system that reports garbage st_size values for symlinks.
8685         Problem reported by Liyang Hu.
8686
8687 2007-01-11  Simon Josefsson  <simon@josefsson.org>
8688
8689         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
8690         Emacs .#* auto-save files).
8691
8692 2007-01-11  Bruno Haible  <bruno@clisp.org>
8693
8694         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
8695         directory.
8696
8697 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
8698
8699         Use @...@ consistently in lib/wctype_.h.
8700         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
8701         on it being set to 1 or 0.
8702         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
8703         go back to AC_SUBSTing it.
8704         * modules/wctype (Makefile.am): Undo previous change.
8705
8706 2007-01-10  Eric Blake  <ebb9@byu.net>
8707
8708         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
8709         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
8710         * modules/wctype (Makefile.am): Likewise.
8711         Reported by Chris McGuire.
8712
8713 2007-01-10  Jim Meyering  <jim@meyering.net>
8714
8715         fts.c: a small readability/maintainability improvement
8716         * lib/fts.c (fts_read): Make this code slightly more readable and
8717         maintainable by hoisting the "sp->fts_cur = p" assignments to
8718         immediately follow the statements that set P.  Derived from
8719         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
8720
8721 2007-01-10  Eric Blake  <ebb9@byu.net>
8722
8723         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
8724         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
8725         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
8726         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
8727         Reported by Chris McGuire.
8728
8729 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8730
8731         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
8732         in sed script.
8733
8734 2007-01-09  Bruno Haible  <bruno@clisp.org>
8735
8736         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
8737         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
8738         variables.
8739         (func_module): Use them.
8740
8741 2007-01-09  Bruno Haible  <bruno@clisp.org>
8742
8743         * modules/unistr/base: New file.
8744         * lib/unistr.h: New file.
8745
8746         * modules/unistr/u8-to-u16: New file.
8747         * lib/unistr/u8-to-u16.c: New file.
8748
8749         * modules/unistr/u8-to-u32: New file.
8750         * lib/unistr/u8-to-u32.c: New file.
8751
8752         * modules/unistr/u16-to-u8: New file.
8753         * lib/unistr/u16-to-u8.c: New file.
8754
8755         * modules/unistr/u16-to-u32: New file.
8756         * lib/unistr/u16-to-u32.c: New file.
8757
8758         * modules/unistr/u32-to-u8: New file.
8759         * lib/unistr/u32-to-u8.c: New file.
8760
8761         * modules/unistr/u32-to-u16: New file.
8762         * lib/unistr/u32-to-u16.c: New file.
8763
8764         * modules/unistr/u8-check: New file.
8765         * modules/unistr/u16-check: New file.
8766         * modules/unistr/u32-check: New file.
8767         * lib/unistr/u8-check.c: New file.
8768         * lib/unistr/u16-check.c: New file.
8769         * lib/unistr/u32-check.c: New file.
8770
8771         * modules/unistr/u8-chr: New file.
8772         * modules/unistr/u16-chr: New file.
8773         * modules/unistr/u32-chr: New file.
8774         * lib/unistr/u8-chr.c: New file.
8775         * lib/unistr/u16-chr.c: New file.
8776         * lib/unistr/u32-chr.c: New file.
8777
8778         * modules/unistr/u8-cmp: New file.
8779         * modules/unistr/u16-cmp: New file.
8780         * modules/unistr/u32-cmp: New file.
8781         * lib/unistr/u8-cmp.c: New file.
8782         * lib/unistr/u16-cmp.c: New file.
8783         * lib/unistr/u32-cmp.c: New file.
8784
8785         * modules/unistr/u8-cpy: New file.
8786         * modules/unistr/u16-cpy: New file.
8787         * modules/unistr/u32-cpy: New file.
8788         * lib/unistr/u8-cpy.c: New file.
8789         * lib/unistr/u16-cpy.c: New file.
8790         * lib/unistr/u32-cpy.c: New file.
8791         * lib/unistr/u-cpy.h: New file.
8792
8793         * modules/unistr/u8-cpy-alloc: New file.
8794         * modules/unistr/u16-cpy-alloc: New file.
8795         * modules/unistr/u32-cpy-alloc: New file.
8796         * lib/unistr/u8-cpy-alloc.c: New file.
8797         * lib/unistr/u16-cpy-alloc.c: New file.
8798         * lib/unistr/u32-cpy-alloc.c: New file.
8799         * lib/unistr/u-cpy-alloc.h: New file.
8800
8801         * modules/unistr/u8-endswith: New file.
8802         * modules/unistr/u16-endswith: New file.
8803         * modules/unistr/u32-endswith: New file.
8804         * lib/unistr/u8-endswith.c: New file.
8805         * lib/unistr/u16-endswith.c: New file.
8806         * lib/unistr/u32-endswith.c: New file.
8807         * lib/unistr/u-endswith.h: New file.
8808
8809         * modules/unistr/u8-mblen: New file.
8810         * modules/unistr/u16-mblen: New file.
8811         * modules/unistr/u32-mblen: New file.
8812         * lib/unistr/u8-mblen.c: New file.
8813         * lib/unistr/u16-mblen.c: New file.
8814         * lib/unistr/u32-mblen.c: New file.
8815
8816         * modules/unistr/u8-mbtouc: New file.
8817         * modules/unistr/u16-mbtouc: New file.
8818         * modules/unistr/u32-mbtouc: New file.
8819         * lib/unistr/u8-mbtouc.c: New file.
8820         * lib/unistr/u16-mbtouc.c: New file.
8821         * lib/unistr/u32-mbtouc.c: New file.
8822
8823         * modules/unistr/u8-mbtouc-safe: New file.
8824         * modules/unistr/u16-mbtouc-safe: New file.
8825         * modules/unistr/u32-mbtouc-safe: New file.
8826         * lib/unistr/u8-mbtouc-safe.c: New file.
8827         * lib/unistr/u16-mbtouc-safe.c: New file.
8828         * lib/unistr/u32-mbtouc-safe.c: New file.
8829
8830         * modules/unistr/u8-move: New file.
8831         * modules/unistr/u16-move: New file.
8832         * modules/unistr/u32-move: New file.
8833         * lib/unistr/u8-move.c: New file.
8834         * lib/unistr/u16-move.c: New file.
8835         * lib/unistr/u32-move.c: New file.
8836         * lib/unistr/u-move.h: New file.
8837
8838         * modules/unistr/u8-next: New file.
8839         * modules/unistr/u16-next: New file.
8840         * modules/unistr/u32-next: New file.
8841         * lib/unistr/u8-next.c: New file.
8842         * lib/unistr/u16-next.c: New file.
8843         * lib/unistr/u32-next.c: New file.
8844
8845         * modules/unistr/u8-prev: New file.
8846         * modules/unistr/u16-prev: New file.
8847         * modules/unistr/u32-prev: New file.
8848         * lib/unistr/u8-prev.c: New file.
8849         * lib/unistr/u16-prev.c: New file.
8850         * lib/unistr/u32-prev.c: New file.
8851
8852         * modules/unistr/u8-set: New file.
8853         * modules/unistr/u16-set: New file.
8854         * modules/unistr/u32-set: New file.
8855         * lib/unistr/u8-set.c: New file.
8856         * lib/unistr/u16-set.c: New file.
8857         * lib/unistr/u32-set.c: New file.
8858         * lib/unistr/u-set.h: New file.
8859
8860         * modules/unistr/u8-startswith: New file.
8861         * modules/unistr/u16-startswith: New file.
8862         * modules/unistr/u32-startswith: New file.
8863         * lib/unistr/u8-startswith.c: New file.
8864         * lib/unistr/u16-startswith.c: New file.
8865         * lib/unistr/u32-startswith.c: New file.
8866         * lib/unistr/u-startswith.h: New file.
8867
8868         * modules/unistr/u8-stpcpy: New file.
8869         * modules/unistr/u16-stpcpy: New file.
8870         * modules/unistr/u32-stpcpy: New file.
8871         * lib/unistr/u8-stpcpy.c: New file.
8872         * lib/unistr/u16-stpcpy.c: New file.
8873         * lib/unistr/u32-stpcpy.c: New file.
8874         * lib/unistr/u-stpcpy.h: New file.
8875
8876         * modules/unistr/u8-stpncpy: New file.
8877         * modules/unistr/u16-stpncpy: New file.
8878         * modules/unistr/u32-stpncpy: New file.
8879         * lib/unistr/u8-stpncpy.c: New file.
8880         * lib/unistr/u16-stpncpy.c: New file.
8881         * lib/unistr/u32-stpncpy.c: New file.
8882         * lib/unistr/u-stpncpy.h: New file.
8883
8884         * modules/unistr/u8-strcat: New file.
8885         * modules/unistr/u16-strcat: New file.
8886         * modules/unistr/u32-strcat: New file.
8887         * lib/unistr/u8-strcat.c: New file.
8888         * lib/unistr/u16-strcat.c: New file.
8889         * lib/unistr/u32-strcat.c: New file.
8890         * lib/unistr/u-strcat.h: New file.
8891
8892         * modules/unistr/u8-strchr: New file.
8893         * modules/unistr/u16-strchr: New file.
8894         * modules/unistr/u32-strchr: New file.
8895         * lib/unistr/u8-strchr.c: New file.
8896         * lib/unistr/u16-strchr.c: New file.
8897         * lib/unistr/u32-strchr.c: New file.
8898
8899         * modules/unistr/u8-strcmp: New file.
8900         * modules/unistr/u16-strcmp: New file.
8901         * modules/unistr/u32-strcmp: New file.
8902         * lib/unistr/u8-strcmp.c: New file.
8903         * lib/unistr/u16-strcmp.c: New file.
8904         * lib/unistr/u32-strcmp.c: New file.
8905
8906         * modules/unistr/u8-strcpy: New file.
8907         * modules/unistr/u16-strcpy: New file.
8908         * modules/unistr/u32-strcpy: New file.
8909         * lib/unistr/u8-strcpy.c: New file.
8910         * lib/unistr/u16-strcpy.c: New file.
8911         * lib/unistr/u32-strcpy.c: New file.
8912         * lib/unistr/u-strcpy.h: New file.
8913
8914         * modules/unistr/u8-strcspn: New file.
8915         * modules/unistr/u16-strcspn: New file.
8916         * modules/unistr/u32-strcspn: New file.
8917         * lib/unistr/u8-strcspn.c: New file.
8918         * lib/unistr/u16-strcspn.c: New file.
8919         * lib/unistr/u32-strcspn.c: New file.
8920         * lib/unistr/u-strcspn.h: New file.
8921
8922         * modules/unistr/u8-strdup: New file.
8923         * modules/unistr/u16-strdup: New file.
8924         * modules/unistr/u32-strdup: New file.
8925         * lib/unistr/u8-strdup.c: New file.
8926         * lib/unistr/u16-strdup.c: New file.
8927         * lib/unistr/u32-strdup.c: New file.
8928         * lib/unistr/u-strdup.h: New file.
8929
8930         * modules/unistr/u8-strlen: New file.
8931         * modules/unistr/u16-strlen: New file.
8932         * modules/unistr/u32-strlen: New file.
8933         * lib/unistr/u8-strlen.c: New file.
8934         * lib/unistr/u16-strlen.c: New file.
8935         * lib/unistr/u32-strlen.c: New file.
8936         * lib/unistr/u-strlen.h: New file.
8937
8938         * modules/unistr/u8-strmblen: New file.
8939         * modules/unistr/u16-strmblen: New file.
8940         * modules/unistr/u32-strmblen: New file.
8941         * lib/unistr/u8-strmblen.c: New file.
8942         * lib/unistr/u16-strmblen.c: New file.
8943         * lib/unistr/u32-strmblen.c: New file.
8944
8945         * modules/unistr/u8-strmbtouc: New file.
8946         * modules/unistr/u16-strmbtouc: New file.
8947         * modules/unistr/u32-strmbtouc: New file.
8948         * lib/unistr/u8-strmbtouc.c: New file.
8949         * lib/unistr/u16-strmbtouc.c: New file.
8950         * lib/unistr/u32-strmbtouc.c: New file.
8951
8952         * modules/unistr/u8-strncat: New file.
8953         * modules/unistr/u16-strncat: New file.
8954         * modules/unistr/u32-strncat: New file.
8955         * lib/unistr/u8-strncat.c: New file.
8956         * lib/unistr/u16-strncat.c: New file.
8957         * lib/unistr/u32-strncat.c: New file.
8958         * lib/unistr/u-strncat.h: New file.
8959
8960         * modules/unistr/u8-strncmp: New file.
8961         * modules/unistr/u16-strncmp: New file.
8962         * modules/unistr/u32-strncmp: New file.
8963         * lib/unistr/u8-strncmp.c: New file.
8964         * lib/unistr/u16-strncmp.c: New file.
8965         * lib/unistr/u32-strncmp.c: New file.
8966
8967         * modules/unistr/u8-strncpy: New file.
8968         * modules/unistr/u16-strncpy: New file.
8969         * modules/unistr/u32-strncpy: New file.
8970         * lib/unistr/u8-strncpy.c: New file.
8971         * lib/unistr/u16-strncpy.c: New file.
8972         * lib/unistr/u32-strncpy.c: New file.
8973         * lib/unistr/u-strncpy.h: New file.
8974
8975         * modules/unistr/u8-strnlen: New file.
8976         * modules/unistr/u16-strnlen: New file.
8977         * modules/unistr/u32-strnlen: New file.
8978         * lib/unistr/u8-strnlen.c: New file.
8979         * lib/unistr/u16-strnlen.c: New file.
8980         * lib/unistr/u32-strnlen.c: New file.
8981         * lib/unistr/u-strnlen.h: New file.
8982
8983         * modules/unistr/u8-strpbrk: New file.
8984         * modules/unistr/u16-strpbrk: New file.
8985         * modules/unistr/u32-strpbrk: New file.
8986         * lib/unistr/u8-strpbrk.c: New file.
8987         * lib/unistr/u16-strpbrk.c: New file.
8988         * lib/unistr/u32-strpbrk.c: New file.
8989         * lib/unistr/u-strpbrk.h: New file.
8990
8991         * modules/unistr/u8-strrchr: New file.
8992         * modules/unistr/u16-strrchr: New file.
8993         * modules/unistr/u32-strrchr: New file.
8994         * lib/unistr/u8-strrchr.c: New file.
8995         * lib/unistr/u16-strrchr.c: New file.
8996         * lib/unistr/u32-strrchr.c: New file.
8997
8998         * modules/unistr/u8-strspn: New file.
8999         * modules/unistr/u16-strspn: New file.
9000         * modules/unistr/u32-strspn: New file.
9001         * lib/unistr/u8-strspn.c: New file.
9002         * lib/unistr/u16-strspn.c: New file.
9003         * lib/unistr/u32-strspn.c: New file.
9004         * lib/unistr/u-strspn.h: New file.
9005
9006         * modules/unistr/u8-strstr: New file.
9007         * modules/unistr/u16-strstr: New file.
9008         * modules/unistr/u32-strstr: New file.
9009         * lib/unistr/u8-strstr.c: New file.
9010         * lib/unistr/u16-strstr.c: New file.
9011         * lib/unistr/u32-strstr.c: New file.
9012         * lib/unistr/u-strstr.h: New file.
9013
9014         * modules/unistr/u8-strtok: New file.
9015         * modules/unistr/u16-strtok: New file.
9016         * modules/unistr/u32-strtok: New file.
9017         * lib/unistr/u8-strtok.c: New file.
9018         * lib/unistr/u16-strtok.c: New file.
9019         * lib/unistr/u32-strtok.c: New file.
9020         * lib/unistr/u-strtok.h: New file.
9021
9022         * modules/unistr/u8-uctomb: New file.
9023         * modules/unistr/u16-uctomb: New file.
9024         * modules/unistr/u32-uctomb: New file.
9025         * lib/unistr/u8-uctomb.c: New file.
9026         * lib/unistr/u16-uctomb.c: New file.
9027         * lib/unistr/u32-uctomb.c: New file.
9028
9029         * MODULES.html.sh (Unicode string functions): Add the new modules.
9030
9031 2007-01-08  Bruno Haible  <bruno@clisp.org>
9032
9033         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
9034         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
9035         subdirectories.
9036
9037 2007-01-08  Karl Berry  <karl@gnu.org>
9038
9039         * doc/error.texi: mention that main() fns must set program_name
9040         when progname is used.
9041
9042 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
9043
9044         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
9045         WCTYPE_H is empty, for the benefit of builds from non-distclean
9046         directories.  Problem reported by Eric Blake in
9047         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
9048
9049 2007-01-08  Bruno Haible  <bruno@clisp.org>
9050
9051         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
9052         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
9053         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
9054         PROVIDE_CANONICALIZE_FILENAME_MODE.
9055         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
9056
9057 2007-01-08  Bruno Haible  <bruno@clisp.org>
9058
9059         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
9060         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
9061         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
9062         * lib/fts.c: Likewise.
9063         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
9064
9065 2006-12-25  Bruno Haible  <bruno@clisp.org>
9066
9067         * modules/utf8-ucs4-safe: New file.
9068         * lib/utf8-ucs4-safe.h: New file.
9069         * lib/unistr/utf8-ucs4-safe.c: New file.
9070
9071         * modules/utf16-ucs4-safe: New file.
9072         * lib/utf16-ucs4-safe.h: New file.
9073         * lib/unistr/utf16-ucs4-safe.c: New file.
9074
9075         * MODULES.html.sh (Unicode string functions): Add the new modules.
9076
9077 2007-01-08  Bruno Haible  <bruno@clisp.org>
9078
9079         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
9080         (Depends-on): Add unitypes.
9081         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
9082         (u8_mbtouc_aux): Move out to separate file.
9083         (u8_mbtouc): Use ucs4_t, uint8_t types.
9084         * lib/unistr/utf8-ucs4.c: New file.
9085
9086         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
9087         (Depends-on): Add unitypes.
9088         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
9089         (u16_mbtouc_aux): Move out to separate file.
9090         (u16_mbtouc): Use ucs4_t, uint16_t types.
9091         * lib/unistr/utf16-ucs4.c: New file.
9092
9093         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
9094         (Depends-on): Add unitypes.
9095         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
9096         (u8_uctomb_aux): Move out to separate file.
9097         (u8_uctomb): Use ucs4_t, uint8_t types.
9098         * lib/unistr/ucs4-utf8.c: New file.
9099
9100         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
9101         (Depends-on): Add unitypes.
9102         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
9103         (u16_uctomb_aux): Move out to separate file.
9104         (u16_uctomb): Use ucs4_t, uint16_t types.
9105         * lib/unistr/ucs4-utf16.c: New file.
9106
9107 2006-12-25  Bruno Haible  <bruno@clisp.org>
9108
9109         * modules/unitypes: New file.
9110         * lib/unitypes.h: New file.
9111         * MODULES.html.sh (func_all_modules): New section "Unicode string
9112         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
9113         this section. Add unitypes.
9114
9115 2007-01-08  Bruno Haible  <bruno@clisp.org>
9116
9117         Avoid variable names that conflict with those from libtool.
9118         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
9119         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
9120         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
9121         library_names_spec to acl_library_names_spec, hardcode_* to
9122         acl_hardcode_*.
9123         Reported by Ralf Wildenhues.
9124
9125 2007-01-08  Bruno Haible  <bruno@clisp.org>
9126
9127         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
9128         definition.
9129         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
9130         definition.
9131         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
9132         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
9133         definition.
9134         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
9135         definition.
9136         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
9137         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
9138         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
9139         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
9140         definition.
9141         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
9142         definition.
9143         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
9144         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
9145         GC_USE_<algorithm>.
9146         * lib/gc-libgcrypt.c: Likewise.
9147         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
9148         * modules/gc-arctwo (configure.ac): Likewise.
9149         * modules/gc-des (configure.ac): Likewise.
9150         * modules/gc-hmac-md5 (configure.ac): Likewise.
9151         * modules/gc-hmac-sha1 (configure.ac): Likewise.
9152         * modules/gc-md2 (configure.ac): Likewise.
9153         * modules/gc-md4 (configure.ac): Likewise.
9154         * modules/gc-md5 (configure.ac): Likewise.
9155         * modules/gc-random (configure.ac): Likewise.
9156         * modules/gc-rijndael (configure.ac): Likewise.
9157         * modules/gc-sha1 (configure.ac): Likewise.
9158
9159 2007-01-08  Bruno Haible  <bruno@clisp.org>
9160
9161         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
9162         macro definition.
9163         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
9164         definition.
9165         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
9166         definition.
9167         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
9168         * modules/fcntl-safer (configure.ac): Likewise.
9169         * modules/fopen-safer (configure.ac): Likewise.
9170         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
9171         GNULIB_FWRITEERROR macro definition.
9172
9173 2007-01-08  Bruno Haible  <bruno@clisp.org>
9174
9175         * m4/gnulib-common.m4: New file.
9176         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
9177         (func_get_filelist): Add m4/gnulib-common.m4.
9178
9179 2007-01-08  Bruno Haible  <bruno@clisp.org>
9180
9181         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
9182         command.
9183
9184 2007-01-08  Jim Meyering  <jim@meyering.net>
9185
9186         Use a more robust test for a "can't happen" condition.
9187         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
9188         narrowed the st_size value.  Presuming the "can't happen" condition
9189         is true, that narrowing could conceivably convert an invalid st_size
9190         value into a valid one.  Instead, use a change based on Matthew
9191         Woehlke's original patch.
9192
9193         Slight readability improvement: use an assert-like macro
9194         in place of literal "abort ()" uses.
9195         * lib/fts.c (fts_assert): Define.
9196         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
9197         Use this macro instead of a bare 'abort'.
9198
9199 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
9200
9201         Don't worry about using IRIX 5.3's wctype.h broken definitions;
9202         simply work around them.
9203         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
9204         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
9205         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
9206         declaring.
9207         Don't bother to define as macros, since the standard doesn't require it.
9208         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
9209         longer worry about IRIX 5.3.
9210         (HAVE_WCTYPE_CTMP_BUG): Remove.
9211
9212 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
9213
9214         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
9215         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
9216         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
9217         Problems reported by Georg Schwarz for IRIX 5.3.
9218
9219         * gnulib-tool (autoconf_minversion): Take the maximum version number
9220         found, not the minimum.  Problem reported by James Youngman.
9221
9222 2007-01-03  Karl Berry  <karl@gnu.org>
9223
9224         * doc/error.texi: new file, explaining interaction with progname.
9225         * doc/gnulib.texi: include it.  Update copyright.
9226
9227 2007-01-03  Simon Josefsson  <simon@josefsson.org>
9228
9229         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
9230         AC_CANONICAL_HOST, to improve autobuild outputs.
9231
9232 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
9233             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9234
9235         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
9236         sockets, server sockets, and other file descriptors.  Count errors
9237         to compute the return value.  Reorder the code a bit to be easier
9238         to follow.  Don't set event bits that were not requested (except
9239         POLLERR and POLLHUP).
9240
9241 2007-01-01  Bruno Haible  <bruno@clisp.org>
9242
9243         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
9244
9245 2007-01-03  Jim Meyering  <jim@meyering.net>
9246
9247         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
9248
9249 2007-01-02  Bruno Haible  <bruno@clisp.org>
9250
9251         * modules/settime (Include): Require timespec.h.
9252         * modules/nanosleep (Include): Likewise.
9253
9254 2007-01-01  Bruno Haible  <bruno@clisp.org>
9255
9256         * gnulib-tool (func_emit_copyright_notice): Bump year.
9257         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
9258
9259 2007-01-01  Bruno Haible  <bruno@clisp.org>
9260
9261         Improve support for OpenBSD.
9262         * build-aux/config.rpath (libname_spec): Export.
9263         (library_names_spec): New variable. Export.
9264         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
9265         library_names_spec from the config.rpath output. Locate shared library
9266         through the name pattern in library_names_spec.
9267
9268 2007-01-01  Eric Blake  <ebb9@byu.net>
9269
9270         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
9271
9272 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
9273
9274         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
9275         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
9276         assume the C locale, and avoid an "eval" that could cause trouble.
9277         Problem with SORT reported by Bob Proulx.
9278
9279         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
9280         Define.  Trivial patch from Henning Nielsen Lund, originally
9281         sent to bug-grep@gnu.org today.
9282
9283 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
9284
9285         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
9286         struct stat.  Problem reported by Henning Nielsen Lund.
9287         * lib/acl.c: Include acl.h first, to check interface.  Don't
9288         bother to include sys/types.h and sys/stat.h again.
9289
9290 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
9291
9292         Import the following change from libc; problem reported by
9293         Sven Verdoolaege.
9294
9295         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
9296
9297         [BZ #1373]
9298         * lib/argp.h: Remove __NTH for __argp_usage inline function.
9299
9300 2006-12-28  Jim Meyering  <jim@meyering.net>
9301
9302         * build-aux/announce-gen: Do not assume that the package
9303         builds any of tar.gz, tar.bz2, and .xdelta files.
9304         Suggestion from Simon Josefsson.
9305
9306 2006-12-28  Simon Josefsson  <simon@josefsson.org>
9307
9308         * modules/announce-gen: New file.
9309
9310 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
9311
9312         * lib/mbchar.h: Just include <wctype.h>; the wctype module
9313         handles its gotchas now.
9314         * lib/mbswidth.c: Likewise.
9315         * lib/wcwidth.h: Likewise.
9316         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
9317         and iswcntrl; the wctype module does this stuff now.
9318         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
9319         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
9320         * modules/mbchar (Depends-on): Add wctype.
9321         * modules/mbswidth (Depends-on): Likewise.
9322         * modules/wcwidth (Depends-on): Likewise.
9323
9324 2006-12-27  Eric Blake  <ebb9@byu.net>
9325
9326         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
9327         module uses more than what <wctype.h> is required to provide.
9328
9329 2006-12-26  Eric Blake  <ebb9@byu.net>
9330
9331         * gnulib-tool (sed_extract_prog): Avoid space-tab.
9332
9333 2006-12-26  Eric Blake  <ebb9@byu.net>
9334
9335         * modules/absolute-header: New module.
9336         * modules/fcntl (Depends-on): Depend on it.
9337         * modules/inttypes (Depends-on): Likewise.
9338         * modules/stdint (Depends-on): Likewise.
9339         * modules/sys_stat (Depends-on): Likewise.
9340         * modules/wctype (Depends-on): Likewise.
9341         * MODULES.html.sh (Support for building libraries and
9342         executables): Document it.
9343
9344 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
9345
9346         * gnulib-tool (SED): Remove, undoing previous change.
9347         The problem was that it broke coreutils on Solaris, because
9348         "sed --posix" leaked into a makefile.
9349         (sed): New alias, if 'alias' and GNU sed.
9350
9351 2006-12-24  Jim Meyering  <jim@meyering.net>
9352
9353         Work around an fchownat bug in glibc-2.4:
9354         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
9355         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
9356         in spite of the -P option.
9357         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
9358         New macros.
9359         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
9360         * modules/openat (Files): Add lib/fchownat.c.
9361         * lib/openat.c (fchownat): Don't define here.  Move to...
9362         * lib/fchownat.c: ...this new file.
9363
9364 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
9365
9366         Fix bug reported by Bruno Haible in
9367         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
9368         where quotearg.c didn't compile on Mac OS X 10.2 because it
9369         lacks <wchar.h> and wint_t.
9370         * lib/wctype_.h (__wctype_wint_t): New type.
9371         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
9372         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
9373         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
9374         Arg is now of type __wctype_wint_t, not wint_t.
9375         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
9376         substitute HAVE_WINT_T.
9377         * modules/wctype (Files): Add m4/wint_t.m4.
9378         (wctype.h): Substitute HAVE_WINT_T.
9379
9380 2006-12-23  Bruno Haible  <bruno@clisp.org>
9381
9382         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
9383
9384 2006-12-23  Bruno Haible  <bruno@clisp.org>
9385
9386         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
9387         S_ISLNK.
9388         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
9389         mingw.
9390
9391 2006-12-22  Bruno Haible  <bruno@clisp.org>
9392
9393         * lib/copy-file.c: Include acl.h.
9394         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
9395         Close the file descriptors only after being done with copy_acl.
9396         * modules/copy-file (Depends-on): Add acl.
9397
9398 2006-12-22  Bruno Haible  <bruno@clisp.org>
9399
9400         * gnulib-tool (SED): New variable.
9401         Use $SED instead of sed everywhere.
9402
9403 2006-12-22  Bruno Haible  <bruno@clisp.org>
9404
9405         * modules/no-c++: New file.
9406         * m4/no-c++.m4: New file.
9407         * MODULES.html.sh (Support for building libraries and executables):
9408         Add no-c++.
9409
9410 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
9411
9412         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
9413         Include <limits.h>, and use its INT_MAX to rewrite the
9414         j loop so that it does not overflow 'int'.  Problem reported by
9415         Ralf Wildenhues in
9416         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
9417         Play it safe by shifting left by 1 rather than multiplying by 2,
9418         as GCC is less likely to optimize this away when the value
9419         is signed (when it assumes overflow leads to undefined behavior).
9420         Also, don't assume time_t uses two's complement.
9421
9422 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
9423
9424         * MODULES.html.sh: New module wctype.
9425         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
9426         * lib/fnmatch.c: Don't bother to include <wchar.h> before
9427         <wctype.h>, since the new wctype module should fix this.
9428         * lib/quotearg.c: Include <wctype.h> unconditionally, since
9429         the wctype module should arrange for it.
9430         * lib/regex_internal.h: Likewise.
9431         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
9432         since the wctype module should handle this now.
9433         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
9434         * modules/fnmatch (Depends-on): Add wctype.
9435         * modules/quotearg (Depends-on): Likewise.
9436         * modules/regex (Depends-on): Likewise.
9437
9438 2006-12-19  Bruno Haible  <bruno@clisp.org>
9439
9440         * lib/strdup.h [C++]: Wrap definitions in extern "C".
9441         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
9442
9443 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9444
9445         * modules/savewd (Depends-on): Fix dependency on fcntl.
9446
9447 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
9448
9449         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
9450         conforms to C99, rather than relying on the user's environment
9451         setting of STDINT_H.
9452
9453 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
9454         and Eric Blake  <ebb9@byu.net>
9455
9456         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
9457         This is more consistent with the other defines here.
9458         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
9459         Port to z/OS.  Problem reported by Paul Gilmartin.
9460         Change local vars to use gl_ prefix rather than ac_.
9461         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
9462         with other defines.
9463         * modules/double-slash-root: New module.
9464         * modules/dirname (Files): Remove m4/double-slash-root.m4.
9465         (Depends-on): Add double-slash-root.
9466         * MODULES.html.sh (File system functions): Mention new module.
9467
9468 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
9469
9470         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
9471         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
9472         This is for the benefit of gzip, which doesn't do i18n.
9473
9474 2006-12-12  Jim Meyering  <jim@meyering.net>
9475
9476         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
9477         Reported by Andreas Schwab <schwab@suse.de>.
9478
9479 2006-12-12  Bruno Haible  <bruno@clisp.org>
9480
9481         Merge these changes.
9482         2006-09-05  Bruno Haible  <bruno@clisp.org>
9483         * lib/iconvme.c (iconv_string): No need to save and restore errno when
9484         iconv_alloc succeeded.
9485         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
9486         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
9487         test for " && dest " at the end - dest is always != NULL there. Call
9488         iconv with 4xNULL arguments initially, to reset the state. Call iconv
9489         with 2xNULL arguments, also to flush the state storage. Handle the
9490         IRIX iconv behaviour. Realloc the final result, to throw away unused
9491         memory.
9492
9493 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
9494
9495         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
9496         and fchmodat unconditionally, since glibc 2.4 has them.
9497         Problem reported by Arkadiusz Miskiewicz.
9498
9499 2006-12-10  Bruno Haible  <bruno@clisp.org>
9500
9501         * gnulib-tool (func_import): Show the include files only for those
9502         modules that are copied and specified.
9503         Reported by Karl Berry.
9504
9505 2006-12-08  Jim Meyering  <jim@meyering.net>
9506
9507         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
9508         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
9509
9510         * build-aux/announce-gen: Add two new options, both optional:
9511         --bootstrap-tools=TOOL_LIST
9512               a comma-separated list of tools, e.g.,
9513               autoconf,automake,bison,gnulib
9514         --gnulib-snapshot-date=DATE
9515               if gnulib is in the bootstrap tool list,
9516               then report this as the snapshot date.
9517               If not specified, use the current date/time.
9518               If you specify a date here, be sure it's UTC.
9519
9520 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9521
9522         * tests/test-argp-2.sh: Fix test to match actual output.
9523         (func_compare): Fix sed script to be portable.
9524
9525 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
9526
9527         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
9528         workaround for this case.  It is not autoconfigured now; offhand
9529         it's hard to see how to autoconfigure it.
9530
9531 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
9532
9533         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
9534         a directory that is about to be chowned.  Such a directory's
9535         initial file permissions should permit the owner only and this
9536         should not be changed until after the chown, since the group and
9537         other bits would be incorrect if they granted permission before
9538         the chown.
9539
9540         Fix porting problem for iswctype reported by Georg Schwarz in:
9541         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
9542         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
9543         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
9544         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
9545         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
9546
9547 2006-12-03  Jim Meyering  <jim@meyering.net>
9548
9549         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
9550         p->fts_statp may not yet be defined.
9551         (fts_read): Instead, set it in the caller, once p->fts_statp is
9552         sure to be defined, and corresponds to a top-level directory.
9553         This bug made du -x fail.  Here's the coreutils test case:
9554         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
9555         Reported by Mike Frysinger.
9556
9557 2006-12-01  Jim Meyering  <jim@meyering.net>
9558
9559         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
9560         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
9561         Reported by Simon Josefsson.
9562
9563 2006-11-30  Jim Meyering  <jim@meyering.net>
9564
9565         * m4/warning.m4: Use the all-permissive copyright notice
9566         recommended by RMS (rather than LGPL).
9567         * m4/vararrays.m4: Likewise.
9568         * m4/flexmember.m4: Likewise.
9569
9570 2006-11-29  Bruno Haible  <bruno@clisp.org>
9571
9572         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
9573         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
9574         using +=.
9575         Reported by Simon Josefsson <simon@josefsson.org>.
9576
9577 2006-11-28  James Youngman <jay@gnu.org>
9578
9579         * README: Advise users that they might find the bug-gnulib@gnu.org
9580         and autotools-announce@gnu.org mailing lists useful.
9581
9582 2006-11-28  Bruno Haible  <bruno@clisp.org>
9583
9584         * m4/ptrdiff_max.m4: Remove file.
9585
9586 2006-11-21  Bruno Haible  <bruno@clisp.org>
9587
9588         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
9589         _AC_COMPUTE_INT.
9590         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
9591         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
9592         _AC_COMPUTE_INT.
9593         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
9594         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
9595         _AC_COMPUTE_INT.
9596         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
9597
9598 2006-11-28  Jim Meyering  <jim@meyering.net>
9599
9600         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
9601         warning from "gcc -Wshadow" about shadowing the builtin.
9602
9603 2006-11-27  Bruno Haible  <bruno@clisp.org>
9604
9605         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
9606         _AC_COMPUTE_INT.
9607         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
9608
9609 2006-11-27  Bruno Haible  <bruno@clisp.org>
9610             Paul Eggert  <eggert@cs.ucla.edu>
9611
9612         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
9613
9614 2006-11-26  Bruno Haible  <bruno@clisp.org>
9615
9616         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
9617         noinst_LTLIBRARIES.
9618
9619 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
9620             Bruno Haible  <bruno@clisp.org>
9621
9622         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
9623         if compiling with "gcc -ansi".
9624
9625 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
9626
9627         Fix some incompatibilities with gcc -ansi -pedantic.
9628         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
9629         if compiling pedantically with GCC, unless it's C99 or later.
9630         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
9631         it mishandles gcc -ansi -pedantic as well.
9632         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
9633         if gcc -pedantic.
9634         * lib/regexec.c (check_node_accept_bytes): Don't use auto
9635         initializers for struct if -pedantic, unless it's C99 or later.
9636
9637 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
9638
9639         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
9640         Don't close an fd more than once. Identical atimes indicate
9641         success, not failure.
9642
9643 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
9644
9645         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
9646
9647 2006-11-23  Jim Meyering  <jim@meyering.net>
9648
9649         * build-aux/announce-gen: New file.  From coreutils.
9650
9651 2006-11-22  Jim Meyering  <jim@meyering.net>
9652
9653         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
9654         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
9655         (fts_read): Use a temporary to narrow the overused st_size member
9656         before using it in a switch statement.  Reported by Matthew Woehlke.
9657
9658         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
9659         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
9660
9661 2006-11-20  Bruno Haible  <bruno@clisp.org>
9662
9663         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
9664         changequote instead of pairs of brackets.
9665         Reported by Andreas Schwab <schwab@suse.de>.
9666
9667 2006-11-21  Jim Meyering  <jim@meyering.net>
9668
9669         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
9670         so as to remain compatible with older compilers.
9671         Patch from Michael Deutschmann.
9672
9673 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
9674
9675         * MODULES.html.sh (File system functions): Add openat.
9676
9677         * lib/openat.h (rpl_fstatat): New macro, if
9678         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
9679         (fstatat): Define to rpl_fstatat under the same conditions,
9680         unless COMPILING_FSTATAT.
9681         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
9682         seems to have the bug.
9683         * lib/fstatat.c: New file.
9684         * modules/openat (Files): Add it.
9685
9686 2006-11-20  Bruno Haible  <bruno@clisp.org>
9687
9688         * Makefile: New file.
9689
9690 2006-11-20  Jim Meyering  <jim@meyering.net>
9691
9692         The beginnings of syntax-related checks for gnulib.
9693         * lib/Makefile: New file.
9694         * lib/t-idcache: New script.  Ensure that the two halves of
9695         idcache.c stay in sync.
9696
9697         * lib/idcache.c: Adjust comments in user- and group- portions to
9698         be more accurate, and to be consistent with one another.
9699
9700 2006-11-20  Jim Meyering  <jim@meyering.net>
9701
9702         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
9703         continue using the flexible array member (thus, this module performs
9704         half as many malloc calls), with the addition that...
9705         (getgroup, getuser): Consistently record a non-match via an empty
9706         "name" string, and map an empty string match to a NULL return value.
9707         * modules/idcache (Depends-on): Re-add flexmember.
9708
9709         * lib/idcache.c (getuser): Remove all uses of the register keyword.
9710         (getuidbyname, getgroup, getgidbyname): Likewise.
9711
9712         Use cleaner syntax: NULL rather than 0.
9713         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
9714
9715 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
9716
9717         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
9718         It mishandled the case where the group was missing.
9719         Problem reported by Greg Schafer.
9720         * modules/idcache: Likewise.
9721
9722 2006-11-18  Jim Meyering  <jim@meyering.net>
9723
9724         * check-module (%exempt_header): Add exception for some
9725         conditionally-included headers.
9726
9727         * modules/i-ring (Depends-on): Add verify.
9728         (License): Change to LGPL.
9729
9730 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
9731
9732         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
9733         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
9734         and inttostr.h.  Use snprintf rather than uinttostr, so that
9735         LGPLed code doesn't depend on GPLed.
9736
9737 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
9738
9739         * modules/inline (License): Change from GPL to LGPL.
9740
9741 2006-11-17  Jim Meyering  <jim@meyering.net>
9742
9743         * modules/d-type (License): Switch to LGPL.
9744
9745 2006-11-15  Bruno Haible  <bruno@clisp.org>
9746
9747         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
9748
9749 2006-11-15  Eric Blake  <ebb9@byu.net>
9750
9751         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
9752         the module dependency.
9753
9754 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9755             Bruno Haible  <bruno@clisp.org>
9756
9757         * gnulib-tool (func_create_testdir): Add license consistency check.
9758
9759 2006-11-15  Eric Blake  <ebb9@byu.net>
9760
9761         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
9762         random "(cached)" in configure output.
9763
9764 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9765
9766         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
9767         test for conforming inttypes.h is both announced and cached.
9768
9769         * MODULES.html.sh (seen_modules, seen_files): New variables.
9770         (func_module): Rewrite to use a few less gnulib-tool and sed
9771         invocations.  Avoid a couple of quadratic algorithms for ...
9772         (missed_modules, missed_files): ... these, with ...
9773         (func_append, func_tmpdir): ... these new functions, from
9774         gnulib-tool.  Analogously, install traps for cleanup.
9775
9776         * tests/test-gc.c (main): Remove unused variables.
9777         * tests/test-read-file.c: Include stdlib.h, for 'free'.
9778
9779 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
9780
9781         * modules/inttostr (License): Change to LGPL.
9782
9783 2006-11-14  Eric Blake  <ebb9@byu.net>
9784
9785         * modules/tempname (License): Change to LGPL.
9786
9787 2006-11-14  Eric Blake  <ebb9@byu.net>
9788
9789         * doc/functions.texi (Function Portability): *printf functions on
9790         Cygwin now understand all POSIX size specifiers.
9791
9792 2006-11-14  Bruno Haible  <bruno@clisp.org>
9793
9794         * modules/c-ctype (License): Change to LGPL.
9795
9796 2006-11-12  Bruno Haible  <bruno@clisp.org>
9797
9798         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
9799         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
9800         for GNOME libraries, for which the include files are installed in
9801         subdirectories of $prefix/include.
9802
9803 2006-11-12  Bruno Haible  <bruno@clisp.org>
9804
9805         * m4/lib-link.m4: Require at least autoconf-2.54.
9806         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
9807         name to underscores for the --with option.
9808
9809 2006-11-13  Bruno Haible  <bruno@clisp.org>
9810
9811         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
9812         the tests directory.
9813         Reported by Ralf Wildenhues.
9814
9815 2006-11-13  Bruno Haible  <bruno@clisp.org>
9816
9817         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
9818         (func_emit_initmacro_end): Undo the override here.
9819         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
9820         Works around the famous automake error in coreutils.
9821
9822 2006-11-13  Eric Blake  <ebb9@byu.net>
9823
9824         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
9825         element, not its node.
9826
9827 2006-11-12  Bruno Haible  <bruno@clisp.org>
9828
9829         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
9830         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
9831
9832 2006-11-12  Bruno Haible  <bruno@clisp.org>
9833
9834         * gnulib-tool: New option --local-symlink.
9835         (func_usage): Document it.
9836         (lsymbolic): New variable.
9837         (func_import, func_create_testdir): If --symlink was not specified,
9838         test whether --local-symlink was specified and the file comes from
9839         the local_gnulib_dir.
9840
9841 2006-11-12  Bruno Haible  <bruno@clisp.org>
9842
9843         * gnulib-tool (func_ln): New function.
9844         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
9845
9846 2006-11-12  Bruno Haible  <bruno@clisp.org>
9847
9848         Finish support for source files in subdirectories.
9849         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
9850         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
9851         AUTOMAKE_OPTIONS.
9852         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
9853
9854 2006-11-12  Bruno Haible  <bruno@clisp.org>
9855
9856         * gnulib-tool (func_get_automake_snippet): Synthesize also an
9857         EXTRA_lib_SOURCES augmentation.
9858         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
9859
9860 2006-11-12  Jim Meyering  <jim@meyering.net>
9861
9862         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
9863         file descriptors.  This also averts a failure on systems with
9864         native openat support when a traversed directory lacks "x" access.
9865         * lib/fts_.h: Include "i-ring.h"
9866         (struct FTS) [fts_fd_ring]: New member.
9867         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
9868         (FCHDIR): Add parentheses.
9869         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
9870         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
9871         When descending, rather than simply closing the previous
9872         fts_cwd_fd value, push that file descriptor onto the ring.
9873         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
9874         (fts_open): Initialize the new fd_ring member.
9875         (fts_close): Clear the ring.
9876         (fts_safe_changedir): When possible, use our new fd_ring to skip
9877         the diropen and fstat and dev/ino comparison that would normally
9878         accompany a virtual `chdir ("..")'.
9879
9880         * modules/fts (Depends-on): Add i-ring.
9881         * modules/i-ring: New module.
9882         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
9883         * m4/i-ring.m4: New file.
9884
9885 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9886
9887         * gnulib-tool (func_create_testdir): Fix replacement of
9888         `build-aux' in configure.ac.  Run autotools in gltests
9889         subdirectory.
9890         (func_create_testdir, func_create_megatestdir, test): There is
9891         no need for '--force' in most autotool invocations in a new
9892         tree.  Actually fail the whole test if any of the tools, or the
9893         configure or make stages fail.
9894
9895         Sync from Automake.
9896         * build-aux/gnupload: Revert last change.  Add pointer to upload
9897         instructions of the GNU Maintenance Instructions.
9898         Suggestion by Karl Berry.
9899
9900 2006-11-10  Jim Meyering  <jim@meyering.net>
9901
9902         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
9903
9904 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
9905
9906         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
9907         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
9908         (bind_textdomain_codeset) [! ENABLE_NLS]:
9909         Evaluate all the arguments.  That way, callers get compatible behavior
9910         if the arguments have side effects.  Also, it avoids some GCC
9911         diagnostics in some cases; Joel E. Denny reported problems when Bison
9912         was configured with --enable-gcc-warnigs.
9913
9914 2006-11-10  Jim Meyering  <jim@meyering.net>
9915
9916         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
9917         relevant options in CFLAGS (like -O, -fno-inline) are taken into
9918         account.
9919
9920 2006-11-10  Jim Meyering  <jim@meyering.net>
9921
9922         * modules/inline: New file/module.
9923         * modules/xalloc (Files): Remove m4/inline.m4.
9924         (Depends-on): Add inline, instead.
9925         * modules/oset: Likewise.
9926         * modules/list: Likewise.
9927
9928 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
9929
9930         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
9931         Problem reported by Matthew Woehlke.
9932
9933 2006-11-09  Bruno Haible  <bruno@clisp.org>
9934
9935         * lib/tempname.c (gen_tempname): Remove variant that invokes
9936         __gen_tempname.
9937         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
9938         __gen_tempname.
9939
9940 2006-11-08  Bruno Haible  <bruno@clisp.org>
9941
9942         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
9943         to 'yes' instead of 'cross-compiling'.
9944
9945 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
9946
9947         * lib/quotearg.h (quotearg_free): New decl.
9948         * lib/quotearg.c (quotearg_free): New function.
9949         (slot0, nslots, slotvec0, slotvec):
9950         Now file-scope so that quotearg_free can get at them.
9951
9952 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9953
9954         Sync from Automake.
9955         * build-aux/gnupload: Add missing 'gnu' to example URL.
9956         Report by Karl Berry.
9957
9958 2006-11-08  Bruno Haible  <bruno@clisp.org>
9959
9960         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
9961         Suggested by Paul Eggert.
9962
9963 2006-11-08  Jim Meyering  <jim@meyering.net>
9964
9965         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
9966         It's already included if !_LIBC.
9967         (fts_safe_changedir): Add a comment.
9968
9969 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
9970
9971         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
9972         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
9973         Matthew Woehlke.
9974
9975         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
9976         definitions up, to avoid colliding with change below.
9977         (static_inline) [HAVE_INLINE]: New macro.
9978         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
9979         Provide extern decls when !HAVE_INLINE.  Do not define unless
9980         static_inline is defined, either by us or by xmalloc.c.  Use
9981         static_inline rather than static inline.
9982         (XCALLOC): Optimize sizeof(T) = 1 case.
9983         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
9984
9985 2006-11-07  Bruno Haible  <bruno@clisp.org>
9986
9987         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
9988         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
9989         AC_C_INLINE.
9990         * modules/xalloc (Files): Add m4/inline.m4.
9991
9992 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9993
9994         * README: Fix typo.
9995         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
9996         (Miscellanous Notes): ...from this.
9997
9998 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
9999
10000         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
10001         Mention that offsetof should be used instead of sizeof.
10002         From Bruno Haible.
10003
10004 2006-11-07  Bruno Haible  <bruno@clisp.org>
10005
10006         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
10007
10008 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
10009
10010         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
10011         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
10012         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
10013         (gl_tree_add_before, gl_tree_add_after):
10014         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
10015         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
10016         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
10017         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
10018         (gl_linked_add_after, gl_linked_add_at): Likewise.
10019         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
10020         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
10021         (gl_tree_add_before, gl_tree_add_after): Likewise.
10022         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
10023         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
10024         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
10025
10026 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10027
10028         * lib/gl_oset.h: Use C comment style, not C++ comment style.
10029
10030 2006-11-06  Bruno Haible  <bruno@clisp.org>
10031
10032         * m4/inline.m4: New file.
10033         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
10034         * modules/list (Files): Add m4/inline.m4.
10035         * modules/oset (Files): Likewise.
10036
10037 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
10038
10039         * lib/idcache.c: Include <stddef.h>, for offsetof.
10040         (struct userid.name): Change from char * to a flexible array member.
10041         All uses changed.
10042         * modules/idcache (Depends-on): Add flexmember.
10043
10044         * MODULES.html.sh (Core language properties): New module flexmember.
10045         * modules/flexmember, m4/flexmember.m4: New files.
10046
10047         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
10048         inline functions that are identical with the old xnmalloc_inline,
10049         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
10050         that we can avoid some unnecessary integer multiplications and
10051         divisions in the common case where the element size is known at
10052         compile time.
10053         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
10054         needed.
10055         (xnboundedmalloc): Remove.
10056         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
10057         arguments, for consistency with rest of this header.
10058         (xcharalloc): Rewrite using XNMALLOC.
10059         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
10060         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
10061         versions have been moved to lib/xalloc.h and renamed to be the
10062         non-*_inline versions.
10063         (xmalloc, xrealloc): Implement without reference to the xnmalloc
10064         and xnrealloc functions, since those functions are now inline and
10065         now call us.
10066         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
10067         renaming described above.
10068         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
10069         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
10070         captures the dependency in AC_C_INLINE.
10071
10072         New module canonicalize-lgpl, proposed by Charles Wilson in
10073         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
10074         with a few small changes afterwards.
10075         * MODULES.html.sh (File system functions): New module
10076         canonicalize-lgpl.
10077         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
10078         and canonicalize_file_name.
10079         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
10080         * modules/canonicalize-lgpl: New files.
10081
10082 2006-11-05  Bruno Haible  <bruno@clisp.org>
10083
10084         * gnulib-tool (func_import, func_create_testdir): Create directories
10085         also for files in subdirectories of lib/.
10086
10087 2006-11-05  Bruno Haible  <bruno@clisp.org>
10088
10089         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
10090         ANSI C compliant.
10091
10092 2006-11-03  Bruno Haible  <bruno@clisp.org>
10093
10094         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
10095         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
10096         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
10097         (xnboundedmalloc): New inline function.
10098         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
10099         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
10100         xmalloc.
10101         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
10102         xmalloc.
10103         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
10104         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
10105         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
10106         xmalloc.
10107         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
10108         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
10109         xmalloc.
10110         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
10111         gl_tree_add_after): Use XMALLOC instead of xmalloc.
10112         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
10113         xmalloc.
10114         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
10115         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
10116         gl_tree_add_after): Use XMALLOC instead of xmalloc.
10117         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
10118         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
10119         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
10120         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
10121
10122 2006-11-03  Bruno Haible  <bruno@clisp.org>
10123
10124         * lib/c-ctype.h [C++]: Define functions without name mangling.
10125         * lib/fwriteerror.h [C++]: Likewise.
10126         * lib/gcd.h [C++]: Likewise.
10127         * lib/linebreak.h [C++]: Likewise.
10128
10129 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
10130
10131         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
10132         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
10133         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
10134         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
10135         Check for functions and headers just once.
10136         Check for declaration of canonicalize_file_name.
10137         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
10138
10139 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
10140
10141         * gnulib-tool (func_import): Fix typo in actioncmd.
10142
10143 2006-11-02  Bruno Haible  <bruno@clisp.org>
10144
10145         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
10146         newline sequence in the Makefile.am snippet as a space, like "make"
10147         does.
10148         Reported by Roger Persson <perrog@gmail.com>.
10149
10150 2006-11-01  Bruno Haible  <bruno@clisp.org>
10151
10152         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
10153         already declared in <string.h>.
10154         * lib/strcase.h (strncasecmp): Don't declare it if yes.
10155
10156 2006-11-01  Bruno Haible  <bruno@clisp.org>
10157
10158         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
10159         * lib/strcase.h: Include <string.h>.
10160         (strcasecmp): Define to rpl_strcasecmp here.
10161
10162 2006-11-01  Bruno Haible  <bruno@clisp.org>
10163
10164         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
10165
10166 2006-11-01  Eric Blake  <ebb9@byu.net>
10167
10168         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
10169
10170         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
10171
10172 2006-10-29  Bruno Haible  <bruno@clisp.org>
10173
10174         Make it compile in C++ mode.
10175         * lib/full-write.c (full_rw): Add a cast.
10176
10177 2006-11-01  Bruno Haible  <bruno@clisp.org>
10178
10179         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
10180         be POSIX compliant.
10181         Reported by Roger Persson <perrog@gmail.com>.
10182
10183 2006-11-01  Eric Blake  <ebb9@byu.net>
10184
10185         * lib/getopt_.h: Fix comments.
10186
10187 2006-10-31  Eric Blake  <ebb9@byu.net>
10188
10189         * modules/tmpdir (Depends-on): Add sys_stat.
10190         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
10191         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
10192         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
10193         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
10194         tempname.
10195
10196 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
10197
10198         Avoid some C++ diagnostics reported by Bruno Haible.
10199         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
10200         xmalloc.
10201         (quotearg_alloc): Use xcharalloc rather than xmalloc.
10202         (struct slotvec): Move to top level.
10203         (quotearg_n_options): Rewrite to avoid xmalloc.
10204         * lib/xalloc.h (xcharalloc): New function.
10205         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
10206         [defined __cplusplus]: Add function template that provides result
10207         type propagation.  This part of the change is from Bruno Haible.
10208
10209 2006-10-29  Bruno Haible  <bruno@clisp.org>
10210
10211         Make it compile in C++ mode.
10212         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
10213         * lib/strnlen1.c (strnlen1): Cast memchr result.
10214         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
10215         * lib/clean-temp.c (string_equals, string_hash): Add casts.
10216         (create_temp_dir): Rename local variable 'template'.
10217         (compile_csharp_using_sscli): Add cast.
10218         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
10219         * lib/findprog.c (find_in_path): Likewise.
10220         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
10221         * lib/wait-process.c (register_slave_subprocess): Likewise.
10222
10223 2006-10-22  Bruno Haible  <bruno@clisp.org>
10224
10225         * modules/tsearch: New file.
10226         * lib/tsearch.h: New file.
10227         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
10228         * m4/tsearch.m4: New file.
10229         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
10230
10231 2006-10-29  Eric Blake  <ebb9@byu.net>
10232
10233         * lib/arcfour.c: Assume config.h.
10234         * lib/arctwo.c: Likewise.
10235         * lib/base64.c: Likewise.
10236         * lib/check-version.c: Likewise.
10237         * lib/crc.c: Likewise.
10238         * lib/des.c: Likewise.
10239         * lib/gc-gnulib.c: Likewise.
10240         * lib/gc-libgcrypt.c: Likewise.
10241         * lib/gc-pbkdf2-sha1.c: Likewise.
10242         * lib/getaddrinfo.c: Likewise.
10243         * lib/getdelim.c: Likewise.
10244         * lib/getline.c: Likewise.
10245         * lib/hmac-md5.c: Likewise.
10246         * lib/hmac-sha1.c: Likewise.
10247         * lib/iconvme.c: Likewise.
10248         * lib/md2.c: Likewise.
10249         * lib/md4.c: Likewise.
10250         * lib/memxor.c: Likewise.
10251         * lib/read-file.c: Likewise.
10252         * lib/readline.c: Likewise.
10253         * lib/rijndael-alg-fst.c: Likewise.
10254         * lib/rijndael-api-fst.c: Likewise.
10255         * lib/xgetdomainname.c: Likewise.
10256
10257 2006-10-28  Eric Blake  <ebb9@byu.net>
10258
10259         * lib/xstrndup.c: Assume config.h.
10260
10261 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
10262
10263         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
10264         stat-macros.h is now for our own macros, whereas stat_h is for
10265         macros in the <sys/stat.h> name space.
10266         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
10267         (STAT_MACROS_H): Remove.
10268         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
10269         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
10270         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
10271         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
10272         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
10273         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
10274         Move these macros to ...
10275         * lib/stat_.h: here.  Don't include stat-macros.h.
10276         * lib/canonicalize.c: Don't include stat-macros.h.
10277         * lib/chown.c: Likewise.
10278         * lib/euidaccess.c: Likewise.
10279         * lib/file-type.c: Likewise.
10280         * lib/filemode.c: Likewise.
10281         * lib/glob.c: Likewise.
10282         * lib/isapipe.c: Likewise.
10283         * lib/lchown.c: Likewise.
10284         * lib/lstat.c: Likewise.
10285         * lib/mkdir-p.c: Likewise.
10286         * lib/rmdir.c: Likewise.
10287         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
10288         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
10289         unless mkdir isn't declared, to speed up 'configure'.
10290         Always create sys/stat.h, since it's unlikely any real sys/stat.h
10291         would define all the S_* symbols.
10292         * modules/canonicalize (Depends-on):
10293         Depend on sys_stat, not stat-macros.
10294         * modules/chown: Likewise.
10295         * modules/euidaccess: Likewise.
10296         * modules/filemode: Likewise.
10297         * modules/file-type: Likewise.
10298         * modules/glob: Likewise.
10299         * modules/isapipe: Likewise.
10300         * modules/lchown: Likewise.
10301         * modules/lstat: Likewise.
10302         * modules/mkancesdirs: Likewise.
10303         * modules/rmdir: Likewise.
10304         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
10305         * modules/modechange: Likewise.
10306         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
10307         (configure.ac): Remove gl_STAT_MACROS.
10308         * modules/sys_stat (Depends-on): Remove stat-macros.
10309
10310 2006-10-27  Bruno Haible  <bruno@clisp.org>
10311
10312         * m4/signed.m4: Remove file.
10313         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
10314         invocation.
10315         * modules/vasnprintf (Files): Remove m4/signed.m4.
10316
10317 2006-10-27  Bruno Haible  <bruno@clisp.org>
10318
10319         Update to GNU gettext 0.16.
10320         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
10321         m4/inttypes-h.m4, m4/signed.m4.
10322         * m4/gettext.m4: Update to GNU gettext 0.16.
10323         * m4/intl.m4: New file, from GNU gettext.
10324         * m4/intldir.m4: New file, from GNU gettext.
10325         * config/srclist.txt: Update
10326
10327 2006-10-27  Eric Blake  <ebb9@byu.net>
10328
10329         * MODULES.html.sh: Document tempname.
10330         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
10331         dependencies.
10332         (Files): Move lib/tempname.c...
10333         * modules/tempname: ...to this new module.
10334         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
10335         (gl_PREREQ_TEMPNAME): Move...
10336         * m4/tempname.m4: ...to this new file.
10337         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
10338         * modules/sys_stat (Depends-on): Add stat-macros.
10339         * lib/stat_.h (includes): Pick up stat macros.
10340         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
10341         if stat macros are broken.
10342         * lib/tempname.c (includes): No need to include "stat-macros.h".
10343         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
10344         (direxists, __path_search) [!_LIBC]: Don't compile these in
10345         gnulib; the tmpdir module covers that.
10346         * lib/tempname.h: New file.
10347
10348 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
10349
10350         * COPYING: Explain how gnulib-tool converts licence headers.
10351         Almost all wording by Eric Blake.
10352
10353 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
10354
10355         * lib/mbchar.h (is_basic_table): Make read-only.
10356         * lib/mbchar.c (is_basic_table): Likewise.
10357         Reported by John Darrington.
10358
10359 2006-10-25  Bruno Haible  <bruno@clisp.org>
10360
10361         * lib/progname.h (set_program_name): Undefine before defining.
10362
10363 2006-10-25  Bruno Haible  <bruno@clisp.org>
10364
10365         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
10366         false for non-gcc C++ compilers.
10367         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
10368
10369 2006-10-24  Bruno Haible  <bruno@clisp.org>
10370
10371         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
10372         iconv implementations like Irix iconv.
10373
10374 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
10375
10376         * modules/vararrays: New file.
10377         * m4/vararrays.m4: New file, taken from diffutils.
10378         * MODULES.html.sh: New module vararrays.
10379
10380 2006-10-24  Karl Berry  <karl@gnu.org>
10381
10382         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
10383         Don't call GNU Unix.
10384
10385 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10386
10387         * users.txt: Add Libtool.
10388
10389         Sync from Libtool:
10390
10391         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
10392
10393         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
10394         to gnulib's policy of including config.h unconditionally.
10395
10396 2006-10-24  Bruno Haible  <bruno@clisp.org>
10397
10398         * modules/wcwidth (Files): Add m4/wint_t.m4.
10399         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
10400         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
10401
10402 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
10403
10404         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
10405         to pacify GCC with some -W flags enabled.  Problem reported by
10406         Bruno Haible.
10407
10408 2006-10-24  Jim Meyering  <jim@meyering.net>
10409
10410         * MODULES.html.sh: Remove uinttostr.  It's not a module.
10411         Reported by Karl Berry.
10412
10413 2006-10-23  Bruno Haible  <bruno@clisp.org>
10414
10415         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
10416
10417 2006-10-24  Bruno Haible  <bruno@clisp.org>
10418
10419         * lib/gl_list.h: Use C comment style, not C++ comment style.
10420
10421 2006-10-23  Eric Blake  <ebb9@byu.net>
10422
10423         * lib/getaddrinfo.c (includes): Add missing include.
10424
10425 2006-10-23  Bruno Haible  <bruno@clisp.org>
10426             Paul Eggert  <eggert@cs.ucla.edu>
10427
10428         Ability to rename obstack_free.
10429         * lib/obstack.h (__obstack_free): New macro. Declare instead of
10430         obstack_free.
10431         (obstack_free): Invoke the __obstack_free macro.
10432         * lib/obstack.c (obstack_free): Use __obstack_free macro.
10433
10434 2006-10-23  Bruno Haible  <bruno@clisp.org>
10435             Paul Eggert  <eggert@cs.ucla.edu>
10436
10437         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
10438         __argc, __argv from the declaration. (They are defined as macros on
10439         mingw.)
10440
10441 2006-10-22  Bruno Haible  <bruno@clisp.org>
10442
10443         * doc/gnulib-intro.texi: New file.
10444         * doc/gnulib.texi: Include it.
10445
10446 2006-10-21  Bruno Haible  <bruno@clisp.org>
10447
10448         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
10449         "Introduction", "Miscellanous Notes", "Particular Modules".
10450
10451 2006-10-21  Bruno Haible  <bruno@clisp.org>
10452
10453         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
10454         Change mostlyclean-local rule to avoid sh syntax error from bash
10455         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
10456
10457 2006-10-23  Jim Meyering  <jim@meyering.net>
10458
10459         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
10460         in place of snprintf.
10461
10462         * modules/inttostr (Files): Add lib/uinttostr.c.
10463         * lib/uinttostr.c (inttostr): New file/function.
10464         * lib/inttostr.h (uinttostr): Declare.
10465         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
10466         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
10467         Add uinttostr.
10468         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
10469
10470 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
10471
10472         * lib/canonicalize.c (ELOOP): Define if not already defined.
10473         Problem reported by Bruno Haible in
10474         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
10475
10476 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
10477
10478         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
10479         Problem reported by Perry Smith and Ville Laurikari.
10480
10481         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
10482         uses.
10483
10484 2006-10-19  Bruno Haible  <bruno@clisp.org>
10485
10486         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
10487         for mingw.
10488
10489 2006-10-19  Bruno Haible  <bruno@clisp.org>
10490
10491         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
10492         Needed for mingw.
10493
10494 2006-10-19  Bruno Haible  <bruno@clisp.org>
10495
10496         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
10497
10498 2006-10-19  Bruno Haible  <bruno@clisp.org>
10499
10500         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
10501         it.
10502
10503 2006-10-19  Bruno Haible  <bruno@clisp.org>
10504
10505         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
10506         invocation.
10507
10508 2006-10-19  Bruno Haible  <bruno@clisp.org>
10509
10510         * gnulib-tool (func_create_testdir): Don't include ftruncate and
10511         mountlist by default.
10512
10513 2006-10-16  Bruno Haible  <bruno@clisp.org>
10514
10515         * lib/c-strstr.c: Include c-strstr.h.
10516
10517 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
10518
10519         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
10520         in a slash.
10521
10522 2006-10-18  Bruno Haible  <bruno@clisp.org>
10523
10524         * lib/lock.h [C++]: Wrap definitions in extern "C".
10525
10526 2006-10-18  Bruno Haible  <bruno@clisp.org>
10527
10528         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
10529         gl_LIBOBJS list.
10530
10531 2006-10-18  Bruno Haible  <bruno@clisp.org>
10532
10533         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
10534
10535 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
10536
10537         * lib/xstrtol.h: Include gettext.h.
10538         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
10539         Problem reported by Eric Blake.
10540         * modules/xstrtol (Depends-on): Add gettext-h.
10541
10542 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
10543
10544         * lib/strftime.c (advance): New macro.
10545         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
10546         incomplete type, so you can't add 0 to it.  Problem and patch
10547         reported by Eelco Dolstra for dietlibc.
10548
10549 2006-10-18  Jim Meyering  <jim@meyering.net>
10550
10551         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
10552         type for a local, and rename it: s/up/user_proc/.
10553
10554 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
10555
10556         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
10557         READ_UTMP_USER_PROCESS.
10558         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
10559
10560 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
10561
10562         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
10563         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
10564
10565 2006-10-17  Eric Blake  <ebb9@byu.net>
10566
10567         * lib/sigprocmask.c (sigprocmask): Fix typo.
10568
10569         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
10570
10571         * modules/clean-temp (Makefile.am): Don't add to make output...
10572         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
10573         config.h.
10574
10575 2006-10-17  Bruno Haible  <bruno@clisp.org>
10576
10577         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
10578         differently if DEFAULT_TEXT_DOMAIN is set.
10579
10580 2006-10-16  Bruno Haible  <bruno@clisp.org>
10581
10582         * lib/clean-temp.c: Include fwriteerror.h.
10583
10584 2006-10-16  Bruno Haible  <bruno@clisp.org>
10585
10586         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
10587
10588 2006-10-16  Bruno Haible  <bruno@clisp.org>
10589
10590         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
10591         * lib/sigprocmask.h: Include <sys/types.h>.
10592         (sigset_t): Use the system's definition if present.
10593
10594 2006-10-17  Eric Blake  <ebb9@byu.net>
10595
10596         * lib/xvasprintf.c (includes): Assume config.h.
10597         * lib/xasprintf.c (includes): Likewise.
10598
10599 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
10600
10601         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
10602         at least as wide as intmax_t.
10603
10604 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
10605
10606         (Imported from Automake.)
10607         * build-aux/gnupload: Update to version 1.1 of directive file.
10608
10609 2006-10-16  Eric Blake  <ebb9@byu.net>
10610
10611         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
10612         match Automake 1.10a.
10613
10614 2006-10-14  Bruno Haible  <bruno@clisp.org>
10615
10616         * modules/sigprocmask: New file.
10617         * lib/sigprocmask.h: New file.
10618         * lib/sigprocmask.c: New file.
10619         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
10620         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
10621         request sigprocmask.o.
10622         (gl_PREREQ_SIGPROCMASK): New macro.
10623         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
10624         (Depends-on): Add sigprocmask.
10625         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
10626         gt_SIGNALBLOCKING. Test for 'raise' only once.
10627         * lib/fatal-signal.c: Include sigprocmask.h.
10628         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
10629         unblock_fatal_signals): Define always.
10630         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
10631         sigprocmask.
10632
10633 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
10634
10635         Sync from Automake.
10636         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
10637         which incorrectly sets the mode of an existing destination
10638         directory.  In some cases the unpatched install-sh could do the
10639         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
10640         system.  We hope this is rare in practice, but it's clearly worth
10641         fixing.  Problem reported by Alex Unleashed in
10642         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
10643         Also, don't bother to check for -m bugs unless we're using -m;
10644         suggested by Stepan Kasal.
10645
10646 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10647
10648         Sync from Automake.
10649         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
10650         `-c' flag, so they appear at the same position as in %FASTDEP%
10651         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
10652         which ignores unknown options only after the first non-option.
10653         Bug report against M4 by Nelson H. F. Beebe.
10654
10655 2006-10-13  Jim Meyering  <jim@meyering.net>
10656
10657         Fix a bug in yesterday's change.
10658         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
10659         p->fts_statp->st_dev would be used uninitialized.
10660         Ensures that we always call fts_stat on the very first entry.
10661         Miklos Szeredi reported that find -xdev stopped working.
10662
10663 2006-10-12  Bruno Haible  <bruno@clisp.org>
10664
10665         * gnulib-tool (func_get_automake_snippet): Append an automatically
10666         computed EXTRA_DIST augmentation.
10667         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
10668         * modules/alloca-opt (Makefile.am): Likewise.
10669         * modules/allocsa (Makefile.am): Likewise.
10670         * modules/arcfour (Makefile.am): Likewise.
10671         * modules/arctwo (Makefile.am): Likewise.
10672         * modules/argmatch (Makefile.am): Likewise.
10673         * modules/argz (Makefile.am): Likewise.
10674         * modules/atexit (Makefile.am): Likewise.
10675         * modules/backupfile (Makefile.am): Likewise.
10676         * modules/byteswap (Makefile.am): Likewise.
10677         * modules/c-strtod (Makefile.am): Likewise.
10678         * modules/c-strtold (Makefile.am): Likewise.
10679         * modules/calloc (Makefile.am): Likewise.
10680         * modules/canon-host (Makefile.am): Likewise.
10681         * modules/canonicalize (Makefile.am): Likewise.
10682         * modules/chdir-long (Makefile.am): Likewise.
10683         * modules/chdir-safer (Makefile.am): Likewise.
10684         * modules/check-version (Makefile.am): Likewise.
10685         * modules/chown (Makefile.am): Likewise.
10686         * modules/cloexec (Makefile.am): Likewise.
10687         * modules/close-stream (Makefile.am): Likewise.
10688         * modules/closeout (Makefile.am): Likewise.
10689         * modules/crc (Makefile.am): Likewise.
10690         * modules/csharpexec (Makefile.am): Likewise.
10691         * modules/cycle-check (Makefile.am): Likewise.
10692         * modules/des (Makefile.am): Likewise.
10693         * modules/dev-ino (Makefile.am): Likewise.
10694         * modules/dirfd (Makefile.am): Likewise.
10695         * modules/dirname (Makefile.am): Likewise.
10696         * modules/dup2 (Makefile.am): Likewise.
10697         * modules/eealloc (Makefile.am): Likewise.
10698         * modules/error (Makefile.am): Likewise.
10699         * modules/euidaccess (Makefile.am): Likewise.
10700         * modules/exclude (Makefile.am): Likewise.
10701         * modules/exitfail (Makefile.am): Likewise.
10702         * modules/fcntl-safer (Makefile.am): Likewise.
10703         * modules/fcntl (Makefile.am): Likewise.
10704         * modules/file-type (Makefile.am): Likewise.
10705         * modules/fileblocks (Makefile.am): Likewise.
10706         * modules/filemode (Makefile.am): Likewise.
10707         * modules/filenamecat (Makefile.am): Likewise.
10708         * modules/fnmatch (Makefile.am): Likewise.
10709         * modules/fopen-safer (Makefile.am): Likewise.
10710         * modules/fpending (Makefile.am): Likewise.
10711         * modules/fprintftime (Makefile.am): Likewise.
10712         * modules/free (Makefile.am): Likewise.
10713         * modules/fsusage (Makefile.am): Likewise.
10714         * modules/ftruncate (Makefile.am): Likewise.
10715         * modules/fts (Makefile.am): Likewise.
10716         * modules/gc-arcfour (Makefile.am): Likewise.
10717         * modules/gc-des (Makefile.am): Likewise.
10718         * modules/gc-hmac-md5 (Makefile.am): Likewise.
10719         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
10720         * modules/gc-md4 (Makefile.am): Likewise.
10721         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
10722         * modules/gc-sha1 (Makefile.am): Likewise.
10723         * modules/gc (Makefile.am): Likewise.
10724         * modules/getaddrinfo (Makefile.am): Likewise.
10725         * modules/getcwd (Makefile.am): Likewise.
10726         * modules/getdelim (Makefile.am): Likewise.
10727         * modules/getdomainname (Makefile.am): Likewise.
10728         * modules/getgroups (Makefile.am): Likewise.
10729         * modules/gethostname (Makefile.am): Likewise.
10730         * modules/gethrxtime (Makefile.am): Likewise.
10731         * modules/getline (Makefile.am): Likewise.
10732         * modules/getloadavg (Makefile.am): Likewise.
10733         * modules/getlogin_r (Makefile.am): Likewise.
10734         * modules/getndelim2 (Makefile.am): Likewise.
10735         * modules/getopt (Makefile.am): Likewise.
10736         * modules/getpagesize (Makefile.am): Likewise.
10737         * modules/getpass-gnu (Makefile.am): Likewise.
10738         * modules/getpass (Makefile.am): Likewise.
10739         * modules/getsubopt (Makefile.am): Likewise.
10740         * modules/gettime (Makefile.am): Likewise.
10741         * modules/gettimeofday (Makefile.am): Likewise.
10742         * modules/getugroups (Makefile.am): Likewise.
10743         * modules/getusershell (Makefile.am): Likewise.
10744         * modules/glob (Makefile.am): Likewise.
10745         * modules/group-member (Makefile.am): Likewise.
10746         * modules/hard-locale (Makefile.am): Likewise.
10747         * modules/hash (Makefile.am): Likewise.
10748         * modules/hmac-md5 (Makefile.am): Likewise.
10749         * modules/hmac-sha1 (Makefile.am): Likewise.
10750         * modules/human (Makefile.am): Likewise.
10751         * modules/idcache (Makefile.am): Likewise.
10752         * modules/imaxabs (Makefile.am): Likewise.
10753         * modules/imaxdiv (Makefile.am): Likewise.
10754         * modules/inet_ntop (Makefile.am): Likewise.
10755         * modules/inet_pton (Makefile.am): Likewise.
10756         * modules/intprops (Makefile.am): Likewise.
10757         * modules/inttostr (Makefile.am): Likewise.
10758         * modules/inttypes (Makefile.am): Likewise.
10759         * modules/isapipe (Makefile.am): Likewise.
10760         * modules/javaversion (Makefile.am): Likewise.
10761         * modules/lchmod (Makefile.am): Likewise.
10762         * modules/lchown (Makefile.am): Likewise.
10763         * modules/localcharset (Makefile.am): Likewise.
10764         * modules/long-options (Makefile.am): Likewise.
10765         * modules/lstat (Makefile.am): Likewise.
10766         * modules/malloc (Makefile.am): Likewise.
10767         * modules/mathl (Makefile.am): Likewise.
10768         * modules/mbchar (Makefile.am): Likewise.
10769         * modules/md2 (Makefile.am): Likewise.
10770         * modules/md4 (Makefile.am): Likewise.
10771         * modules/md5 (Makefile.am): Likewise.
10772         * modules/memcasecmp (Makefile.am): Likewise.
10773         * modules/memchr (Makefile.am): Likewise.
10774         * modules/memcmp (Makefile.am): Likewise.
10775         * modules/memcoll (Makefile.am): Likewise.
10776         * modules/memcpy (Makefile.am): Likewise.
10777         * modules/memmem (Makefile.am): Likewise.
10778         * modules/memmove (Makefile.am): Likewise.
10779         * modules/mempcpy (Makefile.am): Likewise.
10780         * modules/memrchr (Makefile.am): Likewise.
10781         * modules/memset (Makefile.am): Likewise.
10782         * modules/memxor (Makefile.am): Likewise.
10783         * modules/mkancesdirs (Makefile.am): Likewise.
10784         * modules/mkdir-p (Makefile.am): Likewise.
10785         * modules/mkdir (Makefile.am): Likewise.
10786         * modules/mkdtemp (Makefile.am): Likewise.
10787         * modules/mkstemp (Makefile.am): Likewise.
10788         * modules/mktime (Makefile.am): Likewise.
10789         * modules/modechange (Makefile.am): Likewise.
10790         * modules/mountlist (Makefile.am): Likewise.
10791         * modules/nanosleep (Makefile.am): Likewise.
10792         * modules/obstack (Makefile.am): Likewise.
10793         * modules/openat (Makefile.am): Likewise.
10794         * modules/pagealign_alloc (Makefile.am): Likewise.
10795         * modules/pathmax (Makefile.am): Likewise.
10796         * modules/physmem (Makefile.am): Likewise.
10797         * modules/poll (Makefile.am): Likewise.
10798         * modules/posixtm (Makefile.am): Likewise.
10799         * modules/posixver (Makefile.am): Likewise.
10800         * modules/putenv (Makefile.am): Likewise.
10801         * modules/quote (Makefile.am): Likewise.
10802         * modules/quotearg (Makefile.am): Likewise.
10803         * modules/raise (Makefile.am): Likewise.
10804         * modules/read-file (Makefile.am): Likewise.
10805         * modules/readline (Makefile.am): Likewise.
10806         * modules/readlink (Makefile.am): Likewise.
10807         * modules/readtokens (Makefile.am): Likewise.
10808         * modules/readutmp (Makefile.am): Likewise.
10809         * modules/realloc (Makefile.am): Likewise.
10810         * modules/regex (Makefile.am): Likewise.
10811         * modules/rename-dest-slash (Makefile.am): Likewise.
10812         * modules/rename (Makefile.am): Likewise.
10813         * modules/rijndael (Makefile.am): Likewise.
10814         * modules/rmdir (Makefile.am): Likewise.
10815         * modules/rpmatch (Makefile.am): Likewise.
10816         * modules/safe-read (Makefile.am): Likewise.
10817         * modules/safe-write (Makefile.am): Likewise.
10818         * modules/same-inode (Makefile.am): Likewise.
10819         * modules/same (Makefile.am): Likewise.
10820         * modules/save-cwd (Makefile.am): Likewise.
10821         * modules/savedir (Makefile.am): Likewise.
10822         * modules/setenv (Makefile.am): Likewise.
10823         * modules/settime (Makefile.am): Likewise.
10824         * modules/sha1 (Makefile.am): Likewise.
10825         * modules/sig2str (Makefile.am): Likewise.
10826         * modules/snprintf (Makefile.am): Likewise.
10827         * modules/stat-macros (Makefile.am): Likewise.
10828         * modules/stat-time (Makefile.am): Likewise.
10829         * modules/stdbool (Makefile.am): Likewise.
10830         * modules/stdint (Makefile.am): Likewise.
10831         * modules/stdlib-safer (Makefile.am): Likewise.
10832         * modules/stpcpy (Makefile.am): Likewise.
10833         * modules/stpncpy (Makefile.am): Likewise.
10834         * modules/strcase (Makefile.am): Likewise.
10835         * modules/strcasestr (Makefile.am): Likewise.
10836         * modules/strchrnul (Makefile.am): Likewise.
10837         * modules/strcspn (Makefile.am): Likewise.
10838         * modules/strdup (Makefile.am): Likewise.
10839         * modules/strerror (Makefile.am): Likewise.
10840         * modules/strftime (Makefile.am): Likewise.
10841         * modules/strndup (Makefile.am): Likewise.
10842         * modules/strnlen (Makefile.am): Likewise.
10843         * modules/strpbrk (Makefile.am): Likewise.
10844         * modules/strsep (Makefile.am): Likewise.
10845         * modules/strstr (Makefile.am): Likewise.
10846         * modules/strtod (Makefile.am): Likewise.
10847         * modules/strtoimax (Makefile.am): Likewise.
10848         * modules/strtok_r (Makefile.am): Likewise.
10849         * modules/strtol (Makefile.am): Likewise.
10850         * modules/strtoll (Makefile.am): Likewise.
10851         * modules/strtoul (Makefile.am): Likewise.
10852         * modules/strtoull (Makefile.am): Likewise.
10853         * modules/strtoumax (Makefile.am): Likewise.
10854         * modules/strverscmp (Makefile.am): Likewise.
10855         * modules/sys_socket (Makefile.am): Likewise.
10856         * modules/sys_stat (Makefile.am): Likewise.
10857         * modules/sysexits (Makefile.am): Likewise.
10858         * modules/time_r (Makefile.am): Likewise.
10859         * modules/timegm (Makefile.am): Likewise.
10860         * modules/timespec (Makefile.am): Likewise.
10861         * modules/tmpfile-safer (Makefile.am): Likewise.
10862         * modules/trim (Makefile.am): Likewise.
10863         * modules/unistd-safer (Makefile.am): Likewise.
10864         * modules/unlinkdir (Makefile.am): Likewise.
10865         * modules/unlocked-io (Makefile.am): Likewise.
10866         * modules/userspec (Makefile.am): Likewise.
10867         * modules/utime (Makefile.am): Likewise.
10868         * modules/utimecmp (Makefile.am): Likewise.
10869         * modules/utimens (Makefile.am): Likewise.
10870         * modules/vasnprintf (Makefile.am): Likewise.
10871         * modules/vasprintf (Makefile.am): Likewise.
10872         * modules/vsnprintf (Makefile.am): Likewise.
10873         * modules/xalloc (Makefile.am): Likewise.
10874         * modules/xgetcwd (Makefile.am): Likewise.
10875         * modules/xnanosleep (Makefile.am): Likewise.
10876         * modules/xreadlink (Makefile.am): Likewise.
10877         * modules/xstrtod (Makefile.am): Likewise.
10878         * modules/xstrtol (Makefile.am): Likewise.
10879         * modules/xstrtold (Makefile.am): Likewise.
10880         * modules/yesno (Makefile.am): Likewise.
10881         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
10882
10883 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
10884
10885         * modules/error (Makefile.am): Distribute files through
10886         EXTRA_DIST, not lib_SOURCES.
10887
10888 2006-10-12  Eric Blake  <ebb9@byu.net>
10889
10890         * modules/error (Makefile.am): Distribute files in /lib.
10891         * modules/obstack (Makefile.am): Likewise.
10892
10893 2006-10-12  Bruno Haible  <bruno@clisp.org>
10894
10895         * modules/acl (Makefile.am): Distribute all files in lib/ through
10896         EXTRA_DIST.
10897         * modules/arcfour (Makefile.am): Likewise.
10898         * modules/arctwo (Makefile.am): Likewise.
10899         * modules/argmatch (Makefile.am): Likewise.
10900         * modules/argz (Makefile.am): Likewise.
10901         * modules/atexit (Makefile.am): Likewise.
10902         * modules/backupfile (Makefile.am): Likewise.
10903         * modules/c-strtod (Makefile.am): Likewise.
10904         * modules/c-strtold (Makefile.am): Likewise.
10905         * modules/calloc (Makefile.am): Likewise.
10906         * modules/canon-host (Makefile.am): Likewise.
10907         * modules/canonicalize (Makefile.am): Likewise.
10908         * modules/chdir-long (Makefile.am): Likewise.
10909         * modules/chdir-safer (Makefile.am): Likewise.
10910         * modules/check-version (Makefile.am): Likewise.
10911         * modules/chown (Makefile.am): Likewise.
10912         * modules/cloexec (Makefile.am): Likewise.
10913         * modules/close-stream (Makefile.am): Likewise.
10914         * modules/closeout (Makefile.am): Likewise.
10915         * modules/crc (Makefile.am): Likewise.
10916         * modules/cycle-check (Makefile.am): Likewise.
10917         * modules/des (Makefile.am): Likewise.
10918         * modules/dirfd (Makefile.am): Likewise.
10919         * modules/dirname (Makefile.am): Likewise.
10920         * modules/dup2 (Makefile.am): Likewise.
10921         * modules/euidaccess (Makefile.am): Likewise.
10922         * modules/exclude (Makefile.am): Likewise.
10923         * modules/exitfail (Makefile.am): Likewise.
10924         * modules/fcntl-safer (Makefile.am): Likewise.
10925         * modules/file-type (Makefile.am): Likewise.
10926         * modules/fileblocks (Makefile.am): Likewise.
10927         * modules/filemode (Makefile.am): Likewise.
10928         * modules/filenamecat (Makefile.am): Likewise.
10929         * modules/fnmatch (Makefile.am): Likewise.
10930         * modules/fopen-safer (Makefile.am): Likewise.
10931         * modules/fpending (Makefile.am): Likewise.
10932         * modules/fprintftime (Makefile.am): Likewise.
10933         * modules/free (Makefile.am): Likewise.
10934         * modules/fsusage (Makefile.am): Likewise.
10935         * modules/ftruncate (Makefile.am): Likewise.
10936         * modules/fts (Makefile.am): Likewise.
10937         * modules/gc (Makefile.am): Likewise.
10938         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
10939         * modules/getaddrinfo (Makefile.am): Likewise.
10940         * modules/getcwd (Makefile.am): Likewise.
10941         * modules/getdelim (Makefile.am): Likewise.
10942         * modules/getdomainname (Makefile.am): Likewise.
10943         * modules/getgroups (Makefile.am): Likewise.
10944         * modules/gethostname (Makefile.am): Likewise.
10945         * modules/gethrxtime (Makefile.am): Likewise.
10946         * modules/getline (Makefile.am): Likewise.
10947         * modules/getloadavg (Makefile.am): Likewise.
10948         * modules/getlogin_r (Makefile.am): Likewise.
10949         * modules/getopt (Makefile.am): Likewise.
10950         * modules/getpass (Makefile.am): Likewise.
10951         * modules/getpass-gnu (Makefile.am): Likewise.
10952         * modules/getsubopt (Makefile.am): Likewise.
10953         * modules/gettime (Makefile.am): Likewise.
10954         * modules/gettimeofday (Makefile.am): Likewise.
10955         * modules/getugroups (Makefile.am): Likewise.
10956         * modules/getusershell (Makefile.am): Likewise.
10957         * modules/glob (Makefile.am): Likewise.
10958         * modules/group-member (Makefile.am): Likewise.
10959         * modules/hard-locale (Makefile.am): Likewise.
10960         * modules/hash (Makefile.am): Likewise.
10961         * modules/hmac-md5 (Makefile.am): Likewise.
10962         * modules/hmac-sha1 (Makefile.am): Likewise.
10963         * modules/human (Makefile.am): Likewise.
10964         * modules/idcache (Makefile.am): Likewise.
10965         * modules/imaxabs (Makefile.am): Likewise.
10966         * modules/imaxdiv (Makefile.am): Likewise.
10967         * modules/inet_ntop (Makefile.am): Likewise.
10968         * modules/inet_pton (Makefile.am): Likewise.
10969         * modules/inttostr (Makefile.am): Likewise.
10970         * modules/isapipe (Makefile.am): Likewise.
10971         * modules/lchown (Makefile.am): Likewise.
10972         * modules/long-options (Makefile.am): Likewise.
10973         * modules/lstat (Makefile.am): Likewise.
10974         * modules/malloc (Makefile.am): Likewise.
10975         * modules/mathl (Makefile.am): Likewise.
10976         * modules/mbchar (Makefile.am): Likewise.
10977         * modules/md2 (Makefile.am): Likewise.
10978         * modules/md4 (Makefile.am): Likewise.
10979         * modules/md5 (Makefile.am): Likewise.
10980         * modules/memcasecmp (Makefile.am): Likewise.
10981         * modules/memchr (Makefile.am): Likewise.
10982         * modules/memcmp (Makefile.am): Likewise.
10983         * modules/memcoll (Makefile.am): Likewise.
10984         * modules/memcpy (Makefile.am): Likewise.
10985         * modules/memmem (Makefile.am): Likewise.
10986         * modules/memmove (Makefile.am): Likewise.
10987         * modules/mempcpy (Makefile.am): Likewise.
10988         * modules/memrchr (Makefile.am): Likewise.
10989         * modules/memset (Makefile.am): Likewise.
10990         * modules/memxor (Makefile.am): Likewise.
10991         * modules/mkancesdirs (Makefile.am): Likewise.
10992         * modules/mkdir (Makefile.am): Likewise.
10993         * modules/mkdir-p (Makefile.am): Likewise.
10994         * modules/mkdtemp (Makefile.am): Likewise.
10995         * modules/mkstemp (Makefile.am): Likewise.
10996         * modules/mktime (Makefile.am): Likewise.
10997         * modules/modechange (Makefile.am): Likewise.
10998         * modules/mountlist (Makefile.am): Likewise.
10999         * modules/nanosleep (Makefile.am): Likewise.
11000         * modules/openat (Makefile.am): Likewise.
11001         * modules/pagealign_alloc (Makefile.am): Likewise.
11002         * modules/physmem (Makefile.am): Likewise.
11003         * modules/poll (Makefile.am): Likewise.
11004         * modules/posixtm (Makefile.am): Likewise.
11005         * modules/posixver (Makefile.am): Likewise.
11006         * modules/putenv (Makefile.am): Likewise.
11007         * modules/quote (Makefile.am): Likewise.
11008         * modules/quotearg (Makefile.am): Likewise.
11009         * modules/raise (Makefile.am): Likewise.
11010         * modules/read-file (Makefile.am): Likewise.
11011         * modules/readline (Makefile.am): Likewise.
11012         * modules/readlink (Makefile.am): Likewise.
11013         * modules/readtokens (Makefile.am): Likewise.
11014         * modules/readutmp (Makefile.am): Likewise.
11015         * modules/realloc (Makefile.am): Likewise.
11016         * modules/regex (Makefile.am): Likewise.
11017         * modules/rename (Makefile.am): Likewise.
11018         * modules/rename-dest-slash (Makefile.am): Likewise.
11019         * modules/rijndael (Makefile.am): Likewise.
11020         * modules/rmdir (Makefile.am): Likewise.
11021         * modules/rpmatch (Makefile.am): Likewise.
11022         * modules/safe-read (Makefile.am): Likewise.
11023         * modules/safe-write (Makefile.am): Likewise.
11024         * modules/same (Makefile.am): Likewise.
11025         * modules/save-cwd (Makefile.am): Likewise.
11026         * modules/savedir (Makefile.am): Likewise.
11027         * modules/setenv (Makefile.am): Likewise.
11028         * modules/settime (Makefile.am): Likewise.
11029         * modules/sha1 (Makefile.am): Likewise.
11030         * modules/sig2str (Makefile.am): Likewise.
11031         * modules/snprintf (Makefile.am): Likewise.
11032         * modules/stdlib-safer (Makefile.am): Likewise.
11033         * modules/stpcpy (Makefile.am): Likewise.
11034         * modules/stpncpy (Makefile.am): Likewise.
11035         * modules/strcase (Makefile.am): Likewise.
11036         * modules/strcasestr (Makefile.am): Likewise.
11037         * modules/strchrnul (Makefile.am): Likewise.
11038         * modules/strcspn (Makefile.am): Likewise.
11039         * modules/strdup (Makefile.am): Likewise.
11040         * modules/strerror (Makefile.am): Likewise.
11041         * modules/strftime (Makefile.am): Likewise.
11042         * modules/strndup (Makefile.am): Likewise.
11043         * modules/strnlen (Makefile.am): Likewise.
11044         * modules/strpbrk (Makefile.am): Likewise.
11045         * modules/strsep (Makefile.am): Likewise.
11046         * modules/strstr (Makefile.am): Likewise.
11047         * modules/strtod (Makefile.am): Likewise.
11048         * modules/strtoimax (Makefile.am): Likewise.
11049         * modules/strtok_r (Makefile.am): Likewise.
11050         * modules/strtol (Makefile.am): Likewise.
11051         * modules/strtoll (Makefile.am): Likewise.
11052         * modules/strtoul (Makefile.am): Likewise.
11053         * modules/strtoull (Makefile.am): Likewise.
11054         * modules/strtoumax (Makefile.am): Likewise.
11055         * modules/strverscmp (Makefile.am): Likewise.
11056         * modules/time_r (Makefile.am): Likewise.
11057         * modules/timegm (Makefile.am): Likewise.
11058         * modules/tmpfile-safer (Makefile.am): Likewise.
11059         * modules/unistd-safer (Makefile.am): Likewise.
11060         * modules/unlinkdir (Makefile.am): Likewise.
11061         * modules/userspec (Makefile.am): Likewise.
11062         * modules/utime (Makefile.am): Likewise.
11063         * modules/utimecmp (Makefile.am): Likewise.
11064         * modules/utimens (Makefile.am): Likewise.
11065         * modules/vasnprintf (Makefile.am): Likewise.
11066         * modules/vasprintf (Makefile.am): Likewise.
11067         * modules/vsnprintf (Makefile.am): Likewise.
11068         * modules/xalloc (Makefile.am): Likewise.
11069         * modules/xgetcwd (Makefile.am): Likewise.
11070         * modules/xnanosleep (Makefile.am): Likewise.
11071         * modules/xreadlink (Makefile.am): Likewise.
11072         * modules/xstrtod (Makefile.am): Likewise.
11073         * modules/xstrtol (Makefile.am): Likewise.
11074         * modules/xstrtold (Makefile.am): Likewise.
11075         * modules/yesno (Makefile.am): Likewise.
11076
11077 2006-10-12  Jim Meyering  <jim@meyering.net>
11078
11079         * m4/getloadavg.m4: Revert the change below.
11080
11081         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
11082         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
11083         fail with a symlink, which is what coreutils' ./bootstrap now
11084         creates by default.
11085
11086 2006-10-12  Bruno Haible  <bruno@clisp.org>
11087
11088         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
11089         mingw.
11090         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
11091         MSVC and mingw explicitly.
11092
11093 2006-10-11  Simon Josefsson  <jas@extundo.com>
11094             Bruno Haible  <bruno@clisp.org>
11095
11096         Add support for multiple gnulib-tool invocations in the scope of a
11097         single configure.ac file.
11098         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
11099         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
11100         with the same contents as the _LIBADD variable.
11101         (func_emit_initmacro_start, func_emit_initmacro_end,
11102         func_emit_initmacro_done): New functions.
11103         (func_import, func_create_testdir): Invoke them. Allow the identifiers
11104         gl_LIBOBJS and gl_LTLIBOBJS.
11105
11106 2006-10-11  Bruno Haible  <bruno@clisp.org>
11107
11108         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
11109         (func_create_testdir): Don't create po/Makefile.am, don't invoke
11110         autoreconf. Instead, invoke autopoint explicitly but move back the
11111         *.m4 files from gnulib.
11112
11113 2006-10-11  Bruno Haible  <bruno@clisp.org>
11114
11115         * gnulib-tool (func_usage): Make module names after --create-testdir
11116         optional.
11117         (func_create_testdir): If no module was specified, use nearly all
11118         modules.
11119
11120 2006-10-12  Jim Meyering  <jim@meyering.net>
11121
11122         Big performance improvement for fts-based tools that use FTS_NOSTAT.
11123         Avoid spurious inode-mismatch problems on non-POSIX file systems.
11124         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
11125         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
11126         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
11127         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
11128         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
11129         (fts_set_stat_required): New function.
11130         (fts_open): Defer the calls to fts_stat, if possible or requested.
11131         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
11132         into fts_stat itself.
11133         (fts_read): Perform any required (deferred) fts_stat call.
11134         (fts_build): Likewise, for the directory we're about to open and read.
11135         In the readdir loop, carefully decide whether each entry will require
11136         an eventual call to fts_stat, using dirent.d_type info if available.
11137         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
11138         a command line argument into this function.  Update all callers.
11139         Map a return value of FTS_DOT to FTS_D for a command line argument.
11140         * modules/fts (Depends-on): Add d-type.  Alphabetize.
11141         Thanks to Miklos Szeredi for his tenacity and for the initial
11142         bug report about "find" failing on a FUSE-based file system.
11143
11144         * lib/fts.c (fts_open): Use consistent indentation.
11145
11146 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
11147
11148         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
11149         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
11150         reported by Jim Meyering.  All uses of cache variables renamed
11151         to match Autoconf's.
11152         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
11153         the other one.
11154
11155         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
11156         Fix misspelling in diagnostic.
11157
11158 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
11159
11160         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
11161         defined.  Problem reported by Matthew Woehlke.
11162
11163         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
11164         Add support for Tandem NonStop R series.
11165         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
11166         Use new macro.
11167
11168         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
11169         (has_trailing_slash): Omit size arg; all callers changed.
11170         Omit 'inline', since it doesn't help performance and we'd
11171         need to configure it.
11172         Don't count //, ///, etc. as having a trailing slash.
11173         As a side effect, this removes a C99ism reported by Matthew Woehlke.
11174         (rpl_rename_dest_slash): On failure, use rename's errno rather
11175         than (in some cases) an incorrect or junk errno.
11176         Simplify code by removing need to compute length; this does
11177         cause it to make two passes instead of one over the file name,
11178         but it's worth it.
11179
11180         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
11181         change, since Autoconf's version may no longer be appropriate now
11182         that we are using CVS Autoconf's version.  Add support for Tandem.
11183
11184 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
11185             Bruno Haible  <bruno@clisp.org>
11186
11187         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
11188         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
11189         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
11190         gl_AC_TYPE_LONG_LONG.
11191
11192         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
11193         instead of HAVE_LONG_LONG.
11194         * lib/printf-args.c (printf_fetchargs): Likewise.
11195         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
11196         * lib/vasnprintf.c (VASNPRINTF): Likewise.
11197         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
11198         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
11199         gl_AC_TYPE_LONG_LONG.
11200
11201 2006-10-11  Bruno Haible  <bruno@clisp.org>
11202
11203         * m4/longlong.m4: Add comments.
11204         * m4/ulonglong.m4: Likewise.
11205
11206 2006-10-10  Bruno Haible  <bruno@clisp.org>
11207
11208         Make it possible to #define stpcpy, strdup to aliases.
11209         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
11210         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
11211
11212 2006-10-10  Bruno Haible  <bruno@clisp.org>
11213
11214         Make it possible to #define gcd to an alias.
11215         * lib/gcd.c: Include config.h.
11216
11217 2006-10-10  Bruno Haible  <bruno@clisp.org>
11218
11219         Make it possible to #define c_isascii to an alias.
11220         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
11221         defined. Undefine the macros before defining them, to avoid gcc
11222         warnings.
11223         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
11224         define NO_C_CTYPE_MACROS early.
11225
11226 2006-10-10  Bruno Haible  <bruno@clisp.org>
11227
11228         Make it possible to #define set_program_name to an alias.
11229         * lib/progname.c: Don't undefine set_program_name; instead, undefine
11230         ENABLE_RELOCATABLE early.
11231
11232 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
11233
11234         Port to Tandem NSK OSS, which has 64-bit signed int but at most
11235         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
11236         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
11237         More generally, don't assume that 64-bit signed int is available
11238         if unsigned int is, and vice versa.
11239         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
11240         unsigned symbols, not on their signed counterparts.
11241         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
11242         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
11243         (UINT64_C, UINTMAX_C):
11244         Likewise.
11245         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
11246         unsigned counterparts.
11247         (Have_long_long, Unsigned): New macros.
11248         (Int): Renamed from INT.
11249         (strtoimax): Use the new macros.
11250         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
11251         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
11252         * modules/inttypes (inttypes.h): Substitute
11253         HAVE_UNSIGNED_LONG_LONG_INT.
11254         * modules/stdint (stdint.h): Likewise.
11255         (Files): Add m4/ulonglong.m4.
11256
11257 2006-10-10  Bruno Haible  <bruno@clisp.org>
11258
11259         Fix a gcc -Wshadow warning.
11260         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
11261         to 'bucket'.
11262         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
11263         gl_linked_indexof_from_to): Likewise.
11264         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
11265         Likewise.
11266         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
11267         Likewise.
11268         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
11269         Reported by Eric Blake.
11270
11271 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
11272
11273         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
11274         for NetBSD.  Problem reported by Bruno Haible.
11275
11276 2006-10-09  Jim Meyering  <jim@meyering.net>
11277
11278         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
11279         Patch from Bruno Haible.
11280
11281 2006-10-09  Jim Meyering  <jim@meyering.net>
11282
11283         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
11284         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
11285         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
11286
11287 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
11288
11289         Don't include <config.h> twice; this doesn't work in some cases,
11290         e.g., when config.h has "#define intmax_t long long int" and
11291         we include <config.h>, <inttypes.h>, <config.h> in that order.
11292         Problem reported by Matthew Woehlke in:
11293         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
11294         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
11295         * lib/fts-cycle.c: Don't include config.h.
11296         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
11297         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
11298         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
11299         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
11300         inttypes.h.
11301         * lib/xstrtoumax.c: Likewise.
11302         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
11303         __strtol and the like, so that this module is more like its siblings.
11304         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
11305         Remove; no longer needed now that we assume gnulib inttypes.h.
11306
11307 2006-10-08  Bruno Haible  <bruno@clisp.org>
11308
11309         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
11310         option.
11311
11312 2006-10-07  Jim Meyering  <jim@meyering.net>
11313
11314         * modules/inttypes (inttypes.h): Revert what seems to have been
11315         an inadvertent part of today's change: use "|", not "/" in the
11316         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
11317
11318 2006-10-07  Bruno Haible  <bruno@clisp.org>
11319
11320         * modules/sublist: New file.
11321
11322 2006-10-07  Bruno Haible  <bruno@clisp.org>
11323
11324         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
11325         * modules/argz (argz.h): Likewise.
11326         * modules/arpa_inet (arpa/inet.h): Likewise.
11327         * modules/byteswap (byteswap.h): Likewise.
11328         * modules/configmake (configmake.h): Likewise.
11329         * modules/fcntl (fcntl.h): Likewise.
11330         * modules/fnmatch (fnmatch.h): Likewise.
11331         * modules/getopt (getopt.h): Likewise.
11332         * modules/glob (glob.h): Likewise.
11333         * modules/inttypes (inttypes.h): Likewise.
11334         * modules/netinet_in (netinet/in.h): Likewise.
11335         * modules/poll (poll.h): Likewise.
11336         * modules/stdbool (stdbool.h): Likewise.
11337         * modules/stdint (stdint.h): Likewise.
11338         * modules/sys_select (sys/select.h): Likewise.
11339         * modules/sys_socket (sys/socket.h): Likewise.
11340         * modules/sys_stat (sys/stat.h): Likewise.
11341         * modules/sysexits (sysexits.h): Likewise.
11342         * modules/unistd (unistd.h): Likewise.
11343         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
11344         Add a "DO NOT EDIT" comment to the generated file.
11345         (func_import): Likewise for gnulib-comp.m4.
11346
11347 2006-10-07  Bruno Haible  <bruno@clisp.org>
11348
11349         * lib/gl_sublist.h: New file.
11350         * lib/gl_sublist.c: New file.
11351
11352 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
11353
11354         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
11355         name (relative to the original working directory) and the file
11356         name component (relative to the temporary working directory).  All
11357         callers changed.
11358         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
11359         * lib/mkdir-p.c (make_dir_parents): Likewise.
11360         * lib/mkdir-p.h (make_dir_parents): Likewise.
11361
11362 2006-10-06  Eric Blake  <ebb9@byu.net>
11363
11364         Define several macros for use by the clean-temp module.
11365         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
11366         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
11367         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
11368
11369         * lib/clean-temp.h (close_stream_temp): New declaration.
11370         * lib/clean-temp.c (includes): Pull in headers according to what
11371         other modules are in use.
11372         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
11373
11374 2006-10-06  Bruno Haible  <bruno@clisp.org>
11375
11376         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
11377         instead of fopen, fwriteerror.
11378
11379 2006-10-06  Bruno Haible  <bruno@clisp.org>
11380
11381         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
11382         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
11383         int.
11384         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
11385         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
11386         Return an error indicator.
11387         Suggested by Eric Blake.
11388
11389 2006-10-06  Bruno Haible  <bruno@clisp.org>
11390
11391         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
11392         Reported by Eric Blake.
11393
11394 2006-10-06  Bruno Haible  <bruno@clisp.org>
11395
11396         * modules/closeout (Description): Mention stderr too.
11397
11398 2006-10-06  Bruno Haible  <bruno@clisp.org>
11399         and Paul Eggert  <eggert@cs.ucla.edu>
11400
11401         * lib/closeout.c (close_stdout): Also close stderr.
11402         * lib/closeout.h: Update comment.
11403
11404 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
11405
11406         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
11407         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
11408         * lib/dirchownmod.c: Include lchown.h.
11409         * lib/lchown.c: Don't include files that lchown.h now includes.
11410         Don't declare chown, since lchown.h now does that.
11411         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
11412         (lchown): Define to rpl_chown if lchown is declared but
11413         does not exist.  Declare using a prototype if lchown is not
11414         declared.  Add a copyright notice.
11415         * lib/mkstemp.h: Include <unistd.h>.
11416         * lib/openat.c: Include lchown.h.
11417
11418         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
11419         we now test for that separately.
11420         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
11421         rather than O_NOFOLLOW, when testing whether it's possible to
11422         avoid a race condition reliably.
11423         * lib/savewd.c (savewd_chdir): Likewise.
11424
11425         Remove macros that are no longer needed now that stdint.h is
11426         reliable.
11427         * lib/fsusage.c (UINTMAX_MAX): Remove.
11428         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
11429         * lib/utimecmp.c (SIZE_MAX): Remove.
11430
11431         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
11432
11433         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
11434         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
11435         O_NOATIME works.
11436
11437 2006-10-05  Bruno Haible  <bruno@clisp.org>
11438
11439         * lib/gl_list.h (gl_sortedlist_search_from_to,
11440         gl_sortedlist_indexof_from_to): New declarations.
11441         (gl_list_implementation): New fields sortedlist_search_from_to,
11442         sortedlist_indexof_from_to.
11443         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
11444         inline functions.
11445         * lib/gl_list.c (gl_sortedlist_search_from_to,
11446         gl_sortedlist_indexof_from_to): New functions.
11447         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
11448         function.
11449         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
11450         (gl_array_sortedlist_search_from_to): New function.
11451         (gl_array_list_implementation): Update.
11452         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
11453         function.
11454         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
11455         (gl_carray_sortedlist_search_from_to): New function.
11456         (gl_carray_list_implementation): Update.
11457         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
11458         gl_linked_sortedlist_indexof_from_to): New functions.
11459         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
11460         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
11461         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
11462         gl_tree_sortedlist_indexof_from_to): New functions.
11463         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
11464         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
11465         Update.
11466         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
11467         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
11468         Update.
11469
11470 2006-10-05  Bruno Haible  <bruno@clisp.org>
11471
11472         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
11473         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
11474         (struct gl_list_implementation): Add fields search_from_to,
11475         indexof_from_to. Remove fields search, indexof.
11476         (gl_list_search): Use the search_from_to method.
11477         (gl_list_search_from, gl_list_search_from_to): New functions.
11478         (gl_list_indexof): Use the indexof_from_to method.
11479         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
11480         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
11481         (gl_list_search_from, gl_list_search_from_to): New functions.
11482         (gl_list_indexof): Use the indexof_from_to method.
11483         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
11484         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
11485         gl_array_indexof. Add start_index, end_index arguments.
11486         (gl_array_search_from_to): Renamed from gl_array_search. Add
11487         start_index, end_index arguments.
11488         (gl_array_remove, gl_array_list_implementation): Update.
11489         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
11490         gl_carray_indexof. Add start_index, end_index arguments.
11491         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
11492         start_index, end_index arguments.
11493         (gl_carray_remove, gl_carray_list_implementation): Update.
11494         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
11495         gl_linked_search. Add start_index, end_index arguments.
11496         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
11497         start_index, end_index arguments.
11498         (gl_linked_remove): Update.
11499         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
11500         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
11501         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
11502         field to 'size_t'.
11503         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
11504         gl_tree_search. Add start_index, end_index arguments.
11505         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
11506         start_index, end_index arguments.
11507         (gl_tree_remove): Update.
11508         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
11509         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
11510         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
11511         function.
11512         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
11513         gl_tree_search. Add start_index, end_index arguments.
11514         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
11515         start_index, end_index arguments.
11516         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
11517         Update.
11518         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
11519
11520 2006-10-05  Bruno Haible  <bruno@clisp.org>
11521
11522         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
11523
11524         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
11525         fwriteerror_temp): New declarations.
11526         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
11527         (descriptors): New variable.
11528         (cleanup): First, close the descriptors.
11529         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
11530         fclose_temp, fwriteerror_temp): New functions.
11531
11532 2006-10-04  Jim Meyering  <jim@meyering.net>
11533
11534         * lib/fts.c (fts_open): Tiny comment change.
11535
11536 2006-10-04  Bruno Haible  <bruno@clisp.org>
11537
11538         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
11539         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
11540         gl_LOCK_BODY.
11541         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
11542         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
11543         gl_LOCK_EARLY_BODY.
11544         (gl_LOCK): Require gl_LOCK_BODY.
11545
11546 2006-10-04  Bruno Haible  <bruno@clisp.org>
11547
11548         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
11549         (gl_oset_search_atleast): New declaration.
11550         (struct gl_oset_implementation): Add field 'search_atleast'.
11551         (gl_oset_search_atleast): New inline function.
11552         * lib/gl_oset.c (gl_oset_search_atleast): New function.
11553         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
11554         (gl_array_oset_implementation): Update.
11555         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
11556         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
11557         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
11558
11559 2006-10-04  Bruno Haible  <bruno@clisp.org>
11560
11561         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
11562
11563 2006-10-03  Bruno Haible  <bruno@clisp.org>
11564
11565         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
11566         from gl_avltreehash_list_implementation.
11567
11568 2006-10-03  Bruno Haible  <bruno@clisp.org>
11569
11570         * lib/gl_oset.c (gl_oset_add): Fix return type.
11571
11572 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
11573
11574         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
11575
11576 2006-10-02  Eric Blake  <ebb9@byu.net>
11577
11578         * modules/strnlen (Depends-on): Add extensions.
11579
11580 2006-10-02  Eric Blake  <ebb9@byu.net>
11581
11582         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
11583         definition in 2.60+.
11584
11585 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
11586
11587         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
11588         checks.
11589
11590 2006-10-02  Bruno Haible  <bruno@clisp.org>
11591
11592         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
11593         to the AUTOMAKE_OPTIONS.
11594         Reported by Jim Meyering.
11595
11596 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
11597
11598         Work around bug in Solaris 10 /proc file system:
11599         /proc/self/fd/NNN/.. isn't the parent directory of
11600         the directory whose file descriptor is NNN.  This needs to
11601         be worked around at run time, not compile time, since a
11602         program might be built on Solaris 8, where things work, and
11603         run on Solaris 10.
11604         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
11605         to use the following interface instead:
11606         (OPENAT_BUFFER_SIZE): New macro.
11607         (openat_proc_name): New function.
11608         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
11609         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
11610         Likewise.
11611         * lib/openat-proc.c: New file.
11612         * modules/openat (Files): Add lib/openat-proc.c.
11613         (Depends-on): Add same-inode, stdbool.
11614         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
11615
11616 2006-09-29  Bruno Haible  <bruno@clisp.org>
11617
11618         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
11619         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
11620         argument. Set stdout_closed before testing for ferror, not after.
11621         (fwriteerror, fwriteerror_no_ebadf): New functions.
11622
11623 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11624
11625         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
11626
11627 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
11628
11629         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
11630         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
11631
11632 2006-09-28  Jim Meyering  <jim@meyering.net>
11633
11634         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
11635         Include <unistd.h>.
11636
11637 2006-09-28  Bruno Haible  <bruno@clisp.org>
11638
11639         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
11640         * modules/linkedhash-list (Depends-on): Likewise.
11641         * modules/rbtreehash-list (Depends-on): Likewise.
11642
11643 2006-09-28  Bruno Haible  <bruno@clisp.org>
11644
11645         * lib/strndup.h: Simplify the redefinition of strndup.
11646         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
11647         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
11648
11649 2006-09-28  Bruno Haible  <bruno@clisp.org>
11650
11651         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
11652         * lib/gl_linkedhash_list.c: Likewise.
11653         * lib/gl_rbtreehash_list.c: Likewise.
11654
11655 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
11656
11657         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
11658         getaddrinfo.
11659
11660         * lib/__fpending.h: Don't include <stdio_ext.h> unless
11661         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
11662         it causes <stdio_ext.h> to cause a compile-time error.
11663         Problem reported by Nelson H. F. Beebe.
11664         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
11665         of HAVE_DECL___PENDING.
11666
11667         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
11668         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
11669         declaration.
11670
11671 2006-09-27  Jim Meyering  <jim@meyering.net>
11672
11673         This file could end up with a definition for a function
11674         named __strndup, rather than rpl_strndup on a system with
11675         incomplete weak_alias support.
11676         * lib/strndup.c (strndup): Rename from __strndup.
11677         Remove #defines that used to map __strndup to strndup.
11678         Don't use K&R prototypes.
11679         Remove LIBC-related code, since this file is not sync'd with glibc.
11680         * lib/strndup.h: Revamp, accordingly.
11681         * m4/strndup.m4: Modernize.
11682
11683 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
11684
11685         * modules/savewd (Depends-on): Add 'raise'.
11686         * lib/savewd.c: Include <signal.h>, for 'raise'.
11687
11688 2006-09-26  Jim Meyering  <jim@meyering.net>
11689
11690         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
11691         when we detect Darwin 8.7.0's acl_get_file bug.
11692         Rearrange to perform the new (below) run-test while $LIBS
11693         contains any acl-related library.  Set USE_ACL at the end.
11694         (gl_ACL_GET_FILE): New function.
11695
11696 2006-09-26  Eric Blake  <ebb9@byu.net>
11697
11698         * lib/verror.c: Include <config.h> unconditionally.
11699
11700 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
11701
11702         * modules/clock-time (Maintainer): Add self.
11703         * modules/getlogin_r (Depends-on): Add extensions.
11704
11705 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11706
11707         * modules/clock-time: New module.
11708         * modules/nanosleep (Depends-on): Add clock-time.
11709         * modules/gethrxtime (Depends-on): Likewise.
11710         * modules/gettime (Depends-on): Likewise.
11711         * modules/settime (Depends-on): Likewise.
11712
11713         * modules/fts-lgpl: Depend on openat.
11714         * modules/mkancesdirs: Depend on savewd.
11715         * modules/mkdir-p: Likewise.
11716
11717 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11718
11719         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
11720
11721         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
11722         `gl_have_arbitrary_file_name_length_limit' to
11723         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
11724         actually works between configure runs.
11725
11726 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11727             Bruno Haible  <bruno@clisp.org>
11728
11729         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
11730
11731 2006-09-25  Jim Meyering  <jim@meyering.net>
11732
11733         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
11734         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
11735
11736 2006-09-25  Eric Blake  <ebb9@byu.net>
11737
11738         * gnulib-tool (func_import, func_create_testdir): Fix typos in
11739         exec's in 2006-09-18 patch when shuffling fds.
11740
11741 2006-09-25  Bruno Haible  <bruno@clisp.org>
11742
11743         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
11744         Reported by Jim Meyering.
11745
11746 2006-09-24  Jim Meyering  <jim@meyering.net>
11747
11748         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
11749         compare a pointer against a literal "0".  That caused failures with
11750         at least HP-UX's hpcc.
11751
11752 2006-09-22  Simon Josefsson  <jas@extundo.com>
11753
11754         * modules/gc-sha1:
11755         * modules/gc-md4:
11756         * modules/gc-hmac-sha1:
11757         * modules/gc-hmac-md5:
11758         * modules/gc-des:
11759         * modules/gc-arcfour: Distribute more files.
11760
11761 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11762
11763         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
11764         (gl_linked_iterator_from_to): Initialize struct completely.
11765         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
11766         (gl_tree_iterator_from_to): Likewise
11767         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
11768         * lib/gl_array_list.c [lint] (gl_array_iterator)
11769         (gl_array_iterator_from_to): Likewise.
11770         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
11771         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
11772         (gl_carray_iterator_from_to): Likewise.
11773
11774         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
11775         * lib/md4.c (md4_process_block): Remove unused variable.
11776         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
11777         parentheses for clarity.
11778
11779 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11780
11781         * modules/bison-i18n (Depends-on): Add gettext.
11782
11783 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11784
11785         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
11786         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
11787         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
11788         also add missing comma that caused broken test.
11789         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
11790         stdlib.h, for `abort'.
11791         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
11792         variables.
11793         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
11794         include unistd.h if present, for `rmdir'.
11795         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
11796         variables.
11797         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
11798         in the process include standard headers for prototypes.
11799         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
11800         gets declared on GNU/Linux.
11801         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
11802         unistd.h, for `rmdir'.
11803         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
11804
11805         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
11806         always true.
11807         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
11808
11809         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
11810
11811 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11812
11813         * gnulib-tool (func_version): Create output all at once.  This
11814         may help avoid triggering unnecessary SIGPIPEs, and at any
11815         rate it doesn't hurt.
11816
11817 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11818             Bruno Haible  <bruno@clisp.org>
11819
11820         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
11821         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
11822         * m4/signed.m4 (bh_C_SIGNED): Likewise.
11823
11824         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
11825         (gl_FUNC_VASPRINTF): Invoke it.
11826
11827 2006-09-22  Bruno Haible  <bruno@clisp.org>
11828
11829         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
11830         getloadavg.c as first argument.
11831
11832 2006-09-22  Bruno Haible  <bruno@clisp.org>
11833
11834         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
11835         at the beginning of the gl_INIT macro.
11836         * modules/getloadavg (configure.ac): Pass $gl_source_base to
11837         gl_GETLOADAVG.
11838
11839 2006-09-22  Bruno Haible  <bruno@clisp.org>
11840
11841         * gnulib-tool (func_create_megatestdir): Don't include the config-h
11842         module.
11843         Suggested by Ralf Wildenhues.
11844
11845 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
11846
11847         Import this patch from libc:
11848
11849         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
11850
11851         * lib/regex_internal.c (re_string_reconstruct): Handle
11852         offset < pstr->valid_raw_len && pstr->offsets_needed case.
11853         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
11854         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
11855         re_string_context_at.
11856
11857         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
11858         now requires it.
11859         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
11860         gl_REGEX now does it for us.
11861         (gl_REGEX): Add test taken from
11862         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
11863
11864         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
11865         Check that large offsets work.  Modernize Autoconf usages.
11866         Prefer "yes" to mean a good thing rather than a bad.
11867         Don't put "#define mkstemp" in config.h, as this might interfere
11868         with standard system headers that "#define mkstemp mkstemp64".
11869
11870         * modules/mkstemp (Depends-on): Add extensions, so that
11871         mkstemp is visible on some platforms.
11872         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
11873         (Include): Change to "mkstemp.h" from <stdlib.h>.
11874         (Files): Add mkstemp.h.
11875
11876         * lib/mkstemp.h: New file, since some standard headers
11877         #define mkstemp.
11878         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
11879         Include "mkstemp.h".
11880         Make the _LIBC code resemble glibc original more,
11881         e.g., use K&R style.
11882         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
11883         (mkstemp): Remove, since mkstemp.h does this for us.
11884         * lib/stdlib--.h: Include mkstemp.h.
11885
11886         Import this patch from libc:
11887
11888         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
11889
11890         * lib/tempname.c (__gen_tempname): Change attempts_min
11891         into a macro.  Use preprocessor to decide how to initialize
11892         attempts [Coverity CID 67].
11893
11894 2006-09-20  Bruno Haible  <bruno@clisp.org>
11895
11896         * lib/mkdtemp.c: Import from libc.
11897         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
11898                 * sysdeps/posix/tempname.c (__gen_tempname): Change
11899                 attempts_min into a macro.  Use preprocessor to decide how to
11900                 initialize attempts [Coverity CID 67].
11901         2001-11-27  Paul Eggert  <eggert@twinsun.com>
11902                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
11903                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
11904
11905 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11906
11907         * gnulib-tool (func_exit): New function, to allow to pass the
11908         exit status portably through the trap.  Use everywhere.
11909         (--help, --version): Signal a write error.
11910         (trap): catch SIGPIPE, for write errors.
11911         Exit at the end of the trap, with the correct exit status.
11912
11913 2006-09-19  Karl Berry  <karl@gnu.org>
11914
11915         * doc/gnulib.texi: note about the license texinfo files.
11916
11917 2006-09-19  Eric Blake  <ebb9@byu.net>
11918
11919         * gnulib-tool: Avoid space-tab.
11920
11921 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
11922
11923         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
11924         that prevented coreutils 6.1 from building.  Problem reported
11925         by Petter Reinholdtsen.
11926
11927 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
11928
11929         * gnulib-tool (avoidlist): Fix typo that broke options like
11930         --avoid=lock that are used by coreutils bootstrap.
11931
11932 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
11933
11934         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
11935         more systematically.
11936
11937 2006-09-18  Jim Meyering  <jim@meyering.net>
11938
11939         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
11940
11941 2006-09-18  Bruno Haible  <bruno@clisp.org>
11942
11943         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
11944
11945 2006-09-18  Bruno Haible  <bruno@clisp.org>
11946
11947         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
11948         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
11949         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
11950         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
11951         * m4/gettext.m4: Require autoconf >= 2.52.
11952         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
11953         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
11954         of gl_cv_header_inttypes_h.
11955
11956 2006-09-18  Bruno Haible  <bruno@clisp.org>
11957
11958         * lib/javaversion.c: Include configmake.h.
11959
11960 2006-09-18  Bruno Haible  <bruno@clisp.org>
11961
11962         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
11963         avoid that the while loops be executed in a subshell.
11964
11965 2006-09-18  Bruno Haible  <bruno@clisp.org>
11966
11967         * MODULES.html.sh (func_module): Break long lines.
11968         Suggested by Bruce Korb <bkorb@gnu.org>.
11969
11970 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11971
11972         Speed up by a factor of 1.12.
11973         * gnulib-tool (nl): New variable.
11974         (func_import): Rewrite include directive extraction to only read each
11975         directive once.
11976
11977 2006-09-17  Bruno Haible  <bruno@clisp.org>
11978
11979         * modules/javaversion (Makefile.am): Remove DEFS setting.
11980         (Depends-on): Add configmake, for PKGDATADIR definition.
11981
11982 2006-09-17  Bruno Haible  <bruno@clisp.org>
11983
11984         * gnulib-tool (func_create_testdir): Rewrite all files at once.
11985
11986 2006-09-17  Bruno Haible  <bruno@clisp.org>
11987
11988         * gnulib-tool (func_append): New function, stolen from libtool.m4.
11989         (func_modules_transitive_closure, func_modules_add_dummy,
11990         func_modules_to_filelist, func_import, func_create_testdir,
11991         func_create_megatestdir, ...): Use it wherever possible.
11992         Suggested by Ralf Wildenhues.
11993
11994 2006-09-16  Karl Berry  <karl@gnu.org>
11995
11996         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
11997         to avoid sectioning errors.
11998         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
11999         [ifinfo]: blank line after @center-ed titles.
12000         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
12001         Spell FSF address consistently with others.
12002         (These changes approved by rms.)
12003
12004 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12005
12006         Speed up by a factor of 1.61.
12007         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
12008         already checked module names again.
12009
12010 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12011
12012         Speed up by a factor of 1.13.
12013         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
12014         for new_files, and the input to func_add_or_update.
12015
12016 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12017
12018         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
12019         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
12020
12021 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12022
12023         * modules/mkancesdirs (Depends-on): Add fcntl.
12024         * modules/savewd: New file.
12025         * MODULES.html.sh (File system functions): Add savewd.
12026
12027         * modules/configmake (Makefile.am): Add support for the
12028         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
12029
12030 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12031
12032         * m4/savewd.m4: New file.
12033
12034 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
12035
12036         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
12037         (dirchownmod): New arg FD.  All callers changed.
12038         Use FD rather than opening the directory ourself, as opening is
12039         now the caller's responsibility.
12040         * lib/dirchownmod.h: Likewise.
12041         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
12042         hosts that require <sys/types.h> before <sys/stat.h>.  Include
12043         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
12044         (test_dir): Remove.
12045         (mkancesdirs): Return length of prefix of FILE that has already
12046         been made, or -2 if there is a child doing the work.  Redo
12047         algorithm so that it is O(N) rather than O(N**2).  Optimize away
12048         ".", and treat ".." specially since it might stray back into
12049         already-created areas.  Use a subprocess if necessary.  New arg
12050         WD; all users changed.  MAKE_DIR function should now return 1
12051         if it creates a directory that is not readable.  Return -2 if
12052         a child process is spun off.
12053         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
12054         Adjust signature to match code.
12055         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
12056         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
12057         all users changed.
12058         * lib/savewd.c, lib/savewd.h: New files.
12059
12060 2006-09-15  Jim Meyering  <jim@meyering.net>
12061
12062         * modules/rename-dest-slash: New module.
12063         * MODULES.html.sh (posix_compat): Add it here.
12064
12065         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
12066
12067 2006-09-15  Jim Meyering  <jim@meyering.net>
12068
12069         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
12070         file.
12071
12072         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
12073
12074 2006-09-15  Jim Meyering  <jim@meyering.net>
12075
12076         * lib/rename-dest-slash.c (has_trailing_slash): Use
12077         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
12078         (rpl_rename_dest_slash): Perform the cheaper trailing slash
12079         test before testing whether SRC is a directory.
12080         Suggestions from Bruno Haible.
12081
12082         Avoid a warning about an unused variable.
12083         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
12084         into the #ifdef block where it's used.
12085
12086         * lib/rename-dest-slash.c: New file.
12087
12088 2006-09-14  Bruno Haible  <bruno@clisp.org>
12089
12090         * lib/allocsa.c: Include <config.h> unconditionally.
12091         * lib/asnprintf.c: Likewise.
12092         * lib/asprintf.c: Likewise.
12093         * lib/c-strcasecmp.c: Likewise.
12094         * lib/c-strcasestr.c: Likewise.
12095         * lib/c-strncasecmp.c: Likewise.
12096         * lib/c-strstr.c: Likewise.
12097         * lib/classpath.c: Likewise.
12098         * lib/clean-temp.c: Likewise.
12099         * lib/concatpath.c: Likewise.
12100         * lib/copy-file.c: Likewise.
12101         * lib/csharpcomp.c: Likewise.
12102         * lib/csharpexec.c: Likewise.
12103         * lib/execute.c: Likewise.
12104         * lib/fatal-signal.c: Likewise.
12105         * lib/findprog.c: Likewise.
12106         * lib/fwriteerror.c: Likewise.
12107         * lib/gl_array_list.c: Likewise.
12108         * lib/gl_array_oset.c: Likewise.
12109         * lib/gl_avltree_list.c: Likewise.
12110         * lib/gl_avltree_oset.c: Likewise.
12111         * lib/gl_avltreehash_list.c: Likewise.
12112         * lib/gl_carray_list.c: Likewise.
12113         * lib/gl_linked_list.c: Likewise.
12114         * lib/gl_linkedhash_list.c: Likewise.
12115         * lib/gl_list.c: Likewise.
12116         * lib/gl_oset.c: Likewise.
12117         * lib/gl_rbtree_list.c: Likewise.
12118         * lib/gl_rbtree_oset.c: Likewise.
12119         * lib/gl_rbtreehash_list.c: Likewise.
12120         * lib/imaxabs.c: Likewise.
12121         * lib/imaxdiv.c: Likewise.
12122         * lib/javacomp.c: Likewise.
12123         * lib/javaexec.c: Likewise.
12124         * lib/javaversion.c: Likewise.
12125         * lib/linebreak.c: Likewise.
12126         * lib/localcharset.c: Likewise.
12127         * lib/lock.c: Likewise.
12128         * lib/mbchar.c: Likewise.
12129         * lib/mbswidth.c: Likewise.
12130         * lib/mkdtemp.c: Likewise.
12131         * lib/pipe.c: Likewise.
12132         * lib/printf-args.c: Likewise.
12133         * lib/printf-parse.c: Likewise.
12134         * lib/progname.c: Likewise.
12135         * lib/progreloc.c: Likewise.
12136         * lib/readlink.c: Likewise.
12137         * lib/sh-quote.c: Likewise.
12138         * lib/stpcpy.c: Likewise.
12139         * lib/stpncpy.c: Likewise.
12140         * lib/strcasecmp.c: Likewise.
12141         * lib/strcasestr.c: Likewise.
12142         * lib/strcspn.c: Likewise.
12143         * lib/striconv.c: Likewise.
12144         * lib/strncasecmp.c: Likewise.
12145         * lib/strnlen1.c: Likewise.
12146         * lib/strstr.c: Likewise.
12147         * lib/strtok_r.c: Likewise.
12148         * lib/tls.c: Likewise.
12149         * lib/tmpdir.c: Likewise.
12150         * lib/unicodeio.c: Likewise.
12151         * lib/unsetenv.c: Likewise.
12152         * lib/vasnprintf.c: Likewise.
12153         * lib/vasprintf.c: Likewise.
12154         * lib/wait-process.c: Likewise.
12155         * lib/xallocsa.c: Likewise.
12156         * lib/xsetenv.c: Likewise.
12157         * lib/xstriconv.c: Likewise.
12158
12159 2006-09-13  Simon Josefsson  <jas@extundo.com>
12160
12161         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
12162         that internally, suggested by Ralf Wildenhues
12163         <Ralf.Wildenhues@gmx.de>.
12164
12165 2006-09-13  Simon Josefsson  <jas@extundo.com>
12166
12167         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
12168         @LIBOBJS@.
12169         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
12170
12171 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
12172
12173         * lib/_fpending.c: Include <config.h> unconditionally, since we no
12174         longer worry about uses that don't define HAVE_CONFIG_H.
12175         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
12176         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
12177         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
12178         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
12179         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
12180         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
12181         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
12182         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
12183         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
12184         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
12185         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
12186         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
12187         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
12188         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
12189         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
12190         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
12191         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
12192         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
12193         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
12194         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
12195         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
12196         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
12197         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
12198         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
12199         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
12200         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
12201         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
12202         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
12203         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
12204         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
12205         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
12206         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
12207         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
12208         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
12209         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
12210         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
12211         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
12212         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
12213         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
12214         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
12215         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
12216         Likewise.
12217
12218 2006-09-13  Eric Blake  <ebb9@byu.net>
12219
12220         * lib/getopt.c: Fix typo in last commit.
12221
12222 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
12223
12224         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
12225         dgettext.
12226
12227 2006-09-12  Jim Meyering  <jim@meyering.net>
12228
12229         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
12230         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
12231         Reported by Nelson H. F. Beebe.
12232
12233 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
12234
12235         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
12236         program_invocation_name and program_invocation_short_name are
12237         initialized.
12238         * lib/argp-namefrob.h: Move declarations of program_invocation_name
12239         and program_invocation_short_name to argp.h, so they are visible
12240         to user programs.
12241         * lib/argp.h: Likewise
12242
12243 2006-09-10  Bruno Haible  <bruno@clisp.org>
12244
12245         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
12246         m4/inttypes_h.m4, m4/uintmax_t.m4.
12247
12248 2006-09-10  Bruno Haible  <bruno@clisp.org>
12249
12250         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
12251         gl_AC_TYPE_UINTMAX_T.
12252
12253 2006-09-10  Bruno Haible  <bruno@clisp.org>
12254
12255         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
12256
12257 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
12258
12259         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
12260         convention.  Text proposed by Bruno Haible.
12261         (struct argp_option): Document the use of N_() wrappers.
12262
12263         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
12264         '\v', and translate the two parts separately, instead of feeding
12265         the whole string to gettext.  This allows to exclude
12266         '\v' from the strings visible to the translator by writing doc
12267         strings as N_("..") "\v" N_("..").
12268
12269 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
12270
12271         * config/srclist.txt: Undo latest change; the bug was fixed.
12272
12273 2006-09-09  Bruno Haible  <bruno@clisp.org>
12274
12275         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
12276         assignments if building a library without libtool.
12277         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
12278         in func_emit_lib_Makefile_am.
12279         (func_import): When building a static library libfoo.a, arrange to
12280         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
12281         (func_create_testdir): Likewise.
12282         * modules/gc (configure.ac, Makefile.am): If building statically,
12283         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
12284         * modules/iconvme (configure.ac, Makefile.am): Likewise.
12285         * modules/striconv (configure.ac, Makefile.am): Likewise.
12286         Based on a suggestion by Ralf Wildenhues.
12287
12288 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
12289
12290         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
12291         Check for unistd.h too, since Autoconf doesn't assume POSIX.
12292         Also:
12293
12294         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
12295         Add year_2050_test to catch glibc bug 2821
12296         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
12297
12298         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
12299         Prefer #ifdef to #if.
12300
12301         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
12302         Return from 'main' instead of calling 'exit'.
12303
12304 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
12305
12306         * lib/mktime.c (guess_time_tm): Fix bug where mktime
12307         returned the maximum time_t value rather than (time_t) -1.
12308         Problem originally reported by William Bardwell
12309         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
12310
12311         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
12312         Moved to here ...
12313         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
12314         ... from here.
12315
12316 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
12317
12318         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
12319         2821 is fixed.
12320
12321 2006-09-08  Jim Meyering  <jim@meyering.net>
12322
12323         Don't make generated files read-only.  That would bother too many
12324         people.  However, do retain the ability to work when targets are
12325         read-only: remove the destination and temporary files before writing
12326         them (when generated via sed or echo), or by using the -f option for
12327         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
12328         * modules/alloca-opt, modules/argz, modules/arpa_inet:
12329         * modules/byteswap, modules/configmake, modules/fcntl:
12330         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
12331         * modules/localcharset, modules/netinet_in, modules/poll:
12332         * modules/stdbool, modules/stdint, modules/sys_select:
12333         * modules/sys_socket, modules/sys_stat, modules/sysexits:
12334
12335 2006-09-08  Jim Meyering  <jim@meyering.net>
12336
12337         Avoid new build failure on FreeBSD 6.0.
12338         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
12339         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
12340         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
12341
12342 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12343
12344         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
12345
12346 2006-09-07  Jim Meyering  <jim@meyering.net>
12347
12348         Fix global typo in last change: use chmod u-w, not chmod u-x.
12349         Spotted by Paul Eggert and Bruce Korb.
12350         * modules/alloca-opt, modules/argz, modules/arpa_inet:
12351         * modules/byteswap, modules/configmake, modules/fcntl:
12352         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
12353         * modules/localcharset, modules/netinet_in, modules/poll:
12354         * modules/stdbool, modules/stdint, modules/sys_select:
12355         * modules/sys_socket, modules/sys_stat, modules/sysexits:
12356
12357 2006-09-06  Jim Meyering  <jim@meyering.net>
12358
12359         Make generated files be read-only.
12360         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
12361         Ensure that each generated file is now read-only.
12362         * modules/argz: Likewise.
12363         * modules/arpa_inet: Likewise.
12364         * modules/byteswap: Likewise.
12365         * modules/configmake: Likewise.
12366         * modules/fcntl: Likewise.
12367         * modules/fnmatch: Likewise.
12368         * modules/getopt: Likewise.
12369         * modules/glob: Likewise.
12370         * modules/inttypes: Likewise.
12371         * modules/netinet_in: Likewise.
12372         * modules/poll: Likewise.
12373         * modules/stdbool: Likewise.
12374         * modules/stdint: Likewise.
12375         * modules/sys_select: Likewise.
12376         * modules/sys_socket: Likewise.
12377         * modules/sys_stat: Likewise.
12378         * modules/sysexits: Likewise.
12379         * modules/localcharset: Same as above, but continue using temporary
12380         file named "t-$@" (why different?) rather than the "$@-t" used
12381         everywhere else.
12382
12383         * modules/sysexits (Makefile.am): Replace literal occurrences
12384         of "sysexit.h" more readable, and more consistent, "$@".
12385
12386 2006-09-06  Bruno Haible  <bruno@clisp.org>
12387
12388         * modules/striconv: New file.
12389         * modules/xstriconv: New file.
12390         * MODULES.html.sh (Internationalization functions): Add striconv,
12391         xstriconv.
12392
12393 2006-09-06  Bruno Haible  <bruno@clisp.org>
12394
12395         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
12396         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
12397         not using libtool correctly.
12398
12399 2006-09-06  Bruno Haible  <bruno@clisp.org>
12400
12401         * lib/striconv.h: New file.
12402         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
12403         iconvstring.c.
12404         * lib/xstriconv.h: New file.
12405         * lib/xstriconv.c: New file.
12406
12407 2006-09-06  Bruno Haible  <bruno@clisp.org>
12408
12409         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
12410         lib_..._LDFLAGS.
12411
12412 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12413
12414         * lib/argz_.h: Sync from Libtool.
12415
12416         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
12417                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
12418
12419         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
12420
12421 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
12422
12423         * modules/trim: New file.
12424
12425 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
12426
12427         * lib/trim.h: New file.
12428         * lib/trim.c: New file.
12429
12430 2006-09-05  Bruno Haible  <bruno@clisp.org>
12431
12432         * MODULES.html.sh (String handling): Add trim.
12433
12434 2006-09-04  Karl Berry  <karl@gnu.org>
12435
12436         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
12437         until next release.
12438
12439 2006-09-03  Bruno Haible  <bruno@clisp.org>
12440
12441         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
12442         correctly.
12443
12444 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
12445
12446         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
12447         not gl_GETLOADAVG.  Omit unneeded semicolons.
12448         Problems reported by Ralf Wildenhues in
12449         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
12450         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
12451         at the end, which is the usual gnulib style.
12452
12453         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
12454         of doing all the work ourselves.
12455         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
12456         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
12457
12458 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
12459
12460         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
12461         Problem reported by Ralf Wildenhues in
12462         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
12463
12464         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
12465         HAVE_STRUCT_STATFS_F_FSTYPENAME.
12466
12467 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
12468
12469         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
12470         yesterday's patch by changing test -n to test -z.
12471
12472 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
12473
12474         * modules/getloadavg (Files): Add m4/getloadavg.m4.
12475         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
12476         the former is now obsolescent.
12477
12478         * modules/chdir-long (Depends-on): Add fcntl.
12479
12480 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
12481
12482         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
12483         obsolescent, and programs should use gnulib instead.
12484         * m4/getloadavg.m4: New file, with contents taken from Autoconf
12485         but with prefixes changed.
12486
12487 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
12488
12489         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
12490         or stdbool.h, because they might not exist while configuring.
12491
12492         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
12493         Don't include unistd.h or limits.h; not needed, since chdir-long.h
12494         does that for us.
12495         (O_DIRECTORY): Remove.
12496
12497 2006-08-31  Eric Blake  <ebb9@byu.net>
12498
12499         * gnulib-tool: Don't let emacs change spaces to TAB.
12500
12501 2006-08-31  Bruno Haible  <bruno@clisp.org>
12502
12503         * gnulib-tool: When calling func_import more than once, do it in a
12504         subshell.
12505         Reported by Eric Blake <ebb9@byu.net>.
12506
12507 2006-08-31  Bruno Haible  <bruno@clisp.org>
12508
12509         * gnulib-tool (nl): Remove variable.
12510         (sed_transform_lib_file): Use more robust test for config-h module.
12511         (func_import): Fix typo in 2006-08-25 patch.
12512
12513 2006-08-31  Bruno Haible  <bruno@clisp.org>
12514
12515         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
12516         specified, augment Makefile.am variables instead of assigning them.
12517
12518 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
12519
12520         Work around a bug in both the Linux and SunOS 64-bit kernels:
12521         nanosleep mishandles sleeps for longer than 2**31 seconds.
12522         Problem reported by Frank v Waveren in
12523         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
12524         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
12525         Check for nanosleep bug.
12526         (LIB_NANOSLEEP): Append clock_gettime library if needed.
12527
12528 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
12529
12530         Work around a bug in both the Linux and SunOS 64-bit kernels:
12531         nanosleep mishandles sleeps for longer than 2**31 seconds.
12532         Problem reported by Frank v Waveren in
12533         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
12534         * lib/nanosleep.c (BILLION): New constant.
12535         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
12536         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
12537         implementation.
12538
12539 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
12540
12541         * modules/nanosleep (Depends-on): Add gettime.
12542
12543 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
12544         and Simon Josefsson  <jas@extundo.com>
12545         and Oskar Liljeblad  <oskar@osk.mine.nu>
12546
12547         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
12548         * gnulib-tool (func_import): New license type 'unmodifiable license
12549         text'.
12550         * modules/fdl: Use it.  Longer description.
12551         * module/gpl, module/lgpl: New files.
12552
12553 2006-08-30  Jim Meyering  <jim@meyering.net>
12554
12555         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
12556         shadowing the parameter.
12557
12558 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12559
12560         Sync from Libtool:
12561
12562         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12563
12564         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
12565         sharing with gnulib.  Report by Eric Blake.
12566
12567 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
12568
12569         * modules/isapipe: New file.
12570         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
12571
12572 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
12573
12574         * modules/configmake (Makefile.am): Add a comment, and omit
12575         the CONFIGMAKE_ prefix from generated macro names.  Suggested
12576         by Bruno Haible.
12577
12578 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
12579
12580         * m4/isapipe.m4: New file.
12581
12582 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
12583
12584         * lib/isapipe.c, lib/isapipe.h: New files.
12585
12586 2006-08-29  Jim Meyering  <jim@meyering.net>
12587
12588         * modules/configmake (Makefile.am): Make configmake.h depend on
12589         Makefile.  Otherwise, a stale configmake.h could hang around.
12590
12591 2006-08-29  Eric Blake  <ebb9@byu.net>
12592
12593         * lib/error.c (error_at_line, print_errno_message): Match libc, after
12594         resolution of upstream bug 3044.
12595
12596 2006-08-29  Bruno Haible  <bruno@clisp.org>
12597
12598         * modules/localcharset (Depends-on): Add configmake.
12599         (Makefile.am): Remove setting of LIBDIR through DEFS.
12600
12601 2006-08-29  Bruno Haible  <bruno@clisp.org>
12602
12603         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
12604         defined.
12605
12606 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
12607
12608         * modules/fcntl: New file.
12609         * modules/chdir-safer (Depends-on): Add fcntl.
12610         * modules/fts: Likewise.
12611         * modules/mkdir-p: Likewise.
12612
12613         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
12614         This undoes the most recent change, since we're now addressing the
12615         problem in a different way.
12616
12617         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
12618         into output, since the output might be called Makefile.am even
12619         if $makefile_name is something different.
12620         (func_import): Use $makefile_am rather than
12621         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
12622         empty.
12623
12624         * modules/inttypes (Files): Add m4/inttypes-h.m4.
12625
12626 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
12627
12628         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
12629         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
12630         recent change to stdint.m4, since we're now addressing the problem in a
12631         different way.
12632
12633 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
12634
12635         * m4/fcntl_h.m4: New file.
12636
12637 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
12638
12639         * lib/fcntl_.h: New file.
12640         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
12641         the fcntl module.
12642         * lib/dirchownmod.c: Likewise.
12643         * lib/fts.c: Likewise.
12644
12645         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
12646         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
12647         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
12648         just before including <inttypes.h>, to avoid circular inclusion.
12649
12650 2006-08-28  Jim Meyering  <jim@meyering.net>
12651
12652         * doc/visibility.texi: Actually read and correct the grammar of the
12653         sentence affected by yesterday's change.
12654
12655 2006-08-28  Eric Blake  <ebb9@byu.net>
12656
12657         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
12658         needs wrapper.
12659
12660 2006-08-28  Eric Blake  <ebb9@byu.net>
12661
12662         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
12663
12664 2006-08-28  Eric Blake  <ebb9@byu.net>
12665
12666         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
12667
12668 2006-08-28  Bruno Haible  <bruno@clisp.org>
12669
12670         * modules/c-strstr: New file, from GNU gettext.
12671         * MODULES.html.sh (String handling): Add c-strstr.
12672
12673 2006-08-28  Bruno Haible  <bruno@clisp.org>
12674
12675         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
12676         macros.
12677         Reported by Eric Blake.
12678
12679 2006-08-28  Bruno Haible  <bruno@clisp.org>
12680
12681         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
12682         (VASNPRINTF): Return a string of length > INT_MAX without failing.
12683         * lib/vasprintf.c: Include errno.h, limits.h.
12684         (EOVERFLOW): New fallback definition.
12685         (vasprintf): Test here whether the string length is > INT_MAX.
12686         * lib/vsnprintf.c: Include errno.h, limits.h.
12687         (EOVERFLOW): New fallback definition.
12688         (vsnprintf): Fix bug when generated string was too long for the buffer.
12689         Test here whether the string length is > INT_MAX.
12690
12691 2006-08-28  Bruno Haible  <bruno@clisp.org>
12692
12693         * lib/inttypes_.h (SCNX*): Remove definitions.
12694         Reported by Eric Blake.
12695
12696 2006-08-28  Bruno Haible  <bruno@clisp.org>
12697
12698         * lib/c-strstr.h: New file, from GNU gettext.
12699         * lib/c-strstr.c: New file, from GNU gettext.
12700
12701 2006-08-28  Bruno Haible  <bruno@clisp.org>
12702
12703         * gnulib-tool: Reorder some statements.
12704
12705 2006-08-28  Bruno Haible  <bruno@clisp.org>
12706
12707         * gnulib-tool: New option --makefile-name.
12708         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
12709         $makefile_name.
12710         (func_import): Write $makefile_name to the cache file, and read it from
12711         there unless explicitly specified. Use $makefile_name as file name
12712         instead of Makefile.am. Adjust the recommendations accordingly.
12713
12714 2006-08-28  Bruno Haible  <bruno@clisp.org>
12715
12716         * gnulib-tool (func_verify_module): Check against misapplying patch.
12717
12718 2006-08-28  Bruno Haible  <bruno@clisp.org>
12719
12720         * gnulib-tool (func_relativize, func_relconcat): New functions.
12721         Give an error if --local-dir is given with --update.
12722         Remove trailing slashes from $local_gnulib_dir.
12723         (func_import): Store the relativized $local_gnulib_dir in
12724         gnulib-cache.m4, and read it from there if not specified explicitly.
12725
12726 2006-08-28  Bruno Haible  <bruno@clisp.org>
12727
12728         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
12729         is the current directory. Respect also $local_gnulib_dir.
12730
12731 2006-08-28  Bruno Haible  <bruno@clisp.org>
12732             Simon Josefsson  <jas@extundo.com>
12733
12734         BeOS portability.
12735         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
12736
12737 2006-08-27  Jim Meyering  <jim@meyering.net>
12738
12739         * doc/visibility.texi: Remove duplicate word: "pointer".
12740
12741 2006-08-26  Bruno Haible  <bruno@clisp.org>
12742
12743         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
12744         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
12745         (Makefile.am): Create inttypes.h from inttypes_.h.
12746         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
12747
12748         * modules/imaxabs: New file.
12749
12750         * modules/imaxdiv: New file.
12751
12752 2006-08-26  Bruno Haible  <bruno@clisp.org>
12753
12754         * m4/inttypes.m4: New file.
12755         * m4/_inttypes_h.m4: Remove file.
12756         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
12757         PRI_MACROS_BROKEN.
12758         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
12759
12760         * m4/imaxabs.m4: New file.
12761
12762         * m4/imaxdiv.m4: New file.
12763
12764 2006-08-26  Bruno Haible  <bruno@clisp.org>
12765
12766         * lib/inttypes_.h: New file.
12767         * lib/inttypes.h: Remove file.
12768         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
12769
12770         * lib/imaxabs.c: New file.
12771
12772         * lib/imaxdiv.c: New file.
12773
12774 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
12775
12776         New config-h module, so that "make" output needn't be cluttered
12777         by -DHAVE_CONFIG_H.
12778         * MODULES.html.sh (Support for building libraries and executables):
12779         Add config-h.
12780         * modules/config-h: New file.
12781         * gnulib-tool (nl, sed_transform_lib_file): New vars.
12782         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
12783         the config-h module is used.
12784
12785         New configmake module, so that "make" output needn't be cluttered
12786         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
12787         * MODULES.html.sh (Support for building libraries and executables):
12788         Add configmake.
12789         * modules/configmake: New file.
12790
12791 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
12792
12793         * m4/config-h.m4: New file.
12794
12795 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
12796
12797         * config/srclist.txt: Add elisp-comp.
12798
12799 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
12800
12801         * MODULES.html.sh (Support for building libraries and executables):
12802         Add elisp-comp.
12803         * build-aux/elisp-comp: New file.
12804         * modules/elisp-comp: New file.
12805
12806 2006-08-24  Bruno Haible  <bruno@clisp.org>
12807
12808         * gnulib-tool (func_create_testdir): Use non-default values of
12809         sourcebase and m4base.
12810
12811 2006-08-24  Bruno Haible  <bruno@clisp.org>
12812
12813         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
12814         HTML structure.
12815
12816 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
12817
12818         * modules/openat (Depends-on): Add lchown.
12819
12820 2006-08-23  Bruno Haible  <bruno@clisp.org>
12821
12822         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
12823         of gl_LOCK_EARLY instead of gl_LOCK.
12824
12825 2006-08-23  Bruno Haible  <bruno@clisp.org>
12826
12827         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
12828         on OSF/1 to no.
12829         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
12830
12831 2006-08-23  Bruno Haible  <bruno@clisp.org>
12832
12833         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
12834         as unusable.
12835
12836         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
12837         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
12838         (gl_LOCK): New macro.
12839
12840 2006-08-22  Simon Josefsson  <jas@extundo.com>
12841
12842         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
12843         to md5 module.
12844
12845 2006-08-22  Simon Josefsson  <jas@extundo.com>
12846
12847         * MODULES.html.sh: Add "Support for maintaining and release
12848         projects".
12849
12850         * build-aux/gnupload: New file, from coreutils.
12851
12852 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
12853
12854         Avoid the need for AC_LIBSOURCES in m4 macros.
12855         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
12856         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
12857         * modules/check-version (EXTRA_DIST): Add check-version.h.
12858         * modules/crc (EXTRA_DIST): Add crc.h.
12859         * modules/des (EXTRA_DIST): Add des.h.
12860         * modules/gc (EXTRA_DIST): Add gc.h.
12861         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
12862         * modules/getline (EXTRA_DIST): Add getline.h.
12863         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
12864         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
12865         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
12866         * modules/md2 (EXTRA_DIST): Add md2.h.
12867         * modules/md4 (EXTRA_DIST): Add md4.h.
12868         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
12869         * modules/read-file (EXTRA_DIST): Add read-file.h.
12870         * modules/readline (EXTRA_DIST): Add readline.h.
12871         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
12872         rijndael-api-fst.h.
12873
12874 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
12875
12876         * m4/rijndael.m4 (gl_ARCFOUR):
12877         * m4/arctwo.m4 (gl_ARCTWO):
12878         * m4/check-version.m4 (gl_CHECK_VERSION):
12879         * m4/crc.m4 (gl_CRC):
12880         * m4/des.m4 (gl_DES):
12881         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
12882         * m4/gc.m4 (gl_GC):
12883         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
12884         * m4/getline.m4 (gl_FUNC_GETLINE):
12885         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
12886         * m4/hmac-md5.m4 (gl_HMAC_MD5):
12887         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
12888         * m4/md2.m4 (gl_MD2):
12889         * m4/md4.m4 (gl_MD4):
12890         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
12891         * m4/read-file.m4 (gl_FUNC_READ_FILE):
12892         * m4/readline.m4 (gl_FUNC_READLINE):
12893         * m4/rijndael.m4 (gl_RIJNDAEL):
12894         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
12895         to get the necessary .h files and whatnot.
12896
12897 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
12898
12899         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
12900         gnulib rather than the other way around.
12901         * config/srclistvars.sh (COREUTILS): Remove.
12902
12903 2006-08-22  Jim Meyering  <jim@meyering.net>
12904
12905         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
12906
12907         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
12908
12909 2006-08-22  Eric Blake  <ebb9@byu.net>
12910
12911         * modules/regexprops-generic: New file.
12912         * MODULES.html.sh (Support for building documentation): List it.
12913
12914 2006-08-22  Eric Blake  <ebb9@byu.net>
12915
12916         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
12917         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
12918         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
12919         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
12920
12921 2006-08-22  Bruno Haible  <bruno@clisp.org>
12922
12923         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
12924         and lib_LTLIBRARIES like the other lib_* variables.
12925
12926 2006-08-22  Bruno Haible  <bruno@clisp.org>
12927
12928         * build-aux/x-to-1.in: New file, from GNU gettext.
12929
12930 2006-08-22  Bruno Haible  <bruno@clisp.org>
12931
12932         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
12933         <utmpx.h> exists.
12934
12935 2006-08-22  Bruno Haible  <bruno@clisp.org>
12936
12937         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
12938         <utmpx.h> exists.
12939
12940 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
12941
12942         BeOS portability.
12943         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
12944         exist.
12945         Problem reported by Bruno Haible.
12946
12947 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
12948
12949         Avoid the need for AC_LIBSOURCES in m4 macros.
12950         * modules/acl (EXTRA_DIST): Add acl.h.
12951         * modules/argmatch (Files): Add m4/argmatch.m4.
12952         (configure.ac): Add gl_ARGMATCH.
12953         (EXTRA_DIST): Renamed from lib_SOURCES, for
12954         consistency with the other modules.  Remove argmatch.c.
12955         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
12956         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
12957         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
12958         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
12959         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
12960         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
12961         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
12962         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
12963         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
12964         * modules/closeout (EXTRA_DIST): Add closeout.h.
12965         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
12966         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
12967         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
12968         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
12969         dirname.h; remove basename.c and stripslash.c.
12970         * modules/exclude (EXTRA_DIST): Add exclude.h.
12971         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
12972         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
12973         * modules/file-type (EXTRA_DIST): Add file-type.h.
12974         * modules/filemode (EXTRA_DIST): Add filemode.h.
12975         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
12976         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
12977         * modules/fpending (EXTRA_DIST): Add __fpending.h.
12978         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
12979         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
12980         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
12981         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
12982         * modules/getdate (EXTRA_DIST): Add getdate.c.
12983         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
12984         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
12985         * modules/getpass (EXTRA_DIST): Add getpass.h.
12986         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
12987         * modules/group-member (EXTRA_DIST): Add group-member.h.
12988         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
12989         * modules/hash (EXTRA_DIST): Add hash.h.
12990         * modules/human (EXTRA_DIST): Add human.h.
12991         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
12992         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
12993         * modules/lchown (EXTRA_DIST): Add lchown.h.
12994         * modules/long-options (EXTRA_DIST): Add long-options.h.
12995         * modules/lstat (EXTRA_DIST): Add lstat.h.
12996         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
12997         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
12998         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
12999         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
13000         * modules/memxor (EXTRA_DIST): Add memxor.h.
13001         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
13002         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
13003         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
13004         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
13005         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
13006         * modules/physmem (EXTRA_DIST): Add physmem.h.
13007         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
13008         * modules/posixver (EXTRA_DIST): Add posixver.h.
13009         * modules/quote (EXTRA_DIST): Add quote.h.
13010         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
13011         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
13012         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
13013         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
13014         regex_internal.h regexec.c.
13015         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
13016         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
13017         * modules/same (EXTRA_DIST): Add same.h.
13018         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
13019         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
13020         * modules/savedir (EXTRA_DIST): Add savedir.h.
13021         * modules/sha1 (EXTRA_DIST): Add sha1.h.
13022         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
13023         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
13024         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
13025         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
13026         * modules/strdup (EXTRA_DIST): Add strdup.h.
13027         * modules/strftime (EXTRA_DIST): Add strftime.h.
13028         * modules/strndup (EXTRA_DIST): Add strndup.h.
13029         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
13030         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
13031         * modules/time_r (EXTRA_DIST): Add time_r.h.
13032         * modules/timespec (EXTRA_DIST): Add timespec.h.
13033         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
13034         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
13035         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
13036         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
13037         * modules/userspec (EXTRA_DIST): Add userspec.h.
13038         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
13039         * modules/utimens (EXTRA_DIST): Add utimens.h.
13040         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
13041         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
13042         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
13043         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
13044         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
13045         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
13046         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
13047         * modules/yesno (EXTRA_DIST): Add yesno.h.
13048
13049 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
13050
13051         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
13052
13053         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
13054         * m4/dev-ino.m4, same-inode.m4: Remove.
13055
13056         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
13057         * m4/acl.m4 (AC_FUNC_ACL):
13058         * m4/backupfile.m4 (gl_BACKUPFILE):
13059         * m4/c-strtod.m4 (gl_C99_STRTOLD):
13060         * m4/canon-host.m4 (gl_CANON_HOST):
13061         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
13062         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
13063         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
13064         * m4/cloexec.m4 (gl_CLOEXEC):
13065         * m4/close-stream.m4 (gl_CLOSE_STREAM):
13066         * m4/closeout.m4 (gl_CLOSEOUT):
13067         * m4/dirfd.m4 (gl_FUNC_DIRFD):
13068         * m4/dirname.m4 (gl_DIRNAME):
13069         * m4/exclude.m4 (gl_EXCLUDE):
13070         * m4/exitfail.m4 (gl_EXITFAIL):
13071         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
13072         * m4/file-type.m4 (gl_FILE_TYPE):
13073         * m4/filemode.m4 (gl_FILEMODE):
13074         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
13075         * m4/fpending.m4 (gl_FUNC_FPENDING):
13076         * m4/fprintftime.m4 (gl_FPRINTFTIME):
13077         * m4/fts.m4 (gl_FUNC_FTS):
13078         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
13079         * m4/getdate.m4 (gl_GETDATE):
13080         * m4/gethrxtime.m4 (gl_GETHRXTIME):
13081         * m4/getpagesize.m4 (gl_GETPAGESIZE):
13082         * m4/getpass.m4 (gl_FUNC_GETPASS):
13083         * m4/gettime.m4 (gl_GETTIME):
13084         * m4/getugroups.m4 (gl_GETUGROUPS):
13085         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
13086         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
13087         * m4/hard-locale.m4 (gl_HARD_LOCALE):
13088         * m4/hash.m4 (gl_HASH):
13089         * m4/idcache.m4 (gl_IDCACHE):
13090         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
13091         * m4/lchown.m4 (gl_FUNC_LCHOWN):
13092         * m4/long-options.m4 (gl_LONG_OPTIONS):
13093         * m4/lstat.m4 (gl_FUNC_LSTAT):
13094         * m4/md5.m4 (gl_MD5):
13095         * m4/memcasecmp.m4 (gl_MEMCASECMP):
13096         * m4/memcoll.m4 (gl_MEMCOLL):
13097         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
13098         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
13099         * m4/memxor.m4 (gl_MEMXOR):
13100         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
13101         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
13102         * m4/modechange.m4 (gl_MODECHANGE):
13103         * m4/mountlist.m4 (gl_MOUNTLIST):
13104         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
13105         * m4/openat.m4 (gl_FUNC_OPENAT):
13106         * m4/pathmax.m4 (gl_PATHMAX):
13107         * m4/physmem.m4 (gl_PHYSMEM):
13108         * m4/posixtm.m4 (gl_POSIXTM):
13109         * m4/posixver.m4 (gl_POSIXVER):
13110         * m4/quote.m4 (gl_QUOTE):
13111         * m4/quotearg.m4 (gl_QUOTEARG):
13112         * m4/readtokens.m4 (gl_READTOKENS):
13113         * m4/readutmp.m4 (gl_READUTMP):
13114         * m4/regex.m4 (gl_REGEX):
13115         * m4/safe-read.m4 (gl_SAFE_READ):
13116         * m4/safe-write.m4 (gl_SAFE_WRITE):
13117         * m4/same.m4 (gl_SAME):
13118         * m4/save-cwd.m4 (gl_SAVE_CWD):
13119         * m4/savedir.m4 (gl_SAVEDIR):
13120         * m4/settime.m4 (gl_SETTIME):
13121         * m4/sha1.m4 (gl_SHA1):
13122         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
13123         * m4/stat-macros.m4 (gl_STAT_MACROS):
13124         * m4/stat-time.m4 (gl_STAT_TIME):
13125         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
13126         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
13127         * m4/strdup.m4 (gl_FUNC_STRDUP):
13128         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
13129         * m4/strndup.m4 (gl_FUNC_STRNDUP):
13130         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
13131         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
13132         * m4/time_r.m4 (gl_TIME_R):
13133         * m4/timespec.m4 (gl_TIMESPEC):
13134         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
13135         * m4/unlinkdir.m4 (gl_UNLINKDIR):
13136         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
13137         * m4/userspec.m4 (gl_USERSPEC):
13138         * m4/utimecmp.m4 (gl_UTIMECMP):
13139         * m4/utimens.m4 (gl_UTIMENS):
13140         * m4/xalloc.m4 (gl_XALLOC):
13141         * m4/xgetcwd.m4 (gl_XGETCWD):
13142         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
13143         * m4/xreadlink.m4 (gl_XREADLINK):
13144         * m4/xstrtod.m4 (gl_XSTRTOD):
13145         * m4/yesno.m4 (gl_YESNO):
13146         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
13147         to get the necessary .h files and whatnot.
13148
13149 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
13150             Bruno Haible  <bruno@clisp.org>
13151
13152         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
13153         /bin/sh understanding of '!' conditional negation.
13154
13155 2006-08-21  Jim Meyering  <jim@meyering.net>
13156
13157         * modules/openat (Depends-on): Really alphabetize.
13158
13159         * modules/acl (Depends-on): Add error and quote.
13160
13161         * check-module (find_included_lib_files): Add at-func.c to the
13162         ok-to-include-more-than-once white list.
13163
13164         * modules/openat (Depends-on): Add lstat.  Alphabetize.
13165
13166 2006-08-21  Bruno Haible  <bruno@clisp.org>
13167
13168         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13169         Emit a pkgdata_DATA variable only if some snippets add contents to it.
13170         Reported by Martin Lambers <marlam@marlam.de>.
13171
13172 2006-08-21  Bruno Haible  <bruno@clisp.org>
13173
13174         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
13175         specify an installation location, don't emit a noinst_LIBRARIES or
13176         noinst_LTLIBRARIES assignment.
13177
13178 2006-08-21  Bruno Haible  <bruno@clisp.org>
13179
13180         BeOS portability.
13181         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
13182         BeOS has mbrtowc() but no <wctype.h>.
13183
13184 2006-08-21  Bruno Haible  <bruno@clisp.org>
13185
13186         BeOS portability.
13187         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
13188         exist.
13189
13190 2006-08-21  Bruno Haible  <bruno@clisp.org>
13191
13192         BeOS portability.
13193         * lib/mbchar.h: Include <wctype.h> only if it exists.
13194
13195 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
13196
13197         Remove files that are no longer needed by their respective modules.
13198         * m4/obstack.m4: Remove.
13199         * m4/strerror_r.m4: Remove.
13200         * m4/uint32_t.m4: Remove.
13201         * m4/uintptr_t.m4: Remove.
13202         * m4/ullong_max.m4: Remove.
13203         * m4/xstrtoimax.m4: Remove.
13204         * m4/xstrtoumax.m4: Remove.
13205
13206         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
13207         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
13208         dependencies now capture this.
13209
13210         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
13211         Do not use AC_LIBSOURCES, since gnulib modules now do this.
13212         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
13213         * m4/human.m4 (gl_HUMAN): Likewise.
13214         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
13215         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
13216
13217         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
13218
13219         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
13220         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
13221         stdint.
13222         * m4/human.m4 (gl_HUMAN): Likewise.
13223         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
13224         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
13225         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
13226         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
13227         * m4/xstrtol (gl_XSTRTOL): Likewise.
13228
13229         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
13230         AC_TYPE_LONG_LONG_INT.
13231         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
13232         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
13233         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
13234         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
13235
13236         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
13237         on stdbool.
13238
13239         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
13240         (gl_PREREQ_XSTRTOUL): Remove.
13241
13242         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
13243
13244         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
13245         mode.
13246
13247 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
13248
13249         Add and change modules to make it easier for coreutils to use
13250         gnulib-tool.
13251         * modules/backupfile (Files): Remove m4/d-ino.m4.
13252         (Depends-on): Add d-ino.
13253         * modules/cycle-check (Depends-on): Add stdint.
13254         (lib_SOURCES): Add cycle-check.h.
13255         * modules/d-ino: New module.
13256         * modules/d-type: New module.
13257         * modules/error (Files): Remove m4/strerror_r.m4.
13258         * modules/filemode (Files): Add m4/st_dm_mode.m4.
13259         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
13260         m4/inttypes_h.m4, m4/uintmax_t.m4.
13261         (Depends-on): Add stdint.
13262         (lib_SOURCES): Add fsusage.h.
13263         * modules/getcwd (Files): Remove d-ino.m4.
13264         (Depends-on): Add d-ino.
13265         * modules/getndelim2 (Depends-on): Add stdint.
13266         * modules/glob (Files): Remove m4/d-type.m4.
13267         (Depends-on): Add d-type.
13268         * modules/host-os: New module.
13269         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
13270         m4/inttypes_h.m4, m4/uintmax_t.m4.
13271         * Depends-on: Add stdint.
13272         (lib_SOURCES): Add human.h.
13273         * modules/inttostr (Files): Remove m4/intmax_t.m4,
13274         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
13275         m4/uintmax_t.m4, m4/ulonglong.m4.
13276         (Depends-on): Add stdint.
13277         (EXTRA_DIST): Add inttostr.h.
13278         * modules/lchmod: New module.
13279         * modules/link-follow: New module.
13280         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
13281         (Depends-on): Add lchmod.
13282         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
13283         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
13284         (Depends-on): Add stdint.
13285         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
13286         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
13287         (Depends-on): Add stdint.
13288         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
13289         * modules/perl: New module.
13290         * modules/regex (Depends-on): Add stdint.
13291         * modules/rmdir-errno: New module.
13292         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
13293         m4/intmax_t.m4.
13294         (Depends-on): Add stdint.
13295         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
13296         m4/uintmax_t.m4.
13297         (Depends-on): Add stdint.
13298         * modules/unlink-busy: New module.
13299         * modules/utimecmp (Depends-on): Add stdint.
13300         * modules/uptime: New module.
13301         * modules/winsz-ioctl: New module.
13302         * modules/winsz-termios: New module.
13303         * modules/xnanosleep (Depends-on): Add nanosleep.
13304         * modules/ullong_max: Remove.
13305         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
13306         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
13307         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
13308         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
13309         (Depends-on): Add inttypes.
13310         (lib_SOURCES): Add xstrtol.h.
13311         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
13312         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
13313         * MODULES.html.sh: Move 'assert' into the assert section.
13314         Move 'dummy' into the linking section.
13315         Remove ullong_max.
13316         Add section for compatibility checks for POSIX:2001 functions,
13317         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
13318         winsz-ioctl, and winsz-termios into it.
13319         Add lchmod.
13320         Add top-level Misc section and put host-os, perl, and uptime
13321         into it.
13322
13323 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
13324
13325         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
13326         now assume the stdint module.  Do not include inttypes.h.
13327         * lib/fsusage.h: Likewise.
13328         * lib/getndelim2.c: Likewise.
13329         * lib/human.h: Likewise.
13330         * lib/inttostr.h: Likewise.
13331         * lib/obstack.c: Likewise.
13332         * lib/regex_internal.h: Likewise.
13333         * lib/tempname.c: Likewise.
13334         * lib/utimecmp.c: Likewise.
13335         * lib/xstrtol.h: Likewise.
13336
13337         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
13338
13339         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
13340         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
13341         * lib/xtime.h: Likewise.
13342
13343 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
13344
13345         * modules/openat (Files): Add lib/fchmodat.c.
13346         Fixes problem reported by Jay Youngman.
13347
13348 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
13349
13350         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
13351         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
13352
13353 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
13354             Bruno Haible  <bruno@clisp.org>
13355
13356         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
13357         and is a script that invokes bison. Tighten the code. Add comments.
13358
13359 2006-08-18  Jim Meyering  <jim@meyering.net>
13360
13361         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
13362         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
13363         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
13364         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
13365
13366 2006-08-18  Bruno Haible  <bruno@clisp.org>
13367
13368         * modules/bison-i18n: New file.
13369         * MODULES.html.sh (Internationalization functions): Add it.
13370
13371 2006-08-18  Bruno Haible  <bruno@clisp.org>
13372
13373         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
13374         sys/statvfs.h. When getmntinfo was found, check its declaration and
13375         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
13376
13377 2006-08-18  Bruno Haible  <bruno@clisp.org>
13378
13379         * m4/bison-i18n.m4: New file, from bison.
13380
13381 2006-08-18  Bruno Haible  <bruno@clisp.org>
13382
13383         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
13384         (ME_DUMMY): Treat "kernfs" as a dummy.
13385         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
13386
13387 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
13388
13389         Update from coreutils.
13390
13391         2006-08-15  Jim Meyering  <jim@meyering.net>
13392
13393         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
13394
13395         2006-01-17  Jim Meyering  <jim@meyering.net>
13396
13397         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
13398
13399         2006-01-11  Jim Meyering  <jim@meyering.net>
13400
13401         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
13402         Check for the lchmod function.
13403
13404 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
13405
13406         Update from coreutils.
13407
13408         * lib/__fpending.h: Add copyright notice.
13409         * lib/fprintftime.h: Likewise.
13410         * lib/savedir.c: Use (C) in copyright notice.
13411         * lib/savedir.h: Likewise.
13412
13413         2006-08-15  Jim Meyering  <jim@meyering.net>
13414
13415         * lib/at-func.c: New file, with the logic of all emulated at-functions.
13416         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
13417         in support of the EXPECTED_ERRNO macro.
13418         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
13419         definitions.  Instead, define the appropriate symbols and include
13420         "at-func.c".
13421         * lib/mkdirat.c (mkdirat): Likewise.
13422         * lib/fchmodat.c (fchmodat): Likewise.
13423         (ENOSYS): Remove definition.
13424         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
13425         it.  Don't include "unistd--.h" -- it wasn't ever used.
13426
13427         2006-01-17  Jim Meyering  <jim@meyering.net>
13428
13429         Rewrite fts.c not to change the current working directory,
13430         by using openat, fstatat, fdopendir, etc..
13431
13432         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
13433         (HAVE_OPENAT_SUPPORT): Define.
13434         [_LIBC] (fchdir): Don't undef or define; no longer used.
13435         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
13436         Now, this `function' always succeeds, and consumes its file descriptor
13437         parameter -- so callers must not close such FDs.  Update callers.
13438         (diropen_fd, opendirat, cwd_advance_fd): New functions.
13439         (diropen): Add parameter, SP.  Adjust all callers.
13440         Implement using diropen_fd, rather than open.
13441         (fts_open): Initialize new member, fts_cwd_fd.
13442         Remove fts_rft-setting code.
13443         (fts_close): Close fts_cwd_fd, if necessary.
13444         (__opendir2): Define in terms of opendir or opendirat,
13445         depending on whether the FST_NOCHDIR flag is set.
13446         (fts_build): Since fts_safe_changedir consumes its FD, and since
13447         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
13448         and close the dup'd file descriptor upon failure.
13449         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
13450         (fts_safe_changedir): Tweak semantics to reflect that this function
13451         now calls cwd_advance_fd and hence consumes its FD argument.
13452         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
13453         [struct FTS] (fts_rft): Remove now-unused member.
13454         [struct FTS] (fts_cycle.state): Improve comment.
13455
13456         * lib/openat.c (openat_needs_fchdir): New function.
13457         * lib/openat.h (openat_needs_fchdir): Declare it.
13458
13459 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
13460
13461         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
13462         Problem and fix reported by Pádraig Brady in
13463         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
13464
13465 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
13466
13467         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
13468
13469 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
13470
13471         * lib/memcoll.c (memcoll): Optimize for the common case where the
13472         arguments are bytewise equal.
13473
13474 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
13475
13476         * doc/regexprops-generic.texi: Add a copyright notice.
13477
13478 2006-08-15  Bruno Haible  <bruno@clisp.org>
13479
13480         * modules/tmpdir (License): Change to LGPL.
13481
13482 2006-08-15  Bruno Haible  <bruno@clisp.org>
13483
13484         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
13485         module.
13486
13487 2006-08-14  Simon Josefsson  <jas@extundo.com>
13488
13489         * config/srclist.txt: Add gnupload.
13490
13491 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
13492
13493         Change copyright notice from LGPL 2 to GPL 2, since that's the
13494         standard form used in the gnulib repository.
13495         * tests/test-lock.c: Likewise.
13496         * tests/test-stdint.c: Likewise.
13497         * tests/test-tls.c: Likewise.
13498
13499         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
13500         prelude-manager.  User shorter URLs for GNU projects, without '?'.
13501         Add copyright notice.
13502
13503         * check-module: Add copyright notice.  Output a copyright
13504         notice if "--version" is specified.
13505         * modules/COPYING: New file.
13506         * tests/test-getaddrinfo.c: Add copyright notice.
13507         * tests/test-verify.c: Likewise.
13508
13509 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
13510
13511         Change copyright notice from LGPL 2 to GPL 2, since that's the
13512         standard form used in the gnulib repository.
13513         * lib/lock.c: LGPL -> GPL.
13514         * lib/lock.h: Likewise.
13515         * lib/strnlen1.c: Likewise.
13516         * lib/strnlen1.h: Likewise.
13517         * lib/tls.c: Likewise.
13518         * lib/tls.h: Likewise.
13519         * lib/tmpdir.c: Likewise.
13520
13521         * lib/TODO: Remove; this belongs only in coreutils.
13522
13523 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
13524
13525         Add copyright notices to long-enough files that lack them, since
13526         otherwise the files aren't clearly free.  Use the same notice that
13527         getdate.texi already uses.
13528         * doc/alloca-opt.texi: Add copyright notice.
13529         * doc/alloca.texi: Likewise.
13530         * doc/ctime.texi: Likewise.
13531         * doc/functions.texi: Likewise.
13532         * doc/gcd.texi: Likewise.
13533         * doc/gnulib-tool.texi: Likewise.
13534         * doc/inet_ntoa.texi: Likewise.
13535         * doc/visibility.texi: Likewise.
13536
13537         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
13538         * doc/quote.texi: Add copyright notice.
13539
13540         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
13541         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
13542         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
13543         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
13544         is now obsolete, and give a pointer to the Sun list.
13545         Add copyright notice.
13546
13547 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
13548
13549         * config/srclistvars.sh: Add copyright notice.
13550
13551 2006-08-14  Eric Blake  <ebb9@byu.net>
13552
13553         Import the following change from libc:
13554
13555         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
13556
13557         Upstream bug 2997.
13558         * lib/misc/error.c: Add space between program name and message if file
13559         name is missing.
13560
13561 2006-08-12  Karl Berry  <karl@gnu.org>
13562
13563         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
13564         remove, these originate in gnulib now.
13565
13566 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13567
13568         * doc/Makefile (standards.info standards.html standards.dvi):
13569         Also depend on make-stds.texi.
13570
13571 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
13572
13573         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
13574         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
13575
13576         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
13577         in wchar_t.  Problem reported by Eric Blake.
13578
13579         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
13580         LEN is smaller than SIZE.  Suggested by Bruno Haible.
13581         Also, help the compiler to keep LEN in a register.
13582
13583 2006-08-11  Eric Blake  <ebb9@byu.net>
13584
13585         * users.txt: Sort.  Add tar.
13586
13587 2006-08-11  Bruno Haible  <bruno@clisp.org>
13588
13589         * users.txt: New file.
13590
13591 2006-08-11  Bruno Haible  <bruno@clisp.org>
13592
13593         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
13594         before <wchar.h>. Needed for OSF/1 and BSD/OS.
13595
13596 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
13597
13598         * modules/snprintf (Depends-on): Remove minmax.
13599         (Maintainer): Add self and Bruno.
13600
13601 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
13602
13603         * lib/.cppi-disable: Add snprintf.h, socket_.h.
13604         * lib/snprintf.c: Include <errno.h> and <limits.h>.
13605         (EOVERFLOW): Define if the system does not.
13606         Do not include "minmax.h"; it wasn't used.
13607         (snprintf): Don't assume size_t promotes to an unsigned type.
13608         Fix bug when generated string was too long for the buffer: the
13609         buffer's contents are supposed to be the initial prefix of the
13610         output.  Don't assume vasnprintf returns EOVERFLOW if the size
13611         exceeds INT_MAX; do the check ourselves.
13612
13613         Import the following changes from libc:
13614
13615         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
13616
13617         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
13618         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
13619         set wc to the byte which couldn't be converted.
13620         (re_string_reconstruct): Don't clear valid_raw_len before calling
13621         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
13622         tip_context using re_string_context_at.
13623
13624         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
13625
13626         * lib/posix/regex.h: g++ still cannot handled [restrict].
13627
13628         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
13629
13630         * lib/posix/regex.h: Remove special handling for VMS.
13631
13632 2006-08-10  Jim Meyering  <jim@meyering.net>
13633
13634         * modules/same-inode: New module.
13635         * modules/dev-ino: New module.
13636         * modules/cycle-check: Depend on these modules, rather than simply
13637         including their .h files.
13638         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
13639         required via m4/cycle-check.m4.
13640         * modules/same: Depend on new same-inode module, rather than
13641         including same-inode.h.
13642         * modules/chdir-safer: New file.
13643
13644         * modules/chown (Depends-on): Add stat-macros.
13645
13646 2006-08-10  Jim Meyering  <jim@meyering.net>
13647
13648         * m4/cycle-check.m4: New file.
13649         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
13650         * m4/dev-ino.m4, m4/same-inode.m4: New files.
13651
13652 2006-08-10  Eric Blake  <ebb9@byu.net>
13653
13654         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
13655         in from original proposal.
13656
13657 2006-08-10  Eric Blake  <ebb9@byu.net>
13658         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13659
13660         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
13661         namespace.
13662
13663 2006-08-10  Bruno Haible  <bruno@clisp.org>
13664
13665         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
13666         as well.
13667
13668 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13669
13670         Sync from coreutils.
13671
13672         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
13673
13674         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
13675         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
13676
13677 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13678
13679         * modules/restrict: Remove; no longer needed now that we assume
13680         Autoconf 2.59 or later.
13681         * MODULES.html.sh: Remove 'restrict'.
13682         * modules/argp (Depends-on): Remove 'restrict'.
13683         * modules/base64 (Depends-on): Likewise.
13684         * modules/gc (Depends-on): Likewise.
13685         * modules/getaddrinfo (Depends-on): Likewise.
13686         * modules/glob (Depends-on): Likewise.
13687         * modules/inet_ntop (Depends-on): Likewise.
13688         * modules/inet_pton (Depends-on): Likewise.
13689         * modules/memxor (Depends-on): Likewise.
13690         * modules/regex (Depends-on): Likewise.
13691         * modules/strtok_r (Depends-on): Likewise.
13692         * modules/time_r (Depends-on): Likewise.
13693
13694 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
13695
13696         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
13697         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
13698         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
13699         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
13700         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
13701         * m4/memxor.m4 (gl_MEMXOR): Likewise.
13702         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
13703         gl_C_RESTRICT replaced by AC_C_RESTRICT.
13704
13705         Merge from coreutils.
13706         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
13707         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
13708         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
13709         * m4/time_r.m4 (gl_TIME_R): Likewise.
13710
13711 2006-08-09  Karl Berry  <karl@gnu.org>
13712
13713         * config/srclist.txt: no more gettext-tools, per Bruno.
13714
13715 2006-08-08  Eric Blake  <ebb9@byu.net>
13716
13717         * modules/verror: New module.
13718         * MODULES.html.sh: Document it.
13719
13720 2006-08-08  Eric Blake  <ebb9@byu.net>
13721
13722         * lib/verror.h, lib/verror.c: New files.
13723
13724 2006-08-08  Eric Blake  <ebb9@byu.net>
13725
13726         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
13727         verror_at_line output complies with GNU Coding Standards even when
13728         file is NULL.
13729
13730 2006-08-07  Bruno Haible  <bruno@clisp.org>
13731
13732         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
13733         versions of AIX.
13734         Reported by Ralf Wildenhues.
13735
13736 2006-08-07  Bruno Haible  <bruno@clisp.org>
13737
13738         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
13739         in an AC_DEFUN. Needed so that the autoconf snippets can use
13740         AC_REQUIRE.
13741
13742 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13743
13744         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13745         Initialize pkgdata_DATA.
13746         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
13747         overriding it.
13748
13749 2006-08-06  Eric Blake  <ebb9@byu.net>
13750
13751         * lib/error.h: Fold in some upstream changes from glibc.
13752         * lib/error.c: Likewise.
13753
13754 2006-08-04  Bruno Haible  <bruno@clisp.org>
13755
13756         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13757         Make the mostlyclean-local rule depend on mostlyclean-generic.
13758         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
13759
13760 2006-07-31  Bruno Haible  <bruno@clisp.org>
13761
13762         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
13763         <stdlib.h>, <string.h>.
13764
13765 2006-07-30  Bruno Haible  <bruno@clisp.org>
13766
13767         * modules/readlink (License): Change to LGPL.
13768
13769 2006-07-30  Bruno Haible  <bruno@clisp.org>
13770
13771         * modules/javaversion (Makefile.am): Distribute javaversion.java and
13772         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
13773         set PKGDATADIR to point to it.
13774
13775 2006-07-30  Bruno Haible  <bruno@clisp.org>
13776
13777         * modules/csharpexec (configure.ac): Comment out macro invocation.
13778         * modules/javaexec (configure.ac): Likewise.
13779         * modules/javacomp-script (configure.ac): Likewise.
13780
13781         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
13782
13783 2006-07-30  Bruno Haible  <bruno@clisp.org>
13784
13785         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
13786         linked-list.
13787
13788 2006-07-30  Bruno Haible  <bruno@clisp.org>
13789
13790         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
13791
13792 2006-07-30  Bruno Haible  <bruno@clisp.org>
13793
13794         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13795         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
13796         get removed.
13797
13798 2006-07-29  Bruno Haible  <bruno@clisp.org>
13799
13800         Make it possible for gnulib-tool to work with locally modified or
13801         augmented gnulib repositories.
13802         * gnulib-tool (func_usage): Document --local-dir option.
13803         (local_gnulib_dir): New variable.
13804         Handle --local-dir option.
13805         (func_lookup_file): New function.
13806         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
13807         (func_get_description, func_get_filelist, func_get_description,
13808         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
13809         func_get_automake_snippet, func_get_include_directive,
13810         func_get_license, func_get_maintainer): Use func_lookup_file.
13811         (func_import, func_create_testdir): Use func_lookup_file.
13812
13813 2006-07-29  Bruno Haible  <bruno@clisp.org>
13814
13815         * modules/setenv (Depends-on): Add unistd.
13816
13817 2006-07-29  Bruno Haible  <bruno@clisp.org>
13818
13819         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
13820
13821 2006-07-29  Bruno Haible  <bruno@clisp.org>
13822
13823         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
13824
13825 2006-07-29  Bruno Haible  <bruno@clisp.org>
13826
13827         * gnulib-tool (import, update): If there is no Makefile.am, look at
13828         aclocal.m4, instead of bailing out.
13829
13830 2006-07-29  Bruno Haible  <bruno@clisp.org>
13831
13832         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
13833         Categorize the options by when they are useful.
13834
13835 2006-07-29  Bruno Haible  <bruno@clisp.org>
13836
13837         * gnulib-tool (func_usage): Document option --no-libtool.
13838         Handle option --no-libtool.
13839         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
13840         for changed semantics of $libtool variable.
13841         (func_import): Likewise. If libtool is not used, show this through
13842         an option --no-libtool.
13843         (func_create_testdir): Update.
13844
13845 2006-07-29  Bruno Haible  <bruno@clisp.org>
13846
13847         * gnulib-tool (func_import): Extend error message about missing
13848         --doc-base.
13849
13850 2006-07-29  Bruno Haible  <bruno@clisp.org>
13851
13852         * gnulib-tool (func_import): Don't create the $docbase directory if
13853         there is no file to store there.
13854
13855 2006-07-29  Bruno Haible  <bruno@clisp.org>
13856
13857         * gnulib-tool (autoconf_minversion): If a --dir option is given and
13858         relevant, look for configure.ac there, not in the current directory.
13859         Also use a simple search for AC_PREREQ, not "autoconf --trace".
13860
13861 2006-07-29  Bruno Haible  <bruno@clisp.org>
13862
13863         * gnulib-tool (SORT): New variable.
13864         (func_usage): Undocument --assume-autoconf option.
13865         Remove --assume-autoconf option handling.
13866         (autoconf_minversion): Determine from the contents of configure.ac.
13867         (func_import): Remove autoconf_minversion handling.
13868         Suggested by Eric Blake.
13869
13870 2006-07-29  Bruno Haible  <bruno@clisp.org>
13871
13872         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
13873
13874 2006-07-29  Bruno Haible  <bruno@clisp.org>
13875
13876         * config/srclist.txt (*setenv.[ch]): Remove rules.
13877
13878 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
13879
13880         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
13881
13882 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
13883
13884         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
13885         arpa/inet.h.
13886
13887 2006-07-28  Simon Josefsson  <jas@extundo.com>
13888
13889         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
13890         * modules/inet_pton (Depends-on): Likewise.
13891
13892 2006-07-28  Simon Josefsson  <jas@extundo.com>
13893
13894         * m4/netinet_in_h.m4: New file.
13895
13896 2006-07-28  Simon Josefsson  <jas@extundo.com>
13897
13898         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
13899         #include's.
13900
13901 2006-07-28  Simon Josefsson  <jas@extundo.com>
13902
13903         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
13904         #include's.
13905
13906 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
13907
13908         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
13909         setgid on directories only if they set these bits.
13910         * lib/modechange.h: Remove obsolete comment about masks.
13911
13912 2006-07-28  Eric Blake  <ebb9@byu.net>
13913
13914         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
13915         macro expansion.
13916
13917 2006-07-28  Bruno Haible  <bruno@clisp.org>
13918
13919         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
13920
13921 2006-07-28  Bruno Haible  <bruno@clisp.org>
13922
13923         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
13924
13925 2006-07-28  Bruno Haible  <bruno@clisp.org>
13926
13927         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
13928         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
13929         Define fallbacks.
13930         Avoids link error on FreeBSD 4.x.
13931         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
13932
13933         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
13934         encoding.
13935         * lib/mbswidth.c (iswcntrl): Likewise.
13936
13937 2006-07-27  Bruno Haible  <bruno@clisp.org>
13938
13939         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
13940         test.
13941
13942 2006-07-27  Bruno Haible  <bruno@clisp.org>
13943
13944         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
13945         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
13946         defined.
13947
13948 2006-07-26  Eric Blake  <ebb9@byu.net>
13949
13950         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
13951
13952 2006-07-26  Eric Blake  <ebb9@byu.net>
13953
13954         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
13955         like mingw that lack mkstemp.
13956         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
13957         avoid compilation warning on mingw.
13958
13959 2006-07-26  Bruno Haible  <bruno@clisp.org>
13960
13961         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
13962         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
13963         INT_FAST*_MIN, INTPTR_MIN.
13964
13965 2006-07-25  Bruno Haible  <bruno@clisp.org>
13966
13967         * modules/version-etc (Depends-on): Add stdarg.
13968
13969 2006-07-25  Bruno Haible  <bruno@clisp.org>
13970
13971         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
13972         complex commands.
13973
13974 2006-07-25  Bruno Haible  <bruno@clisp.org>
13975
13976         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
13977         defined in <stdarg.h> or config.h.
13978
13979 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
13980
13981         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
13982         (gl_STDIO_SAFER): Remove.
13983
13984 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
13985
13986         * MODULES.html.sh (File stream based Input/Output):
13987         Add fopen-safer, tmpfile-safer; remove stdio-safer.
13988         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
13989         * modules/fopen-safer, modules/tmpfile-safer: New files.
13990         * modules/stdio-safer: Remove.
13991
13992 2006-07-24  Bruno Haible  <bruno@clisp.org>
13993
13994         * modules/tmpdir: New file.
13995         * MODULES.html.sh (File system functions): Add it.
13996
13997 2006-07-24  Bruno Haible  <bruno@clisp.org>
13998
13999         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
14000         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
14001
14002 2006-07-24  Bruno Haible  <bruno@clisp.org>
14003
14004         * modules/clean-temp: New file.
14005
14006 2006-07-24  Bruno Haible  <bruno@clisp.org>
14007
14008         * m4/tmpdir.m4: New file, from GNU gettext.
14009
14010 2006-07-24  Bruno Haible  <bruno@clisp.org>
14011
14012         * lib/tmpdir.h: New file, from GNU gettext.
14013         * lib/tmpdir.c: New file, from GNU gettext.
14014
14015 2006-07-24  Bruno Haible  <bruno@clisp.org>
14016
14017         * lib/clean-temp.h: New file, from GNU gettext.
14018         * lib/clean-temp.c: New file, from GNU gettext.
14019
14020 2006-07-23  Eric Blake  <ebb9@byu.net>
14021
14022         * modules/stdio-safer (Files): Add tmpfile-safer.c.
14023         (Depends-on): Add binary-io.
14024
14025 2006-07-23  Eric Blake  <ebb9@byu.net>
14026
14027         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
14028
14029 2006-07-23  Eric Blake  <ebb9@byu.net>
14030
14031         * lib/tmpfile-safer.c: New file.
14032         * lib/stdio-safer.h (fopen_safer): Add prototype.
14033         * lib/stdio--.h (tmpfile): Make safer.
14034
14035 2006-07-23  Bruno Haible  <bruno@clisp.org>
14036
14037         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
14038         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
14039         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
14040         gl_linked_remove_at): Use it.
14041
14042 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14043         and Simon Josefsson <jas@extundo.com>
14044
14045         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
14046
14047         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
14048
14049 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14050
14051         * modules/close-stream: New file.
14052         * modules/closeout (Description): Make it clear that it exits
14053         with a diagnostic on error.
14054         (Depends-on): Add close-stream.  Remove fpending, stdbool.
14055         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
14056
14057 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14058
14059         * m4/close-stream.m4: New file.
14060
14061 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14062
14063         * lib/close-stream.c, lib/close-stream.h: New files.
14064
14065 2006-07-22  Bruno Haible  <bruno@clisp.org>
14066
14067         Merge from GNU gettext 0.15.
14068
14069         2006-05-01  Bruno Haible  <bruno@clisp.org>
14070
14071                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
14072
14073         2006-07-22  Bruno Haible  <bruno@clisp.org>
14074
14075                 * modules/javaversion: New file.
14076                 * MODULES.html.sh (Java): Add javaversion.
14077
14078         2006-03-12  Bruno Haible  <bruno@clisp.org>
14079
14080                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
14081
14082         2005-12-04  Bruno Haible  <bruno@clisp.org>
14083
14084                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
14085                 (untested).
14086
14087         2006-06-21  Bruno Haible  <bruno@clisp.org>
14088
14089                 Avoid warnings from recent versions of mcs.
14090                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
14091                 -o, -L, -r any more. Use options documented since mcs-1.0
14092                 instead. Similarly for -g.
14093
14094         2005-12-04  Bruno Haible  <bruno@clisp.org>
14095
14096                 * build-aux/csharpcomp.sh.in: Suffix for resources is
14097                 .resources, not .resource.
14098
14099         2005-07-09  Bruno Haible  <bruno@clisp.org>
14100
14101                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
14102                 add a .dll suffix.
14103                 Reported by Mark Junker <mjscod@gmx.de>.
14104
14105         2006-07-22  Bruno Haible  <bruno@clisp.org>
14106
14107                 * modules/gettext: Upgrade to gettext-0.15.
14108                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
14109                 m4/visibility.m4.
14110                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
14111
14112 2006-07-22  Bruno Haible  <bruno@clisp.org>
14113
14114         Merge from GNU gettext 0.15.
14115
14116         2006-03-25  Bruno Haible  <bruno@clisp.org>
14117
14118                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
14119
14120         2006-07-21  Bruno Haible  <bruno@clisp.org>
14121
14122                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
14123                 "1.1".
14124
14125         2006-05-09  Bruno Haible  <bruno@clisp.org>
14126
14127                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
14128                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
14129                 for the conftestver execution.
14130
14131         2006-05-01  Bruno Haible  <bruno@clisp.org>
14132
14133                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
14134                 optional target-version argument. Verify that the compiler
14135                 groks source of the specified source-version, or add -source
14136                 option as necessary. Verify that the compiler produces
14137                 bytecode in the specified target-version, or add -target and
14138                 -source options as necessary. Make the result of the test
14139                 available as variable CONF_JAVAC. Also log error output in
14140                 config.log.
14141
14142         2006-03-11  Bruno Haible  <bruno@clisp.org>
14143
14144                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
14145
14146         2006-05-09  Bruno Haible  <bruno@clisp.org>
14147
14148                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
14149                 CLASSPATH_SEPARATOR to a semicolon.
14150
14151         2006-03-12  Bruno Haible  <bruno@clisp.org>
14152
14153                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
14154                 available as variable CONF_JAVA, for subsequent autoconf
14155                 tests. Also log error output in config.log.
14156
14157         2006-07-19  Bruno Haible  <bruno@clisp.org>
14158
14159                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
14160                 that getline works on glibc2 systems. Needed to avoid trouble
14161                 in relocatable.c.
14162                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
14163
14164         2005-12-04  Bruno Haible  <bruno@clisp.org>
14165
14166                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
14167                 launcher (untested).
14168
14169         2005-12-04  Bruno Haible  <bruno@clisp.org>
14170
14171                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
14172
14173         2006-07-22  Bruno Haible  <bruno@clisp.org>
14174
14175                 * gettext.m4: Update from GNU gettext-0.15.
14176                 * nls.m4: Likewise.
14177                 * po.m4: Likewise.
14178                 * inttypes-pri.m4: Likewise.
14179                 * inttypes-h.m4: Renamed from inttypes.m4.
14180                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
14181
14182 2006-07-22  Bruno Haible  <bruno@clisp.org>
14183
14184         Merge from GNU gettext 0.15.
14185
14186         2005-07-05  Bruno Haible  <bruno@clisp.org>
14187
14188                 * printf-args.c (printf_fetchargs): Work around broken
14189                 definition of wint_t on mingw.
14190
14191         2005-02-12  Bruno Haible  <bruno@clisp.org>
14192
14193                 * xallocsa.h: Add extern "C" for C++.
14194
14195         2006-05-17  Bruno Haible  <bruno@clisp.org>
14196
14197                 Cygwin portability.
14198                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
14199
14200         2006-04-30  Bruno Haible  <bruno@clisp.org>
14201
14202                 * progreloc.c: Include <mach-o/dyld.h> if available.
14203                 (find_executable): Use _NSGetExecutablePath when possible.
14204
14205         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
14206
14207                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
14208                 function.
14209
14210         2005-12-29  Bruno Haible  <bruno@clisp.org>
14211
14212                 * progreloc.c (set_program_name_and_installdir): Fix
14213                 compilation error.
14214
14215         2005-12-04  Bruno Haible  <bruno@clisp.org>
14216
14217                 Cygwin portability.
14218                 * progreloc.c: Include <windows.h> also on Cygwin.
14219                 (find_executable): Add support for Cygwin.
14220                 (set_program_name_and_installdir): Handle also platforms with
14221                 nonempty EXEEXT.
14222
14223         2006-07-11  Bruno Haible  <bruno@clisp.org>
14224
14225                 * javacomp.c: Fix a comment.
14226                 Reported by Jim Meyering.
14227
14228         2006-04-30  Bruno Haible  <bruno@clisp.org>
14229
14230                 * javacomp.h (compile_java_class): Add source_version,
14231                 target_version arguments.
14232                 * javacomp.c: Rewritten to choose only a compiler that
14233                 respects the specified source_version and target_version.
14234
14235         2006-06-27  Bruno Haible  <bruno@clisp.org>
14236
14237                 Assume correct S_ISDIR macro.
14238                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
14239
14240         2006-07-22  Bruno Haible  <bruno@clisp.org>
14241
14242                 * javaversion.h: New file, from GNU gettext.
14243                 * javaversion.c: New file, from GNU gettext.
14244                 * javaversion.java: New file, from GNU gettext.
14245                 * javaversion.class: New file, from GNU gettext.
14246
14247         2006-05-17  Bruno Haible  <bruno@clisp.org>
14248
14249                 Cygwin portability.
14250                 * javaexec.c (execute_java_class): Test for jview program
14251                 also on Cygwin.
14252
14253         2006-04-09  Bruno Haible  <bruno@clisp.org>
14254
14255                 * fatal-signal.c: Don't include string.h.
14256                 (at_fatal_signal): Use a copying loop instead of memcpy.
14257
14258         2005-12-04  Bruno Haible  <bruno@clisp.org>
14259
14260                 * csharpexec.c: Add support for 'clix' launcher (untested).
14261                 (execute_csharp_using_sscli): New function.
14262                 (execute_csharp_program): Call it.
14263
14264         2006-06-21  Bruno Haible  <bruno@clisp.org>
14265
14266                 Avoid warnings from recent versions of mcs.
14267                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
14268                 -o, -L, -r any more. Use options documented since mcs-1.0
14269                 instead. Similarly for -g.
14270
14271         2005-07-09  Bruno Haible  <bruno@clisp.org>
14272
14273                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
14274                 add a .dll suffix.
14275                 Reported by Mark Junker <mjscod@gmx.de>.
14276
14277         2006-06-17  Bruno Haible  <bruno@clisp.org>
14278
14279                 * config.charset: Update for NetBSD 3.0.
14280
14281         2006-05-17  Bruno Haible  <bruno@clisp.org>
14282
14283                 Cygwin portability.
14284                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
14285
14286         2006-05-16  Bruno Haible  <bruno@clisp.org>
14287
14288                 * localcharset.c [CYGWIN]: Include <windows.h>.
14289                 (get_charset_aliases): For Cygwin, return the same CPxxx
14290                 aliases list as under WIN32.
14291                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
14292                 the environment variables. Fall back to GetACP().
14293
14294         2006-04-05  Bruno Haible  <bruno@clisp.org>
14295
14296                 * config.charset: Update Juan Manuel Guerrero's address.
14297
14298         2005-02-12  Bruno Haible  <bruno@clisp.org>
14299
14300                 * allocsa.h: Add extern "C" for C++.
14301
14302         2005-02-10  Bruno Haible  <bruno@clisp.org>
14303
14304                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
14305                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
14306
14307         2006-07-22  Bruno Haible  <bruno@clisp.org>
14308
14309                 * gettext.h: Update to GNU gettext-0.15.
14310
14311 2006-07-22  Bruno Haible  <bruno@clisp.org>
14312
14313         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
14314         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
14315         lib-prefix.m4, longdouble.m4, ssize_t.m4.
14316
14317 2006-07-21  Eric Blake  <ebb9@byu.net>
14318
14319         * modules/stdlib-safer: New file.
14320         * MODULES.html.sh (File stream based Input/Output): Add
14321         stdlib-safer.
14322
14323 2006-07-21  Eric Blake  <ebb9@byu.net>
14324
14325         * lib/stdlib-safer.h: New file from coreutils, required by
14326         stdlib--.h.
14327
14328 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
14329
14330         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
14331
14332 2006-07-20  Bruno Haible  <bruno@clisp.org>
14333
14334         * gnulib-tool: Recognize new option --assume-autoconf.
14335         (autoconf_minversion): New variable.
14336         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
14337
14338 2006-07-20  Bruno Haible  <bruno@clisp.org>
14339
14340         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
14341
14342 2006-07-19  Derek R. Price  <derek@ximbiot.com>
14343
14344         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
14345         Reindent and repaginate.
14346
14347 2006-07-19  Derek Price  <derek@ximbiot.com>
14348
14349         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
14350         Correct grammar.
14351
14352 2006-07-17  Bruno Haible  <bruno@clisp.org>
14353
14354         * modules/list: New file.
14355         * modules/array-list: New file.
14356         * modules/carray-list, modules/carray-list-tests: New files.
14357         * modules/linked-list, modules/linked-list-tests: New files.
14358         * modules/avltree-list, modules/avltree-list-tests: New files.
14359         * modules/rbtree-list, modules/rbtree-list-tests: New files.
14360         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
14361         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
14362         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
14363         * modules/oset: New file.
14364         * modules/array-oset: New file.
14365         * modules/avltree-oset, modules/avltree-oset-tests: New files.
14366         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
14367         * tests/test-carray_list.c: New file.
14368         * tests/test-linked_list.c: New file.
14369         * tests/test-avltree_list.c: New file.
14370         * tests/test-rbtree_list.c: New file.
14371         * tests/test-linkedhash_list.c: New file.
14372         * tests/test-avltreehash_list.c: New file.
14373         * tests/test-rbtreehash_list.c: New file.
14374         * tests/test-avltree_oset.c: New file.
14375         * tests/test-rbtree_oset.c: New file.
14376         * MODULES.html.sh (Container data structures): New section.
14377
14378 2006-07-17  Bruno Haible  <bruno@clisp.org>
14379
14380         * m4/gl_list.m4: New file.
14381
14382 2006-07-17  Bruno Haible  <bruno@clisp.org>
14383
14384         * lib/gl_list.h: New file.
14385         * lib/gl_list.c: New file.
14386         * lib/gl_array_list.h: New file.
14387         * lib/gl_array_list.c: New file.
14388         * lib/gl_carray_list.h: New file.
14389         * lib/gl_carray_list.c: New file.
14390         * lib/gl_linked_list.h: New file.
14391         * lib/gl_linked_list.c: New file.
14392         * lib/gl_anylinked_list1.h: New file.
14393         * lib/gl_anylinked_list2.h: New file.
14394         * lib/gl_avltree_list.h: New file.
14395         * lib/gl_avltree_list.c: New file.
14396         * lib/gl_anyavltree_list1.h: New file.
14397         * lib/gl_anyavltree_list2.h: New file.
14398         * lib/gl_rbtree_list.h: New file.
14399         * lib/gl_rbtree_list.c: New file.
14400         * lib/gl_anyrbtree_list1.h: New file.
14401         * lib/gl_anyrbtree_list2.h: New file.
14402         * lib/gl_anytree_list1.h: New file.
14403         * lib/gl_anytree_list2.h: New file.
14404         * lib/gl_linkedhash_list.h: New file.
14405         * lib/gl_linkedhash_list.c: New file.
14406         * lib/gl_anyhash_list1.h: New file.
14407         * lib/gl_anyhash_list2.h: New file.
14408         * lib/gl_avltreehash_list.h: New file.
14409         * lib/gl_avltreehash_list.c: New file.
14410         * lib/gl_rbtreehash_list.h: New file.
14411         * lib/gl_rbtreehash_list.c: New file.
14412         * lib/gl_anytreehash_list1.h: New file.
14413         * lib/gl_anytreehash_list2.h: New file.
14414
14415         * lib/gl_oset.h: New file.
14416         * lib/gl_oset.c: New file.
14417         * lib/gl_array_oset.h: New file.
14418         * lib/gl_array_oset.c: New file.
14419         * lib/gl_avltree_oset.h: New file.
14420         * lib/gl_avltree_oset.c: New file.
14421         * lib/gl_rbtree_oset.h: New file.
14422         * lib/gl_rbtree_oset.c: New file.
14423         * lib/gl_anytree_oset.h: New file.
14424
14425 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
14426
14427         * m4/mkancesdirs.m4: New file.
14428         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
14429         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
14430         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
14431         it.
14432
14433 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
14434
14435         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
14436         * lib/mkancesdirs.h: New files.
14437         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
14438         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
14439         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
14440         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
14441         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
14442         callers changed.  Revamp internals significantly, by not
14443         attempting to create directories that are temporarily more
14444         permissive than the final results.  Do not attempt to use
14445         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
14446         This removes some race conditions, fixes some bugs, and simplifies
14447         things.  Use new dirchownmod function to do owner and mode changes.
14448         * lib/mkdir-p.h: Likewise.
14449         * lib/modechange.c (octal_to_mode): New function.
14450         (struct mode_change): New member mentioned.
14451         (make_node_op_equals): New arg mentioned.  All callers changed.
14452         (mode_compile): Keep track of which mode bits the user has explicitly
14453         mentioned.
14454         (mode_adjust): New arg DIR, so that we implement the X op correctly.
14455         New arg PMODE_BITS, to keep track of which mode bits the user
14456         mentioned; it treats S_ISUID and S_ISGID speciall.
14457         All callers changed.
14458         * lib/modechange.h: Likewise.
14459
14460 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
14461
14462         * MODULES.html.sh: Add mkancestors.
14463         * modules/mkancesdirs: New module.
14464         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
14465         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
14466         The chdir-safer and afs files are now orphans; I'll remove them
14467         unless someone speaks up.
14468         Add lib/dirchownmod.c, lib/dirchownmod.h.
14469         (Depends-on): Remove alloca, chown, save-cwd, dirname.
14470         Add lchown, mkancesdirs.
14471         (Maintainer): Add self.
14472
14473 2006-07-15  Karl Berry  <karl@gnu.org>
14474
14475         * gnulib-tool: help message wording/arrangement.
14476
14477 2006-07-14  Simon Josefsson  <jas@extundo.com>
14478
14479         * doc/gnulib.texi (Libtool and Windows): New section.
14480
14481 2006-07-12  Simon Josefsson  <jas@extundo.com>
14482
14483         * modules/gendocs (License): Fix license, approved by Karl.
14484
14485 2006-07-12  Eric Blake  <ebb9@byu.net>
14486
14487         * MODULES.html.sh: Add gendocs.
14488
14489 2006-07-11  Eric Blake  <ebb9@byu.net>
14490
14491         * modules/fdl: New module, to install doc/fdl.texi.
14492         * MODULES.html.sh: Add new section for documentation modules.
14493         * gnulib-tool: Avoid space-tab.
14494         (--doc-base): New option, to manage files from doc.
14495
14496 2006-07-11  Eric Blake  <ebb9@byu.net>
14497
14498         * m4/absolute-header.m4: Fix comments to match recent change.
14499
14500 2006-07-11  Eric Blake  <ebb9@byu.net>
14501
14502         * gnulib-tool: List --doc-base before --tests-base.
14503
14504 2006-07-11  Derek R. Price  <derek@ximbiot.com>
14505
14506         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
14507
14508 2006-07-11  Bruno Haible  <bruno@clisp.org>
14509
14510         * README: Mention where to put documentation.
14511
14512 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14513
14514         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
14515
14516 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
14517
14518         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
14519         to stdint.m4.
14520
14521 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
14522
14523         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
14524         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
14525         "no/such/file/stdint.h" when there is no such file, so that
14526         the resulting C code can be parsed by dodgy compilers.
14527         Problems reported by Bob Proulx.
14528
14529 2006-07-10  Derek R. Price  <derek@ximbiot.com>
14530
14531         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
14532         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
14533         macros into the GNU _D_EXACT_NAMLEN.
14534         * lib/savedir.c:  Likewise.
14535         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
14536
14537 2006-07-10  Derek R. Price  <derek@ximbiot.com>
14538         and Paul Eggert  <eggert@cs.ucla.edu>
14539
14540         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
14541         * m4/savedir.m4:
14542         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
14543         macros into the GNU _D_EXACT_NAMLEN.
14544
14545 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
14546
14547         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
14548         around the absolute name, to work around a problem with the HP-UX
14549         11.23 native C compiler, reported by Bob Proulx.
14550
14551 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
14552
14553         * doc/maintain.texi, make-stds.texi: Sync from
14554         <http://savannah.gnu.org/projects/gnustandards>.
14555
14556 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
14557
14558         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
14559
14560 2006-07-09  Jim Meyering  <jim@meyering.net>
14561
14562         * m4/glob.m4: Remove a doubled word in a comment.
14563
14564 2006-07-09  Jim Meyering  <jim@meyering.net>
14565
14566         * lib/argp-pv.c: Remove a doubled word in a comment.
14567         * lib/check-version.c (check_version): Likewise.
14568         * lib/javacomp.c (compile_java_class): Likewise.
14569
14570 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
14571
14572         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
14573         for the benefit of people using Autoconf 2.60.  If you want to
14574         support older Autoconf versions you can copy m4/onceonly_2_57.m4
14575         (or m4/onceonly.m4, if pre-2.57) manually.
14576
14577 2006-07-08  Jim Meyering  <jim@meyering.net>
14578
14579         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
14580         comment.
14581         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
14582         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
14583         comment.
14584
14585 2006-07-08  Jim Meyering  <jim@meyering.net>
14586
14587         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
14588
14589 2006-07-07  Simon Josefsson  <jas@extundo.com>
14590
14591         * tests/test-crc.c: Change expected crc value, the test vector
14592         were probably computed using the old broken crc.c?
14593
14594 2006-07-06  Simon Josefsson  <jas@extundo.com>
14595
14596         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
14597         now the canonical place for the M4 file).
14598
14599         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
14600         from the sys_socket dependency now.
14601
14602         * modules/inet_pton (Files): Ditto.
14603
14604         * modules/inet_ntop (Files): Ditto.
14605
14606 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
14607
14608         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
14609         not gl_PREREQ_GETUSERSHELL.
14610
14611 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14612
14613         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
14614         with only one argument, for Autoconf 2.60.
14615         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
14616         expand to nothing, so add a shell command to avoid syntax error.
14617         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
14618
14619 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14620
14621         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
14622
14623 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
14624
14625         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
14626         no longer needed.  Check for isblank decl.
14627         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
14628         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
14629         of existence.
14630
14631 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
14632
14633         * lib/getloadavg.c: Use __VMS, not VMS.
14634         * lib/getopt.c: Likewise.
14635         * lib/getpagesize.h: Likewise.
14636         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
14637         and probably does not work.
14638
14639 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
14640
14641         * lib/.cppi-disable: Add wcwidth.
14642         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
14643         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
14644         (ISGRAPH): Remove.  All uses changed to isgraph.
14645         (FOLD) [!defined _LIBC]: Remove special case.
14646         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
14647         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
14648         HAVE_ISBLANK.
14649         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
14650         case.
14651
14652 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
14653
14654         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
14655         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
14656         brackets.  Other minor changes to suppress some compiler
14657         warnings.
14658
14659 2006-07-06  Derek R. Price  <derek@ximbiot.com>
14660         and Paul Eggert  <eggert@cs.ucla.edu>
14661
14662         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
14663         of invoking obsolescent AC_HEADER_DIRENT macro.
14664         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
14665         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
14666         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
14667         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
14668         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
14669         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
14670         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
14671         * m4/readdir.m4: Remove; no longer needed.
14672
14673 2006-07-06  Derek R. Price  <derek@ximbiot.com>
14674         and Paul Eggert  <eggert@cs.ucla.edu>
14675
14676         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
14677         Don't worry about this obsolete case any more.
14678         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
14679         directories.
14680         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
14681         worry about this obsolete case any more.
14682         * lib/fts.c: Likewise.
14683         * lib/getcwd.c: Likewise.
14684         * lib/glob.h: Likewise.
14685         * lib/savedir.c: Likewise.
14686
14687 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
14688
14689         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
14690         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
14691         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
14692         needed.
14693         All uses removed.
14694         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
14695         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
14696         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
14697         needed.
14698         * m4/getdate.m4 (gl_GETDATE): Likewise.
14699         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
14700         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
14701         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
14702         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
14703         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
14704         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
14705         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
14706         needed.
14707
14708 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
14709
14710         * lib/memcasecmp.c: Include <limits.h>.
14711         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
14712         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
14713         Don't assume isdigit succeeds only on '0' through '9'.
14714
14715 2006-07-05  Eric Blake  <ebb9@byu.net>
14716
14717         * modules/getaddrinfo (Depends-on): Add snprintf.
14718
14719 2006-07-05  Eric Blake  <ebb9@byu.net>
14720
14721         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
14722         to avoid 'header present but could not be compiled' on cygwin.
14723
14724 2006-07-05  Eric Blake  <ebb9@byu.net>
14725
14726         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
14727         missing from netdb.h.
14728         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
14729
14730 2006-07-05  Derek R. Price  <derek@ximbiot.com>
14731
14732         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
14733         no longer needed.
14734         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
14735         * m4/getdate.m4 (gl_GETDATE): Likewise.
14736         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
14737         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
14738         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
14739         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
14740         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
14741
14742 2006-07-05  Derek R. Price  <derek@ximbiot.com>
14743
14744         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
14745         All uses of is_space replaced by isspace.
14746         * lib/exit.h: Don't talk about STDC_HEADERS.
14747         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
14748         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
14749         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
14750         replaced by isprint etc.
14751         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
14752         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
14753         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
14754         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
14755         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
14756         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
14757
14758 2006-07-05  Bruno Haible  <bruno@clisp.org>
14759
14760         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
14761         the function exists, before testing against AIX.
14762         Reported by Martin Lambers <marlam@marlam.de>.
14763
14764 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
14765
14766         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
14767         From Mark D. Baushke.
14768
14769 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
14770
14771         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
14772         to the absolute name, not just one, to bypass Sun C 5.8's
14773         "warning: #include of /usr/include/... may be non-portable".
14774
14775 2006-07-04  Eric Blake  <ebb9@byu.net>
14776
14777         * modules/dirname-tests: New test module.
14778         * tests/test-dirname.c: New file, replacing dirname.c
14779         TEST_DIRNAME section that was recently deleted.
14780
14781 2006-07-04  Bruno Haible  <bruno@clisp.org>
14782
14783         Assume ANSI C header files and <ctype.h> functions.
14784         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
14785         (mbsnwidth): Use isprint, iscntrl instead.
14786
14787 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
14788
14789         Merge from coreutils.
14790         * MODULES.html.sh: Add xstrtold.
14791         * modules/xstrtold: New file.
14792         * modules/cycle-check (Files): Add lib/same-inode.h.
14793         * modules/dirname (Files): Add m4/double-slash-root.m4.
14794         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
14795         * modules/mkdir-p (Files): Add lib/same-inode.h.
14796         * modules/same (Files): Add lib/same-inode.h.
14797
14798 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
14799
14800         * m4/absolute-header.m4: Renamed from full-header-path.m4.
14801         This is to keep the terminology clean; POSIX talks about
14802         "absolute pathnames", not "full pathnames", but the GNU
14803         Coding Standards say to use "path" for something else;
14804         so use "absolute" to keep both sides happy.
14805         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
14806         Set gl_absolute_header, not gl_full_header_path.
14807         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
14808         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
14809         All uses changed.
14810
14811         Merge from coreutils.
14812
14813         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
14814
14815         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
14816         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
14817         want to require the building of c-strtod.o.
14818         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
14819         needs -lm directly.
14820         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
14821
14822         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
14823
14824         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
14825         --as-needed option if available.  Problem reported by Albert Chin in
14826         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
14827         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
14828         cc merely issues a bunch of annoying warnings for --as-needed
14829         (this problem was reported by Bob Proulx).  Also, try linking with
14830         -lm to detect a bug in binutils 2.16 (this problem was reported
14831         by Ralf Wildenhues).
14832
14833         2006-06-18  Jim Meyering  <jim@meyering.net>
14834
14835         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
14836         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
14837         macro.
14838         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
14839         also check for glibc-2.4's abort-inducing bug.
14840
14841         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
14842         Low-probability clean-up should be to use rmdir to get rid of
14843         the just-created directory, not unlink.
14844
14845         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
14846         configure fail, and request a bug report to inform us about it.
14847         Add a comment that, barring reports to the contrary, in 2007 we'll
14848         assume ftruncate is universally available.
14849
14850         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
14851
14852         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
14853
14854         2006-03-12  Jim Meyering  <jim@meyering.net>
14855
14856         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
14857         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
14858         * m4/same.m4 (gl_SAME): Likewise.
14859         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
14860
14861         2006-03-11  Eric Blake  <ebb9@byu.net>
14862
14863         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
14864         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
14865         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
14866         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
14867
14868 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
14869
14870         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
14871         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
14872         reported by Mark D. Baushke, one in
14873         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
14874
14875         Merge from coreutils.
14876
14877         * lib/.cppi-disable: Add stdint_.h.
14878         * lib/.cvsignore: Add stdint.h.
14879
14880         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
14881
14882         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
14883         both double and long double versions.
14884         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
14885         * lib/xstrtold.c: New file.
14886         * lib/xstrtod.h (xstrtold): New decl.
14887
14888         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
14889
14890         * lib/filemode.c (setst): Remove.
14891         (strmode): Rewrite to avoid setst.  This makes the code shorter,
14892         (arguably) clearer, and the generated code is a bit smaller on my
14893         Debian GNU/Linux stable x86 host.
14894
14895         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
14896
14897         * lib/filemode.c: Include "filemode.h" first, to test the interface.
14898         Assume that filemode.h includes sys/types.h and sys/stat.h.
14899         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
14900         (ftypelet): Reorder to put common cases first, for efficiency.
14901         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
14902         to do 'M'.
14903         (strmode): Renamed from mode_string, and now stores 12 bytes instead
14904         of 10, for compatibility with FreeBSD.  All callers changed.
14905         (filemodestring): Now stores 12 bytes instead of 10, and sets file
14906         types that can't be deduced solely from st_mode.  First arg is now a
14907         const pointer.
14908         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
14909         (strmode): Renamed from mode_string.
14910         (filemodestring): New decl.
14911         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
14912         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
14913         needed.
14914         (S_ISPORT, S_ISWHT): New macros, if not already defined.
14915
14916         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
14917
14918         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
14919         fsusage.h now does that.  Include fsusage.h first, to test interface.
14920         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
14921         at most one method (the old code could have generated decls that
14922         didn't conform to C89, not that this was ever exercised).
14923         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
14924
14925         2006-03-19  Jim Meyering  <jim@meyering.net>
14926
14927         Work even in a chroot where d_ino values for entries in "/"
14928         don't match the stat.st_ino values for the same names.
14929         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
14930         number, iterate through all entries again, using lstat instead.
14931         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
14932         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
14933
14934         * lib/getcwd.c (__getcwd): Clarify a comment.
14935         Use memcpy in place of a call to strcpy.
14936
14937         2006-03-12  Jim Meyering  <jim@meyering.net>
14938
14939         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
14940         matches that of the current directory (which we're about to chdir ".."
14941         out of), then save the dev-ino of the parent, instead.
14942
14943         * lib/same-inode.h (SAME_INODE): New file/macro.
14944         * lib/chdir-safer.c (SAME_INODE): Remove definition.
14945         Include "same-inode.h", instead.
14946         * lib/same.c: Likewise.
14947         * lib/cycle-check.h: Include "same-inode.h".
14948         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
14949         * lib/cycle-check.c (SAME_INODE): Remove definition.
14950         * lib/root-dev-ino.h: Include "same-inode.h".
14951
14952         2006-03-11  Eric Blake  <ebb9@byu.net>
14953
14954         * lib/same.c (same_name): s/base_name/last_component/
14955         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
14956         * lib/filenamecat.c (file_name_concat): Likewise.
14957
14958         2006-03-11  Eric Blake  <ebb9@byu.net>,
14959                     Paul Eggert  <eggert@cs.ucla.edu>
14960
14961         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
14962         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
14963         drive prefix.
14964         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
14965         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
14966         (last_component): New method.
14967         * lib/dirname.c (dir_len): Determine when drive letters need a
14968         subsequent slash.  Preserve // when it is special.
14969         (dir_name): Don't append dot when drive letter is absolute.
14970         [TEST_DIRNAME]: Move into a full-blown gnulib test.
14971         * lib/basename.c (base_name): New semantics - malloc the result.
14972         Preserve // when it is special.  Preserve relative files that look
14973         like drive letters.
14974         (base_len): Preserve // when it is special.
14975         (last_component): New method, similar to old base_name semantics.
14976         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
14977         base_name.  Strip redundant slashes from ///.
14978
14979 2006-07-03  Jim Meyering  <jim@meyering.net>
14980
14981         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
14982         macro is used before the first cycle_check call.
14983
14984 2006-07-03  Eric Blake  <ebb9@byu.net>
14985
14986         * modules/dirname (Depends-on): Add xstrndup.
14987
14988 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
14989
14990         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
14991         test cases, so that config.log is a bit easier to follow.
14992
14993 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
14994
14995         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
14996         both are 64 bits, since this seems to be the tradition, and this
14997         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
14998         we ever run into a host that prefers long long to long in this
14999         case, we'll need another configure-time test.  Problem reported by
15000         Jim Meyering.
15001
15002 2006-07-02  Eric Blake  <ebb9@byu.net>
15003
15004         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
15005
15006 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15007
15008         * modules/inttypes (Depends-on): No longer depends on stdint.
15009         * modules/stdint (Description): Say more about assumptions.
15010         Say that the fast types might differ.  Say macros are used.
15011         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
15012         (Makefile.am): Revise list of substituted symbols to match
15013         new stdint.m4.
15014         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
15015         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
15016         * tests/test-stdint.c (verify_same_types)
15017         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
15018         the code conforms to C99/C89.
15019         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
15020         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
15021
15022 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15023
15024         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
15025         but fix a bug, by requiring at least 64 bits.
15026         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
15027         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
15028         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
15029         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
15030
15031         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
15032         changes.  Make 2.59 a prerequisite.  Check and substitute for
15033         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
15034         inttypes.h.  Do not use special include files; just use the
15035         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
15036         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
15037         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
15038         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
15039         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
15040         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
15041         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
15042         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
15043         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
15044         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
15045         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
15046         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
15047         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
15048         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
15049         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
15050         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
15051         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
15052         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
15053         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
15054         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
15055         WINT_MAX.  Check for C99 conformance more strictly, by detecting
15056         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
15057         not check for things that C99 does not require, e.g., int8_t.  If
15058         a test isn't needed unless <stdint.h> isn't working, and is
15059         unlikely to be needed for any other reason, then don't do it
15060         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
15061         size_t, since we assume C89 freestanding at least.  Do not check
15062         for sig_atomic_t, wchar_t, or wint_t, since the code now does
15063         the right thing even if the types are not defined.  Instead use:
15064         (gl_STDINT_TYPE_PROPERTIES): New macro.
15065         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
15066         testing whether <sys/types.h> clashes, as Autoconf does this for
15067         us now.  All uses removed.
15068         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
15069         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
15070         (gl_CHECK_TYPE_SAME):
15071         Remove; no longer needed.
15072         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
15073         exists, since we'll return 0 anyway in that case.
15074         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
15075
15076 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
15077
15078         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
15079         possible collision with system files.
15080         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
15081         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
15082         WCHAR_MIN and WCHAR_MAX in this case.
15083         (<stddef.h>): Do not include; no longer needed.
15084         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
15085         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
15086         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
15087         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
15088         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
15089         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
15090         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
15091         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
15092         !defined(__c99))]: Include in this case too, since it's harmless
15093         now.
15094         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
15095         dangerous to do so.
15096         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
15097         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
15098         (_STDINT_MIN, _STDINT_MAX): New macros.
15099         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
15100         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
15101         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
15102         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
15103         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
15104         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
15105         macros, not typedefs; this simplifies things quite a bit.
15106         Use long int for all types narrower than int64_t.
15107         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
15108         Define in terms of long long int or int64_t or long int,
15109         not int64_t or int32_t.  This saves some compile-time testing.
15110         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
15111         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
15112         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
15113         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
15114         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
15115         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
15116         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
15117         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
15118         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
15119         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
15120         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
15121         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
15122         undef any previous version and define our own version, for
15123         simplicity and consistency with the new macros for types.
15124         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
15125         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
15126         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
15127         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
15128         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
15129         @WINT_T_SUFFIX@ to keep things simple here.
15130         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
15131         Simplify by assuming typical 8/16/32/64 host, since we're
15132         already doing that elsewhere anyway.
15133         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
15134         and assume long long int is 64 bits if available.  This
15135         speeds up 'configure'.
15136
15137 2006-07-01  Eric Blake  <ebb9@byu.net>
15138
15139         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
15140         Reported by Andreas Buening.
15141
15142 2006-07-01  Eric Blake  <ebb9@byu.net>
15143
15144         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
15145
15146 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
15147
15148         * lib/getaddrinfo.c: fixed typo
15149
15150 2006-06-29  Jim Meyering  <jim@meyering.net>
15151
15152         * modules/strftime (Maintainer): Add my name, since with the
15153         FPRINTFTIME changes strftime.c has forked from glibc.
15154
15155 2006-06-29  Eric Blake  <ebb9@byu.net>
15156
15157         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
15158
15159 2006-06-29  Eric Blake  <ebb9@byu.net>
15160
15161         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
15162
15163 2006-06-29  Eric Blake  <ebb9@byu.net>
15164
15165         * lib/stat_.h: New file.
15166
15167 2006-06-29  Eric Blake  <ebb9@byu.net>
15168
15169         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
15170         unused static function.
15171
15172 2006-06-29  Eric Blake  <ebb9@byu.net>
15173
15174         * doc/functions.texi (Function Portability): Document missing lstat
15175         on mingw.
15176
15177 2006-06-29  Eric Blake  <ebb9@byu.net>
15178
15179         * MODULES.html.sh: Add sys_stat.
15180         * modules/sys_stat: New module.
15181         * modules/mkstemp (Depends-on): Add sys_stat.
15182
15183 2006-06-29  Derek R. Price  <derek@ximbiot.com>
15184
15185         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
15186
15187 2006-06-29  Derek R. Price  <derek@ximbiot.com>
15188
15189         * m4/c-bs-a.m4: Removed.
15190
15191 2006-06-29  Derek R. Price  <derek@ximbiot.com>
15192
15193         * lib/strftime.c: Assume strftime() exists.
15194
15195 2006-06-29  Derek Price  <derek@ximbiot.com>
15196
15197         * modules/c-bs-a: Removed - \a is C89.
15198         * MODULES.html.sh: Remove c-bs-a.
15199
15200 2006-06-29  Bruno Haible  <bruno@clisp.org>
15201
15202         * modules/wcwidth (License): Change to LGPL.
15203
15204 2006-06-28  Simon Josefsson  <jas@extundo.com>
15205
15206         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
15207         on _WIN32.
15208
15209         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
15210         getnameinfo.
15211
15212 2006-06-28  Simon Josefsson  <jas@extundo.com>
15213
15214         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
15215
15216 2006-06-28  Simon Josefsson  <jas@extundo.com>
15217
15218         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
15219         functions there.  It will succeed on Windows XP, but on Windows
15220         2000 and (presumably) earlier, it will fail, and use the internal
15221         re-implementation.
15222         (use_win32_p): New function.
15223         (getaddrinfo): Use strtoul on servname, to support numeric ports.
15224         Support AI_NUMERICSERV to disable getservbyname.
15225         (getnameinfo): New function, only supports
15226         NI_NUMERICHOST|NI_NUMERICSERV for now.
15227
15228         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
15229         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
15230         getnameinfo.
15231
15232 2006-06-28  Eric Blake  <ebb9@byu.net>
15233
15234         * modules/wcwidth: New file.
15235         * modules/mbchar (Depends-on): Add wcwidth.
15236         * modules/mbswidth (Depends-on): Add wcwidth.
15237         * MODULES.html.sh: Add wcwidth.
15238
15239 2006-06-28  Eric Blake  <ebb9@byu.net>
15240
15241         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
15242         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
15243
15244 2006-06-28  Eric Blake  <ebb9@byu.net>
15245
15246         * lib/xvasprintf.h: Fix comments.
15247
15248 2006-06-28  Eric Blake  <ebb9@byu.net>
15249
15250         * lib/mbchar.h (wcwidth): Include wcwidth.h.
15251         * lib/mbswidth.c (wcwidth): Move from here...
15252         * lib/wcwidth.h: ...to this new file.
15253
15254 2006-06-28  Derek R. Price  <derek@ximbiot.com>
15255
15256         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
15257
15258         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
15259         it's obsolete.
15260         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
15261
15262 2006-06-28  Derek R. Price  <derek@ximbiot.com>
15263
15264         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
15265         Autoconf 2.60 says this stuff was obsolete.
15266
15267 2006-06-28  Bruno Haible  <bruno@clisp.org>
15268
15269         * modules/wcwidth (Files): Add m4/wchar_t.m4.
15270
15271 2006-06-28  Bruno Haible  <bruno@clisp.org>
15272
15273         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
15274         gt_TYPE_WCHAR_T.
15275
15276 2006-06-28  Bruno Haible  <bruno@clisp.org>
15277
15278         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
15279         declaration for wcwidth.
15280         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
15281
15282 2006-06-28  Bruno Haible  <bruno@clisp.org>
15283
15284         * lib/mkdtemp.c [MINGW]: Include <io.h>.
15285         (mkdir): Define using _mkdir.
15286
15287 2006-06-28  Bruno Haible  <bruno@clisp.org>
15288
15289         * lib/getaddrinfo.h: Fix POSIX URL.
15290         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
15291         _WIN32.
15292         (use_win32_p): Make static.
15293         (getaddrinfo): Reject service name if it is empty or does not consist
15294         solely of decimal digits, or if its value is > 65535.
15295         (getnameinfo): Remove useless casts.
15296
15297 2006-06-27  Simon Josefsson  <jas@extundo.com>
15298
15299         * modules/sys_select: New file, suggested by Bruno Haible, Paul
15300         Eggert and Martin Lambers.
15301
15302 2006-06-27  Simon Josefsson  <jas@extundo.com>
15303
15304         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
15305         Eggert and Martin Lambers.
15306
15307 2006-06-27  Bruno Haible  <bruno@clisp.org>
15308
15309         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
15310         result to 0, not to empty.
15311         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
15312
15313 2006-06-27  Bruno Haible  <bruno@clisp.org>
15314
15315         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
15316
15317 2006-06-26  Simon Josefsson  <jas@extundo.com>
15318
15319         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
15320         present.
15321
15322 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
15323
15324         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
15325         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
15326         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
15327
15328 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
15329
15330         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
15331
15332 2006-06-26  Bruno Haible  <bruno@clisp.org>
15333
15334         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
15335
15336 2006-06-26  Bruno Haible  <bruno@clisp.org>
15337
15338         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
15339
15340 2006-06-26  Bruno Haible  <bruno@clisp.org>
15341
15342         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
15343         SGI C compiler in pre-C99 mode.
15344         Suggested by Mark D. Baushke and Larry Jones.
15345
15346 2006-06-26  Bruno Haible  <bruno@clisp.org>
15347
15348         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
15349         WCHAR_MAX.
15350         Reported by Mark D. Baushke and Larry Jones.
15351
15352 2006-06-26  Bruno Haible  <bruno@clisp.org>
15353
15354         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
15355         in pre-C99 mode.
15356         Suggested by Mark D. Baushke and Larry Jones.
15357
15358 2006-06-23  Simon Josefsson  <jas@extundo.com>
15359             Bruno Haible  <bruno@clisp.org>
15360
15361         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
15362         Emit mostlyclean-local rule.
15363         (func_emit_tests_Makefile_am): Likewise.
15364         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
15365
15366 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
15367
15368         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
15369
15370 2006-06-23  Bruno Haible  <bruno@clisp.org>
15371
15372         * tests/test-stdint.c: Update to match ISO C 99 Technical
15373         Corrigendum 1.
15374
15375 2006-06-23  Bruno Haible  <bruno@clisp.org>
15376
15377         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
15378
15379 2006-06-23  Bruno Haible  <bruno@clisp.org>
15380
15381         * lib/stdint_.h: Treat IRIX like OpenBSD.
15382
15383 2006-06-23  Bruno Haible  <bruno@clisp.org>
15384
15385         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
15386         ISO C 99 Technical Corrigendum 1.
15387
15388 2006-06-22  Simon Josefsson  <jas@extundo.com>
15389
15390         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
15391         MinGW.
15392
15393 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
15394
15395         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
15396         needed.  Some compiler complained about some of them.  Problem reported
15397         by Larry Jones in
15398         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
15399
15400 2006-06-21  Simon Josefsson  <jas@extundo.com>
15401
15402         * tests/test-getaddrinfo.c: New file.
15403
15404         * modules/getaddrinfo-tests: New file.
15405
15406         * MODULES.html.sh: Add inet_pton.
15407
15408         * modules/inet_pton: New file.
15409
15410 2006-06-21  Simon Josefsson  <jas@extundo.com>
15411
15412         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
15413         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
15414         of using the (limited) gnulib implementation on Windows XP.
15415
15416         * m4/inet_pton.m4: New file.
15417
15418 2006-06-21  Simon Josefsson  <jas@extundo.com>
15419
15420         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
15421         variable.
15422
15423         * lib/socket_.h: Don't define WINVER.
15424
15425         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
15426         slightly modified to work in gnulib.
15427
15428 2006-06-21  Simon Josefsson  <jas@extundo.com>
15429
15430         * doc/gnulib.texi (Windows sockets): Add.
15431
15432 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
15433
15434         * lib/read-file.c (fread_file): Start with buffer allocation of
15435         0 bytes rather than 1 byte; this simplifies the code.
15436         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
15437         code to free buffer and save/restore errno.
15438         (internal_read_file): Remove unused local.
15439
15440 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
15441
15442         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
15443         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
15444         Problem reported by Denis Excoffier in
15445         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
15446
15447 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15448
15449         * modules/sys_socket, modules/socklen: Include sys/types since
15450         FreeBSD 4.x's sys/socket.h needs it.
15451
15452 2006-06-19  Simon Josefsson  <jas@extundo.com>
15453
15454         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
15455
15456 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
15457
15458         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
15459
15460 2006-06-19  Bruno Haible  <bruno@clisp.org>
15461
15462         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
15463         and FULL_PATH_INTTYPES_H in angle brackets.
15464         Reported by Mark D. Baushke <mdb@gnu.org>.
15465
15466 2006-06-17  Eric Blake  <ebb9@byu.net>
15467
15468         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
15469         errno.
15470
15471 2006-06-17  Bruno Haible  <bruno@clisp.org>
15472
15473         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
15474         <sys/inttypes.h>.
15475
15476 2006-06-17  Bruno Haible  <bruno@clisp.org>
15477
15478         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
15479         whether errno is declared. Assume <errno.h> declares errno.
15480
15481 2006-06-17  Bruno Haible  <bruno@clisp.org>
15482
15483         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
15484
15485 2006-06-17  Bruno Haible  <bruno@clisp.org>
15486
15487         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
15488         problem on Solaris 2.5.1.
15489
15490 2006-06-16  Eric Blake  <ebb9@byu.net>
15491
15492         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
15493         * lib/unicodeio.c [!defined errno]: Likewise.
15494         * lib/strtol.c [!defined errno]: Likewise.
15495         * lib/strtod.c [!defined errno]: Likewise.
15496
15497 2006-06-15  Eric Blake  <ebb9@byu.net>
15498
15499         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
15500
15501 2006-06-15  Eric Blake  <ebb9@byu.net>
15502
15503         * config/srclist.txt (ssize_t.m4): Lose sync.
15504
15505 2006-06-15  Bruno Haible  <bruno@clisp.org>
15506
15507         * modules/stdint (Files): Include m4/full-header-path.m4,
15508         m4/size_max.m4, m4/wchar_t.m4.
15509         (Makefile.am): Many more substitutions.
15510         * modules/stdint-tests: New file.
15511         * tests/test-stdint.c: New file.
15512
15513 2006-06-15  Bruno Haible  <bruno@clisp.org>
15514
15515         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
15516         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
15517         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
15518         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
15519         gl_CHECK_TYPE_SAME): New macros.
15520
15521 2006-06-15  Bruno Haible  <bruno@clisp.org>
15522
15523         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
15524
15525 2006-06-15  Bruno Haible  <bruno@clisp.org>
15526
15527         * lib/stdint_.h: Rewritten to be fully auto-configured.
15528         Fixes bug on HP-UX/IA64.
15529
15530 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
15531
15532         * lib/getdate.y (__attribute__): Don't define if already defined.
15533         Problem reported by Larry Jones.
15534         * lib/utimens.c (__attribute__): Likewise.
15535
15536 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
15537
15538         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
15539         reported by Andreas Schwab.
15540
15541 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15542             Bruno Haible  <bruno@clisp.org>
15543
15544         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
15545         check for the declaration of strnlen and a run test that exposes the
15546         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
15547         rpl_strndup.
15548
15549 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15550             Bruno Haible  <bruno@clisp.org>
15551
15552         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
15553
15554 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15555
15556         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
15557         compile test, for Tru64 4.0D.
15558
15559 2006-05-28  Karl Berry  <karl@gnu.org>
15560
15561         * config/srclist.txt (printf-args.c): lose sync.
15562
15563 2006-05-26  Martin Lambers  <marlam@marlam.de>
15564
15565         * lib/getpass.c: Updates the test for the native W32 API, and adds
15566         missing includes, thus fixing compilation warnings.
15567
15568 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
15569
15570         * lib/exclude.c (exclude_fnmatch): New function.
15571         (excluded_file_name): Call exclude_fnmatch.
15572         * lib/exclude.h (excluded_file_name): New prototype
15573
15574 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
15575
15576         * lib/tempname.c (small_open, large_open): New macros.
15577         (__open, __open64) [!_LIBC]: Remove.
15578         (__gen_tempname): Use small_open and large_open instead of __open
15579         and __open64.  This fixes a portability bug on HP-UX 11.11i
15580         reported by Simon Wing-Tang in
15581         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
15582
15583 2006-05-24  Bruno Haible  <bruno@clisp.org>
15584
15585         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
15586         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
15587         Reported by Thorsten Maerz <torte@netztorte.de> via
15588         Aaron Stone <aaron@serendipity.cx>.
15589
15590 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
15591
15592         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
15593         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
15594         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
15595         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
15596         not really conditional on the cache.
15597         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
15598
15599 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
15600
15601         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
15602         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
15603         (my_usleep): Don't mishandle maximum value.
15604
15605 2006-05-19  Jim Meyering  <jim@meyering.net>
15606
15607         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
15608
15609 2006-05-17  Bruno Haible  <bruno@clisp.org>
15610
15611         Cygwin portability.
15612         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
15613
15614 2006-05-17  Bruno Haible  <bruno@clisp.org>
15615
15616         * lib/stdint_.h: Fix recognition of Cygwin.
15617
15618 2006-05-15  Bruno Haible  <bruno@clisp.org>
15619
15620         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
15621         on libtool patch by Ralf Wildenhues.
15622
15623 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
15624
15625         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
15626         test for C99 conformance; (bool) 0.5 is an integer constant
15627         expression, but (bool) -0.5 is not.  Problem reported by Fedor
15628         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
15629
15630 2006-05-11  Simon Josefsson  <jas@extundo.com>
15631
15632         * m4/xvasprintf.m4: Fix obvious typo.
15633
15634 2006-05-11  Jim Meyering  <jim@meyering.net>
15635
15636         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
15637         James Lemley.
15638
15639 2006-05-10  Simon Josefsson  <jas@extundo.com>
15640
15641         * lib/md4.c: Typo fix, update copyright years.
15642         (K1, K2): Don't use L because it turn computations into 64-bit on
15643         64-bit platforms.
15644
15645 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
15646
15647         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
15648         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
15649         unwanted sign propagation, e.g., on hosts with 64-bit int.
15650         There still are some problems with reeelly weird theoretical hosts
15651         (e.g., 33-bit int) but it's not worth worrying about now.
15652         * lib/sha1.c (rol): Likewise.
15653         (K1, K2, K3, K4): Remove unnecessary L suffix.
15654
15655 2006-05-10  Bruno Haible  <bruno@clisp.org>
15656
15657         * lib/des.c: Cast to avoid warnings.
15658
15659 2006-05-09  Bruno Haible  <bruno@clisp.org>
15660
15661         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
15662         (Depends-on): Depend also on xsize, stdarg.
15663         (configure.ac): Add gl_XVASPRINTF.
15664
15665 2006-05-09  Bruno Haible  <bruno@clisp.org>
15666
15667         * m4/xvasprintf.m4: New file.
15668
15669 2006-05-09  Bruno Haible  <bruno@clisp.org>
15670
15671         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
15672         (EOVERFLOW): Define fallback value.
15673         (xstrcat): New function.
15674         (xvasprintf): Recognize the special case of a string concatenation.
15675
15676 2006-05-08  Eric Blake  <ebb9@byu.net>
15677
15678         * gnulib-tool (func_version): Base copyright year on CVS date.
15679         (func_emit_copyright_notice): New function.
15680         (func_emit_lib_Makefile_am): Use it.
15681         (func_emit_tests_Makefile_am): Likewise.
15682         (func_import): Likewise.
15683
15684 2006-05-08  Bruno Haible  <bruno@clisp.org>
15685
15686         * modules/stdarg: New file.
15687         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
15688
15689 2006-05-08  Bruno Haible  <bruno@clisp.org>
15690
15691         * m4/stdarg.m4: New file, from GNU gettext.
15692
15693 2006-05-08  Bruno Haible  <bruno@clisp.org>
15694
15695         * config/srclist.txt (build-aux/config.rpath): different from latest
15696         release.
15697
15698 2006-05-08  Bruno Haible  <bruno@clisp.org>
15699
15700         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
15701
15702 2006-05-05  Jim Meyering  <jim@meyering.net>
15703
15704         * m4/warning.m4: New file, derived from bison's file by the same name.
15705
15706 2006-05-03  Bruno Haible  <bruno@clisp.org>
15707
15708         * lib/stdint_.h: Shorter URL.
15709         * lib/inttypes.h: Likewise.
15710
15711 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
15712
15713         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
15714
15715 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
15716
15717         * lib/verify.h: Document the internals better.  Most of this change
15718         was written by Bruno Haible.
15719
15720 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
15721
15722         * doc/verify.texi: New file, partly based on a proposal by
15723         Bruno Haible.
15724
15725 2006-05-02  Bruno Haible  <bruno@clisp.org>
15726
15727         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
15728         test from here...
15729         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
15730
15731 2006-04-29  Bruno Haible  <bruno@clisp.org>
15732
15733         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
15734         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
15735
15736 2006-04-29  Bruno Haible  <bruno@clisp.org>
15737
15738         * gnulib-tool: Make --update option actually work.
15739
15740 2006-04-29  Bruno Haible  <bruno@clisp.org>
15741
15742         * doc/gcd.texi: New file.
15743         * doc/gnulib.texi: Include it.
15744
15745 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
15746
15747         * lib/getdate.y (get_date): When adding relative date, start with the
15748         initial time, not with the result of the first mktime call.
15749
15750 2006-04-25  Bruno Haible  <bruno@clisp.org>
15751
15752         * gnulib-tool (func_import): Output the include directives in three
15753         blocks, sorted separately.
15754         Reported by Ben Pfaff <blp@cs.stanford.edu>.
15755
15756 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
15757
15758         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
15759         to define main with arguments, for C++.  Reported by Eric Blake.
15760         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
15761         Prefer 'int main ()' to 'int main (void)', for C++.
15762         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
15763         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
15764         for 'main', for C99 and C++.
15765
15766 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
15767
15768         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
15769         Don't assume that exit status -1 is valid.
15770         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
15771         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
15772         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
15773         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
15774         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
15775         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
15776         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
15777         functions can be used without declaring them, or that you can
15778         exit with status -1.
15779         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
15780
15781 2006-04-24  Karl Berry  <karl@gnu.org>
15782
15783         * config/srclist.txt (longdouble.m4): sync lost.
15784
15785 2006-04-24  Eric Blake  <ebb9@byu.net>
15786
15787         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
15788
15789 2006-04-24  Bruno Haible  <bruno@clisp.org>
15790
15791         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
15792         poll() implementation in AIX.
15793         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15794
15795 2006-04-24  Bruno Haible  <bruno@clisp.org>
15796
15797         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
15798         assigned exactly once.
15799
15800 2006-04-23  Claudio Fontana  <claudio@gnu.org>
15801             Bruno Haible  <bruno@clisp.org>
15802
15803         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
15804         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
15805         for AM_CPPFLAGS.
15806
15807 2006-04-23  Bruno Haible  <bruno@clisp.org>
15808
15809         * modules/copy-file: Depend on unistd.
15810         * modules/execute: Likewise.
15811         * modules/fatal-signal: Likewise.
15812         * modules/findprog: Likewise.
15813         * modules/mkdtemp : Likewise.
15814         * modules/pipe: Likewise.
15815         * modules/wait-process: Likewise.
15816
15817 2006-04-23  Bruno Haible  <bruno@clisp.org>
15818
15819         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
15820         condition was already detected.
15821         Reported by Ben Pfaff <blp@cs.stanford.edu>.
15822
15823 2006-04-23  Bruno Haible  <bruno@clisp.org>
15824
15825         * lib/copy-file.c: Include <unistd.h> unconditionally.
15826         * lib/execute.c: Likewise.
15827         * lib/fatal-signal.c: Likewise.
15828         * lib/findprog.c: Likewise.
15829         * lib/mkdtemp.c: Likewise.
15830         * lib/pipe.h: Likewise.
15831         * lib/pipe.c: Likewise.
15832         * lib/wait-process.h: Likewise.
15833
15834 2006-04-23  Bruno Haible  <bruno@clisp.org>
15835
15836         * gnulib-tool (func_usage): Fix --import description. Document
15837         --update.
15838         (func_import): Create temporary file in a temporary directory, if
15839         --dry-run is specified. Silence errors from 'grep' when there are no
15840         m4 files in $m4dir.
15841         (func_create_testdir): Silence errors from 'grep' when there are no
15842         m4 files in $m4dir.
15843         Reported by Karl Berry <karl@freefriends.org>.
15844
15845 2006-04-20  Bruno Haible  <bruno@clisp.org>
15846
15847         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
15848         one argument, so that the code will be portable to Autoconf 2.60.
15849         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
15850         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
15851         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
15852
15853 2006-04-19  Derek Price  <derek@ximbiot.com>
15854             Eric Blake  <ebb9@byu.net>
15855
15856         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
15857         rather than "/full/path.h".  Update comment to match.  Shorten &
15858         generalize m4_translit call via AS_TR_CPP.
15859
15860 2006-04-19  Derek Price  <derek@ximbiot.com>
15861             Eric Blake  <ebb9@byu.net>
15862
15863         * lib/inttypes.h: Correct grammar in comment.
15864
15865 2006-04-18  Derek Price  <derek@ximbiot.com>
15866             Paul Eggert  <eggert@cs.ucla.edu>
15867
15868         * modules/inttypes: New file.
15869         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
15870
15871 2006-04-18  Derek Price  <derek@ximbiot.com>
15872             Paul Eggert  <eggert@cs.ucla.edu>
15873
15874         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
15875         New files.
15876
15877 2006-04-18  Derek Price  <derek@ximbiot.com>
15878             Paul Eggert  <eggert@cs.ucla.edu>
15879
15880         * lib/inttypes.h: New file.
15881         * lib/strtoimax.c: Assume <inttypes.h>.
15882
15883 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
15884
15885         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
15886         isn't mounted.  Problem reported by Kir Kolyshkin.
15887
15888 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
15889
15890         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
15891         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
15892         Derek R. Price.
15893         * lib/regex.h (RE_DUP_MAX): Update comment to match current
15894         implementation.
15895
15896 2006-04-12  Eric Blake  <ebb9@byu.net>
15897
15898         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
15899         is now done automatically by the corresponding Autoconf macro.
15900
15901 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
15902
15903         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
15904         time_r.h.
15905
15906 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
15907
15908         Merge regex changes from libc, removing some of our
15909         POSIX-conformance changes that were rejected and redoing them in a
15910         less-intrusive way.
15911
15912         * lib/regcomp.c (re_compile_internal, init_dfa):
15913         Length arg is now size_t, not Idx.  All uses changed.
15914         (peek_token): Forward decl now says internal_function.
15915         (__re_error_msgid, __re_error_msgid_idx):
15916         Now static rather than extern with attribute_hidden.
15917         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
15918         For some reason libc prefers K&R style defns for external functions.
15919         (regerror) [!defined _LIBC]: Likewise.
15920         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
15921         (seek_collating_symbol_entry, lookup_collation_sequence_value):
15922         (build_range_exp, build_collating_symbol):
15923         Use K&R-style defn.
15924         (re_compile_fastmap): Use '\0' to memset, not 0.
15925         (utf8_sb_map): Make the calculations more obvious.
15926         (init_dfa, parse_bracket_exp, build_charclass_op):
15927         Call calloc and cast result, as glibc does.
15928         (init_word_char, fetch_token, peek_token, peek_token_bracket):
15929         (build_range_exp, build_collating_symbol):
15930         Now internal functions.
15931
15932         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
15933
15934         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
15935         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
15936         Don't depend on VMS; depend on __VMS instead, for POSIX
15937         namespace cleanness.
15938         (regoff_t): Define to ssize_t, not long int.
15939
15940         Remove the REG_ macros named below.  Instead, make the old names
15941         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
15942         __USE_GNU_REGEX.
15943         (REG_BACKSLASH_ESCAPE_IN_LISTS):
15944         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
15945         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
15946         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
15947         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
15948         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
15949         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
15950         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
15951         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
15952         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
15953         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
15954         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
15955         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
15956         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
15957         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
15958         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
15959         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
15960         (REG_NREGS):
15961         Remove.  All uses replaced by the old RE_* names.
15962         (RE_BACKSLASH_ESCAPE_IN_LISTS):
15963         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
15964         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
15965         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
15966         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
15967         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
15968         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
15969         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
15970         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
15971         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
15972         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
15973         Don't bother having these macros be independent of each others'
15974         values, since they no longer exist in the POSIX name space.
15975
15976         Rename the following member names back to their old names,
15977         unless !__USE_GNU_REGEX.  All uses changed back.
15978         (buffer): Renamed from re_buffer.
15979         (allocated): Renamed from re_allocated.
15980         (used): Renamed from re_used.
15981         (syntax): Renamed from re_syntax.
15982         (fastmap): Renamed from re_fastmap.
15983         (translate): Renamed from re_translate.
15984         (can_be_null): Renamed from re_can_be_null.
15985         (regs_allocated): Renamed from re_regs_allocated.
15986         (fastmap_accurate): Renamed from re_fastmap_accurate.
15987         (no_sub): Renamed from re_no_sub.
15988         (not_bol): Renamed from re_not_bol.
15989         (not_eol): Renamed from re_not_eol.
15990         (newline_anchor): Renamed from re_newline_anchor.
15991         (num_regs): Renamed from rm_num_regs.
15992         (start): Renamed from rm_start.
15993         (end): Renamed from rm_end.
15994
15995         (free_state): Move up a bit.
15996
15997         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
15998         #define to be empty.
15999         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
16000         when that is what is intended.
16001         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
16002         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
16003         (MAX): New macro.
16004         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
16005         All uses changed back to re_malloc, etc.  It's now the caller's
16006         responsibility to check for overflow; all callers changed.
16007         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
16008         (re_x2nrealloc): Remove.
16009         (free_state): Remove decl.
16010
16011         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
16012         (re_set_registers, re_exec):
16013         Use K&R-style defn.
16014
16015         2006-01-31  Roland McGrath  <roland@redhat.com>
16016
16017         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
16018         Reported by Mike Frysinger <vapier@gentoo.org>.
16019
16020         2006-01-15  Andreas Jaeger  <aj@suse.de>
16021
16022         [BZ #1950]
16023         * lib/regex_internal.c (re_string_reconstruct): Adjust for
16024         build_wcs_upper_buffer change.
16025         (build_wcs_upper_buffer): Change return type.
16026
16027         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
16028
16029         * lib/regex_internal.h: Include <stdint.h> if available.
16030
16031         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
16032
16033         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
16034
16035         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
16036
16037         * lib/regcomp.c: Adjust for changed secondary hash function.
16038
16039         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
16040
16041         * lib/regex.h: Pretty printing.
16042         Clean up namespace a bit.
16043
16044         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
16045
16046         * lib/regexec.c (update_cur_sifted_state, check_arrival,
16047         check_arrival_add_next_nodes): Avoid using uninitialized variable.
16048
16049         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
16050                     Ulrich Drepper  <drepper@redhat.com>
16051
16052         [BZ #1302]
16053         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
16054         changed.
16055         (bitset_word_t): Renamed from bitset_word.  All uses changed.
16056
16057         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
16058
16059         [BZ #281]
16060         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
16061         * lib/regcomp.c: Remove unnecessary uses of
16062         unsigned RE_TRANSLATE_TYPE.
16063         * lib/regex_internal.h: Likewise.
16064         * lib/regex_internal.c: Likewise.
16065         * lib/regexec.c: Likewise.
16066         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
16067
16068         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
16069
16070         * lib/regexec.c (find_recover_state): Remove unnecessary
16071         initialization.
16072         (transit_state_bkref): Make DFA a const pointer.
16073         (get_subexp): Likewise.
16074         (check_arrival): Likewise.
16075         (update_cur_sifted_state): Likewise.
16076         (re_search_internal): Likewise.
16077         (prune_impossible_nodes): Likewise.
16078         (acquire_init_state_context): Likewise.
16079         (proceed_next_node): Likewise.
16080         (set_regs): Likewise.
16081         (free_fail_stack_return): Likewise.
16082         (check_arrival_expand_ecl): Mark DFA parameter as const.
16083         (check_arrival_expand_ecl_sub): Likewise.
16084         (check_subexp_limits): Likewise.
16085         (sub_epsilon_src_nodes):  Likewise.
16086         (add_epsilon_src_nodes):  Likewise.
16087         (merge_state_array): Likewise.
16088         (update_regs): Likewise.
16089         (build_trtable): Likewise.
16090         (sift_states_backward): Mark MCTX parameter as const.
16091         (build_sifted_states): Likewise.
16092         (update_cur_sifted_state): Likewise.
16093         (sift_states_mkref): Likewise.
16094         (check_arrival_expand_ecl): Mark eclosure as const.
16095         (check_dst_limits_calc_pos_1): Likewise.
16096         * lib/regex_internal.h (re_match_context_t): Make dfa a const
16097         pointer.
16098
16099         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
16100
16101         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
16102         (transit_state_sb): Likewise.
16103         (transit_state_mb): Likewise.
16104         (sift_states_iter_mb): Likewise.
16105         (check_arrival_add_next_nodes): Likewise.
16106         (check_node_accept_bytes): Change first parameter to pointer-to-const.
16107         [_LIBC] (re_search_2_stub): Use mempcpy.
16108
16109         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
16110         mbrtowc for very simple UTF-8 case.
16111
16112         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
16113         a pointer-to-const.
16114         (re_acquire_state_context): Likewise.
16115         * lib/regex_internal.h: Adjust prototypes.
16116
16117         * lib/regex.c: Prevent using C++ compilers.
16118
16119         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
16120         (re_acquire_state_context): Likewise.
16121
16122 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16123
16124         * modules/regex (Depends-on): Add ssize_t.
16125
16126 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16127
16128         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
16129         translation table.
16130
16131 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
16132
16133         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
16134
16135 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
16136             Bruno Haible  <bruno@clisp.org>
16137
16138         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
16139         <sys/types.h> and <inttypes.h>.
16140
16141 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16142
16143         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
16144         `__error_t_defined', so argp.h will not typedef the former.
16145
16146 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
16147
16148         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
16149         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
16150         glibc names.  Even if glibc is changed to conform to POSIX, the
16151         traditional names will be available anyway, since regex depends on
16152         the extensions module.  Also, fix a longstanding typo in the
16153         implementation of Spencer ERE test #75 from grep 2.3.  Problems
16154         reported by Emanuele Giaquinta.  Also, change sense of cached
16155         variable, so that the message makes sense.
16156
16157 2006-03-24  Simon Josefsson  <jas@extundo.com>
16158
16159         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
16160         including some doc fixes.
16161         (base64_encode_alloc): Fix +1 bug on allocation failures.
16162
16163 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16164
16165         * lib/base64.c (base64_encode): Do not read past end of array with
16166         unsanitized input on systems with CHAR_BIT > 8.
16167
16168 2006-03-24  Eric Blake  <ebb9@byu.net>
16169
16170         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
16171
16172 2006-03-22  Karl Berry  <karl@gnu.org>
16173
16174         * config/srclist.txt (*setenv.[ch]): get from coreutils.
16175         * config/srclistvars.sh (COREUTILS): new var.
16176
16177 2006-03-17  Jim Meyering  <jim@meyering.net>
16178
16179         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
16180         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
16181
16182 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
16183
16184         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
16185         no longer needs it.  Instead, check that regoff_t is as least
16186         as wide as ptrdiff_t.
16187
16188         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
16189         so that our regex.h stays compatible with the installed regex.
16190         This is helpful for installers who configure --without-included-regex.
16191         Problem reported by Emanuele Giaquinta.
16192
16193 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
16194
16195         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
16196         Typedef to long int, not to off_, as POSIX will likely change
16197         in that direction.
16198
16199 2006-03-15  Eric Blake  <ebb9@byu.net>
16200
16201         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
16202
16203 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
16204
16205         * lib/argp-help.c (validate_uparams): Fix typo
16206         * lib/argp-parse.c (argp_default_options): Consistently begin help
16207         messages with a lowercase letter.
16208
16209 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
16210
16211         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
16212         overrun buffers and shouldn't be used (much as gets shouldn't be
16213         used).
16214         * lib/time_r.c (asctime_r, ctime_r): Likewise.
16215
16216 2006-03-08  Simon Josefsson  <jas@extundo.com>
16217
16218         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
16219         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16220
16221 2006-03-08  Simon Josefsson  <jas@extundo.com>
16222
16223         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
16224         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16225
16226 2006-03-08  Simon Josefsson  <jas@extundo.com>
16227
16228         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
16229         signal that configure disabled the device.
16230
16231 2006-03-08  Simon Josefsson  <jas@extundo.com>
16232
16233         * build-aux/maint.mk: Fix refresh-po, to handle no translated
16234         languages.
16235
16236 2006-03-07  Simon Josefsson  <jas@extundo.com>
16237
16238         * modules/getopt (Depends-on): Add unistd.
16239
16240         * modules/unistd: New file.
16241
16242 2006-03-07  Simon Josefsson  <jas@extundo.com>
16243
16244         * modules/gc-random: New file.
16245
16246 2006-03-07  Simon Josefsson  <jas@extundo.com>
16247
16248         * m4/unistd_h.m4: New file.
16249
16250 2006-03-07  Simon Josefsson  <jas@extundo.com>
16251
16252         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
16253         test to be side-effect free by storing the result in the cache
16254         variable gl_cv_lib_readline, and moving the assignment of
16255         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
16256         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16257
16258 2006-03-07  Simon Josefsson  <jas@extundo.com>
16259
16260         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
16261         error on missing devices (the functions will return an error).
16262
16263         * m4/gc.m4: Move random stuff to gc-random.m4
16264
16265 2006-03-07  Simon Josefsson  <jas@extundo.com>
16266
16267         * lib/unistd_.h: New file.
16268
16269 2006-03-07  Simon Josefsson  <jas@extundo.com>
16270
16271         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
16272
16273 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
16274
16275         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
16276         Problem reported by Juan Manuel Guerrero.
16277
16278 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
16279
16280         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
16281         the unistd module.
16282         * lib/getlogin_r.c: Likewise.
16283         * lib/getlogin_r.h: Likewise.
16284         * lib/glob.c: Likewise.
16285         * lib/pagealign_alloc.c: Likewise.
16286         * lib/unistd_.h: Remove; no longer needed.
16287
16288 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
16289
16290         * MODULES.html.sh (Support for systems lacking POSIX:2001):
16291         Add unistd.
16292         * modules/c-stack (Depends-on): Add unistd.
16293         * modules/getlogin_r: Likewise.
16294         * modules/glob: Likewise.
16295         * modules/pagealign_alloc: Likewise.
16296         * modules/unistd (Files): Remove lib/unistd_.h.
16297         (EXTRA_DIST): Remove.
16298         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
16299         need unistd_.h.
16300         (MOSTLYCLEANFILES): Remove unistd.h-t.
16301
16302 2006-03-03  Simon Josefsson  <jas@extundo.com>
16303
16304         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
16305
16306 2006-03-03  Simon Josefsson  <jas@extundo.com>
16307
16308         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
16309         libidn and bison.
16310
16311 2006-03-03  Simon Josefsson  <jas@extundo.com>
16312
16313         * build-aux/maint.mk: Add indent target.
16314
16315 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
16316
16317         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
16318         our replacement poll.h in any case, to avoid a differing
16319         declaration from a system header.  Seen on AIX.
16320
16321 2006-03-01  Simon Josefsson  <jas@extundo.com>
16322
16323         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
16324         <kasal@ucw.cz>.
16325
16326 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
16327
16328         * modules/gettime (Depends-on): Add extensions module.
16329         * modules/nanosleep (Depends-on): Likewise.
16330         * modules/settime (Depends-on): Likewise.
16331
16332 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
16333
16334         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
16335         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
16336         pedantically.
16337         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
16338         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
16339
16340         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
16341         not "==".  Reported by Ralf Wildenhues.
16342
16343 2006-03-01  Karl Berry  <karl@gnu.org>
16344
16345         * doc/Copyright/request-*: new files, synced from gnuorg.
16346
16347 2006-03-01  Karl Berry  <karl@gnu.org>
16348
16349         * config/srclist.txt (Copyright/*): new entries.
16350
16351 2006-02-28  Simon Josefsson  <jas@extundo.com>
16352
16353         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
16354
16355 2006-02-27  Simon Josefsson  <jas@extundo.com>
16356
16357         * lib/base64.h: Indent #define's.  From Jim Meyering
16358         <jim@meyering.net>.
16359
16360 2006-02-27  Jim Meyering  <jim@meyering.net>
16361
16362         Revert the change of 2006-02-24, so these files can continue
16363         to be sync'd from gettext.
16364         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
16365         of `config.h'.
16366
16367 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
16368
16369         * modules/intprops: New file.
16370         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
16371         Add intprops.
16372         * modules/getloadavg (Files): Remove lib/intprops.h.
16373         (Depends-on): Add intprops.
16374         * modules/human: Likewise.
16375         * modules/inttostr: Likewise.
16376         * modules/openat: Likewise.
16377         * modules/sig2str: Likewise.
16378         * modules/userspec: Likewise.
16379         * modules/utimecmp: Likewise.
16380         * modules/xnanosleep: Likewise.
16381         * modules/xstrtol: Likewise.
16382
16383 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
16384
16385         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
16386         * modules/lock-tests (TESTS): Use $(EXEEXT).
16387         * modules/tls-tests: Likewise.
16388         * modules/argp-tests: Likewise.
16389         (check_PROGRAMS): New var, replacing...
16390         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
16391
16392 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16393
16394         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
16395         `config.h'.
16396
16397 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
16398
16399         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
16400
16401 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16402
16403         Sync from coreutils.
16404         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
16405         gl_CHDIR_SAFER.
16406
16407 2006-02-22  Jim Meyering  <jim@meyering.net>
16408
16409         Sync from coreutils.
16410         * m4/chdir-safer.m4: New file.
16411
16412 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
16413
16414         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
16415         AT_FDCWD exceeds INT_MAX.
16416         * lib/openat.h (AT_FDCWD): Likewise.
16417
16418 2006-02-17  Eric Blake  <address@hidden>
16419
16420         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
16421
16422 2006-02-16  Simon Josefsson  <jas@extundo.com>
16423
16424         * modules/getaddrinfo (Depends-on): Add sys_socket.
16425
16426 2006-02-15  Simon Josefsson  <jas@extundo.com>
16427
16428         * build-aux/maint.mk: Add dsyntax-check rule.
16429
16430 2006-02-15  Eric Blake  <ebb9@byu.net>
16431
16432         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
16433         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
16434         'present but cannot compile' warnings on cygwin.
16435         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
16436         use ws2tcpip.h if sys/socket.h works.
16437         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
16438         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
16439
16440 2006-02-14  Simon Josefsson  <jas@extundo.com>
16441
16442         * modules/maintainer-makefile (Files): Rename.
16443
16444         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
16445         and (the local) Makefile.cfg to maint-cfg.mk.
16446
16447         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
16448         to the latter.
16449
16450         * modules/maintainer-makefile: New module.
16451
16452         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
16453         severaly stripped to make it possible to build it up from scratch
16454         with reliable tests.
16455
16456         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
16457         fixes to permit overriding the default actions when configure and
16458         makefile are not available.
16459
16460 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
16461
16462         Sync from coreutils.
16463         * modules/lstat (Depends-on): Don't depend on xalloc.
16464         (License): Change from GPL to LGPL, since this is now simply a
16465         replacement for a libc function.
16466
16467 2006-02-14  Jim Meyering  <jim@meyering.net>
16468
16469         Sync from coreutils.
16470
16471         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
16472         failure on deficient systems, and simplify gnulib lgpl dependencies.
16473         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
16474         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
16475
16476         * lib/xalloc-die.c: Remove unused definition of N_.
16477
16478 2006-02-14  Jim Meyering  <jim@meyering.net>
16479
16480         Sync from coreutils.
16481         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
16482         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
16483         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
16484         double-quote uses of that variable, to accommodate the rare case in
16485         which getmntent is available in none of the libraries checked.  This
16486         happens at least on FreeBSD 5.0.
16487
16488 2006-02-13  Simon Josefsson  <jas@extundo.com>
16489
16490         * gnulib-tool (Usage): Fix --import, from
16491         karl@freefriends.org (Karl Berry).
16492
16493 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
16494
16495         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
16496
16497 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
16498
16499         * lib/argp-namefrob.h: Restore changes accidentally lost during the
16500         "autoupdate" on 2005-12-12.
16501
16502 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
16503
16504         * modules/closeout (Depends-on): Remove atexit.
16505
16506 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
16507
16508         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
16509         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
16510
16511 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
16512
16513         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
16514         __EXTENSIONS__ if this causes compilation to fail.  Problem
16515         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
16516         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
16517
16518 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
16519
16520         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
16521         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
16522         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
16523         All uses changed.
16524
16525 2006-01-26  Simon Josefsson  <jas@extundo.com>
16526
16527         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
16528         prototype is visible on mingw32.
16529
16530         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
16531         for mingw32.
16532
16533         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
16534         mingw32).
16535
16536 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
16537
16538         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
16539         attempt to open for write; this always fails, at least on POSIX
16540         hosts.  This reinstates the 2006-01-09 change, which was
16541         inadvertently removed.
16542
16543 2006-01-26  Bruno Haible  <bruno@clisp.org>
16544
16545         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
16546         Reported by Paul Eggert.
16547
16548 2006-01-26  Bruno Haible  <bruno@clisp.org>
16549             Paul Eggert  <eggert@cs.ucla.edu>
16550
16551         * lib/stdbool_.h (_Bool)
16552         [(! (defined __cplusplus || defined __BEOS__)
16553           && !defined __GNUC__
16554           && !(defined __HP_cc || defined __xlc__
16555                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
16556                || defined __sgi))]:
16557         #define to signed char in these cases too; this simplifies
16558         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
16559         etc., separately) and makes it more conservative.
16560
16561 2006-01-25  Simon Josefsson  <jas@extundo.com>
16562
16563         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
16564         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
16565         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
16566
16567 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
16568
16569         * lib/argp-namefrob.h: Bugfix. Remove stray #
16570
16571 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
16572
16573         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
16574         so that we test the test.
16575         Check for yet another HP-UX cc bug involving *bool |= bool.
16576
16577 2006-01-25  Karl Berry  <karl@gnu.org>
16578
16579         * config/srclist.txt (vasnprintf.c): sync lost.
16580
16581 2006-01-25  Jim Meyering  <jim@meyering.net>
16582
16583         Sync from the stable (b5) branch of coreutils:
16584
16585         * lib/fts.c (fts_children): Don't let close() clobber errno from
16586         failed fchdir().
16587
16588         * lib/fts.c (fts_stat): When following a symlink-to-directory,
16589         don't necessarily interpret stat-fails+lstat-succeeds as indicating
16590         a dangling symlink.  That can also happen at least for ELOOP.
16591         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
16592         FYI, this bug predates the inclusion of fts.c in coreutils.
16593
16594         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
16595         in their own block, so pre-c99 compilers don't object.
16596
16597         Avoid the double-free (first in fts_read, second in fts_close) that
16598         would occur when an `active' directory is made inaccessible (e.g.,
16599         via chmod a-x) during a traversal.
16600         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
16601         before returning.  Reproduce this failure by
16602         mkdir -p a/b; cd a; chmod a-x . b
16603         Reported by Stavros Passas.
16604
16605 2006-01-25  Jim Meyering  <jim@meyering.net>
16606
16607         * lib/fileblocks.c: Remove more useless parentheses.
16608         * lib/readutmp.h: Likewise.
16609
16610 2006-01-25  Bruno Haible  <bruno@clisp.org>
16611
16612         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
16613         warnings.
16614         Reported by Paul Eggert.
16615
16616 2006-01-25  Bruno Haible  <bruno@clisp.org>
16617
16618         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
16619         rid of a trap command. For Solaris sh.
16620         Reported by Mark D. Baushke <mdb@gnu.org>.
16621
16622 2006-01-24  Simon Josefsson  <jas@extundo.com>
16623
16624         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
16625         Bruno.
16626
16627 2006-01-24  Karl Berry  <karl@gnu.org>
16628
16629         * config/srclist.txt (argp-namefrob.h): sync lost.
16630
16631 2006-01-24  Jim Meyering  <jim@meyering.net>
16632
16633         * modules/openat (Files): Add lib/intprops.h.
16634         From Mark D. Baushke.
16635
16636 2006-01-24  Jim Meyering  <jim@meyering.net>
16637
16638         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
16639         Reported by Mark D. Baushke.
16640
16641 2006-01-24  Jim Meyering  <jim@meyering.net>
16642
16643         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
16644
16645 2006-01-24  Bruno Haible  <bruno@clisp.org>
16646
16647         * modules/strnlen (Maintainer): Change from glibc to all.
16648
16649 2006-01-24  Bruno Haible  <bruno@clisp.org>
16650
16651         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
16652         Patch by Paul Eggert.
16653
16654 2006-01-24  Bruno Haible  <bruno@clisp.org>
16655
16656         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
16657         already has it.
16658         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
16659         2005-11-26.
16660
16661         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
16662         'signed char' to avoid problems with the built-in _Bool type.
16663         Reported by Paul Eggert on 2005-11-26.
16664
16665 2006-01-24  Bruno Haible  <bruno@clisp.org>
16666
16667         * gnulib-tool (func_import): Avoid constructing complicated sed
16668         expressions inside backquote.
16669         Report and solution by Mark D. Baushke <mdb@gnu.org>.
16670
16671 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
16672
16673         These changes imported from libc.
16674         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
16675         test and two separate function calls.
16676         * lib/strndup.c (__strndup): Add libc_hidden_def.
16677
16678 2006-01-23  Simon Josefsson  <jas@extundo.com>
16679
16680         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
16681         Remove the test_*_SOURCES variable: automake infers it by default.
16682         * modules/tls-tests: Likewise.
16683
16684 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16685
16686         Work around porting bugs reported by Dieter in
16687         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
16688         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
16689         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
16690         Include "getopt.h" first, to check interface.
16691         (getenv): Declare only if defined HAVE_DECL_GETENV &&
16692         !HAVE_DECL_GETENV.
16693         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
16694         (__strndup): Revert to K&R-style function dfns, the glibc style.
16695         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
16696         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
16697         Include strnlen.h first, to get prototype properly.
16698         (strnlen): Renamed from __strnlen.
16699         Remove weak alias.
16700
16701 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16702
16703         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
16704
16705 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16706
16707         * config/srclist.txt: Adjust to reflect glibc reorganization.
16708         This affects only comments.
16709
16710 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16711
16712          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
16713          Reported by Bruce Korb <bkorb@gnu.org>.
16714
16715 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
16716
16717         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
16718         to pacify gcc -Wswitch-default.
16719
16720 2006-01-22  Bruno Haible  <bruno@clisp.org>
16721
16722         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
16723         temporary buffer for sprintf, take into account the precision also
16724         for 'd', 'i', 'u', 'o', 'x', 'X'.
16725
16726 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
16727
16728         * modules/argp-tests: New module
16729         * tests/test-argp.c: New file
16730         * tests/test-argp-2.sh: New file
16731
16732 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
16733
16734         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
16735         (__argp_base_name): Removed
16736         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
16737         typo.
16738         (__argp_base_name): Provide macro definition or extern declaration
16739         depending on the configuration
16740
16741 2006-01-20  Simon Josefsson  <jas@extundo.com>
16742
16743         * modules/inet_ntop (Depends-on): Depend on sys_socket.
16744
16745 2006-01-20  Simon Josefsson  <jas@extundo.com>
16746
16747         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
16748
16749 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
16750
16751         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
16752         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
16753         Suggested by Bruno Haible.
16754
16755 2006-01-20  Karl Berry  <karl@gnu.org>
16756
16757         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
16758         until changes propagate, I guess.
16759
16760 2006-01-19  Simon Josefsson  <jas@extundo.com>
16761
16762         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
16763
16764 2006-01-19  Simon Josefsson  <jas@extundo.com>
16765
16766         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
16767
16768 2006-01-19  Simon Josefsson  <jas@extundo.com>
16769
16770         * gnulib-tool: Set check_PROGRAMS.
16771
16772         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
16773         modules/des-tests, modules/gc-arcfour-tests,
16774         modules/gc-arctwo-tests, modules/gc-des-tests,
16775         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
16776         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
16777         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
16778         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
16779         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
16780         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
16781         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
16782         test_*_SOURCES.
16783
16784 2006-01-18  Simon Josefsson  <jas@extundo.com>
16785
16786         * modules/socklen (Depends-on): Depend on sys_socket.
16787
16788 2006-01-18  Simon Josefsson  <jas@extundo.com>
16789
16790         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
16791         modules/des-tests, modules/gc-arcfour-tests,
16792         modules/gc-arctwo-tests, modules/gc-des-tests,
16793         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
16794         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
16795         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
16796         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
16797         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
16798         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
16799         $(EXEEXT) to automake TESTS variable, for mingw32.
16800
16801 2006-01-17  Simon Josefsson  <jas@extundo.com>
16802
16803         * modules/socklen (Include): Need sys/socket.h.
16804
16805 2006-01-17  Bruno Haible  <bruno@clisp.org>
16806
16807         * modules/ssize_t (Include): Add <sys/types.h>.
16808
16809 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
16810
16811         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
16812         it's not portable and it doesn't work with cross-compiles.
16813         Problem reported by Bruno Haible.  Fix missing-$ typo in
16814         'test "gl_cv_ignore_unused_libraries" ...' that prevented
16815         -zignore from being used with Sun's C compiler.
16816
16817 2006-01-12  Simon Josefsson  <jas@extundo.com>
16818
16819         * lib/base64.c: Fix warning, reported by Bruno Haible
16820         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
16821
16822 2006-01-12  Bruno Haible  <bruno@clisp.org>
16823
16824         * modules/ldd: New file.
16825         * build-aux/ldd.sh.in: New file.
16826         * MODULES.html.sh (Support for building libraries and executables): Add
16827         ldd.
16828
16829 2006-01-12  Bruno Haible  <bruno@clisp.org>
16830
16831         * m4/ldd.m4: New file.
16832
16833 2006-01-12  Bruno Haible  <bruno@clisp.org>
16834
16835         * gnulib-tool (func_import, func_create_testdir): Don't go into an
16836         endless loop while replacing $auxdir with build-aux.
16837
16838 2006-01-11  Simon Josefsson  <jas@extundo.com>
16839
16840         * lib/stdint_.h (SIZE_MAX): Add missing (.
16841
16842 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
16843
16844         Sync from coreutils.
16845         * lib/md5.c: Fix commentary typos.
16846         (alignof, UNALIGNED_P): No need for a GCC-specific version.
16847         * lib/md5.h (__attribute__): Remove; unused.
16848         * lib/sha1.c: Fix commentary to match md5 better.
16849         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
16850         so that we don't need to worry about alignment.  All uses changed.
16851         This merges the 2005-10-28 md5 change into sha1.
16852
16853 2006-01-11  Jim Meyering  <jim@meyering.net>
16854
16855         Sync from coreutils.
16856         * lib/md5.c (OP): Fix spacing.
16857
16858 2006-01-11  Bruno Haible  <bruno@clisp.org>
16859
16860         Ensure automatic ordering between gl_LOCK and gl_ARGP.
16861         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
16862         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
16863
16864 2006-01-11  Bruno Haible  <bruno@clisp.org>
16865
16866         Ensure automatic ordering between gl_LOCK and gl_ARGP.
16867         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
16868         the "early" section as well.
16869
16870 2006-01-11  Bruno Haible  <bruno@clisp.org>
16871
16872         Avoid "ar: no archive members specified" error on MacOS X.
16873         * gnulib-tool (func_modules_add_dummy): New function.
16874         (func_import, func_create_testdir): Invoke it.
16875
16876 2006-01-11  Bruno Haible  <bruno@clisp.org>
16877
16878         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
16879         with $auxdir in AC_CONFIG_FILES statements.
16880
16881 2006-01-11  Bruno Haible  <bruno@clisp.org>
16882
16883         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
16884         Initialize also noinst_HEADERS to empty.
16885
16886 2006-01-11  Bruno Haible  <bruno@clisp.org>
16887
16888         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
16889         variables.
16890         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
16891         autoreconf.
16892
16893 2006-01-11  Bruno Haible  <bruno@clisp.org>
16894
16895         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
16896         overridable by the user.
16897         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
16898
16899 2006-01-10  Simon Josefsson  <jas@extundo.com>
16900
16901         * modules/sys_socket: New file.
16902
16903 2006-01-10  Simon Josefsson  <jas@extundo.com>
16904
16905         * m4/sys_socket_h.m4: New file.
16906
16907 2006-01-10  Simon Josefsson  <jas@extundo.com>
16908
16909         * lib/socket_.h: New file.
16910
16911 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16912
16913         * modules/readutmp (Maintainer): Add myself.
16914
16915 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16916
16917         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
16918         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
16919         People who are still concerned with buggy memcmp implementations
16920         can invoke gl_FUNC_MEMCMP themselves.
16921
16922 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16923
16924         * lib/regex_internal.h (BITSET_WORD_BITS):
16925         Work around a bug in 64-bit PGC (before version 6.1-2), where the
16926         preprocessor mishandles large unsigned values as if they were signed.
16927         Problem reported by Claudio Fontana in
16928         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
16929
16930 2006-01-10  Jim Meyering  <jim@meyering.net>
16931
16932         Avoid the double-free (first in fts_read, second in fts_close) that
16933         would occur when an `active' directory is made inaccessible (e.g.,
16934         via chmod a-x) during a traversal.
16935         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
16936         before returning.  Reproduce this failure by
16937         mkdir -p a/b; cd a; chmod a-x . b
16938         Reported by Stavros Passas.
16939
16940         Sync from coreutils.
16941         * lib/sha1.c: Tweak grammar in a comment.
16942
16943 2006-01-10  Jim Meyering  <jim@meyering.net>
16944
16945         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
16946         Patch by Joerg Sonnenberger.
16947
16948 2006-01-10  Bruno Haible  <bruno@clisp.org>
16949
16950         * modules/readutmp: Depend on module free.
16951         * modules/strtok_r: Depend on module restrict.
16952
16953 2006-01-10  Bruno Haible  <bruno@clisp.org>
16954
16955         * modules/gettext (configure.ac): Add an invocation of
16956         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
16957
16958 2006-01-10  Bruno Haible  <bruno@clisp.org>
16959
16960         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
16961         Reported by Werner Lemberg <wl@gnu.org>.
16962
16963 2006-01-10  Bruno Haible  <bruno@clisp.org>
16964
16965         * lib/localcharset.c: Update from GNU gettext.
16966
16967 2006-01-10  Bruno Haible  <bruno@clisp.org>
16968
16969         * lib/argp.h (__const): Remove macro. Use const instead.
16970         * lib/argp-fmtstream.h (__const): Likewise.
16971         * lib/glob_.h (__const): Remove macro.
16972         * lib/glob-libc.h: Use const instead of __const.
16973
16974 2006-01-10  Bruno Haible  <bruno@clisp.org>
16975
16976         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
16977         variable.
16978         Needed to avoid an automake error regarding the 'gettext' module.
16979
16980 2006-01-09  Simon Josefsson  <jas@extundo.com>
16981
16982         * modules/inet_ntop (Depends-on): Add restrict.
16983
16984 2006-01-09  Simon Josefsson  <jas@extundo.com>
16985
16986         * modules/gc-rijndael-tests (License): Put under LGPL.
16987
16988         * modules/gc-des-tests (License): Likewise.
16989
16990         * modules/gc-arcfour-tests (License): Likewise.
16991
16992         * modules/gc-arctwo-tests (License): Likewise.
16993
16994         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
16995
16996         * modules/gc-hmac-sha1-tests (Files): Likewise.
16997
16998         * modules/gc-hmac-md5-tests (License): Likewise.
16999
17000         * modules/gc-sha1-tests (License): Likewise.
17001
17002         * modules/gc-md5-tests (License): Likewise.
17003
17004         * modules/gc-md4-tests (License): Likewise.
17005
17006         * modules/gc-md2-tests (License): Likewise.
17007
17008         * modules/gc-tests (License): Likewise.
17009
17010         * modules/des-tests (License): Likewise.
17011
17012         * modules/md4-tests (License): Likewise.
17013
17014         * modules/md2-tests (License): Likewise.
17015
17016 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17017
17018         Sync from coreutils:
17019
17020         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
17021         * modules/lib-ignore: New file.
17022         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
17023         chdir-safer.m4, lchmod.m4.
17024         * modules/openat: Add mkdirat.c, openat-priv.h.
17025
17026 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17027
17028         Sync from coreutils.
17029         * m4/lib-ignore.m4: New file.
17030         * m4/lchmod.m4: New file.
17031
17032 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17033
17034         Sync from coreutils.
17035         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
17036         for write access: POSIX says that must fail.
17037         * lib/fts.c (diropen): Likewise.
17038         * lib/save-cwd.c (save_cwd): Likewise.
17039         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
17040         well, for minor improvements on hosts that lack O_DIRECTORY.
17041         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
17042         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
17043         Fall back on chown if open failed with EACCES.
17044
17045         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
17046         Report an error at compile-time if only a 1-second nominal clock
17047         resolution is found.
17048
17049         * lib/lchmod.h: New file.
17050         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
17051         (make_dir_parents): Use lchown rather than chown, and
17052         lchmod rather than chmod.
17053
17054         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
17055         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
17056         "proc" reported by n0dalus.
17057
17058         * lib/mountlist.c: Include <limits.h>.
17059         (dev_from_mount_options)
17060         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
17061         New function.  It no longer assumes "dev=" has the System V meaning
17062         on Linux (since it doesn't).  It also parses "dev=" more carefully.
17063         (read_file_system_list)
17064         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
17065         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
17066         dev= in that case.
17067
17068         * lib/posixtm.h (PDS_PRE_2000): New macro.
17069         * lib/posixtm.c (year): Arg is now syntax_bits rather than
17070         allow_century.  All usages changed.  Reject dates outside the range
17071         1969-1999 if PDS_PRE_2000 is used.
17072
17073 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
17074
17075         Sync from coreutils.
17076         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
17077         (Time of day items): Mention the possibility of leap seconds.
17078         Problem reported by Dr. David Alan Gilbert.
17079
17080 2006-01-09  Jim Meyering  <jim@meyering.net>
17081
17082         Sync from coreutils.
17083
17084         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
17085
17086         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
17087
17088         * lib/modechange.c (mode_compile): Reject an invalid mode string
17089         that starts with an octal digit.  From Andreas Gruenbacher.
17090
17091         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
17092         and dup to open_safer and dup_safer, respectively.
17093         (openat_permissive): Fix typo in comment.
17094
17095         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
17096         "gettext.h"; either no longer needed or are guaranteed by openat.h.
17097         (_): Remove; no longer needed.
17098         (openat): Renamed from rpl_openat; no need for rpl_openat
17099         since openat.h renames openat for us.
17100         Replace most of the body with a call to openat_permissive,
17101         to avoid duplicate code.
17102         Port to (probably hypothetical) environments were mode_t is
17103         wider than int.
17104         (openat_permissive): Require mode arg, so that we can check
17105         types better.  Put it just after flags.  Change cwd failure
17106         indicator from pointer-to-bool to pointer-to-errno-value.
17107         All callers changed.
17108         Invoke openat_save_fail and/or openat_restore_fail if
17109         cwd_errno is null, so that openat can call us.
17110         (openat_permissive, fdopendir, fstatat, unlinkat):
17111         Simplify errno handling to avoid some duplicate code,
17112         as it's OK to set errno on success.
17113         * lib/openat.h: Revamp code so that function macros depend on
17114         __OPENAT_PREFIX only, not also on AT_FDCWD.
17115         (openat_ro): Remove.  Caller changed to use openat_permissive.
17116         (openat_permissive): Now a macro, if not a function.
17117         (openat_restore_fail, openat_save_fail): Now always functions,
17118         since mkdirat needs them even if __OPENAT_PREFIX is defined.
17119
17120         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
17121         and openat.c.
17122         * lib/mkdirat.c: Include openat-priv.h.
17123         Remove definitions of macros defined therein.
17124         * lib/openat.c: Likewise.
17125
17126         * lib/mkdirat.c (mkdirat): New file and function.
17127         * lib/openat.h (mkdirat): Declare.
17128
17129         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
17130
17131         * lib/openat.h (openat_permissive): Declare.
17132         (openat_ro): Define.
17133
17134         * lib/openat.c (EXPECTED_ERRNO): New macro.
17135         (openat_permissive): New function -- used in remove.c rewrite.
17136         (all functions): Set errno just before returning, only if there
17137         was an actual failure.
17138         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
17139
17140         Emulate openat-family functions using Linux's procfs, if possible.
17141         Idea and some code based on Ulrich Drepper's glibc changes.
17142
17143         * lib/openat.c: (BUILD_PROC_NAME): New macro.
17144         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
17145         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
17146         before falling back on save_cwd and restore_cwd.
17147         (fdopendir, fstatat, unlinkat): Likewise.
17148
17149         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
17150         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
17151
17152         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
17153         as second argument to va_arg.  Otherwise, some versions of gcc
17154         warn that `if this code is reached, the program will abort'.
17155
17156 2006-01-09  Jim Meyering  <jim@meyering.net>
17157
17158         Sync from coreutils.
17159         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
17160         Require openat-priv.h.
17161
17162 2006-01-09  Bruno Haible  <bruno@clisp.org>
17163
17164         * modules/strnlen (Include): Use strnlen.h.
17165
17166 2006-01-09  Bruno Haible  <bruno@clisp.org>
17167
17168         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
17169
17170 2006-01-09  Bruno Haible  <bruno@clisp.org>
17171
17172         * lib/sysexit_.h (EX_OK): New macro.
17173         Suggested by Martin Lambers <marlam@marlam.de>.
17174
17175 2006-01-09  Bruno Haible  <bruno@clisp.org>
17176
17177         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
17178         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
17179
17180 2006-01-09  Bruno Haible  <bruno@clisp.org>
17181
17182         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
17183         numbers.
17184
17185 2006-01-09  Bruno Haible  <bruno@clisp.org>
17186
17187         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
17188         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
17189         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
17190         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
17191
17192 2006-01-09  Bruno Haible  <bruno@clisp.org>
17193
17194         * build-aux/javacomp.sh.in: New file, moved from lib/.
17195         * modules/javacomp-script (Files): Update.
17196         (configure.ac): Add AC_CONFIG_FILES invocation.
17197         (EXTRA_DIST): Remove variable.
17198
17199         * build-aux/javaexec.sh.in: New file, moved from lib/.
17200         * modules/javaexec (Files): Update.
17201         (configure.ac): Add AC_CONFIG_FILES invocation.
17202         (EXTRA_DIST): Remove javaexec.sh.in.
17203
17204         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
17205         * modules/csharpcomp-script (Files): Update.
17206         (configure.ac): Add AC_CONFIG_FILES invocation.
17207         (EXTRA_DIST): Remove variable.
17208
17209         * build-aux/csharpexec.sh.in: New file, moved from lib/.
17210         * modules/csharpexec (Files): Update.
17211         (configure.ac): Add AC_CONFIG_FILES invocation.
17212         (EXTRA_DIST): Remove csharpexec.sh.in.
17213
17214 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
17215
17216         Sync from coreutils.
17217
17218         Add POSIX ACL support
17219         * lib/acl.h (copy_acl, set_acl): Add declarations.
17220         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
17221         systems other than Linux.
17222         (chmod_or_fchmod): New function: use fchmod when possible,
17223         and chmod otherwise.
17224         (file_has_acl): Add a POSIX ACL implementation, with a
17225         Linux-specific subcase.
17226         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
17227         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
17228         acls are unsupported.
17229         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
17230         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
17231         are unsupported.
17232
17233 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
17234
17235         Sync from coreutils.
17236         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
17237
17238 2006-01-07  Bruno Haible  <bruno@clisp.org>
17239
17240         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
17241         gl_EARLY.
17242
17243 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
17244
17245         * lib/strftime.c (tzname): Don't declare if it is already #defined.
17246         Problem reported for Mingw by Mark Junker.
17247
17248 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
17249
17250         * README: Gnulib normally doesn't generate a tarball.
17251
17252 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
17253
17254         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
17255         long int, not int, for nanosecond counts, so that people who are
17256         used to POSIX struct timespec won't be surprised.  Reported by Jim
17257         Meyering.
17258
17259 2005-12-28  Bruno Haible  <bruno@clisp.org>
17260
17261         * build-aux/config.rpath: Update from GNU gettext.
17262
17263 2005-12-16  Jim Meyering  <jim@meyering.net>
17264
17265         * modules/fprintftime: New module.
17266         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
17267
17268 2005-12-16  Jim Meyering  <jim@meyering.net>
17269
17270         * m4/fprintftime.m4: New file.
17271
17272 2005-12-16  Jim Meyering  <jim@meyering.net>
17273
17274         * lib/fprintftime.c, lib/fprintftime.h: New files.
17275
17276 2005-12-15  Simon Josefsson  <jas@extundo.com>
17277
17278         * modules/socklen (configure.ac): Fix M4 macro name, to align with
17279         new m4/socklen.m4.
17280
17281 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
17282
17283         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
17284         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
17285
17286 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
17287
17288         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
17289         * lib/argp-help.c (fill_in_uparams): Check if the constructed
17290         struct uparams is valid. Fall back to the default values if it is
17291         not.
17292
17293 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
17294
17295         * modules/argp (Files): Add argp-pin.c
17296         (Depends-on): dirname
17297         (lib_SOURCES): Add argp-pin.c
17298
17299 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
17300
17301         * m4/argp.m4:  Check if program_invocation_name and
17302         program_invocation_short_name are declared and define appropriate
17303         macros if they are not.
17304
17305 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
17306
17307         * lib/argp-help.c (__argp_base_name): New function
17308         (__argp_short_program_name): Rewrite using __argp_base_name
17309         * lib/argp-namefrob.h: Define program_invocation_name and
17310         program_invocation_short_name if requested
17311         (__argp_base_name): Add prototype
17312         * lib/argp-parse.c (argp_def): Use gettext wrappers
17313         (argp_default_parser): Use __argp_base_name
17314         * lib/argp-pin.c: New file. Defines program_invocation_name and
17315         program_invocation_short_name on systems that lack them.
17316
17317 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
17318
17319         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
17320         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
17321         porting problem reported by Georg Schwarz in
17322         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
17323
17324 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
17325
17326         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
17327         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
17328         porting problem reported by Georg Schwarz in
17329         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
17330
17331 2005-12-05  Bruno Haible  <bruno@clisp.org>
17332
17333         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
17334         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
17335         Reported by Mark Junker <mjscod@gmx.de>.
17336
17337 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
17338
17339         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
17340         Use implementation from Albert Chin, with some
17341         comments/corrections by Stepan Kasal and myself.
17342
17343 2005-12-02  Bruno Haible  <bruno@clisp.org>
17344
17345         * gnulib-tool (func_import): Accept GPLed build tool modules when
17346         --lgpl is given.
17347         * modules/csharpcomp-script: New file.
17348         * modules/csharpcomp: Depend on it.
17349         * modules/javacomp-script: New file.
17350         * modules/javacomp: Depend on it.
17351         Suggested by Simon Josefsson.
17352
17353 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
17354
17355         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
17356         statement, to work around an HP-UX 10.20 compiler bug reported by
17357         Peter O'Gorman.
17358
17359 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
17360
17361         * modules/savedir (Depends-on): Add openat.
17362
17363 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
17364
17365         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
17366         (uintmax_t) [defined uintmax_t]: Do not declare.
17367         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
17368         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
17369         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
17370         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
17371         sake of portability to weird hosts that C allows (though we don't
17372         know of any practical examples).
17373
17374         * lib/savedir.h (fdsavedir): New decl.
17375         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
17376         contains most of the former guts of savedir.
17377         (savedir): Use savedirstream.
17378         Include "openat.h".
17379
17380 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
17381
17382         * modules/obstack (Files): Add m4/ulonglong.m4.
17383         Problem reported by Davide Angelocola.
17384
17385 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
17386
17387         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
17388         coreutils no longer futzes with rounding modes.
17389
17390 2005-11-14  Jim Meyering  <jim@meyering.net>
17391
17392         * lib/mkstemp-safer.c: Include <config.h>, required for possible
17393         replacement of mkstemp.
17394
17395 2005-11-10  Simon Josefsson  <jas@extundo.com>
17396
17397         * lib/readline.c: Remove EOL.
17398
17399 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17400
17401         * modules/gethrxtime (Depends-on): Add gettime.
17402
17403 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17404
17405         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
17406         or gettimeofday; no longer needed.
17407
17408 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
17409
17410         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
17411         time business.
17412         (gethrxtime) [! (HAVE_NANOUPTIME
17413         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
17414         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
17415         our own approximation.
17416
17417 2005-11-08  Eric Blake  <ebb9@byu.net>
17418
17419         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
17420
17421 2005-11-08  Eric Blake  <ebb9@byu.net>
17422
17423         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
17424
17425 2005-11-04  Bruno Haible  <bruno@clisp.org>
17426
17427         * gnulib-tool: Implement --update mode.
17428
17429 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
17430
17431         Fix porting problem reported by Theodoros V. Kalamatianos.
17432         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
17433         Don't assume that futimes failing means we must fail.
17434
17435 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
17436
17437         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
17438         variables to suggest the intended function of the PATH_MAX check.
17439
17440 2005-10-30  Kean Johnston  <jkj@sco.com>
17441
17442         Trivial changes to support SCO systems.
17443         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
17444         as PATH_MAX.
17445         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
17446         where __ptr is null when no I/O is pending.
17447
17448 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
17449
17450         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
17451         leave errno alone.  Problem reported by Dmitry V. Levin.
17452
17453 2005-10-28  Simon Josefsson  <jas@extundo.com>
17454
17455         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
17456         Test more.
17457
17458         * tests/test-gc-md2.c, tests/test-md2.c: New files.
17459
17460         * modules/md2, modules/md2-tests: New files.
17461
17462 2005-10-28  Simon Josefsson  <jas@extundo.com>
17463
17464         * m4/inet_ntop.m4: More tests.
17465
17466         * m4/gc-md2.m4, md2.m4: New file.
17467
17468 2005-10-28  Simon Josefsson  <jas@extundo.com>
17469
17470         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
17471         "restrict" keywords, as per POSIX.  Protect the function
17472         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
17473         Don't use K&R prototypes.  Check the sprintf return values.
17474         Re-define EAFNOSUPPORT if not present.  Indent.
17475
17476         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
17477         suggested by Bruno Haible <bruno@clisp.org>.
17478
17479         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
17480
17481         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
17482
17483         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
17484         libgcrypt).
17485
17486         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
17487
17488         * lib/md2.h, lib/md2.c: New files.
17489
17490 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
17491
17492         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
17493         errno alone.  Problem reported by Frederic Jolliton.
17494
17495 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
17496
17497         * modules/verify (License): Change from GPL to LGPL.  This is a
17498         tiny module and there are apparently near-equivalents that are
17499         under the BSD license.
17500
17501 2005-10-24  Simon Josefsson  <jas@extundo.com>
17502
17503         * modules/sha1: Relicense to LGPL.
17504
17505 2005-10-24  Simon Josefsson  <jas@extundo.com>
17506
17507         * lib/md4.h: Shrink buffer size, now that we changed the type.
17508
17509 2005-10-23  Simon Josefsson  <jas@extundo.com>
17510
17511         * gnulib-tool (func_import): Fix --tests-base.
17512
17513 2005-10-22  Simon Josefsson  <jas@extundo.com>
17514
17515         * modules/arcfour (Depends-on): Need stdint.
17516
17517 2005-10-22  Simon Josefsson  <jas@extundo.com>
17518
17519         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
17520         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
17521
17522 2005-10-22  Simon Josefsson  <jas@extundo.com>
17523
17524         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
17525         suggested by Bruno Haible <bruno@clisp.org>.
17526
17527 2005-10-22  Simon Josefsson  <jas@extundo.com>
17528
17529         * lib/crc.h: Include stddef.h, for size_t.
17530
17531 2005-10-22  Simon Josefsson  <jas@extundo.com>
17532
17533         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
17534         arcfour_context struct (simplify test vector testing in GNU
17535         Shishi).
17536
17537 2005-10-21  Simon Josefsson  <jas@extundo.com>
17538
17539         * modules/des, modules/des-tests: New files.
17540
17541         * modules/gc-des, modules/gc-des-tests: New files.
17542
17543         * tests/test-des.c, tests/test-gc-des.c: New file.
17544
17545 2005-10-21  Simon Josefsson  <jas@extundo.com>
17546
17547         * modules/arctwo, modules/arctwo-tests: New files.
17548
17549         * tests/test-arctwo.c: New file.
17550
17551         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
17552
17553         * tests/test-gc-arctwo.c: New file.
17554
17555 2005-10-21  Simon Josefsson  <jas@extundo.com>
17556
17557         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
17558         Bruno Haible <bruno@clisp.org>.
17559
17560         * m4/gc-des.m4: New file.
17561
17562 2005-10-21  Simon Josefsson  <jas@extundo.com>
17563
17564         * m4/arctwo.m4: New file.
17565
17566         * m4/gc-arctwo.m4: New file.
17567
17568 2005-10-21  Simon Josefsson  <jas@extundo.com>
17569
17570         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
17571         block.
17572
17573 2005-10-21  Simon Josefsson  <jas@extundo.com>
17574
17575         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
17576         <bruno@clisp.org>.
17577
17578         * lib/hmac-sha1.c (hmac_sha1): Likewise.
17579
17580         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
17581         Bruno Haible <bruno@clisp.org>.
17582
17583         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
17584         <bruno@clisp.org>.
17585
17586 2005-10-21  Simon Josefsson  <jas@extundo.com>
17587
17588         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
17589
17590 2005-10-21  Simon Josefsson  <jas@extundo.com>
17591
17592         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
17593
17594 2005-10-21  Simon Josefsson  <jas@extundo.com>
17595
17596         * lib/des.h, lib/des.c: New files.
17597
17598         * lib/gc-gnulib.c: Support DES.c
17599
17600 2005-10-21  Simon Josefsson  <jas@extundo.com>
17601
17602         * lib/arctwo.h, lib/arctwo.c: New files.
17603
17604         * lib/gc-gnulib.c: Support ARCTWO.
17605
17606 2005-10-21  Simon Josefsson  <jas@extundo.com>
17607
17608         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
17609         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17610
17611 2005-10-21  Simon Josefsson  <jas@extundo.com>
17612
17613         * gnulib-tool (func_import, func_create_testdir): Define automake
17614         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
17615         Makefile.am snippet),
17616         suggested by Bruno Haible <bruno@clisp.org>.
17617
17618         * modules/gc (Makefile.am): Use it.
17619
17620 2005-10-21  Bruno Haible  <bruno@clisp.org>
17621
17622         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
17623         patch.
17624
17625 2005-10-19  Simon Josefsson  <jas@extundo.com>
17626
17627         * tests/test-gc-rijndael.c: New file.
17628
17629         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
17630
17631 2005-10-19  Simon Josefsson  <jas@extundo.com>
17632
17633         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
17634         interface too.
17635
17636 2005-10-19  Simon Josefsson  <jas@extundo.com>
17637
17638         * tests/test-gc-arcfour.c: New file.
17639
17640         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
17641
17642 2005-10-19  Simon Josefsson  <jas@extundo.com>
17643
17644         * modules/gc-md4, modules/gc-md4-tests: New file.
17645
17646         * tests/test-gc-md4.c: New file.
17647
17648 2005-10-19  Simon Josefsson  <jas@extundo.com>
17649
17650         * m4/gc-md4.m4: New file.
17651
17652 2005-10-19  Simon Josefsson  <jas@extundo.com>
17653
17654         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
17655         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
17656         <kasal@ucw.cz>.
17657
17658 2005-10-19  Simon Josefsson  <jas@extundo.com>
17659
17660         * m4/gc-arcfour.m4: New file.
17661
17662         * m4/gc-rijndael.m4: New file.
17663
17664 2005-10-19  Simon Josefsson  <jas@extundo.com>
17665
17666         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
17667
17668 2005-10-19  Simon Josefsson  <jas@extundo.com>
17669
17670         * lib/gc-gnulib.c: Support ARCFOUR.
17671
17672 2005-10-19  Simon Josefsson  <jas@extundo.com>
17673
17674         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
17675         support.
17676
17677         * lib/gc.h: Add ECB enum type.
17678
17679         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
17680
17681 2005-10-18  Simon Josefsson  <jas@extundo.com>
17682
17683         * tests/test-md5.c: New file.
17684
17685         * modules/md5-tests: New file.
17686
17687 2005-10-18  Simon Josefsson  <jas@extundo.com>
17688
17689         * tests/test-md4.c: New file.
17690
17691         * modules/md4, modules/md4-tests: New files.
17692
17693 2005-10-18  Simon Josefsson  <jas@extundo.com>
17694
17695         * m4/md4.m4: New file.
17696
17697 2005-10-18  Simon Josefsson  <jas@extundo.com>
17698
17699         * lib/md4.h, lib/md4.c: New files, based on md5.?.
17700
17701 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
17702
17703         * gnulib-tool (func_create_testdir): Omit the second check whether
17704         BUILT_SOURCES in nonempty.
17705
17706 2005-10-17  Simon Josefsson  <jas@extundo.com>
17707
17708         * tests/test-rijndael.c: New file.
17709
17710 2005-10-17  Simon Josefsson  <jas@extundo.com>
17711
17712         * modules/sha1: Depend on stdint instead of md5.
17713
17714         * modules/md5: Depend on stdint, remove uint32_t.
17715
17716 2005-10-17  Simon Josefsson  <jas@extundo.com>
17717
17718         * modules/gc-sha1-tests: New file.
17719
17720         * tests/test-gc-sha1.c: New file.
17721
17722 2005-10-17  Simon Josefsson  <jas@extundo.com>
17723
17724         * m4/md5.m4: Remove call to uint32_t.m4.
17725
17726 2005-10-17  Simon Josefsson  <jas@extundo.com>
17727
17728         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
17729
17730         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
17731         md5.h.
17732
17733         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
17734
17735         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
17736
17737 2005-10-17  Simon Josefsson  <jas@extundo.com>
17738
17739         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
17740
17741 2005-10-17  Simon Josefsson  <jas@extundo.com>
17742
17743         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
17744
17745 2005-10-17  Simon Josefsson  <jas@extundo.com>
17746
17747         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
17748
17749         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
17750
17751 2005-10-17  Bruno Haible  <bruno@clisp.org>
17752
17753         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
17754         that it can also be used in a test.
17755
17756 2005-10-16  Bruno Haible  <bruno@clisp.org>
17757
17758         * gnulib-tool (func_emit_tests_Makefile_am): Also define
17759         TESTS_ENVIRONMENT, so that individual tests can augment it.
17760
17761         * gnulib-tool (func_create_testdir): Use an intermediate target for
17762         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
17763         macros, like $(ALLOCA_H), which cannot be passed through the command
17764         line.
17765
17766 2005-10-15  Simon Josefsson  <jas@extundo.com>
17767
17768         * modules/rijndael-tests: New file.
17769
17770         * modules/rijndael: New file.
17771
17772 2005-10-15  Simon Josefsson  <jas@extundo.com>
17773
17774         * m4/rijndael.m4: New file.
17775
17776 2005-10-15  Simon Josefsson  <jas@extundo.com>
17777
17778         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
17779
17780         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
17781
17782 2005-10-14  Simon Josefsson  <jas@extundo.com>
17783
17784         * tests/test-arcfour.c: New file.
17785
17786         * modules/arcfour, modules/arcfour-tests: New files.
17787
17788 2005-10-14  Simon Josefsson  <jas@extundo.com>
17789
17790         * m4/arcfour.m4: New file.
17791
17792 2005-10-14  Simon Josefsson  <jas@extundo.com>
17793
17794         * lib/arcfour.h, lib/arcfour.c: New files.
17795
17796 2005-10-14  Roland McGrath  <roland@redhat.com>
17797
17798         Import from libc.  [BZ #1331]
17799         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
17800         macro argument.
17801         Reported by Matej Vela <vela@debian.org>.
17802
17803 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17804
17805         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
17806         include <wchar.h>; no longer needed.
17807
17808 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17809
17810         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
17811
17812 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
17813         and  Ulrich Drepper  <drepper@redhat.com>
17814
17815         Import from libc.
17816         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
17817         instead of inline stream orientation test and two separate
17818         function calls.  Pay no attention to USE_IN_LIBIO.
17819
17820 2005-10-13  Simon Josefsson  <jas@extundo.com>
17821
17822         * modules/gc-hmac-md5-tests: New file.
17823
17824         * tests/test-gc-hmac-sha1.c: New file.
17825
17826         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
17827
17828         * modules/gc-hmac-md5-tests: New file.
17829
17830         * tests/test-gc-md5.c: New file.
17831
17832         * modules/gc-md5-tests: New file.
17833
17834 2005-10-13  Simon Josefsson  <jas@extundo.com>
17835
17836         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
17837         Move memory allocation outside of loop.
17838
17839 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
17840
17841         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
17842         intermediate directory is in a read-only file system.  Problem
17843         reported by Eric Blake.
17844
17845 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
17846
17847         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
17848
17849 2005-10-12  Simon Josefsson  <jas@extundo.com>
17850
17851         * tests/test-hmac-sha1.c: New file.
17852
17853         * modules/hmac-sha1-tests: New file.
17854
17855         * modules/hmac-sha1: New file.
17856
17857 2005-10-12  Simon Josefsson  <jas@extundo.com>
17858
17859         * modules/gc-sha1: New file.
17860
17861 2005-10-12  Simon Josefsson  <jas@extundo.com>
17862
17863         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
17864
17865         * tests/test-gc-pbkdf2-sha1.c: New file.
17866
17867 2005-10-12  Simon Josefsson  <jas@extundo.com>
17868
17869         * modules/gc-md5, modules/gc-hmac-md5: New files.
17870
17871         * modules/gc (Files): Remove md5, memxor and hmac files.
17872
17873 2005-10-12  Simon Josefsson  <jas@extundo.com>
17874
17875         * m4/gc-pbkdf2-sha1.m4: New file.
17876
17877         * m4/gc-hmac-sha1.m4: New file.
17878
17879         * m4/gc-sha1: New file.
17880
17881         * m4/hmac-sha1.m4: New file.
17882
17883 2005-10-12  Simon Josefsson  <jas@extundo.com>
17884
17885         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
17886
17887         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
17888
17889 2005-10-12  Simon Josefsson  <jas@extundo.com>
17890
17891         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
17892         suggested by Bruno Haible <bruno@clisp.org>.
17893
17894 2005-10-12  Simon Josefsson  <jas@extundo.com>
17895
17896         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
17897
17898 2005-10-12  Simon Josefsson  <jas@extundo.com>
17899
17900         * lib/gc-pbkdf2-sha1.c: New file.
17901
17902         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
17903
17904 2005-10-12  Simon Josefsson  <jas@extundo.com>
17905
17906         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
17907
17908         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
17909
17910 2005-10-12  Simon Josefsson  <jas@extundo.com>
17911
17912         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
17913         GC_USE_HMAC_MD5, respectively.
17914
17915         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
17916         (gc_md5): Fix typo.
17917
17918         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
17919
17920         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
17921
17922         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
17923
17924 2005-10-12  Bruno Haible  <bruno@clisp.org>
17925
17926         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
17927         Reported by Stepan Kasal <kasal@ucw.cz>.
17928
17929 2005-10-11  Simon Josefsson  <jas@extundo.com>
17930
17931         * tests/test-crc.c: New file.
17932
17933         * modules/crc, modules/crc-tests: New files.
17934
17935 2005-10-11  Simon Josefsson  <jas@extundo.com>
17936
17937         * m4/crc.m4: New file.
17938
17939 2005-10-11  Simon Josefsson  <jas@extundo.com>
17940
17941         * lib/gc.h: Add gc_hash and gc_hash_buffer.
17942
17943         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
17944
17945         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
17946
17947 2005-10-11  Simon Josefsson  <jas@extundo.com>
17948
17949         * lib/crc.h, lib/crc.c: New files.
17950
17951         * lib/gc.h (gc_hash_buffer): Add doc.
17952
17953 2005-10-11  Bruno Haible  <bruno@clisp.org>
17954
17955         * modules/c-strcasestr: New file.
17956         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
17957
17958 2005-10-11  Bruno Haible  <bruno@clisp.org>
17959
17960         * modules/c-strcase: New file.
17961         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
17962
17963 2005-10-11  Bruno Haible  <bruno@clisp.org>
17964
17965         * lib/strcasecmp.c: Include limits.h.
17966         (strcasecmp): Avoid integer overflow on exotic platforms.
17967         * lib/strncasecmp.c: Include limits.h.
17968         (strncasecmp): Avoid integer overflow on exotic platforms.
17969         Reported by Paul Eggert.
17970
17971 2005-10-11  Bruno Haible  <bruno@clisp.org>
17972
17973         * lib/c-strcasestr.h: New file, from GNU gettext.
17974         * lib/c-strcasestr.c: New file, from GNU gettext.
17975
17976 2005-10-11  Bruno Haible  <bruno@clisp.org>
17977
17978         * lib/c-strcase.h: New file, from GNU gettext.
17979         * lib/c-strcasecmp.c: New file, from GNU gettext.
17980         * lib/c-strncasecmp.c: New file, from GNU gettext.
17981
17982 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17983
17984         * modules/mempcpy (License): GPL -> LGPL.
17985         * modules/strchrnul (License): Likewise.
17986         * modules/sysexits (License): Likewise.
17987
17988 2005-10-08  Simon Josefsson  <jas@extundo.com>
17989
17990         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
17991
17992 2005-10-07  Simon Josefsson  <jas@extundo.com>
17993
17994         * m4/memxor.m4: Remove gl_C_RESTRICT call.
17995
17996 2005-10-06  Simon Josefsson  <jas@extundo.com>
17997
17998         * tests/test-hmac-md5.c: New file.
17999
18000         * modules/hmac-md5-tests: New file.
18001
18002         * modules/hmac-md5: New file.
18003
18004 2005-10-06  Simon Josefsson  <jas@extundo.com>
18005
18006         * m4/hmac-md5.m4: New file.
18007
18008         * m4/memxor.m4: Require gl_C_RESTRICT.
18009
18010 2005-10-06  Simon Josefsson  <jas@extundo.com>
18011
18012         * lib/memxor.c (memxor): Avoid casts and warnings.
18013
18014 2005-10-06  Simon Josefsson  <jas@extundo.com>
18015
18016         * lib/hmac-md5.c: New file.
18017
18018         * lib/hmac.h: New file.
18019
18020 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
18021
18022         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
18023         promotes to int, not unsigned int, to catch the AIX 5.3
18024         compiler bug.
18025
18026 2005-10-05  Simon Josefsson  <jas@extundo.com>
18027
18028         * modules/memxor: New file.
18029
18030         * modules/iconv (Files): Move config.rpath to havelib, it is used
18031         there.
18032
18033         * modules/havelib (Files): Add config.rpath.
18034
18035 2005-10-05  Simon Josefsson  <jas@extundo.com>
18036
18037         * m4/memxor.m4: New file.
18038
18039 2005-10-05  Simon Josefsson  <jas@extundo.com>
18040
18041         * lib/memxor.c (memxor): Fix compiler error.
18042
18043         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
18044         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
18045
18046         * lib/memxor.h, lib/memxor.c: New files.
18047
18048         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
18049         we assume all systems have it, suggested by Jim Meyering
18050         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
18051         any systems lack sys/socket.h; mingw32 is known to lack it, but we
18052         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
18053         same reasons.
18054
18055 2005-10-05  Simon Josefsson  <jas@extundo.com>
18056
18057         * config/srclist.txt: Add glibc bug 1423 for md5.h.
18058
18059 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
18060
18061         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
18062         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
18063         needed, since the source code now assumes these .h files.
18064
18065 2005-10-05  Derek Price  <derek@ximbiot.com>
18066
18067         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
18068
18069 2005-10-05  Bruno Haible  <bruno@clisp.org>
18070
18071         * modules/stdint (License): Change to LGPL.
18072
18073 2005-10-04  Simon Josefsson  <jas@extundo.com>
18074
18075         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
18076         D. Baushke" <mdb@gnu.org>.
18077
18078 2005-10-04  Bruno Haible  <bruno@clisp.org>
18079
18080         * lib/verify.h (verify_true): Provide alternative definition for C++.
18081
18082 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
18083
18084         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
18085         (SSIZE_MAX): New macro, if not already defined.
18086         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
18087         than 2 GiB.
18088
18089 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18090
18091         Sync from coreutils.
18092         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
18093         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
18094         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
18095         ULLONG_MAX doesn't work with 2.7.2.1.
18096
18097 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18098
18099         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
18100         From Ben Pfaff.
18101
18102         * modules/exclude (Depends-on): Depend on verify.
18103         * modules/strtoimax (Depends-on): Likewise.
18104         * modules/utimecmp (Depends-on): Likewise.
18105
18106 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18107
18108         * lib/exclude.c: Include verify.h.
18109         (verify): Remove.  All callers changed to use verify.h's version.
18110         * lib/strtoimax.c: Likewise.
18111         * lib/utimecmp.c: Likewis.e
18112
18113         Sync from coreutils.
18114         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
18115         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
18116         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
18117         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
18118         bother returning ENOSYS if settimeofday or stime fails; just let
18119         them return whatever errno they want to return.
18120         * lib/utimens.c: Include unistd.h, for dup2.
18121         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
18122         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
18123
18124 2005-10-02  Jim Meyering  <jim@meyering.net>
18125
18126         Sync from coreutils.
18127         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
18128         from glibc-2.2.5 that fails for read-only files.
18129
18130 2005-10-02  Jim Meyering  <jim@meyering.net>
18131
18132         Sync from coreutils.
18133         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
18134         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
18135         `#if HAVE_CONFIG_H'.
18136         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
18137         Remove AT_FDCWD test.
18138         Do not consume the fd unless successful.
18139         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
18140         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
18141         block, so that we don't even try to compile it if settimeofday is
18142         available.  This works around a compilation failure on OSF1 V5.1,
18143         due to stime requiring a `long int*' while tv_sec is `int'.
18144
18145 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
18146
18147         Sync from coreutils.
18148         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
18149         against `yes', rather than just testing for nonempty.
18150
18151 2005-10-01  Simon Josefsson  <jas@extundo.com>
18152
18153         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
18154         and Darwin.
18155
18156         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
18157         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
18158         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
18159         freeaddrinfo and gai_strerror are declared by the POSIX headers.
18160         Check if struct addrinfo is declared.
18161
18162 2005-10-01  Simon Josefsson  <jas@extundo.com>
18163
18164         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
18165         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
18166         AI_* and EAI_* definitions.  Protect function declarations.
18167
18168 2005-10-01  Jim Meyering  <jim@meyering.net>
18169
18170         Sync from coreutils.
18171
18172         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
18173         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
18174         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
18175         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
18176         in the inet and nsl libraries.  Required on Solaris 5.7.
18177
18178 2005-10-01  Jim Meyering  <jim@meyering.net>
18179
18180         Sync from coreutils.
18181         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
18182         in the inet and nsl libraries.  Required on Solaris 5.7.
18183
18184 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
18185
18186         * lib/getdelim.c (getdelim): Remove unused variables.
18187
18188 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
18189
18190         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
18191         so that the code works even with ancient cpp.  Portability problem
18192         with GCC 2.7.2.1 reported by Thomas M.Ott.
18193
18194 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
18195
18196         * modules/regex (Depends-on): Add strcase.
18197
18198         * modules/gethostname (Licence): Change from GPL to LGPL, since
18199         gethostname.c is a trivial implementation of a standard library
18200         function.
18201         * modules/poll (License): Change from GPL to LGPL, since it's
18202         derived from LGPL code.
18203
18204 2005-09-27  Jim Meyering  <jim@meyering.net>
18205
18206         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
18207         HAVE_CONFIG_H.
18208
18209         * lib/intprops.h (signed_type_or_expr__): Define.
18210         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
18211         for unsigned types.
18212
18213 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
18214
18215         * lib/verify.h (verify_expr): Remove, replacing with:
18216         (verify_true): New macro that returns true instead of void.
18217         (verify_type__): Remove.
18218         (verify): Use verify_true rather than verify_type__.
18219
18220 2005-09-26  Bruno Haible  <bruno@clisp.org>
18221
18222         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
18223         is necessary.
18224         (lib_SOURCES): Remove mbchar.c.
18225         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
18226         (Files): Add m4/mbrtowc.m4.
18227         * modules/mbiter: Likewise.
18228         * modules/mbuiter: Likewise.
18229
18230 2005-09-26  Bruno Haible  <bruno@clisp.org>
18231
18232         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
18233         compile mbchar.c if they are not both present.
18234         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
18235         * m4/mbiter.m4 (gl_MBITER): Likewise.
18236         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
18237         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
18238         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
18239
18240 2005-09-25  Jim Meyering  <jim@meyering.net>
18241
18242         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
18243         also uses socklen_t.
18244
18245 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
18246
18247         * lib/utimens.c (ENOSYS): Define if not already defined.
18248         (futimens): Support having a null PATH if the file descriptor
18249         is nonnegative.
18250
18251         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
18252         Remove.
18253         (__attribute): Define to empty unless GCC 3.1 or later.
18254         This works around a core dump on OpenBSD 3.4, which has GCC
18255         2.95.3, which dumps core when given __attribute__(()).  It also
18256         simplifies other tests, since we really don't want to bother with
18257         worrying about which ancient version of GCC supported what.
18258         Original problem reported by Yoann Vandoorselaere, with part of
18259         the fix suggested by Derek Price.
18260
18261 2005-09-24  Jim Meyering  <jim@meyering.net>
18262
18263         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
18264         so we can once again use a positive bitfield width of 1 -- now we
18265         don't have to explain why we were using a bitfield width of 2.
18266
18267 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
18268
18269         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
18270         and similarly for the other external symbols.  Problem reported
18271         by James Gallager.
18272
18273         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
18274         bug reported by Jim Meyering.
18275
18276         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
18277         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
18278         not needed, since socklen is a prerequisite module.
18279
18280 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
18281
18282         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
18283         Problem reported by Eric Blake.
18284         (getaddrinfo): Initialize se so that it's not garbage.
18285         Redo internal storage allocation so that it doesn't make unportable
18286         assumptions about alignment.
18287         Fix a memory leak.
18288
18289         * lib/utimens.c (futimens): Use futimesat if available.
18290         Prefer it to futimes since it doesn't have the futimes bug.
18291
18292         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
18293         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
18294         Instead, declare a function that returns a pointer to an array,
18295         and use verify_type__ to declare the size of the array.
18296         Problem and germ of a solution reported by Bruno Haible.
18297         (verify_type__): Use 2, not 1, for bitfield size, to avoid
18298         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
18299
18300 2005-09-23  Jim Meyering  <jim@meyering.net>
18301
18302         Sync from coreutils.
18303         Correct build failure (socklen_t not defined) on at least
18304         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
18305         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
18306
18307 2005-09-23  Jim Meyering  <jim@meyering.net>
18308
18309         * modules/getaddrinfo (Depends-on): Add socklen.
18310
18311 2005-09-23  Bruno Haible  <bruno@clisp.org>
18312
18313         * tests/test-verify.c: New file.
18314
18315 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
18316
18317         Sync from coreutils.
18318
18319         * modules/argmatch (Depends-on): Add verify.
18320         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
18321         unistd-safer.
18322         * modules/save-cwd (Depends-on): Likewise.
18323
18324         * modules/openat (Files): Add lib/openat-die.c.
18325         (Depends-on): Remove error, exitfail.
18326         Add dirname.
18327
18328         * modules/verify: New file.
18329         * MODULES.html.sh (Diagnostics <assert.h>): New section,
18330         with "verify" module.
18331
18332 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
18333
18334         Sync from coreutils.
18335
18336         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
18337         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
18338         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
18339         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
18340         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
18341         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
18342         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
18343         Don't bother checking for string.h, stdlib.h, unistd.h.
18344         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
18345         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
18346         module's job.
18347         * m4/jm-macros.m4 (gl_MACROS): Likewise.
18348         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
18349
18350         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
18351         (gl_GETDATE): Use it.
18352
18353         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
18354
18355 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
18356
18357         Sync from coreutils.
18358
18359         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
18360         stat-time.h.
18361         * lib/argmatch.h: Include verify.h
18362         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
18363         (ARGMATCH_ASSERT): Remove; unused.
18364         * lib/canonicalize.c: Assume STDC_HEADERS.
18365         * lib/exclude.c: Include "strcase.h".
18366         * lib/regex_internal.h [!defined _LIBC]: Likewise.
18367         * lib/getusershell.c: Include stdio--.h rather than stdio.h
18368         and stdio-safer.h.
18369         (getusershell): Call fopen, not fopen_safer.
18370         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
18371         Do not include unistd-safer.h.
18372         (save_cwd): Don't call fd_safer; no longer needed
18373         now that we include fcntl--.h.
18374
18375         * lib/getdate.y (relative_time): New type.
18376         (RELATIVE_TIME_0): New constant.
18377         (parser_control): Use relative_time instead of doing it ourselves.
18378         (%union): Add new relative_time rel member.
18379         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
18380         Now typeless.
18381         (relunit, relunit_snumber): Now of type rel.
18382         (zone, rel, relunit, get_date): Adjust to above changes.
18383
18384         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
18385         Do not include unistd-safer.h.
18386         (getloadavg): Don't call fd_safer; no longer needed
18387         now that we include fcntl--.h.
18388
18389         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
18390         (make_dir_parents): Treat ENOSYS like EEXIST.
18391
18392         Improve quality of diagnostics on restore_cwd failure.
18393         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
18394         (make_dir_parents): Last arg is now int * (for errno), not bool *.
18395         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
18396         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
18397         each time through the loop.  Do not diagnose restore_cwd failure;
18398         that is the caller's job (and perhaps the caller does not care).
18399
18400         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
18401         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
18402         If the file already exists but is not a directory, don't bother
18403         to try to make its parents.
18404         Close potential file descriptor leak if we can't chdir("/") (!).
18405         Don't always return true if chdir($PWD) fails; return true only
18406         if the requested action was done successfully (except for the
18407         chdir($PWD)).
18408         Don't log final directory unless we actually made it.
18409         Refactor to avoid duplicate code to fix up permissions.
18410         Don't attempt to fix up parent permissions if chdir($PWD) fails.
18411
18412         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
18413         to make it a bit faster and (I hope) clearer.
18414         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
18415         Fix bug in formats like %2N.
18416
18417         * lib/verify.h: New file.
18418
18419 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
18420
18421         Sync from coreutils.
18422         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
18423
18424 2005-09-22  Jim Meyering  <jim@meyering.net>
18425
18426         Sync from coreutils.
18427
18428         * m4/lstat.m4 (gl_FUNC_LSTAT):
18429         Use AC_LIBSOURCES to require lstat.c and lstat.h.
18430         Remove obsolete comment.
18431         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
18432         * m4/xstrtod.m4: Likewise.
18433
18434         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
18435
18436 2005-09-22  Jim Meyering  <jim@meyering.net>
18437
18438         Sync from coreutils.
18439
18440         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
18441
18442         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
18443         the .tm_year member, since otherwise gcc-4.0 would now warn about
18444         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
18445
18446         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
18447         order to avoid an unsuppressible warning from gcc on 64-bit systems.
18448
18449         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
18450         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
18451         when run in a time zone for which daylight savings time is in effect
18452         for the starting date.
18453
18454         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
18455         stop us from restricting permissions of just-created absolute-named
18456         directories.
18457         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
18458         to restore initial working directory.
18459         * lib/mkdir-p.c (make_dir_parents): New parameter:
18460         different_working_dir, to tell caller if/when we change the working
18461         directory and are unable to return to the initial one.
18462         * lib/mkdir-p.h (make_dir_parents): Update prototype.
18463         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
18464         `return false'.  This fixes a bug introduced on 2004-07-30.
18465
18466         * lib/openat.c (fdopendir): Be sure to close the supplied
18467         file descriptor before returning.  This makes our replacement
18468         implementation a little closer to Solaris's, where fdopendir
18469         ties the file descriptor to the returned DIR* pointer.
18470         * lib/openat.c (unlinkat): New function.
18471         * lib/openat.h (unlinkat): Add prototype.
18472         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
18473         (openat_restore_fail): Rename from openat_restore_die.
18474         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
18475
18476         Provide an alternative to exiting immediately upon save_cwd or
18477         restore_cwd failure.  Now, an application can arrange e.g.,
18478         to perform a longjump in that case.
18479         * lib/openat.c: Include dirname.h.
18480         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
18481         (rpl_openat, fdopendir, fstatat): Call openat_save_die
18482         and openat_restore_die rather than calling error directly.
18483         Don't include "error.h" or "exitfail.h"; they're no longer needed.
18484
18485         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
18486         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
18487         define.
18488
18489         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
18490         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
18491                             int utc, int nanoseconds);
18492         Background:
18493         date should not have to allocate a megabyte of virtual memory to
18494         handle a format argument like +%1048575T.  When implemented with
18495         strftime, it must allocate such a buffer, use strftime to fill it
18496         in, print it, then free it.
18497         With fprintftime, it simply prints everything and exits.
18498         With no need for memory allocation, that's one fewer way to fail.
18499         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
18500         optional field width, not before, so we accept %9:z, not %:9z.
18501         (my_strftime): Be sure to use L_('x') for literals.
18502
18503         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
18504         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
18505         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
18506         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
18507         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
18508         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
18509         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
18510         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
18511         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
18512         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
18513         * lib/xgethostname.c, lib/xreadlink.c:
18514         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
18515
18516         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
18517         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
18518         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
18519         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
18520         and don't include <sys/file.h>).
18521
18522 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
18523
18524         Sync from coreutils.
18525
18526         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
18527         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
18528         [!LDAV_DONE]: Avoid unused variable warning.
18529
18530 2005-09-21  Bruno Haible  <bruno@clisp.org>
18531
18532         * lib/unicodeio.h (unicode_to_mb): New declaration.
18533
18534 2005-09-20  Derek Price  <derek@ximbiot.com>
18535
18536         * lib/getaddrinfo.c: Don't include <netdb.h> included from
18537         getaddrinfo.h.
18538
18539 2005-09-20  Bruno Haible  <bruno@clisp.org>
18540
18541         * gnulib-tool: Remove trailing slashes from the values specified for
18542         --source-base, --m4-base, --tests-base, --aux-dir.
18543         Suggested by Simon Josefsson <jas@extundo.com>.
18544
18545 2005-09-20  Bruno Haible  <bruno@clisp.org>
18546
18547         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
18548         func_modules_to_filelist, func_import, func_create_testdir): Make all
18549         sorting results locale-independent, so that gnulib-cache.m4 doesn't
18550         change when gnulib-tool is invoked in a different locale.
18551
18552 2005-09-19  Simon Josefsson  <jas@extundo.com>
18553
18554         * m4/socklen.m4: Fix typo.
18555
18556 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18557
18558         Use a consistent style for including <config.h>.
18559         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
18560         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
18561         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
18562         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
18563         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
18564         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
18565         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
18566         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
18567         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
18568         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
18569         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
18570         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
18571         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
18572         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
18573         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
18574         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
18575         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
18576         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
18577         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
18578         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
18579         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
18580         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
18581         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
18582         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
18583         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
18584         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
18585         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
18586         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
18587         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
18588         lib/xstrtoumax.c, lib/yesno.c:
18589         Standardize inclusion of config.h.
18590         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
18591         lib/inttostr.h:  Removed inclusion of config.h from header files.
18592         * lib/inttostr.c:  Adjusted in-tree users.
18593         * lib/timespec.h: Remove superfluous warning to include config.h.
18594         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
18595         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
18596         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
18597         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
18598         config.h with HAVE_CONFIG_H.
18599
18600 2005-09-19  Jim Meyering  <jim@meyering.net>
18601
18602         * modules/pathmax (License): Change to LGPL.
18603
18604 2005-09-19  Derek Price  <derek@ximbiot.com>
18605
18606         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
18607
18608 2005-09-19  Bruno Haible  <bruno@clisp.org>
18609
18610         * gnulib-tool (import): Provide default for --tests-base.
18611
18612 2005-09-19  Bruno Haible  <bruno@clisp.org>
18613
18614         * doc/quote.texi: New file, extracted from gnulib.texi.
18615         * doc/ctime.texi: New file, extracted from gnulib.texi.
18616         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
18617         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
18618         * doc/gnulib.texi: Include them.
18619
18620 2005-09-18  Bruno Haible  <bruno@clisp.org>
18621
18622         Portability fix.
18623         * gnulib-tool (func_readlink): New function.
18624         (func_ln_if_changed): Use it.
18625
18626 2005-09-18  Bruno Haible  <bruno@clisp.org>
18627
18628         * gnulib-tool: Support --with-tests also with --import.
18629         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
18630         (func_import): Use variables $testsbase and $inctests. Emit a
18631         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
18632         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
18633         SUBDIRS += $testsdir.
18634         (func_create_testdir): Update.
18635
18636 2005-09-18  Bruno Haible  <bruno@clisp.org>
18637
18638         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
18639         instead of $dry_run.
18640         (func_cp_if_changed, func_mv_if_changed): Remove functions.
18641         (func_ln_if_changed): Don't handle dry-run here.
18642         (func_import): In dry-run mode, detect more precisely which actions
18643         would be performed, and don't use "...ing" verbs.
18644
18645 2005-09-18  Bruno Haible  <bruno@clisp.org>
18646
18647         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
18648         (func_import): Use join on two temporary files instead of three nested
18649         loops, in order to determine which files are new or old.
18650
18651 2005-09-18  Bruno Haible  <bruno@clisp.org>
18652
18653         * gnulib-tool (func_import): Comment out code that spits out the
18654         new files with --dry-run.
18655
18656 2005-09-18  Bruno Haible  <bruno@clisp.org>
18657
18658         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
18659
18660 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
18661
18662         * lib/stat-time.h: New file.
18663         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
18664         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
18665         in a different way.
18666         (timespec_cmp): New function.
18667         * lib/utimecmp.c: Include stat-time.h.
18668         (SYSCALL_RESOLUTION): Depend on whether various struct stat
18669         members exist, not on the obsolescent ST_MTIM_NSEC.
18670         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
18671
18672 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
18673
18674         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
18675
18676 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
18677
18678         * MODULES.html.sh (File system functions): Add stat-time.
18679         * modules/stat-time: New file.
18680         * modules/timespec (Files): Remove m4/st_mtim.m4; this
18681         is now done in a different way, by the stat-time module.
18682         * modules/utimecmp (Depends-on): Add stat-time.
18683
18684 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
18685
18686         * m4/st_mtim.m4: Remove.  Superseded by...
18687         * m4/stat-time.m4: New file.
18688         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
18689         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
18690
18691 2005-09-15  Derek Price  <derek@ximbiot.com>
18692
18693         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
18694
18695 2005-09-15  Derek Price  <derek@ximbiot.com>
18696
18697         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
18698         * lib/regex_internal.c: Ditto, using this...
18699         (__GNUC_PREREQ): ...new macro.
18700         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
18701         using...
18702         (__GNUC_PREREQ): ...this new macro.
18703
18704         * lib/strstr.h: Include string.h. Define strstr as a macro here.
18705
18706 2005-09-15  Derek Price  <derek@ximbiot.com>
18707             Paul Eggert  <eggert@cs.ucla.edu>
18708
18709         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
18710         changes, consolidating in...
18711         * lib/regex_internal.h: ...this file.
18712
18713 2005-09-13  Jim Meyering  <jim@meyering.net>
18714
18715         * lib/canon-host.c: Filter through gnu indent and reword comments
18716         slightly.
18717         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
18718
18719 2005-09-13  Derek Price  <derek@ximbiot.com>
18720
18721         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
18722         failure.
18723         Reported by Jim Meyering  <jim@meyering.net>.
18724
18725 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
18726
18727         * lib/base64.c: Typo.
18728         (base64_encode): Put b64str in initialized data section.
18729
18730 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
18731
18732         Merge glibc and coreutils changes into gnulib, plus a few
18733         extra fixes.
18734         * lib/md5.c: Use #error rather than a string.
18735         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
18736         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
18737         (__attribute__): Define to empty for non recent-GCC.
18738         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
18739         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
18740         Renamed from their non-__ counterparts, with new macros replacing
18741         them if not _LIBC.  Add __THROW attribute.
18742         (rol): Remove.
18743         (struct md5_ctx): Align buffer if using GCC.
18744         * lib/sha1.h (struct sha1_ctx): Likewise.
18745         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
18746         The old name was backwards.
18747         (NOTSWAP): Remove; not used.
18748         (rol): New macro, moved here from md5.h.
18749         (sha1_process_block): Remove a FIXME that doesn't make sense.
18750
18751 2005-09-12  Derek Price  <derek@ximbiot.com>
18752
18753         Return usable errors from canon-host.
18754         * lib/canon-host.h: New file.
18755         * lib/canon-host.c (canon_host): Wrap...
18756         (canon_host_r): ...this new function, which now relies exclusively on
18757         getaddrinfo.
18758         (ch_strerror): New function.
18759         (last_cherror): New global.
18760         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
18761         interface.
18762         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
18763         void *.
18764         (freeaddrinfo): Free ai->ai_canonname when set.
18765
18766 2005-09-12  Derek Price  <derek@ximbiot.com>
18767
18768         Make canon-host require getaddrinfo.
18769         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
18770         AC_LIBSOURCE canon-host.h.  Call...
18771         (gl_PREREQ_CANON_HOST): ...this new function, which requires
18772         gl_GETADDRINFO.
18773         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
18774
18775 2005-09-12  Derek Price  <derek@ximbiot.com>
18776
18777         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
18778         LGPL.
18779         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
18780
18781 2005-09-12  Derek Price  <derek@ximbiot.com>
18782
18783         * lib/gai_strerror.c: Include config.h when available.  Include
18784         getaddrinfo.h before other headers to test interface.
18785         Reported by Larry Jones <lawrence.jones@ugs.com>.
18786
18787 2005-09-12  Derek Price  <derek@ximbiot.com>
18788             Paul Eggert  <eggert@cs.ucla.edu>
18789
18790         * modules/glob (Files): Add glob-libc.h.
18791
18792 2005-09-12  Derek Price  <derek@ximbiot.com>
18793             Paul Eggert  <eggert@cs.ucla.edu>
18794
18795         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
18796         glob_.h, glob-libc.h.
18797         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
18798
18799 2005-09-12  Derek Price  <derek@ximbiot.com>
18800             Paul Eggert  <eggert@cs.ucla.edu>
18801
18802         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
18803         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
18804         protecting things that should be done only in gnulib contexts.
18805         * lib/glob_.h: New file, containing only the glob things needed for
18806         gnulib.
18807         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
18808         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
18809         (glob, globfree, glob_pattern_p): Now defined simply in terms of
18810         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
18811         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
18812         and to respect the namespace rules better.
18813
18814 2005-09-08  Simon Josefsson  <jas@extundo.com>
18815
18816         * modules/socklen: New file.
18817
18818 2005-09-08  Simon Josefsson  <jas@extundo.com>
18819
18820         * m4/socklen.m4: New file.
18821
18822 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
18823
18824         * modules/utimens (Files): Add m4/utimbuf.m4, since
18825         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
18826         Reported by Sergey Poznyakoff.
18827
18828 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
18829
18830         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
18831         definitions, since that's the preferred style in glibc.
18832         Fix a minor spacing issue, and update copyright notice to match
18833         glibc's.
18834
18835 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
18836
18837         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
18838
18839 2005-09-06  Simon Josefsson  <jas@extundo.com>
18840
18841         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
18842         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
18843
18844 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
18845
18846         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
18847         warning.
18848
18849 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
18850
18851         * config/srclist.txt: Add glibc bug 1302.
18852
18853 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
18854
18855         Change bitset word type from unsigned int to unsigned long int,
18856         as this has better performance on typical 64-bit hosts.
18857         Port bitset code to hosts with unusual word sizes.
18858         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
18859         (build_collating_symbol):
18860         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
18861         argument is a bitset.  This is merely a style issue, but it makes
18862         it clearer that an entire array is expected.
18863         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
18864         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
18865         Port to the case where bitset_word is not the same as unsigned int.
18866         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
18867         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
18868         Likewise.
18869         * lib/regexec.c (check_dst_limits_calc_pos_1,
18870         check_subexp_matching_top):
18871         (build_trtable, group_nodes_into_DFAstates):
18872         Likewise.
18873         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
18874         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
18875         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
18876         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
18877         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
18878         * lib/regcomp.c (optimize_subexps, lower_subexp):
18879         Work even if bitset_word has holes in its bitwise representation.
18880         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
18881         * lib/regexec.c (check_dst_limits_calc_pos_1,
18882         check_subexp_matching_top):
18883         Likewise.
18884         * lib/regex_internal.c (re_string_reconstruct):
18885         Don't assume UCHAR_MAX == 255.
18886         * lib/regex_internal.h (bitset_set_all): Likewise.
18887         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
18888         All uses changed.
18889         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
18890         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
18891         All uses changed.
18892         (BITSET_WORD_MAX): New macro.
18893         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
18894         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
18895         (bitset_empty, bitset_copy):
18896         Prefer sizeof (bitset) to multiplying it out ourselves.
18897         (bitset_not_merge): Remove; unused.
18898         (bitset_contain): Return bool, not unsigned int with one bit on.
18899         All callers changed.
18900         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
18901         alignment than re_node_set; do this by defining a new internal
18902         type struct dests_alloc and using it to allocate memory.
18903
18904 2005-09-05  Bruno Haible  <bruno@clisp.org>
18905
18906         * gnulib-tool (func_import): Fix comparison in handling of symbolic
18907         links.
18908
18909 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
18910
18911         * modules/size_max (Makefile.am): Add size_max.h
18912
18913 2005-09-04  Derek Price  <derek@ximbiot.com>
18914
18915         * gnulib-tool (func_import): Fix reversed $symbolic logic.
18916
18917 2005-09-03  Simon Josefsson  <jas@extundo.com>
18918
18919         * gnulib-tool: Fix typo.
18920
18921 2005-09-03  Simon Josefsson  <jas@extundo.com>
18922
18923         * config/srclist.txt: Add glibc bug 1293.
18924
18925 2005-09-03  Derek Price  <derek@ximbiot.com>
18926
18927         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
18928         From Larry Jones <lawrence.jones@ugs.com>.
18929
18930 2005-09-02  Simon Josefsson  <jas@extundo.com>
18931
18932         * modules/socklen: New file.
18933
18934 2005-09-02  Simon Josefsson  <jas@extundo.com>
18935
18936         * modules/havelib: New module.
18937
18938         * modules/gettext, modules/iconv, modules/lock, modules/readline:
18939         Use havelib.
18940
18941 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
18942
18943         Check for arithmetic overflow when calculating sizes, to prevent
18944         some buffer-overflow issues.  These patches are conservative, in the
18945         sense that when I couldn't determine whether an overflow was possible,
18946         I inserted a run-time check.
18947         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
18948         macros.
18949         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
18950         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
18951         (re_xnrealloc, re_x2nrealloc): New inline functions.
18952         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
18953         parse_bracket_exp):
18954         (build_equiv_class, build_charclass): Check for arithmetic overflow
18955         in size expression calculations.
18956         * lib/regex_internal.c (re_string_realloc_buffers):
18957         (build_wcs_upper_buffer, re_node_set_add_intersect):
18958         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
18959         (re_dfa_add_node, register_state): Likewise.
18960         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
18961         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
18962         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
18963         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
18964
18965 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
18966
18967         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
18968         m4/ulonglong.m4.  Problem reported by Martin Lambers.
18969
18970 2005-09-02  Bruno Haible  <bruno@clisp.org>
18971
18972         Support for lib vs. lib64 distinction on biarch platforms.
18973         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
18974         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
18975         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
18976
18977 2005-09-02  Bruno Haible  <bruno@clisp.org>
18978
18979         * gnulib-tool (import): In the other first-use case, provide defaults
18980         as well.
18981
18982 2005-09-02  Bruno Haible  <bruno@clisp.org>
18983
18984         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
18985         patches not yet found in the latest gettext release.
18986
18987 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
18988
18989         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
18990         to avoid a collision with bits/local_lim.h in glibc.
18991         All uses changed.  Problem reported by Dmitry V. Levin in
18992         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
18993
18994         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
18995         bugs in int versus size_t comparisons.
18996         (re_string_context_at): Fix bug where the code assumed that
18997         Idx is signed.
18998
18999         Use bool where appropriate.
19000         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
19001         All callers changed.
19002         (calc_eclosure_iter): Likewise, for ROOT arg.
19003         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
19004         (build_charclass_op): Likewise, for NON_MATCH arg.
19005         * lib/regex_internal.c (re_string_allocate, re_string_construct):
19006         (re_string_construct_common): Likewise, for ICASE arg.
19007         * lib/regexec.c (re_search_2_stub, re_search_stub):
19008         Likewise, for RET_LEN arg.
19009         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
19010         (set_regs): Likewise, for FL_BACKTRACK arg.
19011         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
19012         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
19013         (calc_eclosure_iter, parse_bracket_exp):
19014         Use bool for internal variables that are booleans.
19015         * lib/regexec.c (re_search_internal, check_matching,
19016         proceed_next_node):
19017         (set_regs, build_sifted_states, sift_states_bkref):
19018         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
19019         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
19020         (find_collation_sequence_value):
19021         Likewise.
19022         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
19023         (re_node_set_compare):
19024         Return bool, not int. All callers changed.
19025         * lib/regexec.c (check_halt_node_context, check_dst_limits):
19026         (build_trtable, check_node_accept): Likewise.
19027         * lib/regex_internal.h: Include stdbool.h.
19028
19029         Fix bugs uncovered when converting to bool.
19030         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
19031         failure instead of charging ahead blindly.
19032         * lib/regex_internal.c (register_state): Likewise.
19033         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
19034         for freeing internal storage.
19035         (group_nodes_into_DFA_states): Use unsigned int, not int, for
19036         bitset pieces used as boolean, to avoid undefined behavior
19037         on hosts that do int overflow checking.
19038
19039 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
19040
19041         * config/srclist.txt: Add glibc bugs 1285-1287.
19042
19043 2005-09-01  Jim Meyering  <jim@meyering.net>
19044
19045         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
19046         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
19047         Require gl_STAT_MACROS, too.
19048
19049 2005-09-01  Bruno Haible  <bruno@clisp.org>
19050
19051         * gnulib-tool (import): In the first-use case, provide defaults.
19052
19053 2005-09-01  Bruno Haible  <bruno@clisp.org>
19054
19055         * gnulib-tool (func_import): Remove the .tmp files.
19056
19057 2005-09-01  Bruno Haible  <bruno@clisp.org>
19058
19059         * gnulib-tool (func_import): Fix handling of symbolic links.
19060
19061 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19062
19063         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
19064         old glibc regex code mishandles strings longer than 2**31 bytes.
19065         This patch fixes this when the regex code is used in gnulib
19066         (i.e., outside glibc).
19067
19068         This patch should not affect the use of the regex code inside
19069         glibc.  No doubt this problem also needs to be handled for glibc
19070         as well, but the result will be an incompatible change to the
19071         glibc ABI, and the old ABI will have to be supported too.  That
19072         can be the the subject for another patch.
19073
19074         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
19075         governing whether the rest of this patch is active.  By default,
19076         the macro is disabled and the patch has no effect.
19077         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
19078         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
19079         (struct re_pattern_buffer, re_search, re_search_2, re_match):
19080         (re_match_2, re_set_registers): Use the new types.
19081         * lib/regex_internal.h (Idx, re_hashval_t): New types.
19082         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
19083         New macros.
19084         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
19085         (re_string_context_at, bin_tree_t, re_dfastate_t):
19086         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
19087         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
19088         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
19089         (re_string_char_size_at, re_string_wchar_at):
19090         (re_string_elem_size_at):
19091         Use the new types and macros to port to 64-bit hosts.
19092         Use unsigned types for internal values, so that the code
19093         mostly works even for arrays larger than SSIZE_MAX.
19094         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
19095         (search_duplicated_node, calc_eclosure_iter, fetch_number):
19096         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
19097         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
19098         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
19099         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
19100         (calc_inveclosure, parse_dup_op, build_range_exp):
19101         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
19102         (fetch_number, create_token_tree, mark_opt_subexp):
19103         Likewise.
19104         * lib/regex_internal.c (re_string_construct_common,
19105         create_ci_newstate):
19106         (create_cd_newstate, re_string_allocate, re_string_construct):
19107         (re_string_realloc_buffers, build_wcs_upper_buffer):
19108         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
19109         (re_string_reconstruct, re_string_peek_byte_case):
19110         (re_string_fetch_byte_case, re_string_context_at):
19111         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
19112         (re_node_set_init_copy, re_node_set_add_intersect):
19113         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
19114         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
19115         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
19116         (re_acquire_state, re_acquire_state_context, register_state):
19117         Likewise.
19118         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
19119         search_cur_bkref_entry):
19120         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
19121         (re_search_internal, re_search_2_stub, re_search_stub)
19122         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
19123         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
19124         (update_cur_sifted_state, check_dst_limits):
19125         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
19126         (check_subexp_limits, sift_states_bkref, merge_state_array):
19127         (check_subexp_matching_top, get_subexp, get_subexp_sub):
19128         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
19129         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
19130         (expand_bkref_cache, check_node_accept_bytes):
19131         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
19132         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
19133         (acquire_init_state_context, check_halt_node_context):
19134         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
19135         (sift_states_backward, clean_state_log_if_needed):
19136         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
19137         (find_recover_state, transit_state_sb, transit_state_mb):
19138         (transit_state_bkref, build_trtable, match_ctx_clean):
19139         Likewise.
19140         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
19141         to work around an assumption that REG_MISSING is negative.
19142
19143         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
19144         (seek_collating_symbol_entry) [defined _LIBC]:
19145         (lookup_collation_sequence_value) [defined _LIBC]:
19146         (build_range_exp, build_collating_symbol) [defined _LIBC]:
19147         Use prototypes rather than old-style function definitions.
19148         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
19149         (transit_state_sb) [0]:
19150         (find_collation_sequence_value) [defined _LIBC]: Likewise.
19151
19152         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
19153         rm_eo.
19154
19155         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
19156         (optimize_subexps, lower_subexp):
19157         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
19158         since the signed shift might overflow.  Use 1u<<31 instead.
19159         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
19160         Likewise.
19161         * lib/regexec.c (check_dst_limits_calc_pos_1,
19162         check_subexp_matching_top): Likewise.
19163
19164         * lib/regcomp.c (optimize_subexps, lower_subexp):
19165         Use CHAR_BIT rather than 8, for clarity.
19166         * lib/regexec.c (check_dst_limits_calc_pos_1):
19167         (check_subexp_matching_top): Likewise.
19168         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
19169         have to worry about portability issues when shifting it left.
19170         Remove no-longer-needed test for table_size > 0.
19171         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
19172         in a word, as the resulting behavior is undefined.
19173         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
19174         in one case, a <= should have been an <, and in another case the
19175         whole test was missing.
19176         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
19177         the standard name CHAR_BIT.
19178         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
19179         this is not true on one's complement and signed-magnitude hosts.
19180
19181         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
19182         next_last_offset.
19183         (struct re_dfa_t): Remove unused member states_alloc.
19184         * lib/regcomp.c (init_dfa): Don't initialize unused members.
19185
19186 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19187
19188         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
19189         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
19190         and large-file glibc and in 32-bit large-file Solaris.
19191
19192 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19193
19194         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
19195         lengths fit in regoff_t; this isn't true if regoff_t is the same
19196         width as size_t.
19197         * lib/regex.c (re_search_internal): 5th arg is LAST_START
19198         (= START + RANGE) instead of RANGE.  This avoids overflow
19199         problems when regoff_t is the same width as size_t.
19200         All callers changed.
19201         (re_search_2_stub): Check for overflow when adding the
19202         sizes of the two strings.
19203         (re_search_stub): Check for overflow when adding START
19204         to RANGE; if it occurs, substitute the extreme value.
19205
19206 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
19207
19208         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
19209
19210 2005-08-31  Jim Meyering  <jim@meyering.net>
19211
19212         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
19213         a pointer-to-const.
19214         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
19215         (register_state): Likewise.
19216         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
19217         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
19218         (group_nodes_into_DFAstates): Likewise.
19219
19220 2005-08-31  Jim Meyering  <jim@meyering.net>
19221
19222         * check-module: Add a FIXME comment.
19223
19224 2005-08-31  Eric Blake  <ebb9@byu.net>
19225
19226         * modules/unistd-safer (Files): Add unistd--.h.
19227         * modules/stdio-safer (Files): Add stdio--.h.
19228
19229 2005-08-31  Derek Price  <derek@ximbiot.com>
19230
19231         * lib/getdelim.c (getdelim): Return EOF on EOF.
19232         Reported by Larry Jones <lawrence.jones@ugs.com>.
19233
19234 2005-08-31  Bruno Haible  <bruno@clisp.org>
19235
19236         Avoid unnecessary diffs in the generated lib/Makefile.am.
19237         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
19238         the generated files.
19239         (func_import): Don't set cmd.
19240
19241 2005-08-31  Bruno Haible  <bruno@clisp.org>
19242
19243         * lib/strstr.c: Include <stddef.h>, for NULL.
19244         * lib/strcasestr.c: Likewise.
19245         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
19246
19247 2005-08-31  Bruno Haible  <bruno@clisp.org>
19248
19249         * gnulib-tool: New option --macro-prefix.
19250         (func_import): Use macro_prefix.
19251         (import): Handle option --macro-prefix.
19252
19253 2005-08-31  Bruno Haible  <bruno@clisp.org>
19254
19255         * gnulib-tool (import): Rename most ac_* variables to cached_*.
19256         Also use new variables cached_lgpl, cached_libtool.
19257
19258 2005-08-31  Bruno Haible  <bruno@clisp.org>
19259
19260         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
19261         always instantiating them.
19262
19263 2005-08-31  Bruno Haible  <bruno@clisp.org>
19264
19265         * gnulib-tool (func_import): Read the previous cached settings
19266         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
19267         earlier added by gnulib but are now dropped. Warn when a gnulib file
19268         overwrites a non-gnulib file.
19269
19270 2005-08-31  Bruno Haible  <bruno@clisp.org>
19271
19272         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
19273         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
19274         projects that don't keep autogenerated files in CVS. Put into
19275         actioncmd only the specified modules, not the transitive closure.
19276
19277 2005-08-31  Bruno Haible  <bruno@clisp.org>
19278
19279         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
19280         Create directories that shall be filled.
19281         (import): Don't look for gl_* macros in configure.ac. Recurse across
19282         all directories containing a gnulib-cache.m4 files, if meaningful.
19283
19284 2005-08-31  Bruno Haible  <bruno@clisp.org>
19285
19286         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
19287         (import): Set seen_libtool when we see gl_LIBTOOL.
19288
19289 2005-08-31  Bruno Haible  <bruno@clisp.org>
19290
19291         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
19292         declaration macro definitions from generated gnulib.m4.
19293
19294 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
19295
19296         * lib/iconvme.h: Add prototype for iconv_alloc.
19297
19298 2005-08-29  Simon Josefsson  <jas@extundo.com>
19299
19300         * lib/iconvme.c: Fix errno.
19301
19302 2005-08-29  Bruno Haible  <bruno@clisp.org>
19303
19304         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
19305         that it works when the directory contains spaces.
19306
19307 2005-08-29  Bruno Haible  <bruno@clisp.org>
19308
19309         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
19310
19311 2005-08-29  Bruno Haible  <bruno@clisp.org>
19312
19313         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
19314         Emit more advice.
19315
19316 2005-08-29  Bruno Haible  <bruno@clisp.org>
19317         and Stepan Kasal  <kasal@ucw.cz>
19318
19319         * check-module: If more parameters are given, check each of them
19320         separately; add more exceptions, as noted by Jim Meyering.
19321         (check_module): New procedure.
19322         (%exempt_header): Now contains all exceptions.
19323
19324 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
19325
19326         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
19327
19328 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
19329
19330         * lib/iconvme.c: Split iconv_string into iconv_alloc.
19331
19332 2005-08-28  Bruno Haible  <bruno@clisp.org>
19333
19334         * m4/gnulib-tool.m4: New file.
19335
19336 2005-08-27  Jim Meyering  <jim@meyering.net>
19337
19338         * modules/unistd-safer (Files): Add pipe-safer.c.
19339         * modules/fcntl-safer (Files): Add creat-safer.c.
19340
19341 2005-08-27  Jim Meyering  <jim@meyering.net>
19342
19343         * m4/stdlib-safer.m4: New file.  From coreutils.
19344         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
19345         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
19346         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
19347         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
19348         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
19349
19350 2005-08-27  Jim Meyering  <jim@meyering.net>
19351
19352         * lib/fopen-safer.c: Merge minor changes from coreutils.
19353         * lib/dup-safer.c: Likewise.
19354         * lib/fd-safer.c: Likewise.
19355
19356         Merge from coreutils.
19357         * lib/stdio--.h: New file.
19358         * lib/stdlib--.h: New file.
19359         * lib/mkstemp-safer.c: New file.
19360
19361         GNU tar needs these.
19362         * lib/pipe-safer.c: New file.
19363         * lib/creat-safer.c: New file.
19364         * lib/fcntl--.h (creat): Define to creat_safer.
19365         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
19366         * lib/unistd--.h (pipe): Define to pipe_safer.
19367         * lib/unistd-safer.h: Declare pipe_safer.
19368
19369 2005-08-26  Simon Josefsson  <jas@extundo.com>
19370
19371         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
19372         Haible <bruno@clisp.org>.
19373
19374 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
19375
19376         * lib/regex_internal.h: Remove all references to
19377         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
19378         or better.
19379         (bitset_not, bitset_merge, bitset_not_merge):
19380         (bitset_mask, re_string_allocate, re_string_construct):
19381         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
19382         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
19383         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
19384         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
19385         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
19386         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
19387         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
19388         (re_acquire_state_context):
19389         Remove unnecessary forward decls.
19390         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
19391         Put __attribute at function definition,
19392         now that the function decl has been removed.
19393         * lib/regex_internal.c (re_string_peek_byte_case):
19394         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
19395         Likewise.
19396
19397 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
19398
19399         * m4/regex.m4: Add AC_PREREQ(2.50).
19400         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
19401
19402 2005-08-25  Simon Josefsson  <jas@extundo.com>
19403
19404         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
19405         __fsetlocking.
19406
19407 2005-08-25  Simon Josefsson  <jas@extundo.com>
19408
19409         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
19410         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
19411         GLIBC specific code.
19412
19413 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
19414
19415         Make regex safe for g++.  This fixes one real bug (an "err"
19416         that should have been "*err").  g++ problem reported by
19417         Sam Steingold.
19418         * lib/regex_internal.h (re_calloc): New macro, consistent with
19419         re_malloc etc.  All callers of calloc changed to use re_calloc.
19420         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
19421         not int.  All callers changed.
19422         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
19423         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
19424         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
19425         (find_recover_state): Change "err" to "*err"; this fixes what
19426         appears to be a real bug.
19427         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
19428         versus int.
19429
19430 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
19431
19432         * modules/regex (Depends-on): Add malloc, since the code
19433         assumes that !malloc(0) means failure.
19434
19435 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
19436
19437         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
19438
19439         alloca modernization/simplification for regex.
19440         * lib/regex.c: Remove portability cruft for alloca.  This no longer
19441         needs to be at the start of the file, and can be moved into
19442         regex_internal.h and simplified.
19443         * lib/regex_internal.h: Include <alloca.h>.
19444         (__libc_use_alloca) [!defined _LIBC]: New macro.
19445         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
19446         now works outside glibc.
19447
19448 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
19449
19450         * config/srclist.txt: Add glibc bugs 1241, 1245.
19451
19452 2005-08-25  Jim Meyering  <jim@meyering.net>
19453
19454         * lib/open-safer.c: Include <config.h>.
19455         Otherwise, we'd lose LARGEFILE support in any file using
19456         e.g. "fcntl--.h"
19457
19458 2005-08-25  Bruno Haible  <bruno@clisp.org>
19459
19460         * m4/minmax.m4: Require autoconf 2.52.
19461         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
19462         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
19463         alternatives of translit over the alphabet.
19464         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
19465
19466 2005-08-24  Simon Josefsson  <jas@extundo.com>
19467
19468         * tests/test-getpass.c: New file.
19469
19470 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
19471
19472         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
19473         for GNU regex features.
19474
19475 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
19476
19477         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
19478         * lib/regex.h (regerror): Likewise.
19479
19480         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
19481         requires this.  (The code never needed it.)
19482
19483         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
19484         All uses of recently-renamed identifiers changed to use the new,
19485         POSIX-compliant names.  The code will build and run just fine
19486         without these changes, but it's better to eat our own dog food
19487         and use the standard-conforming names.
19488
19489         * lib/regex.h: Fix a multitude of POSIX name space violations.
19490         These changes have an effect only for programs that define
19491         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
19492         do not change anything for programs compiled in the normal way.
19493         Also, there is no effect on the ABI.
19494
19495         (_REGEX_SOURCE): New macro.
19496         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
19497         defined and _GNU_SOURCE is not; this fixes a name space violation.
19498
19499         Rename the following macros to obey POSIX requirements.
19500         The old names are still visible as macros if _REGEX_SOURCE is defined.
19501         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
19502         RE_BACKSLASH_ESCAPE_IN_LISTS.
19503         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
19504         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
19505         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
19506         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
19507         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
19508         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
19509         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
19510         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
19511         (REG_INTERVALS): renamed from RE_INTERVALS.
19512         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
19513         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
19514         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
19515         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
19516         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
19517         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
19518         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
19519         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
19520         RE_UNMATCHED_RIGHT_PAREN_ORD.
19521         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
19522         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
19523         (REG_DEBUG): renamed from RE_DEBUG.
19524         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
19525         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
19526         unusual, since we can't clash with the POSIX REG_ICASE.
19527         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
19528         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
19529         (REG_NO_SUB): renamed from RE_NO_SUB.
19530         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
19531         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
19532         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
19533         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
19534         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
19535         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
19536         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
19537         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
19538         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
19539         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
19540         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
19541         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
19542         RE_SYNTAX_POSIX_MINIMAL_BASIC.
19543         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
19544         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
19545         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
19546         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
19547         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
19548         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
19549         (REG_FIXED): Renamed from REGS_FIXED.
19550         (REG_NREGS): Renamed from RE_NREGS.
19551
19552         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
19553         of other REG_* macros, since POSIX says the user is allowed to
19554         #undef these macros selectively.
19555
19556         (reg_errcode_t): Update comment stating what other tables need
19557         to be consistent.
19558
19559         Rename the following enum values to obey POSIX requirements.
19560         The old names are still visible as macros.
19561         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
19562         is not defined, since GNU is supposed to be a superset of POSIX as
19563         much as possible, and since we want reg_errcode_t to be a signed
19564         type for implementation consistency.
19565         (_REG_NOERROR): Renamed from REG_NOERROR.
19566         (_REG_NOMATCH): Renamed from REG_NOMATCH.
19567         (_REG_BADPAT): Renamed from REG_BADPAT.
19568         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
19569         (_REG_ECTYPE): Renamed from REG_ECTYPE.
19570         (_REG_EESCAPE): Renamed from REG_EESCAPE.
19571         (_REG_ESUBREG): Renamed from REG_ESUBREG.
19572         (_REG_EBRACK): Renamed from REG_EBRACK.
19573         (_REG_EPAREN): Renamed from REG_EPAREN.
19574         (_REG_EBRACE): Renamed from REG_EBRACE.
19575         (_REG_BADBR): Renamed from REG_BADBR.
19576         (_REG_ERANGE): Renamed from REG_ERANGE.
19577         (_REG_ESPACE): Renamed from REG_ESPACE.
19578         (_REG_BADRPT): Renamed from REG_BADRPT.
19579         (_REG_EEND): Renamed from REG_EEND.
19580         (_REG_ESIZE): Renamed from REG_ESIZE.
19581         (_REG_ERPAREN): Renamed from REG_ERPAREN.
19582         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
19583         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
19584         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
19585         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
19586
19587         (_REG_RE_NAME, _REG_RM_NAME): New macros.
19588         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
19589         changed.  But support the old name if the new one is not defined
19590         and if _REGEX_SOURCE.
19591
19592         Change the following member names in struct re_pattern_buffer.
19593         The old names are still supported if !_REGEX_SOURCE.
19594         The new names are always supported, regardless of _REGEX_SOURCE.
19595         (re_buffer): Renamed from buffer.
19596         (re_allocated): Renamed from allocated.
19597         (re_used): Renamed from used.
19598         (re_syntax): Renamed from syntax.
19599         (re_fastmap): Renamed from fastmap.
19600         (re_translate): Renamed from translate.
19601         (re_can_be_null): Renamed from can_be_null.
19602         (re_regs_allocated): Renamed from regs_allocated.
19603         (re_fastmap_accurate): Renamed from fastmap_accurate.
19604         (re_no_sub): Renamed from no_sub.
19605         (re_not_bol): Renamed from not_bol.
19606         (re_not_eol): Renamed from not_eol.
19607         (re_newline_anchor): Renamed from newline_anchor.
19608
19609         Change the following member names in struct re_registers.
19610         The old names are still supported if !_REGEX_SOURCE.
19611         The new names are always supported, regardless of _REGEX_SOURCE.
19612         (rm_num_regs): Renamed from num_regs.
19613         (rm_start): Renamed from start.
19614         (rm_end): Renamed from end.
19615
19616         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
19617         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
19618         Prepend __ to parameter names.
19619
19620         Undo yesterday's changes.
19621
19622 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
19623
19624         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
19625         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
19626         lib/regex.c.
19627
19628 2005-08-24  Jim Meyering  <jim@meyering.net>
19629
19630         Sync from coreutils.
19631         * m4/fcntl-safer.m4: New file.
19632
19633         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
19634         and object files for this module.
19635
19636 2005-08-24  Jim Meyering  <jim@meyering.net>
19637
19638         Sync from coreutils.
19639         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
19640
19641 2005-08-24  Jim Meyering  <jim@meyering.net>
19642
19643         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
19644         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
19645
19646 2005-08-24  Jim Meyering  <jim@meyering.net>
19647
19648         * modules/fcntl-safer: New module.
19649         * modules/fts (Depends-on): Add fcntl-safer.
19650         * MODULES.html.sh (File descriptor based Input/Output):
19651         Add fcntl-safer.
19652
19653 2005-08-24  Bruno Haible  <bruno@clisp.org>
19654
19655         Support for unit test modules.
19656         * modules/README: Mention tests modules.
19657         * modules/TEMPLATE-TESTS: New file.
19658         * gnulib-tool: New options --extract-tests-module, --with-tests and
19659         --tests-base (unused for the moment).
19660         (testsbase, inctests): New variables.
19661         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
19662         (func_verify_module): Exclude TEMPLATE-TESTS.
19663         (func_verify_nontests_module, func_verify_tests_module): New functions.
19664         (func_get_dependencies): Add implicit dependency for tests modules.
19665         (func_get_tests_module): New function.
19666         (func_modules_transitive_closure): When --with-tests was specified,
19667         include the unit tests as well, unless explicitly avoided.
19668         (func_emit_lib_Makefile_am): Ignore the tests modules here.
19669         (func_emit_tests_Makefile_am): New function.
19670         (func_create_testdir): When --with-tests was specified, emit a
19671         tests/ directory.
19672         * MODULES.html.sh (Future developments): Update.
19673
19674 2005-08-24  Bruno Haible  <bruno@clisp.org>
19675
19676         * modules/tls-tests: New file.
19677         * tests/test-tls.c: New file, from GNU gettext.
19678
19679 2005-08-24  Bruno Haible  <bruno@clisp.org>
19680
19681         * modules/lock-tests: New file.
19682         * tests/test-lock.c: New file, from GNU gettext.
19683
19684 2005-08-24  Bruno Haible  <bruno@clisp.org>
19685
19686         * lib/lock.h: Add multiple inclusion guard.
19687         * lib/tls.h: Add multiple inclusion guard.
19688
19689 2005-08-24  Bruno Haible  <bruno@clisp.org>
19690
19691         * gnulib-tool: Add support for the --aux-dir option to
19692         --create-testdir, --create-megatestdir, --test, --megatest.
19693         (func_create_testdir, func_create_megatestdir): Optionally emit a
19694         AC_CONFIG_AUX_DIR directive.
19695         (create-testdir, create-megatestdir, test, megatest): Provide a
19696         default value for $auxdir.
19697
19698 2005-08-24  Bruno Haible  <bruno@clisp.org>
19699
19700         * gnulib-tool (import): Use compound statement instead of subshell
19701         where possible.
19702
19703 2005-08-24  Bruno Haible  <bruno@clisp.org>
19704
19705         * gnulib-tool (import): Change --aux-dir default to "build-aux".
19706
19707 2005-08-24  Bruno Haible  <bruno@clisp.org>
19708
19709         * gnulib-tool (func_version): Update.
19710
19711 2005-08-24  Bruno Haible  <bruno@clisp.org>
19712
19713         * gnulib-tool (func_import, func_create_testdir,
19714         func_create_megatestdir): Quote all autoconf macro arguments.
19715
19716 2005-08-24  Bruno Haible  <bruno@clisp.org>
19717
19718         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
19719         option --force, because --force causes the aclocal.m4 of each
19720         subdirectory to be newer than the corresponding config.h.in.
19721
19722 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19723
19724         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
19725         All contents moved to gl_REGEX.
19726         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
19727         assume that it does.
19728
19729 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19730
19731         * lib/regex.h (REG_NOSYS)
19732         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
19733         Define, since POSIX requires it as of 2001.
19734         (_REG_ENOSYS)
19735         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
19736         New private symbol, used to keep the enum signed in all cases.
19737         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
19738         Youngman in
19739         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
19740
19741         * lib/regex_internal.c (re_string_skip_chars, register_state):
19742         (calc_state_hash):
19743         Remove forward decls; no longer needed now that we use prototypes.
19744         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
19745         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
19746         (clean_state_log_if_needed): Likewise.
19747
19748 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
19749
19750         * config/srclist.txt: Add glibc bugs 1231-1233.
19751
19752 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
19753
19754         Fix problems reported by Sam Steingold in
19755         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
19756         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
19757         assumed that reg_errcode_t is a signed type, which is not
19758         necessarily true if _XOPEN_SOURCE is not defined.
19759         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
19760         since some compilers warn about it otherwise.
19761
19762 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
19763
19764         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
19765         (init_word_char, create_initial_state, duplicate_node_closure):
19766         (fetch_token, peek_token_bracket, build_range_exp):
19767         (build_collating_symbol): Remove forward decls; no longer needed
19768         now that we use prototypes.
19769
19770         * lib/regcomp.c:
19771         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
19772         (re_compile_fastmap_iter, regcomp, regerror, regfree):
19773         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
19774         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
19775         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
19776         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
19777         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
19778         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
19779         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
19780         (build_range_exp, build_collating_symbol, parse_bracket_exp):
19781         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
19782         (build_charclass, build_charclass_op, fetch_number, create_tree):
19783         (create_token_tree, mark_opt_subexp, duplicate_tree):
19784         Use prototypes rather than old-style definitions.
19785
19786         * lib/regex_internal.c:
19787         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
19788         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
19789         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
19790         (re_string_reconstruct, re_string_peek_byte_case):
19791         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
19792         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
19793         (re_node_set_init_copy, re_node_set_add_intersect):
19794         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
19795         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
19796         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
19797         (re_acquire_state, re_acquire_state_context, register_state):
19798         (create_ci_newstate, create_cd_newstate, free_state):
19799         Likewise.
19800         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
19801         re_search_2):
19802         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
19803         (re_search_internal, prune_impossible_nodes):
19804         (acquire_init_state_context, check_matching, static):
19805         (check_halt_node_context, check_halt_state_context, proceed_next_node):
19806         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
19807         (update_regs, sift_states_backward, build_sifted_states):
19808         (clean_state_log_if_needed, merge_state_array):
19809         (update_cur_sifted_state, add_epsilon_src_nodes):
19810         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
19811         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
19812         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
19813         (find_recover_state, check_subexp_matching_top, transit_state_mb):
19814         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
19815         (check_arrival, check_arrival_add_next_nodes):
19816         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
19817         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
19818         (check_node_accept_bytes, check_node_accept, extend_buffers):
19819         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
19820         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
19821         (sift_ctx_init):
19822         Likewise.
19823
19824         * lib/regex_internal.h:
19825         (re_string_allocate, re_string_construct, re_string_reconstruct):
19826         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
19827         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
19828         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
19829         (re_string_context_at, re_string_peek_byte_case):
19830         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
19831         is defined, since we now use prototypes always.
19832
19833         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
19834         C89 or better.  All uses removed.
19835
19836 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
19837
19838         * config/srclist.txt: Add glibc bugs 1220-1227.
19839
19840 2005-08-20  Jim Meyering  <jim@meyering.net>
19841
19842         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
19843         of unused local, dfa.
19844
19845 2005-08-20  Bruno Haible  <bruno@clisp.org>
19846
19847         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
19848
19849 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
19850
19851         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
19852         (re_node_set_insert_last, re_dfa_add_node):
19853         Rename local variables to avoid GCC shadowing warnings.
19854
19855 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
19856
19857         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
19858         [defined lint]: Suppress bogus uninitialized-variable warnings.
19859
19860         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
19861         and let the caller return REG_ESPACE if out of space.  This
19862         removes an uninitialied-variable warning with GCC 4.0.1, and also
19863         avoids taking the address of a local variable.  All callers
19864         changed.
19865
19866 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
19867
19868         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
19869         $LIBCSRC/posix/regexec.c.
19870         Add glibc bug 1217 for regcomp.c.
19871
19872 2005-08-19  Jim Meyering  <jim@meyering.net>
19873
19874         * lib/regexec.c (proceed_next_node): Redo local variables to
19875         avoid GCC shadowing warnings.
19876
19877 2005-08-18  Bruno Haible  <bruno@clisp.org>
19878
19879         * lib/strstr.c (strstr): Fix return value in multibyte case.
19880         * lib/strcasestr.c (strcasestr): Likewise.
19881
19882 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
19883
19884         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
19885
19886 2005-08-17  Jim Meyering  <jim@meyering.net>
19887
19888         Make the %s format (seconds since the epoch) work for a negative
19889         number and when used with a zero-padded field width, e.g. %015s.
19890
19891         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
19892         label so that it precedes the code to set `digits'.  Otherwise,
19893         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
19894         print `00-22'.  Now, it prints `-0022', as it should.
19895
19896 2005-08-17  Bruno Haible  <bruno@clisp.org>
19897
19898         * modules/strstr (Files): Add m4/mbrtowc.m4.
19899         (Depends-on): Add mbuiter.
19900
19901 2005-08-17  Bruno Haible  <bruno@clisp.org>
19902
19903         * modules/strcasestr: New file.
19904         * MODULES.html.sh (String handling, based on ANSI C 89): Add
19905         strcasestr.
19906
19907 2005-08-17  Bruno Haible  <bruno@clisp.org>
19908
19909         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
19910
19911 2005-08-17  Bruno Haible  <bruno@clisp.org>
19912
19913         * modules/mbuiter: New file.
19914         * MODULES.html.sh (Extended multibyte and wide character utilities):
19915         Add mbuiter.
19916
19917 2005-08-17  Bruno Haible  <bruno@clisp.org>
19918
19919         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
19920         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
19921
19922 2005-08-17  Bruno Haible  <bruno@clisp.org>
19923
19924         * m4/strcasestr.m4: New file.
19925
19926 2005-08-17  Bruno Haible  <bruno@clisp.org>
19927
19928         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
19929         * lib/strstr.c: Completely rewritten, with multibyte locale support.
19930
19931 2005-08-17  Bruno Haible  <bruno@clisp.org>
19932
19933         * lib/strcasestr.h: New file.
19934         * lib/strcasestr.c: New file.
19935
19936 2005-08-17  Bruno Haible  <bruno@clisp.org>
19937
19938         * lib/strcasecmp.c: Use mbuiter.h.
19939
19940 2005-08-17  Bruno Haible  <bruno@clisp.org>
19941
19942         * lib/mbuiter.h: New file.
19943
19944 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
19945
19946         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
19947         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
19948         and gl_GETOPT are both invoked via different paths (as happens
19949         with GNU tar CVS because it uses both argp and getopt), the former
19950         wins.
19951
19952 2005-08-16  Bruno Haible  <bruno@clisp.org>
19953
19954         * modules/tls: New file.
19955         * MODULES.html.sh (Multithreading): Add tls.
19956
19957 2005-08-16  Bruno Haible  <bruno@clisp.org>
19958
19959         * modules/strnlen1: New file.
19960         * MODULES.html.sh (String handling): Add strnlen1.
19961
19962 2005-08-16  Bruno Haible  <bruno@clisp.org>
19963
19964         * modules/strcase (Files): Add m4/mbrtowc.m4.
19965         (Depends-on): Add strnlen1, mbchar.
19966
19967 2005-08-16  Bruno Haible  <bruno@clisp.org>
19968
19969         * modules/mbiter: New file.
19970         * MODULES.html.sh (Extended multibyte and wide character utilities):
19971         Add mbiter.
19972
19973 2005-08-16  Bruno Haible  <bruno@clisp.org>
19974
19975         * modules/mbfile: New file.
19976         * MODULES.html.sh (Extended multibyte and wide character utilities):
19977         Add mbfile.
19978
19979 2005-08-16  Bruno Haible  <bruno@clisp.org>
19980
19981         * modules/mbchar: New file.
19982         * MODULES.html.sh (Extended multibyte and wide character utilities):
19983         New section.
19984
19985 2005-08-16  Bruno Haible  <bruno@clisp.org>
19986
19987         * m4/tls.m4: New file, from GNU gettext.
19988
19989 2005-08-16  Bruno Haible  <bruno@clisp.org>
19990
19991         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
19992         always.
19993         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
19994
19995 2005-08-16  Bruno Haible  <bruno@clisp.org>
19996
19997         * m4/mbiter.m4: New file.
19998
19999 2005-08-16  Bruno Haible  <bruno@clisp.org>
20000
20001         * m4/mbfile.m4: New file.
20002
20003 2005-08-16  Bruno Haible  <bruno@clisp.org>
20004
20005         * m4/mbchar.m4: New file.
20006
20007 2005-08-16  Bruno Haible  <bruno@clisp.org>
20008
20009         * lib/tls.h: New file, from GNU gettext.
20010         * lib/tls.c: New file, from GNU gettext.
20011
20012 2005-08-16  Bruno Haible  <bruno@clisp.org>
20013
20014         * lib/strnlen1.h: New file.
20015         * lib/strnlen1.c: New file.
20016
20017 2005-08-16  Bruno Haible  <bruno@clisp.org>
20018
20019         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
20020         (mbi_init): Update.
20021         (mbi_avail, mbi_advance): Let the iteration end before the terminating
20022         NUL byte, not after it.
20023
20024 2005-08-16  Bruno Haible  <bruno@clisp.org>
20025
20026         * lib/strcase.h (strcasecmp): Add note in comments.
20027         * lib/strncasecmp.c: Use code from strcasecmp.c.
20028         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
20029         (strcasecmp): Work correctly in multibyte locales.
20030
20031 2005-08-16  Bruno Haible  <bruno@clisp.org>
20032
20033         * lib/mbiter.h: New file.
20034
20035 2005-08-16  Bruno Haible  <bruno@clisp.org>
20036
20037         * lib/mbfile.h: New file.
20038
20039 2005-08-16  Bruno Haible  <bruno@clisp.org>
20040
20041         * lib/mbchar.h: New file.
20042         * lib/mbchar.c: New file.
20043
20044 2005-08-16  Bruno Haible  <bruno@clisp.org>
20045
20046         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
20047         the valid ones. Makes the comparison operations transitive:
20048         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
20049         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
20050
20051 2005-08-15  Simon Josefsson  <jas@extundo.com>
20052
20053         * modules/ssize_t (License): Change to 'unlimited'.
20054
20055         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
20056
20057 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20058
20059         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
20060         Add comments for each pending glibc patch.
20061
20062 2005-08-15  Bruno Haible  <bruno@clisp.org>
20063
20064         * lib/regex.h (__restrict_arr): Don't define to __restrict if
20065         __cplusplus is defined.
20066
20067 2005-08-14  Jim Meyering  <jim@meyering.net>
20068
20069         Sync from coreutils.
20070
20071         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
20072         Use the hash-table-based cycle-detection code not just when
20073         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
20074         Reported by James Youngman in
20075         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
20076         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
20077         FTS_TIGHT_CYCLE_CHECK.
20078         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
20079         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
20080         once again.
20081         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
20082         * lib/fts.c (fd_safer): Remove decl.
20083         Include fcntl--.h rather than unistd-safer.h
20084         (fts_safe_changedir): Don't call fd_safer; no longer needed
20085         now that we include fcntl--.h.
20086
20087 2005-08-12  Simon Josefsson  <jas@extundo.com>
20088
20089         * modules/getndelim2: Use ssize_t module.
20090         * modules/getnline: Likewise.
20091         * modules/safe-read: Likewise.
20092         * modules/xreadlink: Likewise.
20093
20094         * modules/ssize_t: New file.
20095
20096 2005-08-12  Simon Josefsson  <jas@extundo.com>
20097
20098         * m4/readline.m4: Look for termcap, curses or ncurses if required.
20099
20100 2005-08-12  Simon Josefsson  <jas@extundo.com>
20101
20102         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
20103         ssize_t.
20104
20105 2005-08-12  Simon Josefsson  <jas@extundo.com>
20106
20107         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
20108         readline, getdelim and check_version.
20109         (Support for systems lacking ISO C 99: Sizes of integer types):
20110         Add size_max.
20111
20112 2005-08-12  Bruno Haible  <bruno@clisp.org>
20113
20114         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
20115
20116 2005-08-11  Simon Josefsson  <jas@extundo.com>
20117
20118         * modules/readline: New file.
20119
20120         * modules/strnlen (Files): Add strnlen.h.
20121
20122 2005-08-11  Simon Josefsson  <jas@extundo.com>
20123
20124         * m4/readline.m4: New file.
20125
20126 2005-08-11  Simon Josefsson  <jas@extundo.com>
20127
20128         * lib/readline.h, readline.c: New file.
20129
20130 2005-08-11  Simon Josefsson  <jas@extundo.com>
20131
20132         * doc/gnulib.texi (Initial import, Finishing touches): Mention
20133         gl_AVOID.
20134
20135 2005-08-11  Bruno Haible  <bruno@clisp.org>
20136
20137         * lib/strnlen.h (strnlen): Change parameter name to match comment.
20138
20139 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
20140
20141         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
20142
20143 2005-08-10  Simon Josefsson  <jas@extundo.com>
20144
20145         * tests/test-iconvme.c: New file.
20146
20147 2005-08-10  Simon Josefsson  <jas@extundo.com>
20148
20149         * m4/strnlen.m4: New file.
20150
20151         * m4/strndup.m4: Don't check for strnlen declaration, done in
20152         strnlen.m4.
20153
20154 2005-08-10  Simon Josefsson  <jas@extundo.com>
20155
20156         * lib/strndup.c: Use strnlen.h.
20157
20158         * lib/strnlen.h: New file.
20159
20160 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
20161
20162         * README: Typos.
20163
20164 2005-08-02  Simon Josefsson  <jas@extundo.com>
20165
20166         * modules/readline: New file.
20167
20168 2005-08-02  Simon Josefsson  <jas@extundo.com>
20169
20170         * modules/getdelim: New file.
20171
20172         * modules/getline: Rewrite, don't use getndelim2.
20173
20174 2005-08-02  Simon Josefsson  <jas@extundo.com>
20175
20176         * m4/getline.m4: Separate out getdelim stuff into separate module.
20177
20178         * m4/getdelim.m4: New file.
20179
20180 2005-08-02  Simon Josefsson  <jas@extundo.com>
20181
20182         * lib/getline.h, getline.c: Rewrite.
20183
20184         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
20185
20186 2005-07-31  Bruno Haible  <bruno@clisp.org>
20187
20188         * lib/lock.h (gl_lock_initializer): New macro.
20189         (gl_lock_define_initialized): Use it.
20190         (gl_rwlock_initializer): New macro.
20191         (gl_rwlock_define_initialized): Use it.
20192         (gl_recursive_lock_initializer): New macro.
20193         (gl_recursive_lock_define_initialized): Use it.
20194
20195 2005-07-30  Karl Berry  <karl@gnu.org>
20196
20197         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
20198         Report from Ben Pfaff, regarding getopt.
20199
20200 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
20201
20202         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
20203         normal way.
20204         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
20205         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
20206         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
20207         (gl_GETOPT): Use the new macros.  Most of the implementation
20208         is moved to the new macros.  This is for programs like Emacs
20209         that don't want all the functionality of gl_GETOPT.
20210
20211 2005-07-26  Bruno Haible  <bruno@clisp.org>
20212
20213         * m4/lock.m4: Update from GNU gettext.
20214
20215 2005-07-26  Bruno Haible  <bruno@clisp.org>
20216
20217         * lib/lock.h: Update from GNU gettext.
20218         * lib/lock.c: Update from GNU gettext.
20219
20220 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
20221
20222         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
20223         obsolescent AC_TRY_RUN.  Include the default includes files, for
20224         'exit'.
20225
20226 2005-07-24  Bruno Haible  <bruno@clisp.org>
20227
20228         * modules/visibility: New file.
20229         * MODULES.html.sh (Misc): Add visibility.
20230
20231 2005-07-24  Bruno Haible  <bruno@clisp.org>
20232
20233         * m4/visibility.m4: New file.
20234
20235 2005-07-24  Bruno Haible  <bruno@clisp.org>
20236
20237         * doc/visibility.texi: New file.
20238
20239 2005-07-22  Bruno Haible  <bruno@clisp.org>
20240
20241         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
20242         $(ALLOCA_H), redundant through BUILT_SOURCES.
20243         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
20244         redundant through BUILT_SOURCES.
20245         * modules/byteswap (Makefile.am): Remove explicit dependency on
20246         $(BYTESWAP_H), redundant through BUILT_SOURCES.
20247         * modules/fnmatch (Makefile.am): Remove explicit dependency on
20248         $(FNMATCH_H), redundant through BUILT_SOURCES.
20249         * modules/getopt (Makefile.am): Remove explicit dependency on
20250         $(GETOPT_H), redundant through BUILT_SOURCES.
20251         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
20252         redundant through BUILT_SOURCES.
20253         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
20254         redundant through BUILT_SOURCES.
20255         * modules/stdbool (Makefile.am): Remove explicit dependency on
20256         $(STDBOOL_H), redundant through BUILT_SOURCES.
20257         * modules/stdint (Makefile.am): Remove explicit dependency on
20258         $(STDINT_H), redundant through BUILT_SOURCES.
20259         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
20260         Remove explicit dependency on $(SYSEXITS_H).
20261         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
20262
20263 2005-07-18  Simon Josefsson  <jas@extundo.com>
20264
20265         * lib/check-version.c (check_version): Accept identical versions too.
20266
20267 2005-07-18  Bruno Haible  <bruno@clisp.org>
20268
20269         * modules/lock: New file.
20270         * MODULES.html.sh (Multithreading): New section.
20271
20272 2005-07-18  Bruno Haible  <bruno@clisp.org>
20273
20274         * m4/lock.m4: New file, from GNU gettext.
20275
20276 2005-07-18  Bruno Haible  <bruno@clisp.org>
20277
20278         * lib/lock.h: New file, from GNU gettext.
20279         * lib/lock.c: New file, from GNU gettext.
20280
20281 2005-07-18  Bruno Haible  <bruno@clisp.org>
20282
20283         * lib/lock.h (gl_once_t): New type.
20284         (gl_once_define, gl_once): New macros.
20285         * lib/lock.c (fresh_once): New variable.
20286         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
20287         functions.
20288
20289 2005-07-16  Simon Josefsson  <jas@extundo.com>
20290
20291         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
20292         workaround, suggested by Bruno.
20293
20294 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
20295
20296         * modules/xalloc (Depends-on): Add xalloc-die.
20297         * modules/xvasprintf (Depends-on): Add xalloc-die.
20298
20299 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
20300
20301         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
20302         with a minor change.
20303
20304 2005-07-15  Bruno Haible  <bruno@clisp.org>
20305
20306         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
20307         When using lib/poll.c, define poll as rpl_poll.
20308
20309 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
20310
20311         * modules/argp (Depends-on): Remove unlocked-io.
20312
20313 2005-07-14  Derek Price  <derek@ximbiot.com>
20314
20315         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
20316         for glob symlink bug.
20317
20318 2005-07-14  Bruno Haible  <bruno@clisp.org>
20319
20320         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
20321         Instead, test for *_unlocked function declarations directly.
20322
20323 2005-07-11  Simon Josefsson  <jas@extundo.com>
20324
20325         * modules/size_max: New file.
20326
20327         * modules/xsize: Depend on size_max module for size_max.m4.
20328
20329 2005-07-11  Simon Josefsson  <jas@extundo.com>
20330
20331         * lib/size_max.h: New file.
20332
20333 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
20334
20335         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
20336         copyright symbol and the year.
20337         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
20338         (version_etc_va): Use parameterized copyright notice.
20339         Reword to conform to the current GNU coding standards.
20340
20341 2005-07-11  Karl Berry  <karl@gnu.org>
20342
20343         * doc/gnulib.texi (Quoting): new node.
20344         (Initial import): more info, from Patrice.
20345
20346 2005-07-11  Bruno Haible  <bruno@clisp.org>
20347
20348         * gnulib-tool (func_usage): Document option --avoid.
20349         (Command line options): Handle --avoid.
20350         (func_acceptable): New function.
20351         (func_modules_transitive_closure): Use it.
20352
20353 2005-07-11  Bruno Haible  <bruno@clisp.org>
20354
20355         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
20356         Reported by Jim Meyering.
20357
20358 2005-07-10  Bruno Haible  <bruno@clisp.org>
20359
20360         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
20361         Needed when size_t is smaller than 'unsigned int'.
20362         Reported by Paul Eggert.
20363
20364 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20365
20366         * modules/argp (Depends-on): Add unlocked-io
20367
20368 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20369
20370         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
20371         block of defines.
20372
20373 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
20374
20375         * config/srclist.txt: Comment out regcomp.c, since we have a porting
20376         fix now.
20377
20378 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
20379         and Paul Eggert  <eggert@cs.ucla.edu>
20380
20381         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
20382         in wint_t, not wchar_t.  Remove now-unnecessary cast.
20383
20384 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
20385
20386         * modules/regex (Files): Add lib/regex_internal.c,
20387         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
20388         (Depends-on): Add extensions.
20389         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
20390
20391 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
20392
20393         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
20394         pathconf.
20395         * m4/same.m4 (gl_SAME): Likewise.
20396         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
20397
20398         * m4/regex.m4: Adjust to new libc regex implementation.
20399         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
20400         all the .c and .h parts of (the new) regex.
20401         Quote the m4 stuff better.
20402         Check for RE_ICASE bug of old gnulib.
20403         Check for REG_STARTEND of recent libc.
20404         Rename local variables from jm_* to gl_*.
20405         Quote operand of "test -f".
20406         Say "recent enough" version of libc, not "version 2".
20407         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
20408         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
20409         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
20410         Remove check for btowc, isascii.
20411         Require AM_LANGINFO_CODESET.
20412
20413 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
20414
20415         * lib/regex.c, regex.h: Sync from libc.
20416         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
20417         * lib/regexec.c:
20418         New files, synced from libc, except that regex_internal.h
20419         currently has a small porting fix.
20420
20421 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
20422
20423         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
20424         regex_internal.c, regexec.c.
20425         Add regex_internal.h too, but as a comment, since the libc version
20426         is currently broken in gnulib mode.
20427
20428 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
20429
20430         Support programs like Emacs that use gnulib but not gettext.
20431         * MODULES.html.sh (Internationalization functions): Add gettext-h.
20432         * modules/gettext-h: New file.
20433         * modules/gettext (Files): Remove lib/gettext.h.
20434         (Depends-on): Add gettext-h.
20435         (Makefile.am): Remove lib_SOURCES.
20436         * modules/argmatch, modules/c-stack, modules/closeout:
20437         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
20438         * modules/execute, modules/file-type, modules/getaddrinfo:
20439         * modules/getopt, modules/human, modules/javacomp:
20440         * modules/javaexec, modules/mkdir-p, modules/obstack:
20441         * modules/openat, modules/pagealign_alloc, modules/pipe:
20442         * modules/quotearg, modules/regex, modules/rpmatch:
20443         * modules/unicodeio, modules/userspec, modules/version-etc:
20444         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
20445         * modules/xsetenv:
20446         Depend on gettext-h, not gettext.
20447
20448 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
20449
20450         * gnulib-tool (func_import): Add support for 'public domain' license.
20451         * modules/alloca, modules/atexit, modules/memmove:
20452         Now public domain, not GPL.
20453         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
20454         * modules/realloc, modules/strerror, modules/strtod:
20455         Now LGPL, not GPL.
20456
20457 2005-07-05  Bruno Haible  <bruno@clisp.org>
20458
20459         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
20460         autoconf CVS. Needed for mingw.
20461
20462 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
20463
20464         Remove the dependency of the strftime module on the tzset module.
20465         * modules/strftime (Depends-on): Remove dependency on tzset.
20466
20467 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
20468
20469         Remove the dependency of the strftime module on the tzset module.
20470         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
20471         gl_FUNC_TZSET_CLOBBER.
20472
20473 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
20474
20475         Remove the dependency of the strftime module on the tzset module.
20476         * lib/strftime.c (my_strftime)
20477         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
20478         Copy the input structure, to work around some of the bug with
20479         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
20480         Solaris releases, you should also use the tzset module, but we won't
20481         require it as a dependency any more since we don't want LGPLed code
20482         to depend on GPLed code.
20483
20484 2005-07-02  Jim Meyering  <jim@meyering.net>
20485
20486         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
20487         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
20488         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
20489         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
20490
20491 2005-07-02  Jim Meyering  <jim@meyering.net>
20492
20493         * lib/backupfile.c (backup_args): Change a `0' to NULL.
20494
20495 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
20496
20497         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
20498         declares only 'struct timespec;' (!).
20499
20500 2005-07-01  Jim Meyering  <jim@meyering.net>
20501
20502         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
20503         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
20504         * lib/save-cwd.c, tempname.c:
20505         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
20506         and don't include <sys/file.h>).
20507
20508 2005-06-29  Jim Meyering  <jim@meyering.net>
20509
20510         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
20511         type name.  Use the variable name instead.
20512         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
20513         Likewise.
20514
20515 2005-06-28  Simon Josefsson  <jas@extundo.com>
20516
20517         * modules/check-version (Files): Add check-version.m4.
20518
20519 2005-06-28  Simon Josefsson  <jas@extundo.com>
20520
20521         * m4/check-version.m4: New file, suggested by Jim Meyering
20522         <jim@meyering.net>.
20523
20524 2005-06-28  Simon Josefsson  <jas@extundo.com>
20525
20526         * lib/check-version.h, lib/check-version.c: New files.
20527
20528 2005-06-28  Simon Josefsson  <jas@extundo.com>
20529
20530         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
20531         collision with global variable.  Better indentation.  Don't
20532         increment buffer pointer beyond buffer end.  Based on comments
20533         from Paul Eggert <eggert@cs.ucla.edu>.
20534
20535         * lib/base64.h: Indent.
20536
20537 2005-06-28  Simon Josefsson  <jas@extundo.com>
20538
20539         * doc/gnulib.texi (Library version handling): New section.
20540
20541 2005-06-28  Jim Meyering  <jim@meyering.net>
20542
20543         * check-module (find_included_lib_files): Hard-code another
20544         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
20545         but modules/fts-lgpl (correctly) does not list those files.
20546
20547         * modules/canonicalize (Files): Add lib/pathmax.h.
20548
20549 2005-06-25  Simon Josefsson  <jas@extundo.com>
20550
20551         * modules/check-version: New file.
20552
20553 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
20554
20555         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
20556         initializer of struct addrinfo, as an indication that we don't
20557         care how many members the structure has.
20558
20559 2005-06-24  Derek Price  <derek@ximbiot.com>
20560         and Bruno Haible  <bruno@clisp.org>
20561
20562         Remove stat module & update lstat.
20563         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
20564         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
20565         * m4/stat.m4: Remove this file.
20566
20567 2005-06-24  Derek Price  <derek@ximbiot.com>
20568         and Bruno Haible  <bruno@clisp.org>
20569
20570         Remove stat module & update lstat.
20571         * lib/stat.c: Remove this file...
20572         (slash_aware_lstat): ...moving this content and its support...
20573         * lib/lstat.c (rpl_lstat): ...into here.
20574         * lib/lstat.h: New file.
20575
20576 2005-06-24  Derek Price  <derek@ximbiot.com>
20577         and Bruno Haible  <bruno@clisp.org>
20578
20579         Remove stat module & update lstat.
20580         * config/srclist.txt (libc sources): Remove stat.
20581
20582 2005-06-24  Derek Price  <derek@ximbiot.com>
20583         and Bruno Haible  <bruno@clisp.org>
20584
20585         Remove stat module & update lstat.
20586         * MODULES.html.sh (stat): Remove.
20587         * MODULES.html: Regenerated.
20588         * modules/lstat (Description): Correct function name.
20589         (Files): Add "lstat.h".
20590         (Depends-on): Remove stat, add xalloc, stat-macros.
20591         * modules/stat: Remove this file.
20592         (Include): Add "lstat.h", remove <sys/stat.h>.
20593
20594 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
20595
20596         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
20597         (ranged_convert): Don't save conversion in a temporary struct.
20598         This causes a warning with GCC 4.0.0, and anyway in the typical
20599         case it's not worth the extra 100 bytes or so of code.
20600         (ranged_convert, __mktime_internal): When calling a function via a
20601         pointer P, use P () rather than (*P) (), as we now assume C89 or
20602         better.
20603
20604 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
20605
20606         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
20607         "who -r" failed to give output.  Problem reported by Tim Waugh.
20608
20609         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
20610         (xcalloc): Use it to avoid needless tests.
20611         Problem reported by Jim Meyering.
20612
20613 2005-06-20  Derek Price  <derek@ximbiot.com>
20614
20615         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
20616         unnecessary for Autoconfs > 2.59c.
20617
20618 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
20619
20620         * lib/argp.h (__option_is_short): Check upper limit of
20621         __key. Isprint() requires its argument to have the value
20622         of an unsigned char or EOF.
20623
20624 2005-06-16  Jim Meyering  <jim@meyering.net>
20625
20626         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
20627         when either N or S is zero.
20628
20629 2005-06-16  Derek Price  <derek@ximbiot.com>
20630
20631         * m4/bison.m4: Declare YACC & YFLAGS precious.
20632
20633 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
20634
20635         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
20636         multibyte string or pattern, fall back on unibyte matching.
20637         Problem reported by James Youngman.
20638
20639 2005-06-08  Bruno Haible  <bruno@clisp.org>
20640
20641         * modules/csharpcomp: New file.
20642         * MODULES.html.sh (C#): Add csharpcomp.
20643
20644 2005-06-08  Bruno Haible  <bruno@clisp.org>
20645
20646         * m4/csharpcomp.m4: New file, from GNU gettext.
20647
20648 2005-06-08  Bruno Haible  <bruno@clisp.org>
20649
20650         * lib/csharpcomp.h: New file, from GNU gettext.
20651         * lib/csharpcomp.c: New file, from GNU gettext.
20652         * lib/csharpcomp.sh.in: New file, from GNU gettext.
20653
20654 2005-06-08  Bruno Haible  <bruno@clisp.org>
20655
20656         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
20657         warning on mingw.
20658
20659 2005-06-07  Derek Price  <derek@ximbiot.com>
20660
20661         Sync from CVS.
20662         * lib/glob_.h: Indent nested #ifdef.
20663
20664 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
20665
20666         Sync from coreutils.
20667         Use "file name" when talking about file names, instead of "filename"
20668         or "path", as per the GNU coding standards.
20669         * lib/mkdir-p.c: Renamed from makepath.c.
20670         (make_dir_parents): Renamed from make_path.  All callers changed.
20671         * lib/mkdir-p.h: Likewise.  All includers changed.
20672         * lib/filenamecat.c: Renamed from path-concat.c.
20673         (file_name_concat): Renamed from path_concat.  All callers changed.
20674         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
20675         * lib/filenamecat.h: Likewise.  All includers changed.
20676         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
20677         in comments or local variable names.
20678         * lib/basename.c: Likewise.
20679         * lib/canonicalize.c, canonicalize.h: Likewise.
20680         * lib/dirname.c, dirname.h: Likewise.
20681         * lib/euidaccess.c: Likewise.
20682         * lib/exclude.c: Likewise
20683         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
20684         * lib/fsusage.c, fsuage.h: Likewise.
20685         * lib/fts.c, fts_.h: Likewise.
20686         * lib/getcwd.c: Likewise.
20687         * lib/getloadavg.c: Likewise.
20688         * lib/mkstemp.c: Likewise.
20689         * lib/mountlist.c, mountlist.h: Likewise.
20690         * lib/openat.c, openat.h: Likewise.
20691         * lib/readlink-stub.c: Likewise.
20692         * lib/readutmp.c, readutmp.h: Likewise.
20693         * lib/rename.c: Likewise.
20694         * lib/rmdir.c: Likewise.
20695         * lib/same.c: Likewise.
20696         * lib/savedir.c: Likewise.
20697         * lib/stripslash.c: Likewise.
20698         * lib/tempname.c: Likewise.
20699         * lib/xreadlink.c: Likewise.
20700         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
20701         All uses changed.
20702         * lib/exclude.h: Likewise.
20703
20704         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
20705         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
20706         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
20707         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
20708         * lib/pathmax.h: Include <limits.h> unconditionally, since other
20709         files have been getting away with it for years (MORE/BSD 4.3
20710         is extinct now).
20711         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
20712         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
20713
20714         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
20715         Define to 256, not 255, as per modern POSIX.
20716
20717 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
20718
20719         Sync from coreutils.
20720         Use "file name" when talking about file names, instead of "filename"
20721         or "path", as per the GNU coding standards.
20722         * MODULES.html.sh: mkdir-p renamed from makepath.
20723         filenamecat renamed from path-concat.
20724         * modules/filenamecat: Renamed from modules/path-concat.
20725         (Files): filenamecat.h and filenamecat.c renamed from
20726         path-concat.h and path-concat.c.
20727         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
20728         (Include): filenamecat.h, not path-concat.h.
20729         * modules/mkdir-p: Renamed from modules/makepath.
20730         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
20731         makepath.c.
20732         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
20733         (Include): mkdir-p.h, not makepath.h.
20734
20735 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
20736
20737         Sync from coreutils.
20738         * m4/mkdir-p.m4: Renamed from makepath.m4.
20739         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
20740         Rename files from makepath.c to mkdir-p.c, and from
20741         makepath.h to mkdir-p.h.
20742         * m4/filenamecat.m4: Renamed from path-concat.m4.
20743         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
20744         Rename files from path-concat.c to filenamecat.c,
20745         and from path-concat.h to filenamecat.h.
20746         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
20747         "file name" in local variables or comments.
20748         * m4/rename.m4: Likewise.
20749
20750 2005-06-01  Bruno Haible  <bruno@clisp.org>
20751
20752         * modules/csharpexec: New file.
20753         * MODULES.html.sh (C#): New section.
20754
20755 2005-06-01  Bruno Haible  <bruno@clisp.org>
20756
20757         * m4/csharp.m4: New file, from GNU gettext.
20758         * m4/csharpexec.m4: New file, from GNU gettext.
20759
20760 2005-06-01  Bruno Haible  <bruno@clisp.org>
20761
20762         * lib/csharpexec.h: New file, from GNU gettext.
20763         * lib/csharpexec.c: New file, from GNU gettext.
20764         * lib/csharpexec.sh.in: New file, from GNU gettext.
20765
20766 2005-05-31  Derek Price  <derek@ximbiot.com>
20767             Paul Eggert  <eggert@cs.ucla.edu>
20768
20769         Sync from cvs.
20770         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
20771
20772 2005-05-31  Derek Price  <derek@ximbiot.com>
20773             Paul Eggert  <eggert@cs.ucla.edu>
20774
20775         Sync from cvs.
20776         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
20777
20778 2005-05-29  Derek Price  <derek@ximbiot.com>
20779
20780         * config/srclist.txt (glob_.h, glob.c): Add these files.
20781
20782 2005-05-29  Derek Price  <derek@ximbiot.com>
20783
20784         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
20785         * modules/glob: New file.
20786         * modules/getlogin_r: Add link to POSIX spec in description.
20787
20788 2005-05-29  Derek Price  <derek@ximbiot.com>
20789             Paul Eggert  <eggert@cs.ucla.edu>
20790
20791         * m4/glob.m4: New file.
20792
20793 2005-05-29  Derek Price  <derek@ximbiot.com>
20794             Paul Eggert  <eggert@cs.ucla.edu>
20795
20796         * lib/glob_.h, lib/glob.c: New files.
20797
20798 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
20799
20800         * modules/fts (Files): Remove m4/inttypes-pri.m4.
20801         * modules/fts-lgpl (Depends-on): Remove gettext.
20802
20803 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
20804
20805         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
20806         and don't require gt_INTTYPES_PRI.
20807
20808 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
20809
20810         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
20811
20812         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
20813         the configuration hassle isn't worth it.
20814         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
20815         (LONGEST_MODIFIER, PRIuMAX): Remove.
20816
20817 2005-05-27  Bruno Haible  <bruno@clisp.org>
20818
20819         * lib/getlogin_r.h: Remove second include of <stddef.h>.
20820
20821 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
20822
20823         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
20824         _POSIX_PTHREAD_SEMANTICS for Solaris.
20825
20826 2005-05-25  Derek Price  <derek@ximbiot.com>
20827
20828         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
20829
20830 2005-05-25  Derek Price  <derek@ximbiot.com>
20831             Paul Eggert  <eggert@cs.ucla.edu>
20832
20833         * modules/getlogin_r, m4/getlogin_r.m4: New files.
20834         * lib/getlogin_r.c, getlogin_r.h: New files.
20835
20836 2005-05-25  Bruno Haible  <bruno@clisp.org>
20837             Derek Price  <derek@ximbiot.com>
20838
20839         * lib/getlogin_r.h: Simplify API documentation.
20840
20841 2005-05-23  Derek Price  <derek@ximbiot.com>
20842
20843         * modules/minmax (Files): Add m4/minmax.m4.
20844         (configure.ac): Add gl_MINMAX.
20845
20846 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
20847
20848         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
20849         so that unistd-safer.h (GPL'ed code) need not be included.
20850
20851 2005-05-22  Bruno Haible  <bruno@clisp.org>
20852
20853         * m4/minmax.m4: New file.
20854         Based on a patch by Derek Price <derek@ximbiot.com>.
20855
20856 2005-05-22  Bruno Haible  <bruno@clisp.org>
20857
20858         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
20859         (INT64_MIN): Fix definition.
20860         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
20861
20862         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
20863         NEED_SIGNED_INT_TYPES.
20864
20865         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
20866         HAVE_SYSTEM_INTTYPES.
20867
20868 2005-05-22  Bruno Haible  <bruno@clisp.org>
20869
20870         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
20871         Also include <sys/param.h> if it defines MIN, MAX.
20872         Based on a patch by Derek Price <derek@ximbiot.com>.
20873
20874 2005-05-21  Jim Meyering  <jim@meyering.net>
20875
20876         * modules/fts (Files): Add m4/inttypes-pri.m4.
20877         (Depends-on): Add lstat and remove gettext.  Alphabetize.
20878
20879 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
20880
20881         New fts module.
20882         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
20883         (setup_dir, free_dir): New functions.
20884         (enter_dir, leave_dir): Define trivial
20885         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
20886         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
20887         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
20888         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
20889         Move to fts-cycle.c.
20890         (fts_open): Use setup_dir.
20891         (fts_close): Use free_dir.
20892         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
20893         This adds a label and some gotos, but the alternatives were messier.
20894         Check for memory allocation failure when entering a dir.
20895         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
20896         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
20897         (FTS): New member fts_cycle, that is a union that contains the
20898         old active_dir_ht and cycle_state.  All uses changed to mention
20899         fts_cycle.ht and fts_cycle.state.
20900         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
20901         fts.c, with the following changes:
20902         (setup_dir, free_dir): New functions.
20903         (enter_dir): Now returns bool.  Return true if successful, false
20904         if memory exhausted.  All callers changed.
20905         Do not bother partly cleaning up on
20906         memory allocation failure; that is free_dir's job.
20907         However, free ad if hash_insert fails, to avoid memory leak.
20908         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
20909         fts->fts_options to see which union member to use.
20910
20911 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
20912
20913         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
20914         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
20915
20916 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
20917
20918         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
20919
20920 2005-05-20  Jim Meyering  <jim@meyering.net>
20921
20922         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
20923         Now a macro, to pacify GCC.
20924
20925 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
20926
20927         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
20928         of -1.
20929
20930 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
20931
20932         * lib/chown.c (rpl_chown): Return -1 on failure.
20933
20934 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
20935
20936         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
20937         Don't check for stddef.h.
20938         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
20939         don't use its results.
20940         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
20941         since we include them unconditionally.  Don't require
20942         AM_STDBOOL_H, since stdbool is a prerequisite.
20943         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
20944         since we assume C89 or better.
20945         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
20946         as we don't use their results.
20947         Don't check for fchdir, memmove, memset, strrchr, as we use
20948         them unconditionally.
20949         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
20950         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
20951
20952 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
20953
20954         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
20955         Include <stddef.h> unconditionally, since we assume C89 now.
20956         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
20957         * lib/fts.c: Include fts_.h first, to check interface.
20958         Do not include intprops.h; no longer needed.
20959         Include cycle-check.h and hash.h, since fts_.h no longer does.
20960         Remove unnecessary casts of closedir to void.
20961         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
20962         decide whether to decrement nlinks.
20963         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
20964         (FTS): Use struct hash_table * instead of Hash_table, so that
20965         we no longer need to include hash.h here.
20966
20967 2005-05-18  Jim Meyering  <jim@meyering.net>
20968
20969         * modules/dirfd (License): Change to LGPL.  Most of the code
20970         is already in the public domain.
20971
20972 2005-05-18  Jim Meyering  <jim@meyering.net>
20973
20974         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
20975         Reported by Yoann Vandoorselaere.
20976
20977 2005-05-17  Jim Meyering  <jim@meyering.net>
20978
20979         * m4/fts.m4: New file, from coreutils.
20980
20981 2005-05-17  Jim Meyering  <jim@meyering.net>
20982
20983         * lib/fts.c, lib/fts_.h: New files, from coreutils.
20984
20985 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
20986
20987         Sync from coreutils.
20988         * m4/unlinkdir.m4: New file.
20989
20990 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
20991
20992         Sync from coreutils.
20993         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
20994         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
20995         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
20996         White space changes only.
20997         * lib/makepath.c (make_path): Port to hosts where leading "//" is
20998         special.
20999         * lib/yesno.c: Include getline.h, not ctype.h.
21000         (yesno): Don't remove leading white space; POSIX doesn't allow it.
21001         Use getline to remove arbitrary restriction on response length.
21002
21003 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
21004
21005         * config/srclist-update: Spell out "Street" in FSF postal
21006         mail address; this is the style the FSF seems to prefer.
21007
21008         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
21009         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
21010         this updates FSF postal mail address.
21011
21012         Sync from coreutils.
21013         * modules/unlinkdir: New file.
21014         * modules/yesno (Depends-on): Add getline.
21015         * MODULES.html.sh (File system functions): Add unlinkdir.
21016
21017 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
21018
21019         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
21020         lib/strsep.h:
21021         Change the initial comment to refer to GPL, not LGPL.
21022         gnulib-tool will change it to LGPL as needed.
21023
21024         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
21025         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
21026         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
21027         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
21028         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
21029         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
21030         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
21031         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
21032         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
21033         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
21034         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
21035         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
21036         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
21037         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
21038         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
21039         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
21040         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
21041         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
21042         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
21043         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
21044         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
21045         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
21046         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
21047         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
21048         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
21049         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
21050         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
21051         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
21052         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
21053         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
21054         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
21055         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
21056         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
21057         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
21058         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
21059         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
21060         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
21061         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
21062         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
21063         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
21064         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
21065         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
21066         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
21067         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
21068         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
21069         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
21070         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
21071         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
21072         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
21073         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
21074         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
21075         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
21076         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
21077         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
21078         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
21079         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
21080         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
21081         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
21082         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
21083         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
21084         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
21085         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
21086         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
21087         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
21088         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
21089         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
21090         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
21091         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
21092         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
21093         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
21094         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
21095         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
21096         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
21097         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
21098         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
21099         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
21100         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
21101         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
21102         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
21103         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
21104         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
21105         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
21106         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
21107         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
21108         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
21109         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
21110         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
21111         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
21112         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
21113         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
21114         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
21115         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
21116         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
21117         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
21118         lib/yesno.c, lib/yesno.h:
21119         Update FSF postal mail address.
21120
21121 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
21122
21123         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
21124         tests/test-memmem.c, tests/test-stpncpy.c:
21125         Update FSF postal mail address.
21126
21127 2005-05-13  Bruno Haible  <bruno@clisp.org>
21128
21129         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
21130         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
21131         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
21132         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
21133         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
21134         Add support for 64-bit integers in the MSVC compiler.
21135
21136 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21137
21138         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
21139
21140 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
21141
21142         * gnulib-tool (func_import): Sort and uniquify recommended includes.
21143
21144 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
21145
21146         * doc/getdate.texi (General date syntax): Don't say that date
21147         date --iso-8601=ns generates acceptable dates; it doesn't yet.
21148         Problem reported by Nic Ferrier.
21149
21150 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21151
21152         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
21153         specified in ai_socktype. Fix invalid ai_protocol
21154         check. ai_protocol is usually set to 0 or depending on
21155         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
21156         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
21157         ai_socktype / ai_protocol in the returned addrinfo structure.
21158
21159 2005-05-10  Simon Josefsson  <jas@extundo.com>
21160
21161         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
21162         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
21163
21164 2005-05-10  Karl Berry  <karl@gnu.org>
21165
21166         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
21167         (from http://www.gnu.org/licenses).
21168         * doc/COPYING.LIB: also rename to COPYING.LESSER.
21169         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
21170         fdl.texi suffices.
21171
21172 2005-05-10  Karl Berry  <karl@gnu.org>
21173
21174         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
21175         (COPYING.DOC): remove.
21176
21177         * config/srclist-update: new FSF address.
21178
21179 2005-05-10  Derek Price  <derek@ximbiot.com>
21180
21181         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
21182         possible.
21183
21184 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21185             Bruno Haible  <bruno@clisp.org>
21186
21187         * modules/inet_ntop: New file.
21188         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21189         inet_ntop.
21190
21191 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21192             Bruno Haible  <bruno@clisp.org>
21193
21194         * m4/inet_ntop.m4: New file.
21195
21196 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21197             Bruno Haible  <bruno@clisp.org>
21198
21199         * lib/inet_ntop.h: New file.
21200         * lib/inet_ntop.c: New file, from glibc with modifications.
21201
21202 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
21203
21204         * modules/time_r (License): Change to LGPL.
21205         * modules/extensions (License): Change to LGPL.  Actually,
21206         the license is more permissive than that, but currently gnulib-tool
21207         doesn't know how to handle more-permissive licenses.
21208
21209         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
21210         Problem reported by Dave Love.
21211
21212 2005-05-08  Jim Meyering  <jim@meyering.net>
21213
21214         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
21215         blank.
21216
21217 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
21218
21219         * modules/argmatch (Depends-on): Add stdbool.
21220         * modules/backupfile (Depends-on): Likewise.
21221         * modules/chdir-long (Depends-on): Likewise.
21222         * modules/closeout (Depends-on): Likewise.
21223         * modules/cycle-check (Depends-on): Likewise.
21224         * modules/dirname (Depends-on): Likewise.
21225         * modules/fnmatch (Depends-on): Likewise.
21226         * modules/fsusage (Depends-on): Likewise.
21227         * modules/fwriteerror (Depends-on): Likewise.
21228         * modules/getcwd (Depends-on): Likewise.
21229         * modules/getloadavg (Depends-on): Likewise.
21230         * modules/hard-locale (Depends-on): Likewise.
21231         * modules/makepath (Depends-on): Likewise.
21232         * modules/mountlist (Depends-on): Likewise.
21233         * modules/nanosleep (Depends-on): Likewise.
21234         * modules/posixtm (Depends-on): Likewise.
21235         * modules/quotearg (Depends-on): Likewise.
21236         * modules/readtokens (Depends-on): Likewise.
21237         * modules/readtokens0 (Depends-on): Likewise.
21238         * modules/readutmp (Depends-on): Likewise.
21239         * modules/save-cwd (Depends-on): Likewise.
21240         * modules/strftime (Depends-on): Likewise.
21241         * modules/userspec (Depends-on): Likewise.
21242         * modules/utimecmp (Depends-on): Likewise.
21243         * modules/xgetcwd (Depends-on): Likewise.
21244         * modules/xnanosleep (Depends-on): Likewise.
21245         * modules/xstrtod (Depends-on): Likewise.
21246         * modules/yesno (Depends-on): Likewise.
21247
21248 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
21249
21250         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
21251         needless checks.
21252
21253 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
21254
21255         Merge from coreutils.  Among other things,
21256         add bulletproofing for cases where stdin, stdout, or stderr are closed.
21257         * lib/fd-safer.c: New file.
21258         * lib/fcntl-safer.h, open-safer.c: Remove.
21259         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
21260         * lib/dup-safer.c: Include unistd-safer.h first.
21261         Don't include errno.h.
21262         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
21263         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
21264         * lib/file-type.c: Rely on file-type.h change.
21265         * lib/getloadavg.c: Include unistd-safer.h.
21266         (getloadavg): Use safer open.
21267         * lib/getusershell.c: Include "stdio-safer.h".
21268         (getusershell): Use safer fopen.
21269         * lib/long-options.c (long_options): Use NULL rather than 0.
21270         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
21271         'free'.
21272         * lib/modechange.c: Likewise.
21273         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
21274         (MODE_DONE): New constant.
21275         (struct mode_change): Remove 'next' member.
21276         (make_node_op_equals): New function; like the old one of the
21277         same name, except it allocates an array.
21278         (mode_compile, mode_create_from_ref): Use it.
21279         (mode_compile): Allocate result as an array, not a linked list.
21280         Parse octal string ourself, so that we catch mistakes like "+0".
21281         (mode_adjust): Arg is an array, not a linked list.
21282         * lib/modechange.c: Include stat-macros.h, xalloc.h.
21283         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
21284         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
21285         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
21286         Remove.  This is now stat-macros.h's job.
21287         (talloc): Remove.  All callers replaced by xalloc, so that
21288         our invokers don't have to worry about reporting memory failures.
21289         (make_node_op_equals): Remove.
21290         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
21291         New constants.
21292         (struct mode_change): Moved here from modechange.h.
21293         (mode_append_entry): Remove.
21294         (mode_compile): Remove MASKED_OPS arg, since it encouraged
21295         apps to have incorrect behavior.  Use simpler algorithm for head
21296         and tail.  Don't futz with umask; that's now the job of mode_adjust.
21297         Detect more invalid usages rather than having somewhat-random behavior.
21298         Don't insert an "a=" action, as that leads to incorrect behavior.
21299         (mode_compile, mode_create_from_ref): Return NULL on error instead
21300         of an enum, since now there's only one way to have an error.  All
21301         callers changed.
21302         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
21303         at the correct time.  Simplify calculation of "+u" and its ilk.
21304         Don't mishandle "+X".
21305         (mode_free): Remove "register" and localize decls.
21306         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
21307         (struct mode_change): Move to modechange.c; callers don't
21308         need to see this stuff.
21309         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
21310         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
21311         (mode_change, mode_adjust): Reflect the new signatures noted above.
21312         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
21313         that might redefine system include files.
21314         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
21315         (my_usleep): Use NULL rather than (void *) 0.
21316         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
21317         Use siginterrupt to specify that system calls should be interrupted.
21318         (rpl_nanosleep): Move initialization of suspended closer to call of
21319         my_usleep.
21320         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
21321         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
21322         (desirable_utmp_entry): New function.
21323         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
21324         using x2nrealloc, to simplify logic.
21325         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
21326         size calculation.  Do not assume utmp file is a regular file.
21327         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
21328         (READ_UTMP_CHECK_PIDS): New constant.
21329         * lib/save-cwd.c: Include unistd-safer.h.
21330         (save_cwd): Use fd_safer.
21331         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
21332         [!_LIBC] Include "stat-macros.h" instead.
21333         * lib/unistd-safer.h (fd_safer): New decl.
21334
21335 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
21336
21337         * modules/getloadavg (Depends-on): Add unistd-safer.
21338         * modules/getusershell (Depends-on): Add stdio-safer.
21339         * modules/lstat (Depends-on): Remove xalloc.
21340         * modules/mkstemp (Depends-on): Add stat-macros.
21341         * modules/modechange (Depends-on): Remove xstrtol.
21342         Add stat-macros, xalloc.
21343         * modules/save-cwd (Depends-on): Add unistd-safer.
21344         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
21345         * modules/unistd-safer (Files): Add lib/fd-safer.c
21346         (Makefile.am): Remove lib_SOURCES.
21347
21348         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
21349         Remove fcntl-safer; unistd-safer supersedes it.
21350
21351 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
21352
21353         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
21354         AC_HEADER_STAT.
21355         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
21356         (gl_PREREQ_CHOWN): Remove.
21357         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
21358         it.  Don't require AC_HEADER_STAT.
21359         (gl_PREREQ_LSTAT): Remove.
21360         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
21361         Don't require AC_HEADER_STAT.
21362         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
21363         (gl_PREREQ_RMDIR): Remove.
21364         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
21365         mention stat-macros.h or AC_HEADER_STAT, since we'll make
21366         the stat-macros module a prerequisite.
21367         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
21368         * m4/filemode.m4 (gl_FILEMODE): Likewise.
21369         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
21370         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
21371         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
21372         variable names.
21373         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
21374         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
21375         variable prefixes.
21376         * m4/fcntl-safer.m4: Remove.
21377         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
21378         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
21379         Invoke gl_PREREQ_FD_SAFER.
21380         (gl_PREREQ_FD_SAFER): New macro.
21381         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
21382         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
21383         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
21384         Remove duplicate call to AC_LIBOBJ(readutmp).
21385         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
21386
21387         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
21388         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
21389
21390 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
21391
21392         * MODULES.html.sh (Misc): Add byteswap.
21393
21394 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
21395
21396         * modules/getcwd (Depends-on): Add extensions.
21397         * modules/openat (Depends-on): Likewise.
21398
21399 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
21400
21401         * modules/byteswap: New file.
21402
21403 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
21404
21405         * m4/byteswap.m4: New file.
21406
21407 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
21408
21409         * lib/byteswap_.h: New file.
21410
21411 2005-04-25  Karl Berry  <karl@gnu.org>
21412
21413         * m4/gettext.m4: Update from GNU gettext 0.14.4.
21414
21415 2005-04-25  Albert Chin  <china@thewrittenword.com>
21416
21417         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
21418         Toolkit C bug.
21419
21420 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
21421
21422         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
21423         (func_ln_if_changed) Remove forcibly for no error message
21424         in case file does not exist.
21425
21426 2005-04-19  Simon Josefsson  <jas@extundo.com>
21427
21428         * gnulib-tool (Options): Make --symlink mean --symbolic.
21429
21430 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
21431
21432         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
21433
21434 2005-04-16  Simon Josefsson  <jas@extundo.com>
21435
21436         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
21437
21438 2005-04-15  Simon Josefsson  <jas@extundo.com>
21439
21440         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
21441
21442 2005-04-15  Simon Josefsson  <jas@extundo.com>
21443
21444         * gnulib-tool: Rename --symlink to --symbolic.
21445
21446 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
21447
21448         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
21449         symbolic links to files instead of copying/moving.  Add --aux-dir,
21450         specifying directory relative --dir where auxiliary build tools
21451         are placed.
21452
21453 2005-04-14  Bruno Haible  <bruno@clisp.org>
21454
21455         * modules/allocsa (License): Change to LGPL.
21456         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
21457
21458 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
21459
21460         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
21461         that "UTC +1 second" continues to work.  Problem reported
21462         by Dmitry V. Levin.
21463         (relunit_snumber): New rule.
21464         (relunit): Use it.
21465
21466 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
21467
21468         * lib/getdate.y (universal_time_zone_table): New constant.
21469         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
21470         universal_time_zone_table.
21471         (lookup_zone): Prefer universal_time_zone_table to
21472         local_time_zone_table, so that "GMT" time stamps are allowed in
21473         London during the summer.  Problem reported by Ian Abbott.
21474
21475 2005-04-12  Jim Meyering  <jim@meyering.net>
21476
21477         * lib/human.c (humblock): Set *options even when returning due to
21478         xstrtoumax conversion failure.  Thanks to a used-uninitialized
21479         warning from gcc-4.
21480
21481 2005-04-09  Jim Meyering  <jim@meyering.net>
21482
21483         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
21484         -Wuninitialized: initialize tm0.tm_year.
21485
21486 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
21487
21488         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
21489         count, since there's no maximum.  All uses changed.
21490         Add member dsts_seen.
21491         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
21492         not being INT_MAX.
21493         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
21494         Use pc_rels_seen to decide whther a date is absolute.
21495
21496         * lib/getdate.y (number): Don't overwrite year.
21497         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
21498         check.
21499
21500 2005-04-02  Simon Josefsson  <jas@extundo.com>
21501
21502         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
21503         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
21504
21505 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
21506
21507         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
21508         where no absolute path name can be longer than PATH_MAX.
21509
21510 2005-03-27  Jim Meyering  <jim@meyering.net>
21511
21512         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
21513
21514 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
21515
21516         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
21517         "one's complement" -> "ones' complement" in comment, as per Knuth.
21518         "value of type" -> "type or expression" in comment.
21519         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
21520
21521 2005-03-26  Jim Meyering  <jim@meyering.net>
21522
21523         Comment nits.
21524         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
21525         Correct typos: s/or/of/.
21526
21527 2005-03-26  Jim Meyering  <jim@meyering.net>
21528
21529         * modules/check-include-files: Move to ../ and rename to...
21530         * check-module: ...this.
21531
21532 2005-03-25  Jim Meyering  <jim@meyering.net>
21533
21534         * modules/xvasprintf (Files): Add xalloc.h.
21535
21536 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
21537
21538         * modules/gettext (Files): config/config.rpath ->
21539         build-aux/config.rpath
21540         * modules/iconv (Files): Likewise.
21541         Problem reported by Oskar Liljeblad.
21542
21543 2005-03-23  Jim Meyering  <jim@meyering.net>
21544
21545         * modules/check-include-files: New script to check for
21546         missing dependencies, multiple includes, etc.
21547
21548         * modules/c-strtold (Depends-on): Add xalloc.
21549         * modules/c-strtod (Depends-on): Add xalloc.
21550         * modules/hash (Depends-on): Add xalloc.
21551         (Files): Remove lib/xalloc.h.
21552
21553         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
21554         * modules/userspec (Files): Add lib/inttostr.h.
21555
21556 2005-03-23  Jim Meyering  <jim@meyering.net>
21557
21558         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
21559
21560 2005-03-22  Jim Meyering  <jim@meyering.net>
21561
21562         * modules/stat-macros: New module.
21563         * modules/canonicalize, modules/euidaccess, modules/file-type,
21564         * modules/filemode, modules/lchown, modules/makepath,
21565         * modules/rmdir, modules/stat: Depend on new stat-macros module
21566         rather than listing lib/stat-macros.h manually.
21567         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
21568
21569 2005-03-22  Jim Meyering  <jim@meyering.net>
21570
21571         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
21572
21573 2005-03-22  Bruno Haible  <bruno@clisp.org>
21574
21575         * config/srclist.txt: Replace target directory 'config' with
21576         'build-aux'.
21577         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
21578         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
21579         ../build-aux/.
21580
21581 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
21582
21583         * modules/chdir-long (Depends-on): Add mempcpy.
21584
21585         * modules/acl, modules/backupfile, modules/c-strtod,
21586         modules/c-strtold, modules/canon-host, modules/canonicalize,
21587         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
21588         modules/exclude, modules/exitfail, modules/file-type,
21589         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
21590         modules/getdate, modules/getline, modules/getpagesize,
21591         modules/getpass, modules/getugroups, modules/group-member,
21592         modules/hard-locale, modules/hash, modules/human, modules/idcache,
21593         modules/inttostr, modules/long-options, modules/makepath,
21594         modules/md5, modules/memcasecmp, modules/memcoll,
21595         modules/modechange, modules/mountlist, modules/path-concat,
21596         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
21597         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
21598         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
21599         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
21600         modules/strftime, modules/strndup, modules/strverscmp,
21601         modules/timespec, modules/unlocked-io, modules/userspec,
21602         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
21603         modules/yesno:
21604         Remove lib_SOURCES line from Makefile.am section, as this is now
21605         done automatically by the corresponding Autoconf macro.
21606
21607 2005-03-21  Jim Meyering  <jim@meyering.net>
21608
21609         Changes imported from coreutils.
21610
21611         * lib/cycle-check.c: Don't include xalloc.h.
21612
21613         * lib/path-concat.c: Don't include assert.h.
21614         (path_concat): Remove assertion that would have triggered
21615         for ABASE starting with more than one slash.
21616         Reported by Andreas Schwab.
21617
21618         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
21619         properly when ABASE is an absolute file name.
21620         Correct the description of this function.
21621         Include <assert.h>.
21622         Add an assertion and a test driver.
21623         This fixes a bug introduced on 2004-07-02.
21624         Andreas Schwab reported the resulting failure of cp --parents:
21625         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
21626
21627 2005-03-21  Jim Meyering  <jim@meyering.net>
21628
21629         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
21630         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
21631
21632 2005-03-21  Jim Meyering  <jim@meyering.net>
21633         and  Paul Eggert  <eggert@cs.ucla.edu>
21634
21635         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
21636         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
21637         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
21638         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
21639         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
21640         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
21641         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
21642         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
21643         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
21644         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
21645         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
21646         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
21647         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
21648         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
21649         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
21650         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
21651         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
21652         for these modules.
21653
21654 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
21655
21656         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
21657         (which shouldn't happen), generate nothing instead of returning 0
21658         immediately, so that nstrftime (NULL, ...) doesn't return 0.
21659
21660 2005-03-16  Bruno Haible  <bruno@clisp.org>
21661
21662         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
21663         HAVE_LONGLONG_64BIT.
21664
21665 2005-03-16  Bruno Haible  <bruno@clisp.org>
21666
21667         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
21668         HAVE_LONGLONG_64BIT.
21669
21670 2005-03-16  Bruno Haible  <bruno@clisp.org>
21671
21672         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
21673         HAVE_LONGLONG_64BIT.
21674
21675 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
21676
21677         * lib/strftime.c (my_strftime): Prepend space to format so that we can
21678         reliably distinguish strftime failure from empty output on POSIX
21679         hosts.
21680
21681 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
21682
21683         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
21684         (iconv_string): Don't guess a size-zero buffer, as that might cause
21685         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
21686         result would be 'too large', where 'too large' is (heuristically)
21687         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
21688         overflow concerns.  This will prevent some unwanted malloc failures
21689         when the inputs are very large.
21690
21691 2005-03-15  Karl Berry  <karl@gnu.org>
21692
21693         * config/srclist.txt (config.rpath): from gettext.
21694         * config/config.rpath: update.
21695
21696 2005-03-15  Bruno Haible  <bruno@clisp.org>
21697
21698         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
21699         to 'negate'.
21700
21701         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
21702         variable.
21703
21704         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
21705         results.
21706
21707 2005-03-14  Simon Josefsson  <jas@extundo.com>
21708
21709         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
21710         <fx@gnu.org>.
21711
21712 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
21713
21714         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
21715         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
21716         intprops.h.
21717         * lib/strtol.c: Likewise.
21718
21719 2005-03-14  Jim Meyering  <jim@meyering.net>
21720
21721         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
21722         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
21723         to be nonzero so that we (and caller) can detect the difference
21724         between a valid zero-length expansion and an error return, even
21725         when the underlying strftime fails before writing anything into
21726         that location.
21727
21728 2005-03-14  Bruno Haible  <bruno@clisp.org>
21729
21730         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
21731         Update from GNU gettext 0.14.3.
21732
21733 2005-03-10  Jim Meyering  <jim@meyering.net>
21734
21735         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
21736
21737 2005-03-10  Jim Meyering  <jim@meyering.net>
21738
21739         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
21740         so that this module works on systems without fchdir.
21741
21742 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
21743
21744         Factor int-properties macros into a single file, except for
21745         glibc-related files.
21746         * lib/intprops.h: New file.
21747         * lib/getloadavg.c: Include it instead of limits.h.
21748         (INT_STRLEN_BOUND): Remove.
21749         * lib/human.c: Include intprops.h.
21750         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
21751         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
21752         302/1000.
21753         * lib/inttostr.h: Include intprops.h instead of limits.h.
21754         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
21755         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
21756         for consistency with intprops.h.
21757         (time_t_is_integer, twos_complement_arithmetic): Use them.
21758         * lib/sig2str.h: Include <signal.h>, intprops.h.
21759         (INT_STRLEN_BOUND): Remove.
21760         * lib/strftime.c (TYPE_SIGNED): Remove.
21761         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
21762         * lib/strtol.c: Adjust comments to match intprops.h.
21763         * lib/userspec.c: Include intprops.h.
21764         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
21765         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
21766         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
21767         instead of rolling our own expressions.
21768         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
21769
21770         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
21771         instead of int.
21772         (my_strftime): Do not mishandle years close to INT_MAX, by doing
21773         the right thing even if adding 1900 would overflow.  Similarly
21774         for tm_mon + 1 and tm_yday + 1.
21775         Make %Y always equivalent to %C%y, and similarly for %G and %g.
21776         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
21777         (DO_SIGNED_NUMBER): New macro.
21778         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
21779
21780 2005-03-07  Bruno Haible  <bruno@clisp.org>
21781
21782         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
21783
21784 2005-03-07  Bruno Haible  <bruno@clisp.org>
21785
21786         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
21787
21788 2005-03-04  Derek R. Price  <derek@ximbiot.com>
21789
21790         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
21791         (func_import): Only replace files via --import when they have actually
21792         changed.
21793
21794 2005-03-03  Derek R. Price  <derek@ximbiot.com>
21795
21796         * m4/mmap-anon.m4: New file.
21797         * m4/pagealign_alloc.m4: New file.
21798
21799 2005-03-03  Derek R. Price  <derek@ximbiot.com>
21800             Bruno Haible  <bruno@clisp.org>
21801
21802         * modules/pagealign_alloc: New file.
21803         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
21804
21805 2005-03-03  Derek R. Price  <derek@ximbiot.com>
21806             Bruno Haible  <bruno@clisp.org>
21807
21808         * lib/pagealign_alloc.h: New file.
21809         * lib/pagealign_alloc.c: New file.
21810
21811 2005-03-03  Bruno Haible  <bruno@clisp.org>
21812
21813         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
21814         Use an all-permissive copyright notice, recommended by RMS.
21815
21816 2005-03-02  Bruno Haible  <bruno@clisp.org>
21817
21818         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
21819         of AIX, the replacement has to be done only after <string.h> is
21820         included, therefore not in config.h. stpncpy.h does the replacement,
21821         and stpncpy.c uses it.
21822
21823 2005-03-02  Bruno Haible  <bruno@clisp.org>
21824
21825         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
21826         stpncpy.c uses it.
21827
21828 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
21829
21830         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
21831         The workaround isn't strictly needed for POSIX conformance, and
21832         it's too much of a pain to configure and maintain.  We'll ask
21833         people to fix their kernels instead.
21834         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
21835         (NANOSLEEP_BUG_WORKAROUND): Remove.
21836         (xnanosleep): Remove the workaround.
21837
21838 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
21839
21840         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
21841         Reported by Derek Price.
21842         (Include): Add "timespec.h".
21843
21844         * modules/xnanosleep (Depends-on): Remove gethrxtime.
21845
21846 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
21847
21848         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
21849         to detect nanosleep bug.
21850
21851 2005-03-01  Bruno Haible  <bruno@clisp.org>
21852
21853         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
21854
21855 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
21856
21857         * modules/gethrxtime: New file.
21858         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
21859         (Depends-on): Add gethrxtime.
21860         (configure.ac): Add gl_XNANOSLEEP.
21861         (Makefile.am): Remove lib_SOURCES line.
21862
21863 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
21864
21865         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
21866         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
21867
21868 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
21869
21870         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
21871         * lib/timespec.h (gettime): Return void, since it always
21872         succeeds now.  All uses changed.
21873         * lib/gettime.c (gettime) Likewise.
21874         [HAVE_NANOTIME]: Prefer nanotime.
21875         Assume gettimeofday succeeds, as POSIX requires.
21876         Assime time () succeeds, since other code already does.
21877         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
21878         (timespec_subtract): Remove.
21879         (NANOSLEEP_BUG_WORKAROUND): New constant.
21880         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
21881         things considerably.  Use it only on GNU/Linux hosts, since the
21882         workaround shouldn't be needed elsewhere.
21883
21884 2005-02-24  Bruno Haible  <bruno@clisp.org>
21885
21886         * modules/gettext (Files): Add m4/glibc2.m4.
21887
21888 2005-02-24  Bruno Haible  <bruno@clisp.org>
21889
21890         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
21891         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
21892         * m4/progtest.m4:
21893         Update from GNU gettext 0.14.2.
21894         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
21895
21896 2005-02-24  Bruno Haible  <bruno@clisp.org>
21897
21898         * lib/localcharset.c: Update from GNU gettext 0.14.2.
21899         * lib/config.charset: Update from GNU gettext 0.14.2.
21900
21901 2005-02-24  Bruno Haible  <bruno@clisp.org>
21902
21903         * lib/gettext.h: Update from GNU gettext 0.14.2.
21904
21905 2005-02-23  Simon Josefsson  <jas@extundo.com>
21906
21907         * m4/iconvme.m4: New file.
21908
21909 2005-02-23  Jim Meyering  <jim@meyering.net>
21910
21911         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
21912         change.
21913         Thanks to Bruno Haible for catching it.
21914
21915 2005-02-22  Simon Josefsson  <jas@extundo.com>
21916
21917         * modules/iconvme: New file.
21918
21919         * MODULES.html.sh: Add iconvme.
21920
21921 2005-02-22  Simon Josefsson  <jas@extundo.com>
21922
21923         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
21924
21925 2005-02-22  Simon Josefsson  <jas@extundo.com>
21926
21927         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
21928
21929 2005-02-22  Jim Meyering  <jim@meyering.net>
21930
21931         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
21932         s/ifndef/ifdef/.
21933
21934 2005-02-20  Neil Conway  <neilc@samurai.com>
21935
21936         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
21937         returned by OSX/Darwin if the specified buffer is not large
21938         enough for the hostname.
21939
21940 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21941
21942         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
21943         pass it to _help, otherwise the latter coredumps trying to
21944         dereference state.root_argp.
21945
21946 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
21947
21948         * modules/chdir-long (Depends-on): Add memrchr.
21949         * modules/memrchr (Files): Add lib/memrchr.h.
21950         (Include): "memrchr.h".
21951
21952 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
21953
21954         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
21955
21956 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
21957
21958         * lib/memrchr.h: New file.
21959         * lib/chdir-long.c: Include it.
21960         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
21961         Don't bother including stddef.h.
21962
21963 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
21964
21965         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
21966         inclusion.
21967         Include <sys/types.h>, for dev_t.
21968         (ME_DUMMY, ME_REMOTE): Move from here....
21969         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
21970         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
21971         Dmitry V. Levin.
21972         Include mountlist.h first, to test the interface.
21973
21974 2005-01-29  Bruno Haible  <bruno@clisp.org>
21975
21976         * lib/progname.c (program_name): Initialize.
21977         Needed when linking statically on MacOS X.
21978
21979 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
21980
21981         Sync from coreutils.
21982         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
21983         (Depends-on): Add c-strtod.
21984         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
21985
21986 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
21987
21988         Sync from coreutils.
21989         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
21990
21991         Remove files that are specific to coreutils.
21992         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
21993
21994 2005-01-28  Bruno Haible  <bruno@clisp.org>
21995
21996         * modules/javacomp: New file.
21997         * MODULES.html.sh (Java): Add javacomp.
21998
21999 2005-01-28  Bruno Haible  <bruno@clisp.org>
22000
22001         * m4/javacomp.m4: New file, from GNU gettext.
22002
22003 2005-01-28  Bruno Haible  <bruno@clisp.org>
22004
22005         * lib/javacomp.sh.in: New file, from GNU gettext.
22006         * lib/javacomp.h: New file, from GNU gettext.
22007         * lib/javacomp.c: New file, from GNU gettext.
22008
22009 2005-01-26  Simon Josefsson  <jas@extundo.com>
22010
22011         * lib/gai_strerror.c: Use GPL in header.
22012
22013 2005-01-26  Bruno Haible  <bruno@clisp.org>
22014
22015         * modules/javaexec: New file.
22016         * MODULES.html.sh (Java): Add javaexec.
22017
22018 2005-01-26  Bruno Haible  <bruno@clisp.org>
22019
22020         * m4/javaexec.m4: New file, from GNU gettext.
22021
22022 2005-01-26  Bruno Haible  <bruno@clisp.org>
22023
22024         * lib/javaexec.sh.in: New file, from GNU gettext.
22025         * lib/javaexec.h: New file, from GNU gettext.
22026         * lib/javaexec.c: New file, from GNU gettext.
22027
22028 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22029
22030         * modules/lchown (Depends-on): Remove lchown.h
22031
22032 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22033
22034         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
22035         must be defined if the header file was not found, in order
22036         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
22037
22038 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22039
22040         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
22041         initializers for struct pentry_state.
22042         (__argp_error): Check return value of __asprintf
22043         (__argp_failure): Translate error message
22044
22045         * lib/argp-parse.c: Removed braces around the expansion of N_()
22046
22047 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
22048
22049         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
22050         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
22051         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
22052         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
22053         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
22054         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
22055         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
22056         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
22057         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
22058         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
22059         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
22060         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
22061         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
22062         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
22063         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
22064         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
22065         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
22066         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
22067         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
22068         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
22069         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
22070         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
22071         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
22072         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
22073         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
22074         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
22075         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
22076         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
22077         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
22078         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
22079         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
22080         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
22081         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
22082         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
22083         xstrtol.m4, xstrtoumax.m4, yesno.m4:
22084         Use an all-permissive copyright notice, recommended by RMS.
22085
22086 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
22087
22088         * modules/chdir-long (Depends-on): Remove mempcpy.
22089
22090 2005-01-21  Jim Meyering  <jim@meyering.net>
22091
22092         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
22093         same value as for Solaris 9.
22094
22095         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
22096         component length.  This included changing the parameter to be
22097         of type `char *' rather than `char const *'.
22098         * lib/chdir-long.h (chdir_long): Update prototype.
22099
22100         * lib/openat.c (fdopendir, fstatat): New functions.
22101         * lib/openat.h: Include headers required for use of DIR and struct
22102         stat.
22103         [AT_SYMLINK_NOFOLLOW]: Define.
22104         (fdopendir, fstatat): Add prototypes.
22105
22106 2005-01-21  Bruno Haible  <bruno@clisp.org>
22107
22108         * modules/classpath: New file.
22109         * MODULES.html.sh (Java): Add classpath.
22110
22111 2005-01-21  Bruno Haible  <bruno@clisp.org>
22112
22113         * lib/classpath.h: New file, from GNU gettext.
22114         * lib/classpath.c: New file, from GNU gettext.
22115
22116 2005-01-20  Simon Josefsson  <jas@extundo.com>
22117
22118         * modules/version-etc-fsf: New file.
22119
22120 2005-01-20  Simon Josefsson  <jas@extundo.com>
22121
22122         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
22123         * lib/version-etc.c: Remove version_etc_copyright.
22124         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
22125         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
22126
22127 2005-01-20  Simon Josefsson  <jas@extundo.com>
22128
22129         * lib/base64.h (isbase64): Add.
22130
22131         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
22132         using a unsigned prototype, don't inline.
22133         (base64_decode): Use it.
22134
22135 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
22136
22137         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
22138         it.
22139
22140 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
22141
22142         * lib/save-cwd.c (save_cwd): Remove code to support the case
22143         where fchdir is missing or flaky.
22144
22145 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
22146
22147         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
22148
22149 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
22150
22151         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
22152         AC_LIBSOURCES now does this.
22153         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
22154         with new ullong_max module.
22155
22156 2005-01-19  Bruno Haible  <bruno@clisp.org>
22157
22158         * modules/sh-quote: New file.
22159         * MODULES.html.sh (Executing programs): Add sh-quote.
22160
22161 2005-01-19  Bruno Haible  <bruno@clisp.org>
22162
22163         * lib/sh-quote.h: New file, from GNU gettext.
22164         * lib/sh-quote.c: New file, from GNU gettext.
22165
22166 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
22167
22168         Merge from coreutils.
22169         * m4/ullong_max.m4: New file.
22170         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
22171         (gl_MACROS): Assume localeconv exists.
22172
22173 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
22174
22175         Merge changes from coreutils, as described below in several
22176         changelogs dated today.
22177
22178         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
22179         (O_DIRECTORY): Remove; not needed here, since "." must be
22180         a directory.  All uses removed.
22181         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
22182         universal on Suns, and we also need to test for IRIX.
22183         Revamp code to use 'if' rather than '#if'.
22184         Avoid unnecessary comparison of cwd->desc to 0.
22185
22186         * lib/utimens.c (futimens): Robustify the previous patch, by checking
22187         for known valid error numbers rather than observed invalid ones.
22188
22189 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
22190
22191         * modules/ullong_max: New file.
22192
22193         * modules/chdir-long, modules/openat: New files.
22194         * modules/save-cwd (Depends-on): Depend on chdir-long.
22195         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
22196
22197 2005-01-18  Jim Meyering  <jim@meyering.net>
22198
22199         Merge from coreutils.
22200         * m4/chdir-long.m4, m4/openat.m4: New files.
22201         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
22202         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
22203         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
22204         is sane and DOES follow symlinks.  Besides, testing 20 different
22205         systems found no broken chown implementations.
22206         Prompted by a change in rsync's copy of this macro.
22207         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
22208
22209         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
22210
22211         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
22212         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
22213         NULL-means-set-to-current-time semantics.
22214         Remove temporary file immediately, rather than waiting
22215         for configure's at-exit trap code to do it.
22216
22217 2005-01-18  Jim Meyering  <jim@meyering.net>
22218
22219         * lib/version-etc.c (version_etc_copyright): Update copyright date.
22220
22221         * lib/utimens.c (futimens): Account for the fact that futimes
22222         can also fail with errno == ENOSYS or errno == ENOENT.
22223         Patch from Dmitry V. Levin.
22224
22225         Change the name of the robust chdir function from chdir to chdir_long.
22226         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
22227         (restore_cwd): Use chdir_long, not chdir.
22228         * lib/chdir-long.c: Renamed from chdir.c.
22229         * lib/chdir-long.h: Renamed from chdir.h.
22230         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
22231         Hurd.
22232
22233 2005-01-18  Bruno Haible  <bruno@clisp.org>
22234
22235         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
22236         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
22237         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
22238         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
22239         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
22240         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
22241         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
22242         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
22243         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
22244         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
22245         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
22246         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
22247         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
22248         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
22249         Use an all-permissive copyright notice, recommended by RMS.
22250
22251 2005-01-18  Bob Proulx  <bob@proulx.com>
22252
22253         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
22254         simplify offsetof() macro construct to avoid compile failure with
22255         native HP-UX 11.0 ANSI C compiler.
22256
22257 2005-01-17  Bruno Haible  <bruno@clisp.org>
22258
22259         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
22260         redundant because stpncpy.m4 takes care of it.
22261
22262 2005-01-17  Bruno Haible  <bruno@clisp.org>
22263
22264         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
22265
22266 2005-01-17  Bruno Haible  <bruno@clisp.org>
22267
22268         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
22269         used.
22270
22271 2005-01-17  Bruno Haible  <bruno@clisp.org>
22272
22273         * lib/fwriteerror.h (fwriteerror): Change specification to include
22274         fclose.
22275         * lib/fwriteerror.c: Include <stdbool.h>.
22276         (fwriteerror): At the end, close the file stream. Record whether
22277         stdout was already closed.
22278
22279 2005-01-17  Bruno Haible  <bruno@clisp.org>
22280
22281         * lib/execute.c (environ): Declare if needed.
22282         * lib/pipe.c (environ): Likewise.
22283         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
22284
22285 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22286
22287         * modules/argp: Depend on vsnprintf
22288
22289 2005-01-10  Jim Meyering  <jim@meyering.net>
22290
22291         * modules/closeout (Depends-on): Add atexit.
22292
22293 2005-01-06  Bruno Haible  <bruno@clisp.org>
22294
22295         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
22296
22297 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
22298
22299         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
22300         definitions to be after all include files, to avoid collisions.
22301         Problem reported by Bob Proulx.
22302
22303 2005-01-04  Jim Meyering  <jim@meyering.net>
22304
22305         Changes imported from coreutils.
22306         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
22307         as the mkstemp template, use a temporary directory and an
22308         8.3-friendly template to avoid trouble on systems like DJGPP.
22309         Reported by Juan M. Guerrero via Stepan Kasal.
22310         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
22311         close. Remove the temporary directory right away, rather than waiting
22312         for configure's at-exit trap code to do it.
22313         Suggestion from Stepan Kasal.
22314
22315 2005-01-01  Simon Josefsson  <jas@extundo.com>
22316
22317         * gnulib-tool: Print #include directives when --import'ing.
22318
22319 2004-12-28  Simon Josefsson  <jas@extundo.com>
22320
22321         * tests/test-base64.c: Include required header files.  Remove
22322         unused variables.
22323
22324 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
22325
22326         * modules/error (Depends-on): Remove gettext.
22327
22328 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
22329
22330         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
22331         not needed.  This removes a dependency on the gettext module.
22332         [defined _LIBC]: Do not include <libintl.h>; not needed.
22333
22334 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
22335
22336         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
22337         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
22338
22339 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
22340
22341         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
22342         HAVE_DECL_STRTOLD.
22343
22344 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
22345
22346         * modules/getdate (Depends-on): Remove alloca-opt.
22347
22348 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
22349
22350         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
22351
22352 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
22353
22354         * lib/argp-parse.c: Include <stddef.h>.
22355         (alignof, alignto): New macros.
22356         (parser_init): Don't assume that void * is aligned sufficiently
22357         for struct option.
22358
22359         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
22360         need to extend the stack.
22361         (YYINITDEPTH): New macro, so that the initial stack isn't overly
22362         large.
22363
22364 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22365
22366         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
22367
22368 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
22369
22370         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
22371         (2004-10-24) change.  Apparently this was a false alarm.
22372
22373         * modules/getdate: Depend on alloca-opt, not alloca.
22374
22375 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
22376
22377         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
22378         Remove now-obsolete comment about AIX.
22379         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
22380         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
22381         (YYMAXDEPTH): New macro.
22382
22383 2004-12-18  Simon Josefsson  <jas@extundo.com>
22384
22385         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
22386
22387 2004-12-18  Bruno Haible  <bruno@clisp.org>
22388
22389         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
22390
22391 2004-12-18  Bruno Haible  <bruno@clisp.org>
22392
22393         * lib/fatal-signal.c (fatal_signals): Make non-const.
22394         (init_fatal_signals): New function.
22395         (uninstall_handlers, install_handlers): Ignore signals that were set to
22396         SIG_IGN.
22397         (at_fatal_signal): Call init_fatal_signals.
22398         (init_fatal_signal_set): Likewise. Ignore signals that were set to
22399         SIG_IGN.
22400         Reported by Paul Eggert.
22401
22402 2004-12-18  Bruno Haible  <bruno@clisp.org>
22403
22404         * doc/alloca.texi: New file.
22405         * doc/alloca-opt.texi: New file.
22406
22407 2004-12-17  Jim Meyering  <jim@meyering.net>
22408
22409         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
22410         Otherwise, install-sh could exit with improper exit status when
22411         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
22412
22413 2004-12-16  Simon Josefsson  <jas@extundo.com>
22414
22415         * tests/test-base64.c: Add license.
22416
22417 2004-12-15  Stepan Kasal  <address@hidden>
22418
22419         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
22420
22421 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
22422
22423         * modules/getcwd (Files): Add m4/d-ino.m4.
22424         Suggested by Mark D. Baushke.
22425
22426 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
22427
22428         * lib/getdate.y (textint): New member "negative".
22429         (time_zone_hhmm): New function.
22430         Expect 14 shift-reduce conflicts, not 13.
22431         (o_colon_minutes): New rule.
22432         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
22433         (yylex): Set the "negative" member of signed numbers.
22434
22435 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
22436
22437         * doc/getdate.texi (Time of day items, Time zone items):
22438         Describe new formats +00:00, UTC+00:00.
22439
22440 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
22441
22442         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
22443         spurious "-l"s.  Problem reported by Stepan Kasal.
22444
22445 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
22446
22447         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
22448         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
22449
22450 2004-12-04  Simon Josefsson  <jas@extundo.com>
22451
22452         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
22453         Vandoorselaere <yoann@prelude-ids.org>.
22454
22455 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
22456
22457         Changes imported from coreutils.
22458         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
22459         exist.
22460         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
22461
22462 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
22463
22464         Changes imported from coreutils.
22465         * lib/hard-locale.c: Assume <locale.h> exists.
22466         Include "strdup.h".
22467         (GLIBC_VERSION): New macro.
22468         (hard_locale): Assume setlocale exists.
22469         Rewrite to avoid #ifdef.
22470         Use strdup rather than malloc + strcpy.
22471         * lib/human.c: Assume <locale.h> exists.
22472         (human_readable): Assume localeconv exists.
22473
22474 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
22475
22476         * modules/hard-locale (Depends-on): Add strdup.
22477
22478 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
22479
22480         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
22481         convert T2, not T.  (Imported from libc.)
22482
22483 2004-11-30  Simon Josefsson  <jas@extundo.com>
22484
22485         * modules/restrict (License): Change to LGPL.
22486
22487 2004-11-30  Simon Josefsson  <jas@extundo.com>
22488
22489         * m4/restrict.m4: Add copyright and copying conditions.
22490
22491 2004-11-30  Simon Josefsson  <jas@extundo.com>
22492
22493         * m4/base64.m4: New file.
22494
22495 2004-11-30  Simon Josefsson  <jas@extundo.com>
22496
22497         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
22498         base64.
22499
22500         * tests/test-base64.c: New file.
22501
22502         * modules/base64: New file.
22503
22504 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
22505
22506         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
22507         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
22508
22509         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
22510
22511 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
22512
22513         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
22514         (__getcwd.c): Don't restore errno; glibc doesn't.
22515         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
22516         first, falling back to our code only if its results look suspicious.
22517         Ensure that the resulting buffer is only as large as necessary.
22518
22519         * lib/readutmp.c: Include readutmp.h first.
22520         Include <errno.h>, since readutmp.h no longer does that.
22521         * lib/readutmp.h: Don't include <errno.h>,
22522         <sys/param.h>, <time.h>; not needed to establish interface.
22523         (errno): Remove decl.
22524         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
22525         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
22526         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
22527
22528 2004-11-28  Simon Josefsson  <jas@extundo.com>
22529
22530         * lib/base64.h, base64.c: New file.
22531
22532 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
22533
22534         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
22535
22536 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
22537
22538         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
22539         (Depends-on): Remove pathmax, same.  Add mempcpy.
22540         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
22541         (Makefile.am): Append getcwd.h to lib_SOURCES.
22542         (Include): Add getcwd.h.
22543         (Maintainer): Change from Jim Meyering to "all, glibc",
22544         since getdate now uses intended-for-glibc code.
22545         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
22546         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
22547
22548 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
22549
22550         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
22551         HP's ANSI C compiler.
22552         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
22553         Declaring int functions causes warnings on some modern systems and
22554         shouldn't be needed to compile on ancient ones.
22555         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
22556         defined.
22557
22558         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
22559         with the following changes.
22560         (__set_errno): Parenthesize properly.
22561         Include <stdbool.h>.
22562         (MIN, MAX, MATCHING_INO): New macros.
22563         (__getcwd): Define with prototype, not K&R form.
22564         Use heuristics to allocate default buffer on stack if possible.
22565         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
22566         behavior, and to avoid the PATH_MAX limit when computing
22567         ../../../../...
22568         Use MATCHING_INO to compare inode number to file.
22569         Check for arithmetic overflow in size calculations.
22570         Fix bug in reallocation of dot array that caused getcwd to fail
22571         on directories nested deeper than 75.
22572         Be more careful about saving errno on error.
22573         Do not use realloc; use only free+malloc, as this is a bit
22574         more flexible and avoids a needless copy operation.
22575         Do not inspect st_dev and st_ino for symbolic links; POSIX
22576         doesn't specify the latter.
22577         Check for closedir errors.
22578         Avoid needless casts.
22579         Use "#ifdef weak_alias" around weak_alias, to be like other
22580         glibc code.
22581         The following changes to getcwd.c have effect only when used in
22582         gnulib; they have no effect inside glibc proper.
22583         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
22584         as alloca isn't used.
22585         (alloca, __alloca): Likewise.
22586         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
22587         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
22588         unconditionally, as gnulib assumes C89 or better.
22589         Do not include <sys/param.h>.
22590         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
22591         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
22592         better.
22593         (NULL) [!defined NULL]: Remove; we assume C89 or better.
22594         Include <dirent.h> in a way that is compatible with modern Autoconf.
22595         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
22596         New macros, if not already defined.
22597         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
22598         Use "_LIBC", not "defined _LIBC", for consistency.
22599         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
22600         a mempcpy module.
22601         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
22602         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
22603         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
22604         credit only to Jim Meyering and adjust the copyright dates.
22605         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
22606         <stdlib.h>, <unistd.h>, "pathmax.h".
22607         Instead, include "xgetcwd.h" (first) and "getcwd.h".
22608         (INITIAL_BUFFER_SIZE): Remove.
22609         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
22610
22611 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
22612
22613         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
22614         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
22615         Use the _ONCE methods, for efficiency.
22616         Check for fcntl.h.  In test program, include <errno.h>
22617         and <fcntl.h> if available.  Remove old K&R cruft from
22618         test program.  Check for common errors in GNU/Linux,
22619         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
22620         don't do AC_LIBOBJ, as that's getcwd.m4's job.
22621         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
22622         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
22623         name accordingly.
22624         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
22625         accommodate new getcwd.c.
22626         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
22627         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
22628         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
22629         that's all we need now.
22630
22631 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22632
22633         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
22634         argp-parse.c depends on getopt internals, that means we should
22635         always use our getopt, to be on the safe side.
22636         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
22637         order not to spoil the result of an eventual previous invocation
22638         of gl_GETOPT_SUBSTITUTE.
22639
22640 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22641
22642         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
22643         redefinition warnings. To avoid them, include the defines
22644         in `#if !defined __need_getopt ... #endif'. The only place
22645         where __getopt_argv_const is used is in definitions
22646         of getopt_long and getopt_long_only below, which are as well
22647         protected by `#ifndef __need_getopt'.
22648         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
22649         __need_getopt after including <stdio.h> and <unistd.h> These
22650         headers might have defined it.
22651
22652 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
22653
22654         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
22655
22656 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
22657
22658         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
22659         (futimens): New function, which uses futimes if available.
22660         (futimens, utimens): Support timespec==NULL, with same semantics
22661         as utime and utimens.
22662         * lib/utimens.h (futimens): New decl.
22663
22664 2004-11-23  Jim Meyering  <jim@meyering.net>
22665
22666         * lib/getopt_.h: Remove trailing blanks.
22667
22668 2004-11-23  Jim Meyering  <jim@meyering.net>
22669
22670         * lib/__fpending.c: Add comment.
22671
22672 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
22673
22674         * modules/canonicalize (Depends-on): Add xreadlink.
22675         Problem reported by James Youngman.
22676
22677 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
22678
22679         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
22680         New macros.
22681         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
22682         optopt): Use them instead of invoking ## directly; otherwise, the
22683         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
22684
22685 2004-11-19  Bruno Haible  <bruno@clisp.org>
22686
22687         * lib/strtok_r.c: Move comments from here...
22688         * lib/strtok_r.h: ... to here.
22689
22690 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
22691
22692         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
22693         implementations that mishandle size_t overflow.
22694
22695 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
22696
22697         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
22698         might fail.  Problem reported by Yoann Vandoorselaere.
22699         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
22700         implementations that mishandle size_t overflow.
22701
22702 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
22703
22704         * modules/canon-host (Depends-on): Add strdup.
22705
22706 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
22707
22708         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
22709
22710 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
22711
22712         * lib/canon-host.c: Include "strdup.h".
22713         (canon_host): Use getaddrinfo if available, so that IPv6 works.
22714         Use strdup instead of malloc/strcpy to duplicate strings.
22715
22716         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
22717         (human_space_before_unit): New constant.
22718         * lib/human.c (human_readable): Support it.
22719
22720         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
22721         (xgetcwd): Set errno correctly when failing.
22722         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
22723         the failure is actually due to a PATH_MAX problem.
22724
22725         Further getopt changes to make it more likely that glibc will
22726         buy the changes back.
22727         * lib/getopt.c (POSIXLY_CORRECT): New constant.
22728         (getopt): Use it, so to preserve glibc semantic
22729         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
22730         when compiling for libc.
22731         * lib/getopt_.h (__getopt_argv_const): Bring it back.
22732         (getopt_long, getopt_long_only): Use it.
22733
22734         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
22735         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
22736         (getopt): Argv is now char * const *, as per standard.
22737         (_getopt_internal_r, _getopt_internal): Argv is now char **,
22738         not char *__getopt_argv_const *.
22739         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
22740         _getopt_long_only_r): Likewise.
22741         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
22742         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
22743         _getopt_long_r, _getopt_long_only_r): Likewise.
22744         * lib/getopt_.h (__getopt_argv_const): Remove.
22745         (getopt): Argv is now char * const *, as per standard.
22746
22747         * lib/getdate.y (tORDINAL): New token.
22748         (day, relunit): Allow it for relative times.
22749         (relative_time_table): Use tORDINAL for ordinals.
22750
22751 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
22752
22753         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
22754         Document that "second" isn't allowed as an ordinal number.
22755
22756 2004-11-16  Jim Meyering  <jim@meyering.net>
22757
22758         * modules/closeout (Depends-on): Add fpending.
22759
22760 2004-11-15  Jim Meyering  <jim@meyering.net>
22761
22762         * lib/closeout.c: Include "__fpending.h" once again.
22763         Include <stdbool.h>.
22764         (close_stdout): Don't fail just because stdout was closed initially,
22765         since some programs don't write to stdout in the normal course of
22766         operation (other than --version and --help), and we don't want this
22767         function to make e.g. `touch file >&-' fail.
22768         But do fail if it was closed and someone has tried to write to it.
22769         E.g., `printf foo >&-' must fail.
22770
22771 2004-11-13  Jim Meyering  <jim@meyering.net>
22772
22773         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
22774
22775 2004-11-12  Simon Josefsson  <jas@extundo.com>
22776
22777         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
22778         small doc fix is still pending.
22779
22780 2004-11-11  Simon Josefsson  <jas@extundo.com>
22781
22782         * modules/strtok_r: New file.
22783
22784         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22785         strtok_r.
22786
22787 2004-11-11  Simon Josefsson  <jas@extundo.com>
22788
22789         * m4/strtok_r.m4: New file.
22790
22791         * m4/getopt.m4: Replace opterr.
22792
22793 2004-11-11  Simon Josefsson  <jas@extundo.com>
22794
22795         * lib/strtok_r.h, strtok_r.c: New file.
22796
22797 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
22798
22799         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
22800         of replacing opterr, getopt, etc.  This should handle the
22801         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
22802
22803 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
22804
22805         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
22806         we can stop lying to compilers about the constness of argv when we
22807         are compiled outside glibc.
22808         (getopt, getopt_long, getopt_long_only): Use it.
22809         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
22810         _getopt_internal, getopt): Likewise.
22811         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
22812         _getopt_long_only_r): Likewise.
22813         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
22814         _getopt_long_r, _getopt_long_only_r): Likewise.
22815
22816         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
22817         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
22818         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
22819         the other external symbols.
22820         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
22821         declaration, since the above renaming now works around collisions.
22822
22823 2004-11-11  Jim Meyering  <jim@meyering.net>
22824
22825         * lib/linebreak.c: Remove trailing blanks.
22826         * lib/alloca_.h: Likewise.
22827         * lib/acosl.c: Likewise.
22828         * lib/euidaccess.c: Likewise.
22829         * lib/allocsa.h: Likewise.
22830
22831 2004-11-10  Simon Josefsson  <jas@extundo.com>
22832
22833         * m4/getaddrinfo.m4: New file.
22834
22835 2004-11-10  Simon Josefsson  <jas@extundo.com>
22836
22837         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
22838
22839 2004-11-10  Simon Josefsson  <jas@extundo.com>
22840
22841         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22842         getaddrinfo.
22843
22844         * modules/getaddrinfo: New file.
22845
22846 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
22847
22848         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
22849
22850 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
22851
22852         * lib/mktime.c (SHR): New macro, which is a portable
22853         substitute for >> that should work even on Crays.
22854         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
22855         Problem reported by Mark D. Baushke in
22856         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
22857         * lib/getdate.y (SHR): Likewise.
22858         (tm_diff): Use it.
22859         * lib/strftime.c (SHR): Likewise.
22860         (tm_diff): Use it.
22861         * lib/quotearg.c (struct quoting_options): Use unsigned int for
22862         quote_these_too, so that right shifts are well defined.  All uses
22863         changed.
22864
22865 2004-11-10  Jim Meyering  <jim@meyering.net>
22866
22867         Ensure that no close failure goes unreported.
22868         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
22869         return early when it seems there's nothing to flush.
22870         Don't include __fpending.h.
22871
22872 2004-11-10  Jim Meyering  <jim@meyering.net>
22873
22874         * modules/closeout (Depends-on): Remove fpending.
22875
22876 2004-11-10  Jim Meyering  <jim@meyering.net>
22877
22878         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
22879
22880 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
22881
22882         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
22883         gl_FUNC_STRFTIME.
22884         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
22885         and AC_REQUIRE when possible, to avoid duplicate checks.
22886         Check for <wchar.h>.
22887
22888 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
22889
22890         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
22891
22892 2004-11-09  Bruno Haible  <bruno@clisp.org>
22893
22894         * m4/sockpfaf.m4: New file.
22895
22896 2004-11-05  Bruno Haible  <bruno@clisp.org>
22897
22898         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
22899         Reported by Mark D. Baushke <mdb@cvshome.org>.
22900
22901 2004-11-04  Bruno Haible  <bruno@clisp.org>
22902
22903         2004-09-11  Bruno Haible  <bruno@clisp.org>
22904                 * allocsa.valgrind: New file.
22905         2004-02-06  Bruno Haible  <bruno@clisp.org>
22906                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
22907                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
22908                 Reported by Christopher Seip <chris.seip@hp.com>.
22909
22910 2004-11-04  Bruno Haible  <bruno@clisp.org>
22911
22912         * modules/allocsa (Files): Add lib/allocsa.valgrind.
22913         (Makefile.am): Distribute it.
22914
22915 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
22916
22917         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
22918         with errno == ERANGE if the buffer is too small.
22919         Problem reported by Mark D. Baushke.
22920
22921 2004-11-03  Albert Chin  <china@thewrittenword.com>
22922             Paul Eggert  <eggert@cs.ucla.edu>
22923
22924         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
22925         equivalent, substitute $ac_type for equivalent type rather than
22926         blindly using uint32_t *always* which won't work if uint32_t is not
22927         available.  Define _UINT32_T to work around typedef of uint32_t if
22928         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
22929         2.5.1.
22930
22931 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
22932
22933         * m4/jm-macros.m4: Sync from coreutils.
22934         (gl_MACROS): Check for mbrlen, for pathchk.
22935         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
22936
22937 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
22938
22939         * lib/xreadlink.c (MAXSIZE): New macro.
22940         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
22941         size does not exceed MAXSIZE.  Avoid cast.
22942         As suggested by Mark D. Baushke in
22943         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
22944         if readlink fails with buffer size just under MAXSIZE, try again
22945         with MAXSIZE.
22946
22947 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
22948
22949         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
22950
22951 2004-11-02  Derek R. Price  <derek@ximbiot.com>
22952         and  Paul Eggert  <eggert@cs.ucla.edu>
22953
22954         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
22955         (get_date): Overparenthesize to avoid GCC warning.
22956
22957 2004-11-02  Bruno Haible  <bruno@clisp.org>
22958
22959         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
22960         returns void.
22961
22962 2004-11-02  Bruno Haible  <bruno@clisp.org>
22963
22964         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
22965         function returns void.
22966
22967 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
22968
22969         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
22970         fflush_unlocked, flockfile, funlockfile, funlockfile,
22971         fputs_unlocked, putc_unlocked.
22972
22973 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
22974
22975         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
22976         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
22977         already declared.
22978
22979 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
22980
22981         * modules/getdate (Files): Add doc/getdate.texi.
22982         (Depends-on): Add setenv, xalloc.
22983
22984 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
22985
22986         * lib/getdate.y: Add support for TZ="foo" within a date string.
22987         Fix some bugs near time_t boundaries.  Reject dates with
22988         out-of-range components, e.g., "Sept 31".
22989         Include <stdlib.h>, "setenv.h", "xalloc.h".
22990         (ISDIGIT_LOCALE): Remove; unused.
22991         Note that the TZ and time functions used here are not reentrant.
22992         (mktime_ok, get_tz): New functions.
22993         (TZBUFSIZE): New constant.
22994         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
22995         This requires that we sometimes generate our own TZ="XXX..." setting.
22996
22997 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
22998
22999         * doc/getdate.texi: New file, from coreutils with modifications for
23000         the new TZ parsing.
23001
23002 2004-10-27  Derek R. Price  <derek@ximbiot.com>
23003
23004         * lib/mktime.c (not_equal_tm): Remove redundant check.
23005
23006 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23007
23008         * modules/regex (lib_SOURCES): Add regex.c.
23009         Reported by James Youngman in
23010         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
23011
23012 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23013
23014         * lib/getdate.y: Use Bison 1.875 features, and some minor
23015         code cleanups.  This change does not affect semantics.
23016         Don't include <stdlib.h>; no longer needed.
23017         Don't include unlocked-io.h; only the "#if TEST" code uses
23018         stdio, and performance isn't crucial there.
23019         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
23020         Bison 1.875 features as described below.
23021         All uses of "PC." replaced by "pc->".
23022         (YYSTYPE): Add a forward declaration.
23023         (yylex, yyerror): Use full prototypes in forward decls.
23024         Use "%pure-parser" rather than obsolescent "%pure_parser".
23025         Use %parse-param and %lex-param instead of obsolescent
23026         YYPARSE_PARAM and YYLEX_PARAM.
23027         (meridian_table, month_and_day_table, time_units_table,
23028         relative_time_table, time_zone_table, military_table,
23029         lookup_zone, lookup_word, get_date):
23030         Use NULL instead of 0 where appropriate.
23031         (to_hour): Avoid abort (), to avoid a dependency on
23032         stdlib.h.
23033         (yyerror, yylex): Now accepts parser_control * arg.
23034         (main) [TEST]: Use '\0' rather than 0 for char.
23035
23036 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
23037
23038         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
23039
23040 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
23041
23042         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
23043         It's now the caller's responsibility to handle the case where
23044         !HAVE_GETPAGESIZE && !defined getpagesize.
23045
23046         * lib/mktime.c (leapyear): Arg is long int, not int.
23047
23048 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
23049
23050         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
23051
23052 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
23053
23054         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
23055         missing.  Problem reported by James Youngman.
23056
23057 2004-10-16  Simon Josefsson  <jas@extundo.com>
23058
23059         * gnulib-tool: Fix comments.  Fix parse problem.
23060         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
23061
23062 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
23063
23064         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
23065         implementation of getopt_long.  Problem reported by Alexander Taler in:
23066         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
23067
23068 2004-10-15  Bruno Haible  <bruno@clisp.org>
23069
23070         * gnulib-tool: Untabify. Initialize supplied_libname.
23071         (func_usage): More homogenous output.
23072         (func_modules_transitive_closure, func_modules_to_filelist,
23073         func_emit_lib_Makefile_am): New functions.
23074         (func_import): New function, extracted from big case statement. Use
23075         func_get_license, func_modules_transitive_closure,
23076         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
23077         opt_lgpl. Don't use test -a, as it's not portable.
23078         (func_create_testdir): Use func_modules_transitive_closure,
23079         func_modules_to_filelist, func_emit_lib_Makefile_am.
23080
23081 2004-10-15  Bruno Haible  <bruno@clisp.org>
23082
23083         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
23084
23085 2004-10-15  Bruno Haible  <bruno@clisp.org>
23086
23087         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
23088         the portions belonging to each module.
23089         Suggested by Derek Robert Price <derek@ximbiot.com>.
23090
23091 2004-10-12  Simon Josefsson  <jas@extundo.com>
23092
23093         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
23094         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
23095         to real functions.
23096
23097 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23098
23099         * modules/vsnprintf: New file.
23100
23101 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23102
23103         * m4/vsnprintf.m4: New file.
23104
23105 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23106
23107         * lib/vsnprintf.h: New file.
23108         * lib/vsnprintf.c: New file.
23109
23110 2004-10-11  Bruno Haible  <bruno@clisp.org>
23111
23112         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
23113         vsnprintf.
23114
23115 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
23116
23117         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
23118
23119 2004-10-07  Bruno Haible  <bruno@clisp.org>
23120
23121         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
23122         fits into the provided buffer.
23123
23124 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
23125
23126         * lib/diacrit.c, diacrit.h: Add GPL notice.
23127
23128         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
23129         notice.
23130         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
23131         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
23132         This avoids a potential constant-folding bug.
23133
23134 2004-10-05  Bruno Haible  <bruno@clisp.org>
23135
23136         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
23137         for the declaration of strsep.
23138
23139 2004-10-05  Bruno Haible  <bruno@clisp.org>
23140
23141         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
23142
23143 2004-10-04  Simon Josefsson  <jas@extundo.com>
23144
23145         * modules/memmem: New file.
23146         * tests/test-memmem.c: New file.
23147         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
23148
23149 2004-10-04  Simon Josefsson  <jas@extundo.com>
23150
23151         * m4/memmem.m4: New file.
23152
23153 2004-10-04  Simon Josefsson  <jas@extundo.com>
23154
23155         * lib/memmem.h: New file.
23156         * lib/memmem.c: New file, taken from glibc.
23157
23158 2004-10-04  Simon Josefsson  <jas@extundo.com>
23159
23160         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
23161         '#ifdef USE_UNLOCKED_IO'.
23162
23163 2004-10-04  Simon Josefsson  <jas@extundo.com>
23164
23165         * config/srclist.txt: Add memmem from glibc.
23166
23167 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
23168
23169         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
23170
23171         * modules/argmatch, modules/argp, modules/closeout, modules/error,
23172         modules/exclude, modules/getdate, modules/getline,
23173         modules/getndelim2, modules/getpass, modules/getpass-gnu,
23174         modules/getusershell, modules/linebuffer, modules/md5,
23175         modules/mountlist, modules/posixtm, modules/readtokens,
23176         modules/readutmp, modules/regex, modules/sha1,
23177         modules/version-etc, modules/yesno:
23178         Remove dependency on unlocked-io.
23179
23180 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
23181
23182         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
23183
23184         * m4/unlocked-io.m4: Add copyright notice.
23185         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
23186
23187 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
23188
23189         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
23190         * lib/xmalloc.c (xmemdup): Likewise.
23191         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
23192         XFREE): Remove these long-obsolescent macros.
23193         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
23194         * lib/xstrdup.c: Remove.
23195
23196         * lib/regex.c (re_comp): Cast gettext return value to char *,
23197         Problem reported by Martin Neitzel via Mark D. Baushke.
23198
23199 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
23200
23201         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
23202         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
23203         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
23204         regex.c, sha1.c, version-etc.c, yesno.c:
23205         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
23206         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
23207         the includer's responsibility.
23208
23209         Sync from coreutils.
23210
23211         * lib/modechange.c (mode_compile): Don't decrement a pointer that
23212         points to the start of a string, as the C Standard says the
23213         resulting behavior is undefined.
23214
23215         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
23216         simple -> simple_backups, numbered_existing ->
23217         numbered_existing_backups, numbered -> numbered_backups
23218         to avoid shadowing problems.  All uses changed.
23219         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
23220         * lib/backupfile.c (check_extension, numbered_backup):
23221         Rename locals to avoid shadowing 'basename'.
23222         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
23223         once.
23224
23225         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
23226         * lib/.cvsignore: Add getopt.h.
23227
23228 2004-10-04  Bruno Haible  <bruno@clisp.org>
23229
23230         * modules/README: New file.
23231         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
23232         not a module.
23233
23234 2004-10-02  Jim Meyering  <jim@meyering.net>
23235
23236         * lib/dirfd.h, getpagesize.h: Add copyright notice.
23237
23238 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23239
23240         * modules/strsep: New file.
23241
23242 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23243
23244         * m4/strsep.m4: New file.
23245
23246 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23247
23248         * lib/strsep.h: New file.
23249         * lib/strsep.c: New file.
23250
23251 2004-10-01  Simon Josefsson  <jas@extundo.com>
23252
23253         * lib/snprintf.c (snprintf): Handle size==0.
23254
23255 2004-10-01  Simon Josefsson  <jas@extundo.com>
23256             Bruno Haible  <bruno@clisp.org>
23257
23258         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
23259         (snprintf): Declare 'args'.
23260
23261 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
23262
23263         * lib/snprintf.c: Remove comments as to why each header is needed.
23264
23265 2004-10-01  Bruno Haible  <bruno@clisp.org>
23266
23267         * MODULES.html.sh: Add strsep.
23268
23269 2004-09-30  Simon Josefsson  <jas@extundo.com>
23270
23271         * modules/snprintf: New file.
23272
23273 2004-09-30  Simon Josefsson  <jas@extundo.com>
23274
23275         * m4/snprintf.m4: New file.
23276
23277 2004-09-30  Simon Josefsson  <jas@extundo.com>
23278
23279         * lib/snprintf.h, lib/snprintf.c: New files.
23280
23281 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23282
23283         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
23284         (hol_entry_help): Never translate an empty string.
23285         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
23286         * lib/argp.h (OPTION_NO_TRANS): New option.
23287
23288 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
23289
23290         * modules/argp (Maintainer): Replace Simon Josefsson
23291         by Sergey Poznyakoff.
23292
23293 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
23294
23295         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
23296         changes merged back into glibc.
23297
23298 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
23299
23300         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
23301
23302 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
23303
23304         * lib/xvasprintf.c: Include xalloc.h.
23305         (xvasprintf): Use xalloc_die, not xmalloc_die.
23306
23307 2004-09-29  Bruno Haible  <bruno@clisp.org>
23308
23309         * modules/alloca-opt: New file, derived from modules/alloca.
23310         * modules/allocsa: Depend on alloca-opt instead of alloca.
23311         * modules/setenv: Likewise.
23312         * modules/vasnprintf: Likewise.
23313         * MODULES.html.sh: Add alloca-opt.
23314
23315 2004-09-28  Simon Josefsson  <jas@extundo.com>
23316
23317         * gnulib-tool: New parameter --lgpl, to asseert that modules are
23318         LGPL, and to replace license template from GPL to LGPL.
23319
23320 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
23321
23322         * modules/dummy: Change license to LGPL.
23323
23324 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
23325
23326         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
23327
23328 2004-09-24  Simon Josefsson  <jas@extundo.com>
23329
23330         * modules/minmax (License): Change from GPL to LGPL.
23331
23332 2004-09-23  Simon Josefsson  <jas@extundo.com>
23333
23334         * gnulib-tool (--import): Typo.
23335
23336 2004-09-23  Simon Josefsson  <jas@extundo.com>
23337
23338         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
23339
23340 2004-09-22  Bruno Haible  <bruno@clisp.org>
23341
23342         * modules/*: Add 'License' field.
23343         * gnulib-tool: Accept --extract-license option.
23344         (func_get_license): New function.
23345
23346 2004-09-21  Bruno Haible  <bruno@clisp.org>
23347
23348         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
23349         Reported by Simon Josefsson.
23350
23351 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
23352
23353         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
23354         gl_AC_TYPE_LONG_LONG.
23355
23356 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
23357
23358         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
23359
23360 2004-09-18  Simon Josefsson  <jas@extundo.com>
23361         and  Paul Eggert  <eggert@cs.ucla.edu>
23362
23363         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
23364         calls with autoreconf.  Define GL_LIB.
23365
23366 2004-09-14  Karl Berry  <karl@gnu.org>
23367
23368         * config/srclist.txt: unsync setenv.c, sigh.
23369
23370 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
23371
23372         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
23373         Problem reported by Bruno Haible in:
23374         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
23375
23376 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
23377
23378         * config/srclist.txt: Comment out argp-pvh.c.
23379
23380 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
23381
23382         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
23383         in case some system header has #define'd it.  Problem reported by
23384         Soeren D. Schulze in
23385         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
23386
23387 2004-09-09  Karl Berry  <karl@gnu.org>
23388
23389         * regex.[ch]: delete from the root.  These were supposed to be
23390                 synced with emacs cvs, but this has not happened for about
23391                 a year, and anyway nothing else uses emacs regex.[ch].
23392                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
23393                 lib/regex[.ch] is untouched.
23394
23395 2004-09-09  Bruno Haible  <bruno@clisp.org>
23396
23397         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
23398
23399 2004-09-09  Bruno Haible  <bruno@clisp.org>
23400
23401         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
23402         modifications.
23403         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
23404
23405 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
23406
23407         * modules/xvasprintf: New file.
23408         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
23409
23410 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
23411
23412         * lib/xvasprintf.h: New file.
23413         * lib/xvasprintf.c: New file.
23414         * lib/xasprintf.c: New file.
23415
23416 2004-09-08  Bruno Haible  <bruno@clisp.org>
23417
23418         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
23419
23420 2004-09-08  Bruno Haible  <bruno@clisp.org>
23421
23422         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
23423         length is > INT_MAX.
23424         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
23425         more.
23426
23427 2004-09-08  Bruno Haible  <bruno@clisp.org>
23428
23429         * lib/stdint_.h: New file, taken from GNU clisp.
23430
23431 2004-09-08  Bruno Haible  <bruno@clisp.org>
23432             Oskar Liljeblad  <oskar@osk.mine.nu>
23433
23434         * modules/stdint: New file.
23435         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
23436
23437 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23438
23439         Import from coreutils.
23440         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
23441         strings on unbounded length.  alloca's performance benefits aren't
23442         that important here.
23443         (V_STRDUP): Remove.
23444         (parse_with_separator): New function, with most of the internals
23445         of the old parse_user_spec.  Allow user to omit both user and group,
23446         for compatibility with FreeBSD.
23447         Clone only the user name, not the entire spec.
23448         Do not set *uid, *gid unless entirely successful.
23449         Avoid memory leak in some failing cases.
23450         Fix regression for USER.GROUP reported by Dmitry V. Levin in
23451         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
23452         (parse_user_spec): Rewrite to use parse_with_separator.
23453
23454 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23455
23456         * modules/userspec: Don't depend on alloca.
23457
23458 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
23459
23460         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
23461
23462 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
23463
23464         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
23465         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
23466         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
23467
23468 2004-08-16  Simon Josefsson  <jas@extundo.com>
23469
23470         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
23471         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
23472         Add --dry-run for --import.
23473         Let user provided command line parameters override configure.ac
23474         settings.
23475
23476 2004-08-12  Simon Josefsson  <jas@extundo.com>
23477
23478         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
23479         as discussed with Paul Eggert in threads rooted at
23480         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
23481         and
23482         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
23483         Before, the test was empty, and relied on ELIDE_CODE in source
23484         code.)
23485         (gl_PREREQ_GETOPT): New macro.
23486         (gl_GETOPT): Use them.
23487
23488 2004-08-12  Simon Josefsson  <jas@extundo.com>
23489
23490         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
23491         * lib/getopt_.h: Renamed from getopt.h.
23492
23493 2004-08-12  Simon Josefsson  <jas@extundo.com>
23494
23495         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
23496         Change default library name from libfoo to libgnu.
23497         Now, if you have a configure.ac that says:
23498                 gl_SOURCE_BASE(gl)
23499                 gl_M4_BASE(gl/m4)
23500                 gl_MODULES(error getopt etcetera)
23501                 gl_INIT
23502         you can import all you need by running:
23503                 ../gnulib/gnulib-tool --import
23504
23505         * modules/getopt (Files): Rename getopt.h to getopt_.h.
23506         (Makefile.am): Rewrite, use logic from argz.
23507         (Include): Use <getopt.h> instead of "getopt.h".
23508
23509 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
23510
23511         * modules/argp (Files): Add m4/unlocked-io.m4.
23512         (Depends-on): Add extensions.
23513
23514 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
23515
23516         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
23517         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
23518         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
23519         Check for program_invocation_name, program_invocation_short_name,
23520         flockfile, funlockfile, features.h, _getopt_long_only_r.
23521
23522 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
23523
23524         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
23525         its complicated substitute.
23526         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
23527         and program_invocation_name.
23528         (__argp_basename) [!_LIBC]: Remove; the only use was
23529         replaced by its body.
23530         (__argp_short_program_name): Change condition from
23531         !defined __argp_short_program_name to
23532         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
23533         to match argp-namefrob.h.
23534         (__argp_failure): Don't assume strerror_r returns char *.
23535         * lib/argp-parse.c (N_): Define unconditionally.
23536         (argp_default_options): Fill out initializers with 0 to avoid
23537         gcc warnings.
23538
23539 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
23540
23541         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
23542         getopt1.c.
23543
23544 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
23545
23546         Merge from coreutils.
23547
23548         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
23549
23550         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
23551         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
23552
23553 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
23554
23555         Merge from coreutils.
23556
23557         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
23558         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
23559         for Reliant Unix 5.43.
23560
23561         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
23562         (union fooround): Use uintmax_t, not long int.
23563         The rest is a merge from libc:
23564         [defined _LIBC]: Include <shlib-compat.h>.
23565         (_obstack) [defined _LIBC]: Remove after 2.3.4.
23566
23567         * lib/settime.c (settime): Recode to avoid warning with
23568         Sun Forte C 6U2.
23569
23570         * lib/strverscmp.c: Convert to UTF-8.
23571
23572 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
23573
23574         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
23575         m4/uintmax_t.m4.
23576
23577 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23578
23579         * modules/xalloc-die: New file.
23580         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
23581
23582         * modules/md5 (Files): Add m4/uint32_t.m4.
23583         * modules/sha1: Renamed from modules/sha.
23584         (Files):
23585         Rename lib/sha.h to lib/sha1.h.
23586         Rename lib/sha.c to lib/sha1.c.
23587         Rename m4/sha.m4 to m4/sha1.m4.
23588         (lib_SOURCES): Likewise.
23589         (configure.ac): Rename gl_SHA to gl_SHA1.
23590         (Include): sha.h -> sha1.h.
23591
23592 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23593
23594         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
23595         * m4/sha1.m4: Renamed from sha.m4.
23596         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
23597
23598 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23599
23600         * lib/obstack.h (obstack_empty_p):
23601         Don't assume that chunk->contents is suitably aligned.
23602         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
23603         Likewise. Problem reported by Benno in
23604         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
23605
23606         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
23607         readable.  This could be improved further but it'd take some work.
23608
23609 2004-08-08  Simon Josefsson  <jas@extundo.com>
23610
23611         * modules/xgethostname (Depends-on): Remove exit and error (not
23612         used).
23613
23614         * modules/getpass-gnu: Add getpass.h.
23615         (Depends-on): Add stdbool.
23616         * modules/getpass: Add getpass.h.
23617
23618 2004-08-08  Simon Josefsson  <jas@extundo.com>
23619
23620         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
23621         Check getpass declaration.
23622
23623 2004-08-08  Simon Josefsson  <jas@extundo.com>
23624
23625         * lib/xgethostname.c: Don't include error.h (not used).
23626
23627         * lib/getpass.h: Add.
23628         * lib/getpass.c: Include getpass.h first.
23629
23630 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
23631
23632         * lib/xalloc-die.c: New file.
23633         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
23634         All uses removed.
23635         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
23636         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
23637         xalloc-die.c.
23638         (_, N_, xalloc_die): Move to xalloc-die.c.
23639         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
23640         so that we needn't mess with xalloc_msg_memory_exhausted.
23641
23642         * lib/sha1.h: Renamed from sha.h.
23643         (SHA1_H): Renamed from _SHA_H.
23644         (sha1_ctx): Renamed from sha_ctx.
23645         (sha1_init_ctx): Renamed from sha_init_ctx.
23646         (sha1_process_block): Renamed from sha_process_block.
23647         (sha1_process_bytes): Renamed from sha_process_bytes.
23648         (sha1_finish_ctx): Renamed from sha_finish_ctx.
23649         (sha1_read_ctx): Renamed from sha_read_ctx.
23650         (sha1_stream): Renamed from sha_stream.
23651         (sha1_buffer): Renamed from sha_buffer.
23652         * lib/sha1.c: Likewise; renamed from sha.c.
23653         Do not include <sys/types.h>.
23654         Include <stddef.h> rather than <stdlib.h>.
23655
23656 2004-08-08  Bruno Haible  <bruno@clisp.org>
23657
23658         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
23659         FILESYSTEM_PREFIX_LEN.
23660         * lib/progreloc.c: Likewise.
23661         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
23662
23663 2004-08-06  Simon Josefsson  <jas@extundo.com>
23664
23665         * modules/progname (Depends-on): Don't depend on stdbool.
23666
23667 2004-08-06  Simon Josefsson  <jas@extundo.com>
23668
23669         * modules/getsubopt: New file.
23670         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23671         getsubopt.
23672
23673 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
23674
23675         More merge from coreutils.
23676
23677         * m4/utimens.m4, m4/utimecmp.m4: New files.
23678         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
23679         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
23680         prereq.m4, sha.m4: Import changes from coreutils.
23681
23682 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
23683
23684         More merge from coreutils.
23685         * modules/raise, modules/readtokens0, modules/utimens:
23686         * modules/utimecmp, module/xnanosleep: New files.
23687         * modules/strftime: Add lib/strftime.h.
23688         Change include from <time.h> to "strftime.h".
23689         * modules/yesno: Add lib/yesno.h.
23690         * modules/backupfile: Remove lib/addext.c.
23691         * modules/euidaccess: Add stat-macros.h.
23692         * modules/canonicalize, modules/euidaccess,
23693         modules/filemode, modules/lchown, modules/makepath,
23694         modules/rmdir, modules/stat: Likewise.
23695
23696 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
23697
23698         Merge from tar.
23699         * lib/argp-help.c (make_hol, hol_append): Don't assume that
23700         SIZE_MAX is a valid preprocessor constant.
23701         (__argp_basename): Change from "#ifndef _LIBC"
23702         to "#ifndef __argp_short_program_name", so that
23703         we don't compile these functions for tar.
23704
23705         More merges from coreutils.
23706         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
23707         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
23708         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
23709         * lib/addext.c: Remove; no longer needed.
23710         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
23711         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
23712         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
23713         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
23714         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
23715         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
23716         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
23717         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
23718         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
23719         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
23720         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
23721         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
23722         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
23723         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
23724         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
23725         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
23726         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
23727         Import changes from coreutils.
23728
23729 2004-08-05  Simon Josefsson  <jas@extundo.com>
23730
23731         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
23732
23733 2004-08-05  Simon Josefsson  <jas@extundo.com>
23734
23735         * m4/getsubopt.m4: New file.
23736
23737 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
23738
23739         Merge from coreutils.
23740
23741         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
23742         * m4/getcwd-path-max.m4: New files.
23743
23744         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
23745         FILESYSTEM_PREFIX_LEN ->
23746         FILE_SYSTEM_PREFIX_LEN.
23747         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
23748         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
23749         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
23750         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
23751
23752         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
23753         prerequisite modules now handle the DOS stuff.
23754         Don't check for unistd.h.
23755
23756 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
23757
23758         Merge from coreutils.
23759
23760         * lib/.gdb-history: Remove; this doesn't belong here.
23761
23762         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
23763         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
23764         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
23765         * lib/getcwd.c: New files.
23766
23767         * lib/dirname.h: Include <stdbool.h>.
23768         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
23769         for consistency with POSIX terminology.  All uses changed.
23770         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
23771         (strip_trailing_slashes): Use bool for booleans.
23772         * lib/stripslash.c (strip_trailing_slashes): Likewise.
23773
23774         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
23775         sometimes returns a positive errno value even when it succeeds.
23776         (print_errno_message) [!LIBC]: Fall back on strerror if
23777         __strerror_r fails.
23778
23779         * lib/path-concat.c (mempcpy): Don't define if a system header defines
23780         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
23781         (longest_relative_suffix): New function.
23782         (path_concat): Use it.  Assume first argument is not NULL.
23783         Port to DOS.  Omit redundant separators.
23784         Report an error instead of returning NULL.
23785         Use mempcpy instead of memcpy.
23786         (xpath_concat): Remove: not declared or used.
23787
23788         * lib/same.h: Include <stdbool.h>
23789         (same_name): Return bool, not int.
23790         * lib/same.c (same_name): Likewise.
23791         (errno): Don't declare; we assume C89 or better now.
23792
23793         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
23794         if not already defined.
23795
23796         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
23797         * lib/dup-safer.c (errno): Likewise.
23798
23799 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
23800
23801         Merge from coreutils.
23802         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
23803         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
23804         * modules/path-concat: Don't depend on strdup.
23805
23806 2004-08-03  Simon Josefsson  <jas@extundo.com>
23807
23808         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
23809         * lib/progname.h: Don't include stdbool.h.
23810
23811 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
23812
23813         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
23814         * MODULES.html.sh (func_all_modules): Remove fatal.
23815
23816 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
23817
23818         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
23819
23820 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
23821
23822         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
23823         working.
23824
23825 2004-08-02  Simon Josefsson  <jas@extundo.com>
23826
23827         * lib/getsubopt.h: New file, with comments from Bruno Haible.
23828         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
23829         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
23830
23831 2004-08-01  Simon Josefsson  <jas@extundo.com>
23832
23833         * lib/xgetdomainname.c: Include stdlib.h, for free().
23834
23835 2004-07-19  Bruno Haible  <bruno@clisp.org>
23836
23837         * MODULES.html.sh (func_all_modules): Add dummy.
23838
23839 2004-07-16  Simon Josefsson  <jas@extundo.com>
23840
23841         * modules/dummy: New file.
23842
23843 2004-07-16  Simon Josefsson  <jas@extundo.com>
23844
23845         * lib/dummy.c: New file.
23846
23847 2004-07-16  Bruno Haible  <bruno@clisp.org>
23848
23849         * lib/backupfile.h: Add extern "C" for C++.
23850         * lib/closeout.h: Likewise.
23851         * lib/copy-file.h: Likewise.
23852         * lib/findprog.h: Likewise.
23853         * lib/full-write.h: Likewise.
23854         * lib/pathname.h: Likewise.
23855         * lib/progname.h: Likewise.
23856         * lib/stpcpy.h: Likewise.
23857         * lib/stpncpy.h: Likewise.
23858         * lib/strcase.h: Likewise.
23859         * lib/strstr.h: Likewise.
23860         * lib/xalloc.h: Likewise.
23861
23862         * lib/mbswidth.h: Add extern "C" for C++.
23863         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
23864
23865 2004-07-13  Robert Millan  <robertmh@gnu.org>
23866
23867         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
23868
23869 2004-07-09  Simon Josefsson  <jas@extundo.com>
23870
23871         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
23872         failed without this.)
23873
23874 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23875
23876         * modules/chown (Files): Add lib/fchown-stub.c, since
23877         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
23878
23879 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
23880
23881         * lib/fchown-stub.c: New file.
23882
23883 2004-06-24  Jim Meyering  <jim@meyering.net>
23884
23885         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
23886
23887 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23888
23889         * modules/argz: Omit "#include".
23890
23891         * MODULES.html.sh (func_all_modules): Add calloc, to match
23892         2004-06-01 addition of calloc module.
23893
23894 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23895
23896         * m4/argz.m4: New file, which is autoupdated from libtool.
23897
23898 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23899
23900         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
23901         libtool.
23902
23903 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23904
23905         * config/srclist-update: Don't insist on "USA." before the
23906         close-comment, as libtool omits the period and puts the */ on a
23907         separate line.
23908         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
23909         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
23910
23911 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
23912
23913         * modules/argz: New file.
23914         * MODULES.html.sh (func_all_modules): Add argz.
23915
23916 2004-06-12  Jim Meyering  <jim@meyering.net>
23917         and  Paul Eggert  <eggert@cs.ucla.edu>
23918
23919         * modules/hash (Files): Add lib/xalloc.h.
23920         * modules/pipe (Depends-on): Add wait-process.
23921         * modules/stat (Depends-on): Add xalloc.
23922         * modules/userspec (Files): Add lib/userspec.h.
23923         * modules/xstrto
23924
23925         Upgrade from gettext-0.13.
23926         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
23927         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
23928         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
23929
23930 2004-06-10  Jim Meyering  <jim@meyering.net>
23931
23932         * lib/calloc.c: New file.
23933
23934 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
23935
23936         * lib/getdate.y (yylex): Allow space between sign and number.
23937         Problem reported by Dan Jacobson.
23938
23939 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
23940
23941         Merge from coreutils CVS.
23942
23943         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
23944         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
23945         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
23946         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
23947         xstrtol.m4: Fix copyright date and/or serial number.
23948
23949         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
23950         See if we need an fchown replacement.
23951         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
23952         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
23953         and use the replacement function if we detect either defect.
23954
23955         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
23956         gl_UTIMECMP.
23957
23958 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
23959         and  Jim Meyering  <jim@meyering.net>
23960
23961         Merge from coreutils CVS.
23962
23963         * lib/stat-macros.h: New file, with contents from file-type.h
23964         and coreutils' system.h.
23965         * lib/file-type.c: Include "stat-macros.h".
23966         * lib/file-type.h (file_type): Move all macro definitions to new file,
23967         stat-macros.h.
23968
23969         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
23970         Wrap old code with this conditional.
23971         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
23972         function that does not dereference symlinks.
23973         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
23974
23975         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
23976         dependency problems.
23977         (xreadlink): Accept new arg SIZE, for efficiency.
23978         All decls and uses changed.
23979         * lib/xreadlink.h: Include <stddef.h>, for size_t.
23980
23981         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
23982         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
23983
23984         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
23985         sysexits.h.
23986
23987 2004-06-01  Jim Meyering  <jim@meyering.net>
23988
23989         * m4/calloc.m4: New file.
23990
23991 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
23992
23993         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
23994         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
23995         Also, fix a typo in a diagnostic.
23996
23997 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
23998
23999         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
24000         or AC_FUNC_REALLOC.
24001
24002 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
24003
24004         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
24005         macros to be defined.
24006         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
24007         the allocator returns NULL because the requested size is zero.
24008
24009 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
24010
24011         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
24012         var.  Add comment explaining why libc still defines it.  This
24013         merges the following patch from glibc:
24014         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
24015
24016 2004-05-20  Andreas Schwab  <schwab@suse.de>
24017
24018         * m4/free.m4: Replace free if it not known to work, not the other
24019         way round.
24020
24021 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
24022
24023         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
24024         present in glibc since revision 1.1 of this file.
24025         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
24026         obstack_alignment_mask, obstack_alloc, obstack_base,
24027         obstack_blank, obstack_blank_fast, obstack_chunk_size,
24028         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
24029         obstack_grow0, obstack_init, obstack_int_grow,
24030         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
24031         obstack_next_free, obstack_object_size, obstack_ptr_grow,
24032         obstack_ptr_grow_fast, obstack_room): Remove declarations of
24033         nonexistent functions.
24034
24035 2004-05-18  Karl Berry  <karl@gnu.org>
24036
24037         * config/srclist.txt: break link for vasnprintf.c.
24038
24039 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24040
24041         Port obstack to the AS/400, where pointers are 16 bytes wide and
24042         you cannot cast an integer to a valid pointer.  This patch is
24043         currently waiting to be integrated into glibc; see
24044         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
24045
24046         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
24047         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
24048         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
24049         (struct obstack): temp member is now a union of a pointer and
24050         an integer, instead of an integer.  All integer uses changed.
24051         This does not affect the physical layout of struct obstack,
24052         except on hosts (like the AS/400) where the size or alignment of
24053         void * is greater than that of ptrdiff_t.
24054         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
24055         __STDC__)]: Store temporary in pointer member of union, not
24056         integer member.
24057         * lib/obstack.c: Include <stddef.h>, for offsetof.
24058         (struct fooalign): Remove; it doesn't need a name.
24059         (union fooround): Change double to long double, and add void *.
24060         (DEFAULT_ALIGNMENT): Use offsetof to compute.
24061         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
24062         not a macro.  Hence the values are always int; so remove all
24063         casts-to-int in uses.
24064
24065 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
24066
24067         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
24068         we can get this patch merged into glibc.
24069
24070 2004-05-17  Derek R. Price  <derek@ximbiot.com>
24071             Paul Eggert  <eggert@cs.ucla.edu>
24072
24073         * m4/argp: Depend on alloca.
24074
24075 2004-05-17  Derek R. Price  <derek@ximbiot.com>
24076             Paul Eggert  <eggert@cs.ucla.edu>
24077
24078         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
24079         freecoding.
24080
24081 2004-05-17  Bruno Haible  <bruno@clisp.org>
24082
24083         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
24084         precision that consists of a '.' followed by an empty digit string.
24085         Patch by Tor Lillqvist <tml@iki.fi>.
24086
24087 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
24088
24089         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
24090         for backward compatibility with older code.  We need our own
24091         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
24092         it under some other name, and our alloca.h will define it.
24093
24094 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
24095             Derek Price  <derek@ximbiot.com>
24096
24097         * lib/alloca.c: Include <alloca.h>, to get our interface.
24098         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
24099         include <alloca.h> first.  Use C89 prototype for alloca; this
24100         requires including <stddef.h> for size_t.  Use extern "C" if C++.
24101         Use #elif for simplicity, since we can assume C89 now.
24102         Don't try to source the system alloca.h since it will not be found
24103         and to prevent recursively including its replacement.
24104         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
24105         * lib/regex.c: Likewise.
24106
24107 2004-05-16  Derek Price  <derek@ximbiot.com>
24108             Paul Eggert  <eggert@cs.ucla.edu>
24109
24110         getline cleanup.  This changes the getndelim2 API: both order of
24111         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
24112         no delimiter).
24113
24114         * lib/getline.c: Don't include stddef.h or stdio.h, since our
24115         interface does that.
24116         (getline): Always use getdelim, so that we don't have two
24117         copies of this code.
24118         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
24119         if available.
24120         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
24121         (GETNDELIM2_MAXIMUM): New macro.
24122         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
24123         instead of the old practice of delim2==0.  All callers changed.
24124         Return -1 on overflow, instead of returning junk.
24125         Do not set *linesize unless allocation succeeds.
24126         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
24127         that we include sys/types.h.
24128         * lib/getnline.h: Likewise.
24129         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
24130         (getndelim2): Reorder arguments.
24131         * lib/getnline.c (getnline, getndelim):
24132         Don't discard the NMAX argument.
24133         (getnline): Invoke getndelim, to avoid code duplication.
24134         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
24135         of (size_t) -1 by callers of the getnline family.
24136
24137 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
24138
24139         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
24140         Check for gettimeofday.
24141         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
24142         Check for settimeofday, stime.
24143
24144 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
24145
24146         * lib/nanosleep.c (suspended): Change its type from int to
24147         sig_atomic_t volatile.
24148         (first_call): Make it private to rpl_nanosleep, and have it
24149         be zero initially as that's a bit faster.
24150         (my_usleep): Round up fractional times instead of truncating them,
24151         as this is the usual meaning for 'sleep'.
24152
24153         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
24154         doesn't work.
24155         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
24156         (ENOSYS): Define if not defined.
24157         (settime): Fall back on stime if it exists and settimeofday fails.
24158         But don't bother with fallbacks if a method fails with errno == EPERM.
24159
24160 2004-05-11  Jim Meyering  <jim@meyering.net>
24161
24162         Prior to this change, the save_cwd caller required read access to the
24163         current directory on most systems (ones with the fchdir function).
24164
24165         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
24166         fails, try write-only, and finally, resort to using xgetcwd.
24167
24168 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
24169
24170         * lib/obstack.c, obstack.h: Import changes from libc.
24171
24172 2004-04-28  Bruno Haible  <bruno@clisp.org>
24173
24174         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
24175         also implicitly appends .exe to executables.
24176         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
24177         accepts Windows pathnames.
24178         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
24179         Treat Cygwin like Windows, since it now accepts Windows pathnames.
24180         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
24181         Treat Cygwin like Windows, since it now accepts Windows pathnames.
24182         Reported by Derek Robert Price <derek@ximbiot.com>.
24183
24184 2004-04-21  Karl Berry  <karl@gnu.org>
24185
24186         * config/srclist.txt (localcharset.c): break sync.
24187
24188 2004-04-20  Paul Eggert  <eggert@twinsun.com>
24189
24190         * m4/host-os.m4: Add a copyright notice.
24191
24192 2004-04-20  Jim Meyering  <jim@meyering.net>
24193
24194         Change UTILS_ to gl_ in AC_DEFINE'd names.
24195         Change utils_- and jm_-prefixed variables, too.
24196         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
24197         UTILS_FUNC_MKDIR_TRAILING_SLASH.
24198         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
24199
24200         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
24201         Don't emit trailing blanks.
24202         Also rename jm_-prefixed variables to have gl_ prefix.
24203
24204         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
24205         Also rename jm_-prefixed variables to have gl_ prefix.
24206
24207         * m4/jm-macros.m4: Reflect the renamings.
24208         * m4/prereq.m4: Likewise.
24209
24210 2004-04-20  Jim Meyering  <jim@meyering.net>
24211
24212         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
24213         memory.
24214
24215 2004-04-20  Jim Meyering  <jim@meyering.net>
24216             Bruno Haible  <bruno@clisp.org>
24217
24218         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
24219         memory when realloc fails.
24220
24221 2004-04-19  Jim Meyering  <jim@meyering.net>
24222
24223         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
24224         now that readutmp.c may call `free (0)'.
24225
24226 2004-04-19  Bruno Haible  <bruno@clisp.org>
24227
24228         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
24229         * m4/inttypes_h.m4: Likewise.
24230         * m4/stdint_h.m4: Likewise.
24231         * m4/intmax_t.m4: Likewise.
24232         * m4/uintmax_t.m4: Likewise.
24233
24234 2004-04-18  Jim Meyering  <jim@meyering.net>
24235
24236         * m4/prereq.m4: Don't forbid jm_ prefix.
24237
24238         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
24239         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
24240         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
24241         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
24242         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
24243         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
24244         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
24245         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
24246         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
24247         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
24248         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
24249         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
24250         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
24251         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
24252         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
24253         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
24254         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
24255         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
24256         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
24257
24258 2004-04-18  Jim Meyering  <jim@meyering.net>
24259
24260         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
24261         failure, don't leak memory and do call END_UTMP_ENT.
24262
24263 2004-04-16  Jim Meyering  <jim@meyering.net>
24264
24265         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
24266         coreutils' stat program.
24267         (gl_PREREQ): Don't require jm_PREREQ_STAT.
24268
24269 2004-04-11  Paul Eggert  <eggert@twinsun.com>
24270
24271         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
24272         C89.
24273         (CHAR_BIT): Remove, since we assume C89.
24274         Include <stdint.h> if available, as per current Autoconf CVS advice.
24275
24276 2004-03-31  Jim Meyering  <jim@meyering.net>
24277
24278         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
24279         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
24280         * m4/xalloc.m4: Likewise.
24281
24282 2004-03-30  Paul Eggert  <eggert@twinsun.com>
24283
24284         Merge from coreutils.
24285
24286         * m4/inttostr.m4: New file.
24287         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
24288         Require AM_STDBOOL_H and gl_TIMESPEC instead.
24289         Require gl_CLOCK_TIME.
24290         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
24291
24292 2004-03-30  Paul Eggert  <eggert@twinsun.com>
24293
24294         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
24295         not bool, to be more consistent with Unix conventions.
24296         Suggested by Bruno Haible.
24297
24298         Merge from coreutils.
24299
24300         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
24301         * lib/umaxtostr.c: New files.
24302
24303         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
24304         the usual <time.h> dance.
24305         (get_date): Change signature to support fractional time stamps.
24306         All callers changed.
24307         * lib/getdate.y: Include "getdate.h" first, as we can now
24308         assume C89 and don't need to worry about 'const'.
24309         Similarly, include "unlocked-io.h" near start, not in middle.
24310         Include <limits.h>.
24311         (textint.value): Use long int rather than int.
24312         (textint.digits): Use size_t rather than int.
24313         (BILLION, LOG10_BILLION): New constants.
24314         (parser_control): New member rel_ns.  Members day_ordinal,
24315         time_zone, month, day, hour, minutes, rel_year, rel_month,
24316         rel_day, rel_hour, rel_minutes, rel_seconds
24317         are now long int, not int.  Member seconds is now struct timespec,
24318         not int.  New member timespec_seen.  Members dates_seen, days_seen,
24319         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
24320         not int.
24321         (%union.intval): Now long int, not int.
24322         New member timespec.
24323         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
24324         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
24325         (spec): Now is a timespec or an item list.
24326         (timespec, items): New nonterminals.
24327         (time, rel, relunit, number, get_date):
24328         Add support for fractional seconds.
24329         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
24330         (gmtime, localtime, mktime): Remove decls; not needed with C89.
24331         (to_hour): First arg is now long int, not int.
24332         (to_year): Returns long int, not int.
24333         Don't treat year -70 like 70.
24334         (tm_diff): Returns long int, not int.
24335         (lookup_word): Use bool instead of int when appropriate.
24336         (yylex): Use size_t for count, not int.
24337         Detect overflow when parsing large integer constants.
24338         Add support for fractions.
24339         (get_date): Make pointers 'const' if possible.
24340         Use more-portable code to detect integer overflow.
24341         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
24342         Don't use ctime; it's not reliable if the year has >4 digits.
24343
24344         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
24345         This is for compatibility with BSD.
24346
24347         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
24348         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
24349         From coreutils' system.h.
24350
24351         * lib/userspec.c: Don't include "posixver.h".
24352         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
24353         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
24354         compatible extension.  Simplify code by removing a boolean int
24355         that was always nonzero if a string was nonnull.
24356
24357 2004-03-30  Jim Meyering  <jim@meyering.net>
24358
24359         Merge from coreutils.
24360
24361         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
24362         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
24363         on some systems one must include <grp.h> before it.
24364         Reported by Christian Krackowizer.
24365
24366 2004-03-30  Jim Meyering  <jim@meyering.net>
24367
24368         Merge from coreutils.
24369
24370         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
24371
24372         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
24373         an empty input stream.
24374
24375         * lib/readtokens.c: Include <stdbool.h>.
24376         (readtoken): Use `size_t' rather than int/long.
24377         All callers adjusted.
24378         Use `bool' rather than `int' where appropriate.
24379         Use memset rather than an explicit loop.
24380         Use x2nrealloc rather than xrealloc.
24381         Allow the use of `\0' as a delimiter.
24382         (readtokens): Likewise.
24383         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
24384
24385 2004-03-30  Jim Meyering  <jim@meyering.net>
24386
24387         * m4/realloc.m4: Remove file, since now it does no more than
24388         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
24389         the `configure.ac' section of module/realloc.
24390         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
24391
24392 2004-03-30  Bruno Haible  <bruno@clisp.org>
24393
24394         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
24395         nonnull.
24396
24397 2004-03-29  Paul Eggert  <eggert@twinsun.com>
24398
24399         Merge changes to getloadavg.c from coreutils and Emacs.
24400
24401         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
24402         Define to an expression, not to the empty string.
24403         Include cloexec.h and xalloc.h.
24404         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
24405         Use set_cloexec_flag rather than rolling our own.
24406         * lib/cloexec.c, lib/cloexec.h: New files.
24407
24408 2004-03-29  Paul Eggert  <eggert@twinsun.com>
24409
24410         * m4/cloexec.m4: New file.
24411
24412 2004-03-18  Paul Eggert  <eggert@twinsun.com>
24413
24414         * lib/getopt.h: Sync with libc CVS.
24415
24416 2004-03-18  Paul Eggert  <eggert@twinsun.com>
24417             Bruno Haible  <bruno@clisp.org>
24418
24419         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
24420         mbswidth.
24421
24422 2004-03-18  Paul Eggert  <eggert@twinsun.com>
24423             Bruno Haible  <bruno@clisp.org>
24424
24425         * lib/mbswidth.h: Include <wchar.h> only if
24426         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
24427         <wchar.h>.
24428         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
24429
24430 2004-03-09  Paul Eggert  <eggert@twinsun.com>
24431
24432         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
24433         Sync with libc CVS.
24434         * lib/getopt_int.h: New file, also synced from libc.
24435
24436 2004-03-09  Paul Eggert  <eggert@twinsun.com>
24437
24438         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
24439         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
24440         Bring back getopt.c, getopt.h, getopt1.c.
24441
24442 2004-03-07  Paul Eggert  <eggert@twinsun.com>
24443
24444         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
24445         All uses changed.  Check for sa_sigaction member; this fixes
24446         a bug first reported by Jason Andrade in
24447         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
24448
24449 2004-03-07  Paul Eggert  <eggert@twinsun.com>
24450
24451         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
24452         '#if' expressions.  Unlike the code it replaces, it does not
24453         depend on (defined _SC_PAGESIZE).  However, it does depend on
24454         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
24455         first reported by Jason Andrade in
24456         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
24457
24458 2004-02-25  Simon Josefsson  <jas@extundo.com>
24459
24460         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
24461
24462 2004-02-25  Simon Josefsson  <jas@extundo.com>
24463
24464         * lib/strdup.h: New file.
24465         * lib/strdup.c: Include it.
24466         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
24467         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
24468
24469 2004-02-23  Karl Berry  <karl@gnu.org>
24470
24471         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
24472         (from fencepost.gnu.org:/gd/gnuorg).
24473
24474 2004-02-23  Karl Berry  <karl@gnu.org>
24475
24476         * config/srclistvars.sh (GNUORG) [karl]: redefine.
24477         * config/srclist.txt: add maintain/standards documents.
24478
24479 2004-02-18  Bruno Haible  <bruno@clisp.org>
24480
24481         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
24482         Reported by Derek Robert Price <derek@ximbiot.com>.
24483
24484 2004-02-16  Karl Berry  <karl@gnu.org>
24485
24486         * config/mkinstalldirs, install-sh: update from automake.
24487
24488 2004-02-06  Karl Berry  <karl@gnu.org>
24489
24490         * m4/po.m4: update from gettext 0.14.1.
24491
24492 2004-02-06  Karl Berry  <karl@gnu.org>
24493
24494         * lib/config.charset: update from gettext 0.14.1.
24495
24496 2004-02-05  Paul Eggert  <eggert@twinsun.com>
24497
24498         Add comments and code, prompted by suggestions from Bruno Haible
24499         for sh-quote.
24500         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
24501         describing the enum quoting_style values.
24502         * lib/quotearg.c (quotearg_alloc): New function.
24503         (quotearg_buffer_restyled): Treat lone { and } as special.
24504         Treat = as special.  Work around bug with older shells
24505         that "see" a '\' that is really the 2nd byte of a multibyte char.
24506         Quote empty string with shell_quoting_style.
24507
24508 2004-02-03  Bruno Haible  <bruno@clisp.org>
24509
24510         * m4/pipe.m4: New file, from GNU gettext.
24511
24512 2004-02-03  Bruno Haible  <bruno@clisp.org>
24513
24514         * lib/pipe.h: New file, from GNU gettext.
24515         * lib/pipe.c: New file, from GNU gettext.
24516
24517 2004-01-27  Bruno Haible  <bruno@clisp.org>
24518
24519         * m4/execute.m4: New file, from GNU gettext.
24520
24521 2004-01-27  Bruno Haible  <bruno@clisp.org>
24522
24523         * lib/execute.h: New file, from GNU gettext.
24524         * lib/execute.c: New file, from GNU gettext.
24525         * lib/w32spawn.h: New file, from GNU gettext.
24526
24527 2004-01-24  Paul Eggert  <eggert@twinsun.com>
24528
24529         Merge from diffutils.
24530
24531         * lib/file-type.c (file_type): Add typed memory objects.
24532         * lib/file-type.h (S_TYPEISTMO): New macro.
24533
24534         * lib/c-stack.h (c_stack_action): Remove argv argument.
24535         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
24536         (die): Don't calculate message unless segv_action returns.
24537         (get_stack_location, min_address_from_argv, max_address_from_argv,
24538         volatile stack_base, volatile_stack_size): Remove.
24539         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
24540         that every segmentation violation is a stack overflow.  (Ouch!)
24541         See Debian bug 136249 (still outstanding) for more info about why
24542         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
24543
24544 2004-01-24  Paul Eggert  <eggert@twinsun.com>
24545
24546         Exit-status fix from coreutils.
24547
24548         Use exit_failure consistently in place of EXIT_FAILURE,
24549         so that program exit statuses are consistent on failure.
24550
24551         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
24552         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
24553         * lib/argmatch.h: Comment fix to match the above.
24554         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
24555         Now a macro referring to exit_failure, instead of a separate
24556         variable.  Include "exitfail.h" to get it.
24557         * lib/xstrtol.h: Include "exitfail.h".
24558         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
24559
24560         * lib/long-options.c (parse_long_options): Use prototype
24561         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
24562         for clarity.
24563
24564 2004-01-21  Jim Meyering  <jim@meyering.net>
24565
24566         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
24567         so as not to conflict with a different-sized __mktime_internal
24568         function in GNU libc.
24569         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
24570         Problem building statically-linked `ls' reported by Michael Brunnbauer.
24571
24572 2004-01-20  Karl Berry  <karl@gnu.org>
24573
24574         * config/config.guess: update from config.
24575
24576         * config/srclistvars.sh: GNUWWWLICENSES for karl.
24577
24578 2004-01-20  Bruno Haible  <bruno@clisp.org>
24579
24580         Safer stack allocation.
24581         * lib/setenv.c: Include allocsa.h.
24582         (alloca): Remove fallback definition.
24583         (freea): Remove macro.
24584         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
24585         instead of freea.
24586
24587 2004-01-20  Bruno Haible  <bruno@clisp.org>
24588
24589         * m4/eealloc.m4: New file, from GNU gettext.
24590
24591 2004-01-20  Bruno Haible  <bruno@clisp.org>
24592
24593         * m4/allocsa.m4: New file, from GNU gettext.
24594
24595 2004-01-20  Bruno Haible  <bruno@clisp.org>
24596
24597         * lib/xallocsa.h: New file, from GNU gettext.
24598         * lib/xallocsa.c: New file, from GNU gettext.
24599
24600 2004-01-20  Bruno Haible  <bruno@clisp.org>
24601
24602         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
24603
24604 2004-01-20  Bruno Haible  <bruno@clisp.org>
24605
24606         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
24607         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
24608         specially.
24609
24610 2004-01-20  Bruno Haible  <bruno@clisp.org>
24611
24612         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
24613         patch.
24614
24615 2004-01-20  Bruno Haible  <bruno@clisp.org>
24616
24617         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
24618
24619 2004-01-20  Bruno Haible  <bruno@clisp.org>
24620
24621         * lib/eealloc.h: New file.
24622
24623 2004-01-20  Bruno Haible  <bruno@clisp.org>
24624
24625         * lib/binary-io.h: Avoid warnings on Cygwin.
24626
24627 2004-01-20  Bruno Haible  <bruno@clisp.org>
24628
24629         * lib/allocsa.h: New file, from GNU gettext.
24630         * lib/allocsa.c: New file, from GNU gettext.
24631
24632 2004-01-18  Karl Berry  <karl@gnu.org>
24633
24634         * doc/gpl.texi, doc/lgpl.texi: new files.
24635
24636 2004-01-18  Karl Berry  <karl@gnu.org>
24637
24638         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
24639         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
24640
24641 2004-01-15  Paul Eggert  <eggert@twinsun.com>
24642
24643         Merge from coreutils.
24644
24645         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
24646         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
24647         (gl_DEFAULT_POSIX2_VERSION): Move
24648         the documentation from 'configure' into 'config.hin',
24649         so that 'configure --help' isn't burdened by it and
24650         we don't have to worry about its formatting there.
24651         Reword the documentation so that it's more succinct
24652         and can be run together into a single paragraph.
24653         * m4/same.m4 (gl_SAME): Check for pathconf.
24654
24655 2004-01-15  Paul Eggert  <eggert@twinsun.com>
24656
24657         Merge from coreutils.
24658
24659         * lib/posixver.c: Include posixver.h.
24660
24661         * lib/same.c: Include <stdbool.h>, <limits.h>.
24662         (_POSIX_NAME_MAX): Define if not defined.
24663         (MIN): New macro.
24664         (same_name): If file names are silently truncated, report
24665         that the file names are the same if they are the same after
24666         the silent truncation.
24667
24668         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
24669         conversion function.
24670         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
24671         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
24672         longer needed.
24673
24674 2004-01-15  Jim Meyering  <jim@meyering.net>
24675
24676         Merge from coreutils.
24677
24678         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
24679         if no library is required.
24680         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
24681         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
24682         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
24683         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
24684         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
24685         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
24686         value, $ac_cv_search_crypt, if it's "none required".
24687         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
24688         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
24689         not gl_FUNC_GETLOADAVG.
24690         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
24691         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
24692
24693 2004-01-15  Jim Meyering  <jim@meyering.net>
24694
24695         Merge from coreutils.
24696
24697         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
24698         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
24699         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
24700
24701         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
24702         optional configure-time default.
24703
24704         * lib/version-etc.c (version_etc_copyright): Update copyright date.
24705
24706         * lib/xreadlink.c (xreadlink): Correct outdated comment.
24707
24708 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
24709
24710         Merge from coreutils.
24711
24712         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
24713         value, $ac_cv_search_nanosleep, if it's "none required".
24714
24715 2004-01-14  Paul Eggert  <eggert@twinsun.com>
24716
24717         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
24718         with like-named macro in fnmatch.c.
24719         (EXT): Use an internal constant instead.
24720
24721         Merge fnmatch patches from glibc.
24722         * lib/fnmatch.c (mbsinit): Remove define.
24723         Add libc_hidden_ver (__fnmatch, fnmatch).
24724         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
24725         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
24726
24727 2004-01-14  Karl Berry  <karl@gnu.org>
24728
24729         * config/install-sh: update from automake.
24730
24731 2004-01-13  Karl Berry  <karl@gnu.org>
24732
24733         * config/install-sh: update from automake.
24734
24735 2004-01-09  Karl Berry  <karl@gnu.org>
24736
24737         * config/install-sh: update from automake.
24738
24739 2004-01-05  Karl Berry  <karl@gnu.org>
24740
24741         * config/config.{sub,guess}: update from config.
24742
24743 2003-12-31  Karl Berry  <karl@gnu.org>
24744
24745         * config/depcomp: update from automake.
24746
24747 2003-12-14  Karl Berry  <karl@gnu.org>
24748
24749         * lib/config.charset: update from gettext-runtime.
24750
24751 2003-12-03  Paul Eggert  <eggert@twinsun.com>
24752
24753         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
24754         Bug reported by Alfred M. Szmidt.
24755
24756 2003-12-03  Bruno Haible  <bruno@clisp.org>
24757
24758         * m4/gettext.m4: Upgrade from gettext-0.13.
24759         * m4/po.m4: Upgrade from gettext-0.13.
24760         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
24761         * m4/intmax.m4: New file, from gettext-0.13.
24762         * m4/printf-posix.m4: New file, from gettext-0.13.
24763
24764 2003-11-29  Karl Berry  <karl@gnu.org>
24765
24766         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
24767
24768 2003-11-25  Paul Eggert  <eggert@twinsun.com>
24769             Bruno Haible  <bruno@clisp.org>
24770
24771         * lib/printf-parse.h: Don't include sys/types.h.
24772         (ARG_NONE): New macro.
24773         (char_directive): Change type of *arg_index fields to size_t.
24774         * lib/printf-parse.c: Don't include sys/types.h.
24775         (SSIZE_MAX): Remove macro.
24776         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
24777         Remove unnecessary overflow check.
24778         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
24779         fields.
24780
24781 2003-11-25  Bruno Haible  <bruno@clisp.org>
24782
24783         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
24784
24785 2003-11-25  Bruno Haible  <bruno@clisp.org>
24786
24787         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
24788         gt_TYPE_SSIZE_T.
24789
24790 2003-11-24  Paul Eggert  <eggert@twinsun.com>
24791
24792         * modules/alloca: Remove dependency on xalloc.
24793
24794 2003-11-24  Paul Eggert  <eggert@twinsun.com>
24795
24796         * lib/alloca.c: Remove dependency on xalloc module.
24797         (xalloc_die): Remove.
24798         (memory_full) [!defined emacs]: New macro.
24799         [!defined emacs]: Don't include xalloc.h.
24800         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
24801         address arithmetic overflows.  Change datatypes a bit to avoid
24802         unnecessary casts.
24803
24804 2003-11-22  Jim Meyering  <jim@meyering.net>
24805
24806         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
24807         s/size/size_t/.
24808
24809 2003-11-21  Karl Berry  <karl@gnu.org>
24810
24811         * config/config.{sub,guess}: update from config.
24812
24813 2003-11-18  Karl Berry  <karl@gnu.org>
24814
24815         * config/config.{sub,guess}: update from config.
24816
24817         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
24818
24819 2003-11-17  Paul Eggert  <eggert@twinsun.com>
24820
24821         * README: Mention that S+T cannot overflow if S is the size of
24822         an existing object and T is sufficiently small.
24823
24824 2003-11-17  Jim Meyering  <jim@meyering.net>
24825
24826         On systems without utime and without a utimes function capable of
24827         dealing with a NULL struct utimbuf* argument, this utime replacement
24828         could -- in unusual circumstances -- leak a file descriptor.
24829         * lib/utime.c: Include <unistd.h> and <errno.h>.
24830         (utime_null): Be sure to close `fd' and to preserve errno.
24831         Reported by Geoff Collyer via Arnold Robbins.
24832
24833 2003-11-17  Bruno Haible  <bruno@clisp.org>
24834
24835         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
24836         (Depends-on): Add xsize.
24837
24838 2003-11-17  Bruno Haible  <bruno@clisp.org>
24839
24840         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
24841
24842 2003-11-17  Bruno Haible  <bruno@clisp.org>
24843
24844         * lib/vasnprintf.c (alloca): Remove fallback definition.
24845         (freea): Remove definition.
24846         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
24847         Reported by Paul Eggert.
24848
24849 2003-11-16  Paul Eggert  <eggert@twinsun.com>
24850             Bruno Haible  <bruno@clisp.org>
24851
24852         Protect against address arithmetic overflow.
24853         * lib/printf-args.h: Include stddef.h.
24854         (arguments): Change type of field 'count' to size_t.
24855         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
24856         'unsigned int' where appropriate.
24857         * lib/printf-parse.h: Include sys/types.h.
24858         (char_directive): Change type of *arg_index fields to ssize_t.
24859         (char_directives): Change type of fields 'count', max_*_length to
24860         size_t.
24861         * lib/printf-parse.c: Include sys/types.h and xsize.h.
24862         (SSIZE_MAX): Define fallback value.
24863         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
24864         instead of 'int' where appropriate. Check a_allocated, d_allocated
24865         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
24866         * lib/vasnprintf.c: Include xsize.h.
24867         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
24868         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
24869         overflow. Avoid wraparound when converting a width or precision from
24870         decimal to binary.
24871
24872 2003-11-16  Bruno Haible  <bruno@clisp.org>
24873
24874         Update from GNU gettext.
24875         * lib/printf-parse.c: Generalize to it can be compiled for wide
24876         strings.
24877         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
24878         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
24879         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
24880         SNPRINTF): New macros.
24881         Don't include <alloca.h> if the file is used inside libintl.
24882         (local_wcslen): New function, for Solaris 2.5.1.
24883         (VASNPRINTF): Use it instead of wcslen.
24884
24885 2003-11-16  Bruno Haible  <bruno@clisp.org>
24886
24887         * lib/xsize.h (xmax): New function.
24888         (xsum, xsum3, xsum4): Declare as "pure" functions.
24889
24890 2003-11-12  Paul Eggert  <eggert@twinsun.com>
24891
24892         * modules/xalloc (Files): Undo latest change, since xalloc.h
24893         no longer needs SIZE_MAX or PTRDIFF_MAX.
24894
24895 2003-11-12  Paul Eggert  <eggert@twinsun.com>
24896
24897         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
24898         gl_PTRDIFF_MAX.
24899
24900 2003-11-12  Paul Eggert  <eggert@twinsun.com>
24901
24902         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
24903         "return", to pacify some unknown compiler.  Problem reported
24904         by Joerg Schilling.
24905
24906 2003-11-12  Paul Eggert  <eggert@twinsun.com>
24907
24908         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
24909         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
24910         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
24911         heuristic is just as accurate as far as we know, and it removes a
24912         dependency on size_max.m4 and ptrdiff_max.m4.
24913
24914 2003-11-11  Bruno Haible  <bruno@clisp.org>
24915
24916         * modules/xsize (Files): Add m4/size_max.m4.
24917         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
24918
24919 2003-11-11  Bruno Haible  <bruno@clisp.org>
24920
24921         * m4/size_max.m4: New file.
24922         * m4/ptrdiff_max.m4: New file.
24923         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
24924         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
24925         (gl_XALLOC): Invoke it.
24926
24927 2003-11-11  Bruno Haible  <bruno@clisp.org>
24928
24929         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
24930         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
24931         defined.
24932
24933 2003-11-10  Paul Eggert  <eggert@twinsun.com>
24934
24935         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
24936         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
24937         rejected some allocations of exactly SIZE_MAX - 2 bytes.
24938         From Bruno Haible.
24939         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
24940         not (size_t) -1, since it's defined here.
24941
24942 2003-11-09  Karl Berry  <karl@gnu.org>
24943
24944         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
24945
24946 2003-11-06  Paul Eggert  <eggert@twinsun.com>
24947
24948         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
24949         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
24950         Reject sizes of exactly SIZE_MAX bytes.
24951         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
24952         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
24953
24954 2003-11-05  Bruno Haible  <bruno@clisp.org>
24955
24956         * lib/xsize.h: Include limits.h, to avoid a possible collision with
24957         SIZE_MAX defined in <limits.h> on Solaris.
24958
24959 2003-11-04  Jim Meyering  <jim@meyering.net>
24960
24961         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
24962         variable names, rather than @VAR@.
24963         * modules/poll: Likewise.
24964
24965 2003-11-04  Bruno Haible  <bruno@clisp.org>
24966
24967         * modules/xsize: New file.
24968         * modules/linebreak: Depend on xsize.
24969         * MODULES.html.sh (func_all_modules): Add xsize.
24970
24971 2003-11-04  Bruno Haible  <bruno@clisp.org>
24972
24973         * m4/xsize.m4: New file.
24974
24975 2003-11-04  Bruno Haible  <bruno@clisp.org>
24976
24977         * lib/xsize.h: New file.
24978         * lib/linebreak.c: Include xsize.h.
24979         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
24980         argument for overflow.
24981         Suggested by Paul Eggert.
24982
24983 2003-11-03  Karl Berry  <karl@gnu.org>
24984
24985         * config/config.{guess,sub}: update from config.
24986
24987 2003-11-03  Jim Meyering  <jim@meyering.net>
24988
24989         * modules/userspec (lib_SOURCES): Add userspec.h.
24990         (Include): Add "userspec.h".
24991         Improve description.
24992
24993 2003-11-03  Jim Meyering  <jim@meyering.net>
24994
24995         * lib/userspec.c: Include "userspec.h".
24996         * lib/userspec.h: New file.
24997
24998 2003-11-03  Bruno Haible  <bruno@clisp.org>
24999
25000         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
25001
25002 2003-11-03  Bruno Haible  <bruno@clisp.org>
25003
25004         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
25005         available, to avoid (extremely rare) race condition.
25006         Suggested by Paul Eggert.
25007
25008 2003-11-02  Karl Berry  <karl@gnu.org>
25009
25010         * config/srclist.txt (vasprintf.c): sync broken, sigh.
25011
25012 2003-10-31  Paul Eggert  <eggert@twinsun.com>
25013
25014         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
25015         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
25016         (read_filesystem_list): Set and use me_type_malloced.
25017         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
25018         whatever the type happens to be), for brevity and consistency.
25019         Check for size calculation overflow on Alphas running OSF/1.
25020
25021 2003-10-31  Jim Meyering  <jim@meyering.net>
25022
25023         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
25024
25025         * lib/linebuffer.c: Include <string.h> for declaration of memset.
25026
25027 2003-10-30  Paul Eggert  <eggert@twinsun.com>
25028             Bruno Haible  <bruno@clisp.org>
25029
25030         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
25031         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
25032
25033 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
25034
25035         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
25036         netbsd*-gnu*.  Suggested by Robert Millan.
25037
25038 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25039
25040         * modules/group-member: Depend on stdbool.
25041
25042 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25043
25044         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
25045
25046 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25047
25048         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
25049         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
25050         after the 'gnu' in these cases.  This fixes some bugs in the
25051         previous change, and is based on suggestions by Robert Millan.
25052
25053 2003-10-29  Paul Eggert  <eggert@twinsun.com>
25054
25055         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
25056         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
25057         no longer needed.
25058         * lib/quotearg.c (quotearg_n_options): Use it.
25059         * lib/group-member.c: Include <stdbool.h>.
25060         (free_group_info): Arg is now const *; don't free arg.
25061         (get_group_info): Now returns bool and accepts struct group_info *,
25062         rather than returning a malloc'ed struct group_info *.
25063         All uses changed.  Check for overflow in internal size calculation.
25064
25065         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
25066         rather than xmalloc/xrealloc.
25067         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
25068         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
25069         conformance bug: the old code used a pointer after freeing the
25070         storage that it addressed.
25071         * lib/hash.c (hash_initialize): Simplify the code by using
25072         xalloc_oversized rather than doing it by hand.
25073         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
25074         the buffer preserved.  Use free and xmalloc instead.
25075         * lib/quotearg.c (quotearg_n_options): Likewise.
25076         Use a simpler test for size overflow.  Don't use xalloc_oversized
25077         because unsigned int might be wider than size_t (!); this suggests
25078         that we should switch from unsigned int to size_t for slot numbers.
25079
25080 2003-10-28  Paul Eggert  <eggert@twinsun.com>
25081
25082         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
25083         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
25084         NetBSD kernels.  Requested by Richard Stallman.
25085
25086 2003-10-27  Paul Eggert  <eggert@twinsun.com>
25087
25088         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
25089         to allocate the returned structure.  Do not allocate a subarray,
25090         as x2nrealloc will do that.
25091         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
25092         instead of xnrealloc.
25093         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
25094
25095 2003-10-27  Bruno Haible  <bruno@clisp.org>
25096
25097         * lib/stdbool_.h: Better support for BeOS.
25098
25099 2003-10-26  Paul Eggert  <eggert@twinsun.com>
25100
25101         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
25102         now uses inline.
25103
25104 2003-10-26  Paul Eggert  <eggert@twinsun.com>
25105
25106         * lib/xalloc.h (xalloc_oversized): New static inline function, for
25107         callers that want to do their own size-overflow checking.  Include
25108         <stdbool.h>, since xalloc_oversized returns bool.
25109         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
25110         to use xalloc_oversized.
25111
25112         Add two functions x2realloc, x2nrealloc, for programs that grow
25113         arrays dynamically by doubling their sizes.
25114         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
25115         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
25116         New functions.
25117
25118         Port to C99 semantics for 'inline' of external functions.
25119         Bug reported by Bruno Haible.
25120         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
25121         with the old contents of xnmalloc.
25122         (xnmalloc, xmalloc): Use it.
25123         (xnrealloc_inline): New static inline function,
25124         with the old contents of xnrealloc.
25125         (xnrealloc, xrealloc): Use it.
25126
25127         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
25128         that.
25129
25130 2003-10-26  Karl Berry  <karl@gnu.org>
25131
25132         * config/srclist.txt (COPYING.DOC): no longer available from
25133         /gd/gnuorg; don't know where the ultimate source is.
25134
25135 2003-10-25  Paul Eggert  <eggert@twinsun.com>
25136
25137         Fix several address-calculation bugs in the hash modules,
25138         plus some minor code cleanup.
25139
25140         * lib/hash.h: Include <stdbool.h>, for bool.
25141         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
25142         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
25143         hash_get_n_entries, hash_get_max_bucket_length,
25144         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
25145         hash_rehash): Use size_t rather than unsigned.
25146         * lib/hash.c (struct hash_table, hash_get_n_buckets,
25147         hash_get_n_buckets_used, hash_get_n_entries,
25148         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
25149         hash_get_entries, hash_do_for_each, hash_string, is_prime,
25150         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
25151         Likewise.
25152         (SIZE_MAX): Define if not defined.
25153         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
25154         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
25155         hash_print):
25156         Use const * when possible.
25157         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
25158         (check_tuning): Fix bug: if tuning parameters were very close to
25159         0 or 1, rounding errors could have caused subscript violations.
25160         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
25161         (hash_initialize): Add 'fail:' label
25162         to free table and return NULL, and use it to simplify code.
25163         Use calloc rather than clearing the storage ourself.
25164         (hash_initialize, hash_rehash): Check for arithmetic overflow in
25165         buffer size calculations.
25166         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
25167         Include <stddef.h>, for size_t.
25168         * lib/hash-pjw.c (hash_pjw): Likewise.
25169         Switch to method described by Bruno Haible.
25170         Include <limits.h>, for CHAR_BIT.
25171         (SIZE_BITS): New macro.
25172
25173 2003-10-23  Paul Eggert  <eggert@twinsun.com>
25174
25175         * m4/getline.m4 (AM_FUNC_GETLINE):
25176         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
25177         hosts.  Problem reported by Derek Robert Price in
25178         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
25179         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
25180         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
25181
25182 2003-10-21  Paul Eggert  <eggert@twinsun.com>
25183
25184         * lib/getndelim2.c (getndelim2): When size calculation overflows,
25185         ceiling the allocation at NMAX bytes rather than silently
25186         discarding input bytes before NMAX is reached.  This makes
25187         a difference only if NMAX exceeds SIZE_MAX / 2.
25188
25189         * lib/obstack.c: Merge from glibc.
25190         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
25191         Add libc_hidden_def (_obstack_newchunk).
25192         (_obstack_free) [! defined _LIBC]: Remove.
25193         [defined _LIBC]: Make a strong alias from obstack_free, rather than
25194         a clone of the function body.
25195         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
25196         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
25197
25198         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
25199         glibc.
25200         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
25201         arg to memcpy.
25202
25203         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
25204         (obstack_ptr_grow_fast, obstack_int_grow_fast):
25205         Don't use lvalue casts, as GCC plans to remove support for them
25206         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
25207         was also present in the non-GCC version, indicating that this
25208         code had always been buggy and had never been widely used.
25209         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
25210         Use the fast variant of each macro, rather than copying the
25211         definiens of the fast variant; that way, we'll be more likely to
25212         catch future bugs in the fast variants.
25213
25214 2003-10-20  Bruno Haible  <bruno@clisp.org>
25215
25216         * modules/wait-process: New file.
25217         * MODULES.html.sh (func_all_modules): Add wait-process.
25218
25219 2003-10-20  Bruno Haible  <bruno@clisp.org>
25220
25221         * m4/wait-process.m4: New file.
25222
25223 2003-10-20  Bruno Haible  <bruno@clisp.org>
25224
25225         * lib/wait-process.h: New file, from GNU gettext.
25226         * lib/wait-process.c: New file, from GNU gettext.
25227
25228 2003-10-19  Jim Meyering  <jim@meyering.net>
25229
25230         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
25231         HPUX 10.20.
25232
25233 2003-10-18  Karl Berry  <karl@gnu.org>
25234
25235         * config/config.guess: update from config.
25236
25237 2003-10-16  Paul Eggert  <eggert@twinsun.com>
25238
25239         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
25240         (getgroups): First arg is int, not size_t.
25241         Don't let 'free' mangle errno.
25242
25243 2003-10-16  Paul Eggert  <eggert@twinsun.com>
25244
25245         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
25246
25247 2003-10-16  Karl Berry  <karl@gnu.org>
25248
25249         * config/config.{guess,sub}: update from config.
25250
25251 2003-10-16  Jim Meyering  <jim@meyering.net>
25252
25253         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
25254         memcpy.
25255
25256 2003-10-15  Paul Eggert  <eggert@twinsun.com>
25257
25258         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
25259         (SIZE_MAX): Remove.
25260         (new_exclude, add_exclude_file): Initial size no longer needs to
25261         be a power of 2.
25262         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
25263         our own address arithmetic overflow checking.
25264
25265         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
25266         (fnmatch): Do not alloca more than 2000 wide characters;
25267         instead, use malloc for large buffers.
25268         Check for address arithmetic overflow, and return -1
25269         with errno set to ENOMEM in that case.
25270         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
25271         (NEW_PATTERN): Do not alloca more than 8000 bytes;
25272         instead, return -1.  Check for address arithmetic overflow.
25273
25274 2003-10-14  Paul Eggert  <eggert@twinsun.com>
25275
25276         Handle invalid suffixes and overflow independently, so that
25277         callers can treat them independently as needed.  Fix some bugs in
25278         suffix handling, e.g., "100k@" was not diagnosed as an invalid
25279         suffix for a human-readable blocksize.  The major caller-visible
25280         change is the addition of a new
25281         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
25282         that both overflow and suffix chars were found.
25283
25284         * lib/human.c (humblock): Don't check separately for invalid suffix
25285         char; that is xstrtoumax's job (now that its bug is fixed).
25286         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
25287         INTMAX_MAX]: New macros.
25288         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
25289         TYPE_MAXIMUM): New macros.
25290         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
25291         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
25292         if overflow occurs, as it's what __strtol does and it's more useful
25293         in practice.
25294         (__xstrtol): If __strtol reports some error other than ERANGE,
25295         reflect it to the caller as LONGINT_INVALID.  If it reports
25296         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
25297         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
25298         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
25299         value.
25300         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
25301         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
25302         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
25303         [defined UINTMAX_MAX]: New macros.
25304
25305 2003-10-14  Bruno Haible  <bruno@clisp.org>
25306
25307         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
25308
25309 2003-10-14  Bruno Haible  <bruno@clisp.org>
25310
25311         * m4/sig_atomic_t: New file, from GNU gettext.
25312         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
25313
25314 2003-10-14  Bruno Haible  <bruno@clisp.org>
25315
25316         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
25317         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
25318         Also use volatile where needed.
25319
25320 2003-10-12  Paul Eggert  <eggert@twinsun.com>
25321
25322         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
25323         Change maintainer from Bruno Haible to 'all'.
25324
25325 2003-10-12  Paul Eggert  <eggert@twinsun.com>
25326
25327         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
25328
25329 2003-10-12  Paul Eggert  <eggert@twinsun.com>
25330
25331         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
25332         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
25333         and define in terms of the other primitives.
25334         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
25335         (SIZE_MAX): Define if not already defined.
25336         (array_size_overflow): New function.
25337         (xalloc_die): Abort instead of exiting if 'error' returns.
25338         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
25339         (xmalloc, xrealloc): Use them.
25340         (xcalloc): Check for address arithmetic overflow.
25341         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
25342         a bit faster than strcpy.
25343
25344 2003-10-10  Simon Josefsson  <jas@extundo.com>
25345
25346         * modules/argp (Depends-on): Add restrict and strcase.
25347
25348 2003-10-10  Simon Josefsson  <jas@extundo.com>
25349
25350         * m4/argp.m4: Add AC_C_INLINE.
25351
25352 2003-10-08  Paul Eggert  <eggert@twinsun.com>
25353
25354         Merge getpass from libc, plus a few fixes.
25355
25356         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
25357         Include <stdbool.h>.
25358         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
25359         __fsetlocking to empty.
25360         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
25361         do include <bits/libc-lock.h>.
25362         Do not include <fcntl.h>; not needed.
25363         [_LIBC]: Include <wchar.h>.
25364         (NOTCANCEL_MODE): New macro.
25365         (flockfile, funlockfile) [_LIBC]: New macros.
25366         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
25367         [!_LIBC]: New macros.
25368         (call_fclose): New function.
25369         (getpass): Use it.  Save tty stream separately; this simplifies the
25370         code and makes it more reliable if stdin happens to equal stdout.
25371         Invoke __fsetlocking on tty.
25372         Handle thread cancellation if needed.
25373         Namespace cleanup (use __tcgetattr, __getline).
25374         Use bool for Booleans.
25375         [USE_IN_LIBIO]: Handle wide streams.
25376         [!_LIBC]: Unconditionally do the fseek, since we don't know what
25377         stream might go where.
25378
25379         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
25380         doesn't have to include <stdio.h> before us.
25381         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
25382         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
25383         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
25384         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
25385         if not declared, so that we can use getpass.c code from libc without
25386         rewriting it.
25387         (flockfile, ftrylockfile, funlockfile): New macros.
25388
25389 2003-10-08  Paul Eggert  <eggert@twinsun.com>
25390
25391         * modules/getpass: Depend on stdbool.
25392
25393 2003-10-08  Paul Eggert  <eggert@twinsun.com>
25394
25395         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
25396
25397 2003-10-07  Karl Berry  <karl@gnu.org>
25398
25399         * config/config.{guess,sub}: update from config.
25400
25401 2003-10-06  Jim Meyering  <jim@meyering.net>
25402             Bruno Haible  <bruno@clisp.org>
25403
25404         This lets translators provide better translations for the
25405         "Written by ..." part of --version output.
25406         * lib/version-etc.h: Include stdarg.h.
25407         (version_etc_copyright): Declare as readonly.
25408         (version_etc): Make this function variadic with a NULL-terminated list
25409         of author name strings.
25410         (version_etc_va): New declaration.
25411         * lib/version-etc.c: Include stdarg.h, stdlib.h.
25412         (version_etc_copyright): Declare as readonly.
25413         (version_etc_va): New function. Provide a different translatable string
25414         for each possible number of authors < 10. Abbreviate when there are 10
25415         authors or more.
25416         (version_etc): Make this function variadic. Call version_etc_va.
25417         Suggestion from Gary V. Vaughan.
25418
25419         * lib/long-options.h (parse_long_options): Change prototype: the
25420         authors string is moved to the end and becomes variadic.
25421         * lib/long-options.c: Include stdarg.h.
25422         (parse_long_options): Make this function variadic, too.
25423         Call version_etc_va, not version_etc.
25424
25425 2003-10-06  Bruno Haible  <bruno@clisp.org>
25426
25427         * modules/version-etc-2: Remove file.
25428         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
25429
25430 2003-10-06  Bruno Haible  <bruno@clisp.org>
25431
25432         * modules/fatal-signal: New file.
25433         * MODULES.html.sh (func_all_modules): Add fatal-signal.
25434
25435 2003-10-06  Bruno Haible  <bruno@clisp.org>
25436
25437         * m4/fatal-signal.m4: New file.
25438         * m4/signalblocking.m4: New file, from GNU gettext.
25439
25440 2003-10-06  Bruno Haible  <bruno@clisp.org>
25441
25442         * lib/version-etc-2.h: Remove file.
25443         * lib/version-etc-2.c: Remove file.
25444
25445 2003-10-06  Bruno Haible  <bruno@clisp.org>
25446
25447         * lib/fatal-signal.h: New file, from GNU gettext.
25448         * lib/fatal-signal.c: New file, from GNU gettext.
25449
25450 2003-10-05  Paul Eggert  <eggert@twinsun.com>
25451
25452         * README: Rework advice for preventing empty .o files.
25453         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
25454         not <sys/types.h>.
25455
25456 2003-10-04  Karl Berry  <karl@gnu.org>
25457
25458         * lib/argp*: update from libc.
25459
25460 2003-10-04  Karl Berry  <karl@gnu.org>
25461
25462         * config/config.{guess,sub}: update from config.
25463
25464 2003-10-02  Bruno Haible  <bruno@clisp.org>
25465
25466         * modules/lchown (Include): Add lchown.h.
25467         * modules/time_r (Include): Use "..." syntax.
25468         * modules/xgetdomainname (Include): Add xgetdomainname.h.
25469
25470 2003-10-01  Simon Josefsson  <jas@extundo.com>
25471
25472         * MODULES.html.sh (func_all_modules): Move gethostname from section
25473         'based on' to section 'lacking' POSIX:2001.
25474
25475 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
25476
25477         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
25478         to output mode on the same stream.
25479
25480 2003-09-29  Paul Eggert  <eggert@twinsun.com>
25481
25482         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
25483         Fix arg typo in previous patch.
25484
25485 2003-09-28  Jim Meyering  <jim@meyering.net>
25486
25487         * lib/error.c: Correct cpp indentation.
25488
25489 2003-09-27  Paul Eggert  <eggert@twinsun.com>
25490
25491         * modules/free: New file.
25492
25493 2003-09-27  Paul Eggert  <eggert@twinsun.com>
25494
25495         * m4/free.m4: New file.
25496
25497 2003-09-27  Paul Eggert  <eggert@twinsun.com>
25498
25499         * lib/minmax.h (MIN, MAX)
25500         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
25501         Omit the special code that used __typeof__, since we worry that
25502         it could be more trouble than it's worth.  See:
25503         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
25504         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
25505
25506         * lib/free.c: New file.
25507
25508 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
25509
25510         Trivial fixes to Makefile.am parts of module listings.
25511         * modules/strstr: Append strstr.h to lib_SOURCES.
25512         * modules/strcase: Likewise, for strcase.h.
25513
25514 2003-09-27  Karl Berry  <karl@gnu.org>
25515
25516         * config/mkinstalldirs: update from automake.
25517
25518 2003-09-26  Paul Eggert  <eggert@twinsun.com>
25519
25520         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
25521         (error_tail): Do not loop, reallocating temporary buffer, since
25522         the output cannot contain more wide characters than the input
25523         contains bytes, the size must be big enough already.  This avoids
25524         one potential size overflow calculation.  Check for size overflow
25525         when calculating temporary buffer size.  Free temporary buffer
25526         when done, if it was allocated with malloc; this plugs a memory
25527         leak.  Remove casts from void * to pointers, that are no longer
25528         needed now that we're assuming C89 or better.
25529
25530         Merge error changes from glibc.
25531
25532         * lib/error.c, error.h: Update copyright notice header to match glibc.
25533         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
25534         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
25535         Disable cancellation while printing error.
25536         * lib/error.h: Prepend __ to parameter names.
25537
25538 2003-09-26  Jim Meyering  <jim@meyering.net>
25539
25540         * lib/error.c (error_tail): Move some declarations
25541         into inner scope where the local variables are used.
25542
25543 2003-09-26  Bruno Haible  <bruno@clisp.org>
25544
25545         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
25546         stpncpy().
25547         Don't define stpncpy through config.h; it's now done through stpncpy.h.
25548
25549 2003-09-26  Bruno Haible  <bruno@clisp.org>
25550
25551         * lib/stpncpy.h (gnu_stpncpy): New declaration.
25552         (stpncpy): Define as alias for gnu_stpncpy.
25553         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
25554
25555 2003-09-25  Simon Josefsson  <jas@extundo.com>
25556
25557         * lib/xgetdomainname.h: New file.
25558         * lib/xgetdomainname.c: New file.
25559
25560 2003-09-25  Simon Josefsson  <jas@extundo.com>
25561             Bruno Haible  <bruno@clisp.org>
25562
25563         * modules/getdomainname: New file.
25564         * modules/xgetdomainname: New file.
25565         * MODULES.html.sh (func_all_modules): Add getdomainname,
25566         xgetdomainname.
25567
25568 2003-09-25  Simon Josefsson  <jas@extundo.com>
25569             Bruno Haible  <bruno@clisp.org>
25570
25571         * m4/getdomainname.m4: New file.
25572
25573 2003-09-25  Simon Josefsson  <jas@extundo.com>
25574             Bruno Haible  <bruno@clisp.org>
25575
25576         * lib/getdomainname.h: New file.
25577         * lib/getdomainname.c: New file.
25578
25579 2003-09-25  Karl Berry  <karl@gnu.org>
25580
25581         * lib/argp-fmtstream.c, argp-help.c: update from libc.
25582
25583 2003-09-25  Karl Berry  <karl@gnu.org>
25584
25585         * config/install-sh: update from automake.
25586
25587 2003-09-25  Bruno Haible  <bruno@clisp.org>
25588
25589         * modules/version-etc-2: New file, from modules/version-etc with
25590         modifications.
25591         * MODULES.html.sh (func_all_modules): Add version-etc-2.
25592
25593 2003-09-25  Bruno Haible  <bruno@clisp.org>
25594
25595         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
25596         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
25597
25598 2003-09-24  Simon Josefsson  <jas@extundo.com>
25599
25600         * modules/xgethostname: Add xgethostname.h.
25601
25602 2003-09-24  Paul Eggert  <eggert@twinsun.com>
25603
25604         * lib/linebuffer.c (freebuffer): Don't free the argument, just
25605         the buffer associated with the argument.  Bug reported by
25606         Simon Josefsson.
25607
25608 2003-09-24  Paul Eggert  <eggert@twinsun.com>
25609
25610         * README: Document assumptions that 'int' is at least 32 bits
25611         wide, that integer arithmetic is 2's complement without overflow,
25612         that there are no holes in integer values, that adding sizes of
25613         two nonoverlapping objects can't overflow, and that all-bits-zero
25614         yields scalar zero.  Fix spelling and capitalization typos.
25615
25616 2003-09-19  Karl Berry  <karl@gnu.org>
25617
25618         * lib/argp.h: update from libc.
25619
25620 2003-09-17  Paul Eggert  <eggert@twinsun.com>
25621
25622         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
25623         to avoid spurious warnings like "AC_RUN_IFELSE was called before
25624         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
25625
25626 2003-09-17  Paul Eggert  <eggert@twinsun.com>
25627
25628         * gnulib-tool: Use "test -h", not "test -L", for portability
25629         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
25630         (tags_regexp): Remove, since \| doesn't conform to POSIX.
25631         (sed_extract_prog): Issue s commands one-by-one, rather than
25632         using \| in one s command.
25633
25634 2003-09-16  Paul Eggert  <eggert@twinsun.com>
25635
25636         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
25637         input error, instead of returning NULL the next time we are called
25638         (and therefore losing track of errno).
25639
25640 2003-09-16  Bruno Haible  <bruno@clisp.org>
25641
25642         * gnulib-tool (func_create_testdir): Warn about duplicated
25643         dependencies.
25644
25645 2003-09-15  Paul Eggert  <eggert@twinsun.com>
25646
25647         * modules/argmatch, modules/fatal, modules/obstack,
25648         modules/xalloc, modules/xgethostname: Sort dependencies by
25649         importance, not alphabetically.
25650
25651 2003-09-15  Paul Eggert  <eggert@twinsun.com>
25652
25653         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
25654         fails, so that the caller gets the proper errno.
25655
25656         * lib/readutmp.c (read_utmp): Likewise.
25657         Check for fstat error.  Close stream and free storage
25658         when failing.
25659
25660 2003-09-14  Karl Berry  <karl@gnu.org>
25661
25662         * config/srclist.txt (strdup.c): disable for c89 changes.
25663
25664 2003-09-14  Jim Meyering  <jim@meyering.net>
25665
25666         * lib/getloadavg.c: Correct cpp indentation.
25667         * lib/strdup.c: Likewise.
25668         * lib/vasnprintf.c: Likewise.
25669
25670 2003-09-14  Bruno Haible  <bruno@clisp.org>
25671
25672         * modules/fwriteerror: New file.
25673         * MODULES.html.sh (func_all_modules): Add fwriteerror.
25674
25675 2003-09-14  Bruno Haible  <bruno@clisp.org>
25676
25677         * lib/fwriteerror.h: New file.
25678         * lib/fwriteerror.c: New file.
25679
25680 2003-09-12  Paul Eggert  <eggert@twinsun.com>
25681
25682         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
25683         modules/xgethostname, modules/xalloc: Depend on exit.
25684
25685 2003-09-12  Paul Eggert  <eggert@twinsun.com>
25686
25687         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
25688
25689         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
25690         and AC_MINIX, too, so that their extensions are available.
25691
25692         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
25693         This macro has been superseded by gl_BACKUPFILE.
25694
25695         More patches to assume C89 or better.
25696
25697         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
25698
25699         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
25700         unconditionally.
25701         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
25702         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
25703         Include <string.h>, <stdlib.h> unconditionally.
25704         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
25705         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
25706         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
25707         headers or for string.h.
25708         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
25709         or strtoul.
25710
25711         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
25712         headers.
25713         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
25714         * m4/userspec.m4 (gl_USERSPEC): Likewise.
25715         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
25716         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
25717         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
25718         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
25719         memcpy, memset.
25720         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
25721         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
25722         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
25723         strtol.
25724         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
25725         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
25726         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
25727         strtoul.
25728
25729 2003-09-12  Paul Eggert  <eggert@twinsun.com>
25730
25731         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
25732         * lib/obstack.c [!defined _LIBC]: Likewise.
25733         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
25734         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
25735         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
25736
25737         More changes to assume C89 or better.
25738
25739         * lib/error.c (error_tail): Assume vprintf.
25740
25741         * lib/argmatch.c (getenv): Remove decl.
25742         * lib/progreloc.c (get_full_program_name): Define via prototype.
25743         * lib/setenv.c (clearenv): Likewise.
25744         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
25745         needed.
25746         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
25747         (malloc, memcpy): Remove decls.
25748         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
25749         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
25750         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
25751         (memcpy): Remove macro.
25752         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
25753         (__P): Remove.  All uses removed.
25754         (PTR): Remove.  All uses changed to void *.
25755         (CHAR_BIT, NULL): Remove.
25756         (spaces, zeros, memset_space, memset_zero)
25757         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
25758         Remove.
25759         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
25760         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
25761         Define with prototype.
25762         Remove now-unnecessary prototype decl.
25763         (extra_args_spec): Assume ANSI C.  All uses changed.
25764         (extra_args_spec_iso): Remove.
25765         (my_strftime, emacs_strftimeu): Define via prototype.
25766         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
25767         unconditionally.
25768         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
25769         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
25770         (strtoul, strtol): Remove decls.
25771         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
25772         LONG_MAX): Remove.
25773         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
25774         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
25775         (LOCALE_PARAM_PROTO): New macro.
25776         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
25777         (INTERNAL (strtol), strtol): Define with a prototype.
25778         (PARAMS): Remove.  All uses removed.
25779         * lib/tempname.c: Include <string.h> unconditionally.
25780         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
25781         * lib/xgethostname.c (main): Define with a prototype.
25782         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
25783         Include <stdlib.h> unconditionally.
25784         (calloc, malloc, realloc, free): Remove decls.
25785         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
25786         Include <stdlib.h> unconditionally.  Sort include file names.
25787         (strtod): Remove.
25788         (xstrtod): Define with a prototype.
25789         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
25790         (strtol, strtoul): Remove decls.
25791
25792 2003-09-11  Paul Eggert  <eggert@twinsun.com>
25793
25794         More patches to assume C89 or better.
25795         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
25796         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
25797         string.h, memchr, STDC_HEADERS.
25798
25799 2003-09-11  Paul Eggert  <eggert@twinsun.com>
25800
25801         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
25802         Include <stdlib.h>, <string.h> unconditionally.
25803         Remove now-unnecessary cast to char *.
25804         * lib/strnlen.c: Include <string.h> unconditionally.
25805         * lib/yesno.c (yesno): Define with a prototype.
25806
25807 2003-09-11  Bruno Haible  <bruno@clisp.org>
25808
25809         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
25810
25811 2003-09-10  Jim Meyering  <jim@meyering.net>
25812
25813         * lib/error.c: Correct indentation of cpp directives.
25814
25815 2003-09-10  Bruno Haible  <bruno@clisp.org>
25816
25817         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
25818         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
25819         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
25820         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
25821         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
25822         <stdlib.h> and <string.h> checks.
25823         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
25824         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
25825
25826 2003-09-10  Bruno Haible  <bruno@clisp.org>
25827
25828         * lib/strcspn.c: Include <string.h> unconditionally.
25829         * lib/strpbrk.c: Include <string.h> unconditionally.
25830         * lib/strstr.c: Include <string.h> unconditionally.
25831         * lib/unicodeio.c: Include <string.h> unconditionally.
25832         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
25833         * lib/unsetenv.c: Likewise.
25834         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
25835         * lib/yesno.c: Include <stdlib.h> unconditionally.
25836         (rpmatch): Add prototype.
25837
25838 2003-09-09  Paul Eggert  <eggert@twinsun.com>
25839
25840         More patches to assume C89 or better.
25841         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
25842         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
25843         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
25844         or for string.h.
25845         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
25846         stdlib.h.
25847         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
25848         C headers.
25849         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
25850         string.h.
25851         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
25852         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
25853         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
25854         or for string.h.
25855         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
25856         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
25857         C headers.
25858         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
25859         memcpy.
25860         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
25861         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
25862         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
25863         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
25864         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
25865         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
25866         string.h, free.
25867         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
25868         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
25869         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
25870         C headers, or for string.h.
25871         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
25872         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
25873         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
25874         headers, memory.h, stdlib.h, string.h, strings.h.
25875         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
25876         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
25877         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
25878         strchr.
25879         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
25880         headers, memory.h, string.h.
25881         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
25882         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
25883         free.
25884         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
25885         headers.
25886         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
25887         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
25888         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
25889         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
25890         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
25891
25892 2003-09-09  Paul Eggert  <eggert@twinsun.com>
25893
25894         More K&R removal.
25895
25896         * lib/acosl.c (main): Use a prototype.
25897         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
25898         tanl.c: Likewise.
25899
25900         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
25901
25902         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
25903         (getopt, etopt_long, getopt_long_only, _getopt_internal)
25904         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
25905         with a prototype.
25906         * lib/getopt.c (const): Remove macro.
25907         Include <string.h> unconditionally.
25908         (my_index): Remove; all uses changed to strchr.
25909         (strlen): Remove decl.
25910         (exchange): Remove forward decl; no longer needed.
25911         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
25912         Define with prototype.
25913         * lib/getopt1.c (const): Remove macro.
25914         (getopt_long, getopt_long_only, main): Define with prototype.
25915
25916         * lib/getugroups.c: Include <string.h> unconditionally.
25917
25918         * lib/getusershell.c: Include <stdlib.h> unconditionally.
25919         (getusershell, setusershell, endusershell, readname, main):
25920         Define with prototypes.
25921
25922         * lib/group-member.c: Include group-member.h first.
25923         Include <stdlib.h> unconditionally.
25924
25925         * lib/hard-locale.c: Include hard-locale.h first.
25926         Include <stdlib.h>, <string.h> unconditionally.
25927
25928         * lib/hash.c (free, malloc): Remove decls.
25929         Include <stdlib.h> unconditionally.
25930
25931         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
25932         (getenv): Do not declare.
25933
25934         * lib/idcache.c: Include <string.h> unconditionally.
25935
25936         * lib/long-options.c: Include long-options.h first, to test interface.
25937         Include <stdlib.h> unconditionally.
25938
25939         * lib/makepath.c: Include makepath.h first, to test interface.
25940         Include <stdlib.h> and <string.h> unconditionally.
25941
25942         * lib/linebuffer.c: Include <stdlib.h>.
25943         (free): Remove decl.
25944
25945         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
25946         stddef.h. rpl_malloc returns void *, not char *.
25947         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
25948         prototype.
25949
25950         * lib/md5.h: Include <limits.h> unconditionally.
25951         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
25952         (__P): Remove; all uses removed.
25953         * lib/md5.c: Include "md5.h" first.
25954         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
25955         md5_buffer, md5_process_bytes, md5_process_block):
25956         Define with prototypes.
25957         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
25958         * lib/sha.c: Include "sha.h" first.
25959         Include <stdlib.h>, <string.h> unconditionally.
25960
25961         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
25962         * lib/memcmp.c (__ptr_t): Likewise.
25963         * lib/memrchr.c (__ptr_t): Likewise.
25964         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
25965         Include <string.h> unconditionally.
25966         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
25967         * lib/memchr.c: Include <stdlib.h> unconditionally.
25968         * lib/memchr.c (LONG_MAX): Remove.
25969         * lib/memrchr.c (LONG_MAX): Likewise.
25970         * lib/memchr.c (__memchr): Define via a prototype.
25971         * lib/memrchr.c (__memrchr): Likewise.
25972         * lib/memcmp.c (__P): Remove, and remove all uses.
25973         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
25974         Remove forward decls; no longer needed.
25975         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
25976         Use types required by C89 in prototype.
25977
25978         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
25979         * lib/savedir.c: Likewise.
25980         * lib/mkdir.c (free): Remove decl.
25981         * lib/rmdir.c (rmdir): Define with a prototype.
25982         * lib/savedir.c: Include savedir.h first, to test interface.
25983
25984         * lib/mktime.c (STDC_HEADERS): Remove.
25985         Include <stdlib.h>, <string.h> unconditionally.
25986
25987         * lib/modechange.c: Include <stdlib.h> unconditionally.
25988         (malloc): Remove decl.
25989
25990         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
25991         (free): Remove decl.
25992
25993         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
25994         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
25995         (This type really should be intptr_t, but that's a C99ism.)
25996         (_obstack_memcpy): Remove: all uses changed to memcpy.
25997         Include <string.h> unconditionally.
25998         (struct obstack): Assume __STDC__ for types of members
25999         chunkfun, freefun, extra_arg.
26000         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
26001         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
26002         obstack_begin, obstack_specify_allocation,
26003         obstack_specify_allocation_with_arg, obstack_chunkfun,
26004         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
26005         Remove unprototyped decls and the macros that use them.
26006         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
26007         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
26008         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
26009         (defined __STDC__ && __STDC__)]:
26010         Remove nonprototyped code.
26011         Include <stdlib.h> unconditionally.
26012         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
26013         _obstack_allocated_p, _obstack_free, obstack_free,
26014         _obstack_memory_used, print_and_abort):
26015         Define using prototypes.
26016         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
26017         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
26018         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
26019         obstack_next_free, obstack_object_size, obstack_room) [0]:
26020         Remove unused, unprototyped code.
26021
26022         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
26023
26024         * lib/physmem.c (physmem_total, physmem_available, main): Define
26025         with prototypes.
26026
26027         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
26028         (main): Define with a prototype.
26029
26030         * lib/posixver.c (getenv): Remove decl.
26031
26032         * lib/putenv.c (malloc): Returns void *, not char *.
26033         Include <string.h> unconditionally.
26034         (strchr, memcpy, NULL): Do not define.
26035
26036         * lib/readtokens.c: Include readtokens.h first, to test interface.
26037         Include <stdlib.h>, <string.h> unconditionally.
26038         (init_tokenbuffer): Define with a prototype.
26039
26040         * lib/regex.c (PARAMS): Remove.  All uses removed.
26041         All uses of _RE_ARGS removed, too.
26042         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
26043         unconditionally.
26044         (bzero): Assume memset exists.
26045         (memcmp, memcpy, NULL): Remove.
26046         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
26047         char, or assignments to local vars of type signed char.
26048         (init_syntax_once, PREFIX(extract_number_and_incr),
26049         PREFIX(print_partial_compiled_pattern),
26050         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
26051         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
26052         PREFIX(regex_grow_registers), PREFIX(regex_compile),
26053         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
26054         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
26055         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
26056         wcs_compile_range, byte_compile_range, truncate_wchar,
26057         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
26058         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
26059         count_mbs_length, wcs_re_match_2_internal,
26060         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
26061         PREFIX(alt_match_null_string_p),
26062         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
26063         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
26064         regfree, PREFIX(extract_number)): Define with prototype.  Remove
26065         now-unnecessary declaration, if any.
26066         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
26067         regcomp, regexec):
26068         Remove now-unnecessary casts among pointer types.
26069         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
26070
26071         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
26072         (free): Remove decl.
26073
26074         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
26075
26076         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
26077         (free): Remove decl.
26078
26079         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
26080         * lib/xgetcwd.c: Likewise.
26081
26082         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
26083         (free): Remove decl.
26084
26085         * lib/strchrnul.c (strchrnul): Define with a prototype.
26086         Fix bug: c_in was not converted to char before searching.
26087
26088         The following changes are not K&R related:
26089
26090         * lib/group-member.h: Include <sys/types.h>, so that this file is
26091         self-contained.
26092         * lib/makepath.h: Likewise.
26093
26094         * lib/getusershell.c (readname, default_index, line_size, readname):
26095         Use size_t, not int, for sizes.
26096         (readname): If the size overflows, report an error instead of
26097         looping forever.
26098
26099 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26100
26101         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
26102         libc.
26103
26104 2003-09-09  Paul Eggert  <eggert@twinsun.com>
26105
26106         * README: New section: portability guidelines.
26107
26108 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
26109
26110         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
26111         C89 spec.
26112
26113 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
26114
26115         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
26116
26117 2003-09-08  Paul Eggert  <eggert@twinsun.com>
26118
26119         Assume C89 or better; remove K&R cruft.
26120         A few of these changes were first proposed by Derek Robert Price
26121         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
26122
26123         * lib/addext.c: Include <string.h> unconditionally.
26124         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
26125         Don't declare getenv or malloc.
26126
26127         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
26128         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
26129         (NULL): Remove.
26130         (find_stack_direction, alloca): Use prototypes.
26131
26132         * lib/atexit.c (atexit): Define using a prototype.
26133
26134         * lib/basename.c, dirname.c, stripslash.c:
26135         Include <string.h> unconditionally.
26136
26137         * lib/bcopy.c: Include <stddef.h>.
26138         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
26139
26140         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
26141
26142         * lib/error.h (error, error_at_line, error_print_progname)
26143         [! (defined (__STDC__) && __STDC__)]: Remove decls.
26144         * lib/error.c: Include error.h first, to check interface.
26145         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
26146         (VA_START): Remove; all uses changeed to va_start.
26147         (exit, strerror): Remove decls.
26148         (error_print_progname): Prototype uncondionally.
26149         Don't include <errno.h>; no longer needed.
26150         (private_strerror): Remove.
26151         (error_tail): Always define.
26152         (error, error_at_line): Assume C89 or better; always use prototypes.
26153         * lib/fatal.c: Include "fatal.h" first, to test interface.
26154         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
26155         (VA_START): Remove; all uses changed to va_start.
26156         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
26157         this case.
26158         (exit): Remove decl.
26159         (fatal): Prototype unconditionally.  Assume va_start works.
26160         Abort at end, to pacify gcc.
26161
26162         * lib/euidaccess.c (main): Define with a prototype.
26163
26164         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
26165
26166         * lib/exitfail.c: Include <stdlib.h> unconditionally.
26167
26168         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
26169         prototypes.
26170         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
26171         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
26172         (getenv): Remove decl.
26173         (fnmatch): Define using a prototype.
26174         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
26175         (FCT): Define using a prototype.
26176
26177         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
26178
26179         * lib/gethostname.c: Include <stddef.h>.
26180         (gethostname): Define with prototype.  Length is size_t, not int.
26181
26182 2003-09-08  Paul Eggert  <eggert@twinsun.com>
26183
26184         Assume C89 or better; remove K&R cruft.
26185         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
26186         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
26187         string.h, getenv, malloc.
26188         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
26189         headers.
26190         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
26191         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
26192         do not check for strerror.
26193         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
26194         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
26195         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
26196         do not check for doprnt or vprintf.
26197         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
26198         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
26199
26200 2003-09-08  Paul Eggert  <eggert@twinsun.com>
26201
26202         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
26203         getversion.c should have been removed then, but was accidentally
26204         preserved.
26205
26206         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
26207         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
26208
26209 2003-09-08  Karl Berry  <karl@gnu.org>
26210
26211         * config/config.sub, config.guess, srclistvars.sh: update from savannah
26212                 config, forget about prep.
26213
26214         * config/depcomp, missing: update from automake.
26215
26216 2003-09-07  Paul Eggert  <eggert@twinsun.com>
26217
26218         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
26219         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
26220
26221 2003-09-07  Paul Eggert  <eggert@twinsun.com>
26222
26223         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
26224         copy_tm_result.  Bug reported by Simon Josefsson in
26225         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
26226
26227 2003-09-06  Paul Eggert  <eggert@twinsun.com>
26228
26229         * m4/time_r.m4: New file.
26230         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
26231         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
26232         is. Check for timegm declaration.
26233         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
26234         Do not check for gmtime_r.
26235         Replace mktime if __mktime_internal does not exist and if mktime
26236         hasn't been replaced already.
26237
26238 2003-09-06  Paul Eggert  <eggert@twinsun.com>
26239
26240         * lib/time_r.c, lib/time_r.h: New files.
26241
26242         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
26243         __localtime_r.
26244         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
26245         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
26246
26247         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
26248         __gmtime_r.
26249         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
26250         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
26251         Include <time_r.h>.
26252
26253         * lib/timegm.c: Switch to glibc implementation, with the following
26254         changes:
26255         [defined HAVE_CONFIG_H]: Include <config.h>.
26256         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
26257         (__mktime_internal) [!defined _LIBC]: New decl.
26258         (__gmtime_r) [!defined _LIBC]: New macro and function.
26259         (timegm): Use a prototype, since gnulib assumes C89.
26260         Do not bother declaring tmp to be const, as it's not really usefu.
26261         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
26262         (timegm): Declare only if HAVE_DECL_TIMEGM.
26263
26264 2003-09-06  Paul Eggert  <eggert@twinsun.com>
26265
26266         * MODULES.html.sh (func_all_modules): Add time_r.
26267         * modules/time_r: New file.
26268         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
26269         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
26270
26271 2003-09-03  Paul Eggert  <eggert@twinsun.com>
26272
26273         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
26274         Bug reported by Lute Kamstra in
26275         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
26276
26277         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
26278         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
26279         course with correspondingly smaller numbers for tomorrow and
26280         yesterday.  From Tadayoshi Funaba.  Originally installed into
26281         sh-utils on 1999-08-07, but the patch got lost (I guess during the
26282         coreutils merge?).
26283
26284 2003-08-31  Simon Josefsson  <jas@extundo.com>
26285
26286         * modules/timegm: New file.
26287         * MODULES.html.sh (func_all_modules): Add timegm.
26288
26289 2003-08-31  Simon Josefsson  <jas@extundo.com>
26290
26291         * m4/timegm.m4: New file.
26292
26293 2003-08-31  Simon Josefsson  <jas@extundo.com>
26294
26295         * lib/timegm.h: New file.
26296         * lib/timegm.c: New file.  Based on
26297         wget-1.8.2/src/http.c:mktime_from_utc.
26298
26299 2003-08-31  Karl Berry  <karl@gnu.org>
26300
26301         * lib/argp.h: update from libc.
26302
26303 2003-08-28  Bruno Haible  <bruno@clisp.org>
26304
26305         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
26306         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
26307         followed by '#define fnmatch fnmatch_posix' gives an error.
26308
26309 2003-08-28  Bruno Haible  <bruno@clisp.org>
26310
26311         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
26312         warning on QNX, which defines O_BINARY to 000000.
26313
26314 2003-08-27  Jim Meyering  <jim@meyering.net>
26315
26316         * m4/mkstemp.m4: Require that the system mkstemp be able to create
26317         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
26318         would fail after 32.  Reported by Danny Levinson.  Details here:
26319         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
26320
26321 2003-08-24  Bruno Haible  <bruno@clisp.org>
26322
26323         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
26324         MSVC7 <stdio.h> is included later.
26325
26326 2003-08-22  Simon Josefsson  <jas@extundo.com>
26327
26328         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
26329
26330 2003-08-20  Karl Berry  <karl@gnu.org>
26331
26332         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
26333
26334 2003-08-20  Bruno Haible  <bruno@clisp.org>
26335
26336         * modules/progname: New file.
26337         * MODULES.html.sh (func_all_modules): Add progname.
26338
26339 2003-08-20  Bruno Haible  <bruno@clisp.org>
26340
26341         * lib/progname.h: New file, from GNU gettext.
26342         * lib/progname.c: New file, from GNU gettext.
26343         * lib/progreloc.c: New file, from GNU gettext.
26344
26345 2003-08-19  Jim Meyering  <jim@meyering.net>
26346
26347         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
26348         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
26349
26350 2003-08-19  Bruno Haible  <bruno@clisp.org>
26351
26352         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
26353         more.
26354
26355 2003-08-19  Bruno Haible  <bruno@clisp.org>
26356
26357         * lib/xstrdup.c: Assume <string.h> exists.
26358
26359 2003-08-18  Paul Eggert  <eggert@twinsun.com>
26360
26361         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
26362         in makefile rules.
26363
26364 2003-08-18  Jim Meyering  <jim@meyering.net>
26365
26366         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
26367         * m4/lib-ld.m4: Likewise.
26368
26369 2003-08-18  Jim Meyering  <jim@meyering.net>
26370
26371         * lib/setenv.h: Indent nested cpp directive.
26372         * lib/vasnprintf.c: Remove trailing blanks.
26373
26374 2003-08-17  Simon Josefsson  <jas@extundo.com>
26375
26376         * modules/xstrndup: New file.
26377         * MODULES.html.sh (func_all_modules): Add xstrndup.
26378
26379 2003-08-17  Simon Josefsson  <jas@extundo.com>
26380
26381         * modules/argp: Fix autoconf macro name. Add more dependencies.
26382
26383 2003-08-17  Simon Josefsson  <jas@extundo.com>
26384
26385         * m4/xstrndup.m4: New file.
26386
26387 2003-08-17  Simon Josefsson  <jas@extundo.com>
26388
26389         * m4/argp.m4: New file.
26390
26391 2003-08-17  Simon Josefsson  <jas@extundo.com>
26392             Bruno Haible  <bruno@clisp.org>
26393
26394         * lib/xstrndup.h: New file.
26395         * lib/xstrndup.c: New file.
26396
26397 2003-08-17  Bruno Haible  <bruno@clisp.org>
26398
26399         * modules/strndup (Files, Include): Add lib/strndup.h.
26400
26401 2003-08-17  Bruno Haible  <bruno@clisp.org>
26402
26403         * modules/euidaccess (Files): Add lib/euidaccess.h.
26404
26405 2003-08-17  Bruno Haible  <bruno@clisp.org>
26406
26407         * lib/strndup.h: New file.
26408
26409 2003-08-17  Bruno Haible  <bruno@clisp.org>
26410
26411         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
26412         like AC_GNU_SOURCE.
26413         * modules/extensions (configure.ac): Comment out the invocation of
26414         gl_USE_SYSTEM_EXTENSIONS.
26415
26416 2003-08-16  Paul Eggert  <eggert@twinsun.com>
26417
26418         Merges from coreutils, etc.
26419         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
26420         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
26421         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
26422         fixing a typo.
26423         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
26424         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
26425
26426 2003-08-16  Paul Eggert  <eggert@twinsun.com>
26427
26428         Document merge from coreutils.
26429         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
26430         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
26431         * modules/utime: Add m4/utimes-null.m4.
26432
26433 2003-08-16  Paul Eggert  <eggert@twinsun.com>
26434
26435         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
26436         space, undoing this 2003-08-12 change:
26437         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
26438
26439 2003-08-16  Paul Eggert  <eggert@twinsun.com>
26440
26441         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
26442         strtoul.c from libc, undoing this 2003-08-12 change:
26443         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
26444
26445 2003-08-16  Jim Meyering  <jim@meyering.net>
26446
26447         Merges from coreutils.
26448         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
26449         prefix.  Adjust cache variables similarly.  Create 500 rather than
26450         just 300 files, to exercise bug on Darwin6.5, too.
26451         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
26452         $missing_dir.
26453         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
26454         AM_SYS_POSIX_TERMIOS.
26455         Reported by mkc@mathdogs.com.
26456         Also change use of $am_cv_sys_posix_termios
26457         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
26458         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
26459         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
26460         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
26461         in /proc/mounts until it finds one with matching device number.  This
26462         is unnecessary when the FILE argument *is* a mount point.  No stat call
26463         is necessary in that case.  So, disable the statvfs-testing code on
26464         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
26465         as RedHat bug# 84846.
26466         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
26467         to 1MB, so as not to render systems with no stack size limit (e.g.,
26468         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
26469         Include <unistd.h>.  On some systems,
26470         it is required for the definition of _SC_PAGESIZE.
26471
26472 2003-08-16  Jim Meyering  <jim@meyering.net>
26473
26474         Merge from coreutils.
26475         * lib/xstrtoimax.c: #else #if -> #elif.
26476         * lib/xstrtoumax.c: Likewise.
26477
26478 2003-08-16  Jim Meyering  <jim@meyering.net>
26479
26480         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
26481         * m4/utimes.m4: Removed.
26482         * m4/utimes-null.m4: Renamed from utimes.m4.
26483
26484         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
26485         to 1MB, so as not to render systems with no stack size limit (e.g.,
26486         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
26487         Include <unistd.h>.  On some systems,
26488         it is required for the definition of _SC_PAGESIZE.
26489
26490 2003-08-16  Jim Meyering  <jim@meyering.net>
26491         and Paul Eggert  <eggert@cs.ucla.edu>
26492
26493         Merges from coreutils, etc.
26494
26495         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
26496         using the latest version from cvs.  This avoids problems with #line
26497         directives using a vendor (Sun) compiler.
26498         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
26499         Don't set GETGROUPS_LIB here; now it's
26500         done via getgroups.m4's wrapper function.
26501         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
26502         rather than just in sh-util/configure.in, so that the
26503         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
26504         same.
26505         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
26506         AC_FUNC_GETLOADAVG where to find getloadavg.c.
26507         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
26508         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
26509         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
26510         Remove code that is now done by the newly-required macros.
26511         Append $(EXEEXT) to DF_PROG.
26512         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
26513         Do not invoke or require the following here,
26514         since prereq.m4 or some gnulib .m4 now does this for us:
26515         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
26516         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
26517         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
26518         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
26519         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
26520         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
26521         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
26522         AC_FUNC_OBSTACK.
26523         Do not replace the following functions, as this is now the job
26524         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
26525         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
26526         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
26527         atexit getpass, strdup, getpagesize.
26528         Replace 'raise'.
26529         Do not check for the following functions, as this is now the job
26530         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
26531         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
26532         setregid.
26533         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
26534         Check for sys/sysctl.h.
26535         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
26536         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
26537         of checking for ssize_t ourselves.
26538
26539         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
26540         Require every macro that gnulib/modules/* suggests for us.
26541         (jm_PREREQ_ADDEXT): New macro.
26542         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
26543         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
26544
26545         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
26546         (gl_PHYSMEM): Use it.
26547         Also check for `table' function.
26548         Check for new headers and functions.
26549         Add check for sys/sysmp.h.
26550         With suggestions from Kaveh Ghazi.
26551         Ignore headers that are present but cannot be compiled.  This
26552         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
26553         C 5.4.
26554
26555 2003-08-15  Paul Eggert  <eggert@twinsun.com>
26556
26557         Document merge from coreutils.
26558         * modules/userspec: Depend on posixver.
26559         * modules/strftime: Depend on tzset.
26560
26561 2003-08-15  Paul Eggert  <eggert@twinsun.com>
26562
26563         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
26564         rather than tab, after '#' in shell-script copyright notices.
26565         Suggested by Bruno Haible.
26566
26567 2003-08-15  Paul Eggert  <eggert@twinsun.com>
26568
26569         * config/srclist-update: Use three spaces, rather than tab, after '#'
26570         in shell-script copyright notices.  Suggested by Bruno Haible.
26571         Remove unnecessary parenthesization in regular expression.
26572
26573 2003-08-15  Jim Meyering  <jim@meyering.net>
26574
26575         Merge from coreutils.
26576         * lib/xgethostname.c: Include <stdlib.h>.
26577         (xghostname): Don't exit for anything other than memory-related
26578         failure; just return NULL.
26579         * lib/userspec.c: Include "posixver.h".
26580         (parse_user_spec): Accept `.' as a separator only
26581         in pre-POSIX-200112 mode.
26582         * lib/strtoimax.c: Use #elif rather than #else #if.
26583         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
26584         Remove function, now that we can rely on a working tzset function.
26585         [!_LIBC]: Ensure that the required autoconf test has been run.
26586         [!defined _NL_CURRENT && HAVE_STRFTIME]:
26587         Use underlying_strftime for %r.
26588         * lib/sha.c: Merge in some clean-up and optimization changes from
26589         glibc.
26590         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
26591         Ensure that it is a multiple of 64.
26592         Rearrange loop exit tests so as to avoid performing an
26593         additional fread after encountering an error or EOF.
26594         * lib/realloc.c: Update copyright date.
26595
26596 2003-08-15  Jim Meyering  <jim@meyering.net>
26597         and Paul Eggert  <eggert@twinsun.com>
26598
26599         Merge from coreutils.
26600         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
26601         member but strut utmpx does not.  Needed for AIX 4.3.3.
26602         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
26603
26604 2003-08-15  Jim Meyering  <jim@meyering.net>
26605         and Paul Eggert  <eggert@cs.ucla.edu>
26606
26607         Merges from coreutils, etc.
26608         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
26609         Require gl_FUNC_TZSET_CLOBBER.
26610         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
26611         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
26612         members.
26613
26614 2003-08-14  Paul Eggert  <eggert@twinsun.com>
26615
26616         Help the merge from coreutils.
26617         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
26618         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
26619         * m4/tzset.m4: Use it too.
26620
26621 2003-08-14  Paul Eggert  <eggert@twinsun.com>
26622
26623         * modules/tzset: New file.
26624
26625 2003-08-14  Jim Meyering  <jim@meyering.net>
26626
26627         Merges from coreutils.
26628         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
26629         variable names, rather than @FNMATCH_H@.
26630         * modules/alloca: Likewise for $(ALLOCA_H).
26631
26632         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
26633         the three copies of the literal target, `fnmatch.h'.
26634         * modules/alloca (alloca.h): Likewise.
26635
26636 2003-08-14  Jim Meyering  <jim@meyering.net>
26637
26638         Merge from coreutils.
26639         * m4/tzset.m4: New file.
26640         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
26641         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
26642         otherwise, AIX 5.1 systems would end up using the latter.
26643         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
26644         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
26645         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
26646         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
26647
26648 2003-08-14  Jim Meyering  <jim@meyering.net>
26649
26650         Merge from coreutils.
26651         * lib/obstack.h: Whitespace changes.
26652         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
26653         and xcalloc return values.
26654         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
26655         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
26656         hang on OSF/1 5.1 for DIR on both local and remote file systems.
26657         Reported by (and fix confirmed by) Nelson H. F. Beebe.
26658         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
26659         error from mntctl.
26660         Use mntctl's return value to drive the entry-processing loop, since
26661         we can't rely on the value of the vmt_length member in the last
26662         entry.  On some systems doing so could result in exhausting
26663         virtual memory.  Based in part on a patch from Mike Jetzer.
26664
26665 2003-08-14  Jim Meyering  <jim@meyering.net>
26666         and Paul Eggert  <eggert@twinsun.com>
26667
26668         Merges from coreutils, plus other fixes.
26669         * lib/physmem.c: Merge in portability changes from gcc/libiberty
26670         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
26671         for credits and details.  Thanks to Kaveh Ghazi for helping
26672         to keep these files in sync.
26673         (ARRAY_SIZE): Define it.
26674         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
26675         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
26676         (memcasecmp): Don't assume size_t fits in unsigned int.
26677         Remove casts and duplicate code.
26678         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
26679         (memcpy): Remove definition.
26680         Merge in some clean-up and optimization changes from glibc.
26681         [BLOCKSIZE]: Move definition to top of file.
26682         Ensure that it is a multiple of 64.
26683         Rearrange loop exit tests so as to avoid performing an
26684         additional fread after encountering an error or EOF.
26685         * lib/md5.h (md5_uintptr): Define.
26686         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
26687         return to the initial working directory.  Preserve errno
26688         for caller.
26689         * lib/idcache.c: Include "xalloc.h".
26690         (xmalloc, xrealloc): Remove decls.
26691         (getuser): Remove casts no longer required in C89.
26692         * lib/human.c: Include stdio.h, for sprintf.
26693         * lib/group-member.c: Include "xalloc.h".
26694         (xmalloc, xrealloc): Remove decls.
26695         (get_group_info): Remove casts no longer required in C89.
26696         * lib/getusershell.c (readname): Remove casts no longer required in
26697         C89.
26698         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
26699         * lib/getline.c: Whitespace fix, from coreutils.
26700
26701 2003-08-13  Paul Eggert  <eggert@twinsun.com>
26702
26703         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
26704         Check for isascii.
26705
26706         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
26707         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
26708         Undo previous (whitespace-only) change.
26709
26710 2003-08-13  Paul Eggert  <eggert@twinsun.com>
26711
26712         * lib/exclude.c: Include <ctype.h>
26713         (IN_CTYPE_DOMAIN): New macro.
26714         (is_space): New fn.
26715         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
26716         and empty lines.
26717
26718         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
26719         Undo previous (whitespace-only) change.
26720
26721 2003-08-13  Paul Eggert  <eggert@twinsun.com>
26722
26723         * config/srclist-update: Change update back to the old behavior,
26724         leaving whitespace alone.  Use one 'sed' command rather than a
26725         pipeline.
26726         (fixlicense): Now a variable, not a function.
26727         (remove_trailing_blanks): Remove.
26728         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
26729         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
26730         Undo previous (whitespace-only) change.
26731
26732 2003-08-12  Paul Eggert  <eggert@twinsun.com>
26733
26734         Merge from coreutils.
26735         * modules/euidaccess: Add lib_SOURCES, include for new
26736         file euidaccess.h
26737
26738 2003-08-12  Paul Eggert  <eggert@twinsun.com>
26739
26740         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
26741         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
26742         Normalize leading white space and remove trailing white space.
26743
26744         Merge from coreutils
26745         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
26746
26747         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
26748         0.12.1.  These files are now being upgraded automatically by
26749         ../config/srclist-update.
26750
26751 2003-08-12  Paul Eggert  <eggert@twinsun.com>
26752
26753         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
26754         Normalize leading white space and remove trailing white space.
26755         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
26756         notice, as per ../config/srclist-update.
26757
26758         Merge from coreutils.
26759         * lib/euidaccess.h: New file.
26760         * lib/euidaccess.c: Include it.
26761         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
26762         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
26763         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
26764
26765 2003-08-12  Paul Eggert  <eggert@twinsun.com>
26766
26767         * config/srclist-update: Add copyright notice.
26768         (remove_id_lines, remove_trailing_blanks): New constants.
26769         (fixfile): Use them to normalize spacing a bit in copied files.
26770         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
26771         Normalize leading white space and remove trailing white space.
26772
26773         * config/texinfo.tex: Sync with texinfo.
26774
26775         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
26776         strtoul.c from libc, to merge coreutils whitespace changes.
26777
26778         * config/srclist.txt: Get the following m4 files from gettext:
26779         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
26780         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
26781         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
26782         wint_t.m4.
26783
26784 2003-08-12  Karl Berry  <karl@gnu.org>
26785
26786         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
26787         been made.
26788
26789 2003-08-11  Paul Eggert  <eggert@twinsun.com>
26790
26791         * modules/gnu-source, m4/gnu-source.m4:
26792         Remove; we're assuming Autoconf 2.54 or later now.
26793         Suggested by Bruno Haible.
26794         * MODULES.html.sh (func_all_modules): Remove gnu-source.
26795
26796 2003-08-11  Bruno Haible  <bruno@clisp.org>
26797
26798         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
26799
26800 2003-08-11  Bruno Haible  <bruno@clisp.org>
26801
26802         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
26803         (vasnprintf): Use it instead of wcslen.
26804
26805 2003-08-11  Bruno Haible  <bruno@clisp.org>
26806
26807         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
26808         value to ensure that _Bool promotes to int. Use #define for _Bool when
26809         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
26810
26811 2003-08-10  Karl Berry  <karl@gnu.org>
26812
26813         * lib/regex.h: update from libc (whitespace fix).
26814
26815 2003-08-09  Paul Eggert  <eggert@twinsun.com>
26816
26817         Merge some files from coreutils.  These changes were
26818         originally made by Jim Meyering.
26819         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
26820         many older Unixes require this.
26821         * lib/alloca.c (alloca): Remove cast to argument of free;
26822         no longer needed in C89.
26823         * lib/alloca_.h, regex.h: Fix white space to match
26824         what GNU indent does.
26825
26826 2003-08-09  Paul Eggert  <eggert@twinsun.com>
26827
26828         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
26829         apparently Emacs's Unicode mode got confused before my 2003-08-05
26830         checkin.
26831
26832 2003-08-08  Paul Eggert  <eggert@twinsun.com>
26833
26834         * m4/extensions.m4: New file.
26835         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
26836         Require gl_USE_SYSTEM_EXTENSIONS.
26837         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
26838         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
26839
26840 2003-08-08  Paul Eggert  <eggert@twinsun.com>
26841
26842         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
26843         * modules/extensions, modules/gnu-source: New files.
26844         * modules/timespec, modules/unlocked-io: Depend on extensions.
26845
26846 2003-08-07  Paul Eggert  <eggert@twinsun.com>
26847
26848         * modules/restrict: New file.
26849         * MODULES.html.sh (func_all_modules): Add restrict.
26850         * modules/regex: Depend on restrict.
26851
26852 2003-08-07  Paul Eggert  <eggert@twinsun.com>
26853
26854         * m4/restrict.m4: New file.
26855         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
26856
26857 2003-08-07  Bruno Haible  <bruno@clisp.org>
26858
26859         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
26860         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
26861
26862 2003-08-07  Bruno Haible  <bruno@clisp.org>
26863
26864         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
26865         makes the module 'getndelim2' compatible with the module 'getline'.
26866
26867 2003-08-05  Paul Eggert  <eggert@twinsun.com>
26868
26869         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
26870         byte with "\201" to avoid glitches when editing that source file
26871         with multi-gnome-terminal.
26872
26873 2003-08-05  Paul Eggert  <eggert@twinsun.com>
26874
26875         * lib/bumpalloc.h: Remove.
26876
26877 2003-08-05  Paul Eggert  <eggert@twinsun.com>
26878
26879         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
26880         * modules/bumpalloc: Remove.
26881
26882 2003-08-04  Paul Eggert  <eggert@twinsun.com>
26883
26884         * lib/getloadavg.c: Change copyright notice and spacing to conform to
26885         GNU coding style.
26886
26887         Merge from coreutils.
26888         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
26889         1. From glibc.
26890         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
26891         from Karl Berry, implemented by Jim Meyering.
26892         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
26893         from Dmitry V. Levin.
26894         Remove anachronistic cast of xrealloc.
26895         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
26896         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
26897         type. Otherwise, it wouldn't compile with at least /bin/cc on
26898         ymp-cray-unicos9.0.2.X.
26899         Combine two mostly-identical uses of alloca into one.
26900         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
26901
26902 2003-08-04  Dave Love  <d.love@dl.ac.uk>
26903
26904         [From Emacs.]
26905
26906         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
26907         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
26908         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
26909         obsolete NLIST_NAME_UNION.
26910         [__GNU__]: Undef BSD and FSCALE.
26911         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
26912
26913 2003-08-03  Paul Eggert  <eggert@twinsun.com>
26914
26915         * lib/stdbool_.h (_Bool): Make it signed char, instead of
26916         an enum type, so that it's guaranteed to promote to int.  See:
26917         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
26918
26919 2003-08-03  Karl Berry  <karl@gnu.org>
26920
26921         * config/depcomp: update from automake.
26922
26923 2003-07-31  Paul Eggert  <eggert@twinsun.com>
26924
26925         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
26926         (strerror): Don't assume that a printable int fits in 14 bytes.
26927
26928 2003-07-31  Bruno Haible  <bruno@clisp.org>
26929
26930         * modules/getpass-gnu: New file.
26931         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
26932
26933 2003-07-31  Bruno Haible  <bruno@clisp.org>
26934
26935         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
26936
26937 2003-07-24  Karl Berry  <karl@gnu.org>
26938
26939         * config/missing: update from automake.
26940
26941 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
26942             Bruno Haible  <bruno@clisp.org>
26943
26944         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
26945         * lib/getline.c (getline, getdelim): Likewise.
26946         Remove _GNU_SOURCE define; now it's defined in config.h through
26947         m4/getline.m4.
26948
26949 2003-07-23  Karl Berry  <karl@gnu.org>
26950
26951         * config/config.sub: update from prep.
26952
26953 2003-07-22  Paul Eggert  <eggert@twinsun.com>
26954
26955         * modules/xalloc (Depends-on): Add exitfail.
26956         * modules/xmemcoll: Likewise.
26957
26958 2003-07-22  Paul Eggert  <eggert@twinsun.com>
26959
26960         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
26961         over-parenthesization in macros.
26962
26963         Sync with coreutils.
26964
26965         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
26966         required by C99.
26967
26968         Use `exit_failure' for xalloc and xmemcoll instead of their own
26969         private exit-failure variables.
26970         * lib/xalloc.h (xalloc_exit_failure): Remove.
26971         * lib/xmalloc.c: Likewise.  Include exitfail.h.
26972         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
26973         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
26974         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
26975         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
26976
26977 2003-07-20  Jim Meyering  <jim@meyering.net>
26978
26979         * modules/closeout (Depends-on): Add exitfail.
26980         Suggestion from Bruno Haible.
26981
26982 2003-07-19  Karl Berry  <karl@gnu.org>
26983
26984         * config/config.sub: update from prep.
26985
26986 2003-07-18  Paul Eggert  <eggert@twinsun.com>
26987
26988         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
26989         Remove.
26990         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
26991         to test that it can stand by itself.  Include "exitfail.h".
26992         Clients should set exit_failure instead.
26993         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
26994
26995 2003-07-18  Bruno Haible  <bruno@clisp.org>
26996
26997         * modules/getndelim2: New file.
26998         * modules/getline: Share files with module getndelim2.
26999         * modules/getnline: Depend on getndelim2 instead of sharing files with
27000         it. Add getnline.c to lib_SOURCES.
27001         * MODULES.html.sh (func_all_modules): Add getndelim2.
27002
27003 2003-07-18  Bruno Haible  <bruno@clisp.org>
27004
27005         * m4/getndelim2.m4: New file.
27006         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
27007         invoke gl_PREREQ_GETNDELIM2.
27008         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
27009         gl_PREREQ_GETNDELIM2.
27010         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
27011         gl_GETNDELIM2.
27012
27013 2003-07-18  Bruno Haible  <bruno@clisp.org>
27014
27015         * lib/getndelim2.h: New file.
27016         * lib/getndelim2.c: Make into a module of its own. Include config.h,
27017         getndelim2.h.
27018         (getndelim2): Make non-static. Change return type to ssize_t.
27019         * lib/getline.h: Change argument names.
27020         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
27021         * lib/getnline.c: Include getndelim2.h.
27022
27023 2003-07-18  Andreas Schwab  <schwab@suse.de>
27024
27025         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
27026
27027 2003-07-17  Karl Berry  <karl@gnu.org>
27028
27029         * config/config.sub: update from prep.
27030
27031 2003-07-17  Bruno Haible  <bruno@clisp.org>
27032
27033         * modules/getnline: New file.
27034         * modules/getline: Add lib/getndelim2.c to source file list.
27035         * MODULES.html.sh (func_all_modules): Add getnline.
27036
27037 2003-07-17  Bruno Haible  <bruno@clisp.org>
27038
27039         * m4/getnline.m4: New file.
27040
27041 2003-07-17  Bruno Haible  <bruno@clisp.org>
27042
27043         * m4/Makefile.am.in: Remove file.
27044         * m4/Makefile.am: Remove file.
27045         * m4/Makefile.in: Remove file.
27046
27047 2003-07-17  Bruno Haible  <bruno@clisp.org>
27048
27049         * lib/getnline.h: New file.
27050         * lib/getnline.c: New file.
27051         * lib/getndelim2.c: New file, extracted from getline.c.
27052         (getndelim2): Renamed from getdelim2, with added nmax argument.
27053         * lib/getline.c: Include getndelim2.c.
27054         (getdelim2): Moved out to getndelim2.c.
27055         (getline, getdelim): Update.
27056
27057 2003-07-17  Bruno Haible  <bruno@clisp.org>
27058
27059         * lib/Makefile.am: Remove file.
27060         * lib/Makefile.in: Remove file.
27061
27062 2003-07-17  Bruno Haible  <bruno@clisp.org>
27063
27064         * configure.in: Remove file.
27065         * Makefile.in: Remove file.
27066
27067 2003-07-17  Bruno Haible  <bruno@clisp.org>
27068
27069         * MODULES.html.sh: Put the </BODY> right before </HTML>.
27070
27071 2003-07-16  Karl Berry  <karl@gnu.org>
27072
27073         * config/srclist-update: was running fixlicense twice, which caused
27074                 texinfo.tex to be nullified for some reason.  Simplify,
27075                 $gplsrc is no longer needed as far as I can see?
27076
27077 2003-07-16  Jim Meyering  <jim@meyering.net>
27078
27079         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
27080
27081 2003-07-15  Paul Eggert  <eggert@twinsun.com>
27082
27083         * config/srclist.txt: Get the following files from gettext-runtime/intl
27084         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
27085         ref-del.sin.  From Bruno Haible.
27086         * config/srclist-update (fixfile): Change grep pattern again, since the
27087         previous fix didn't work (there was another trailing $).  Use
27088         '[$]' to escape the $s.
27089
27090 2003-07-15  Karl Berry  <karl@gnu.org>
27091
27092         * lib/vasnprintf.c: update from gettext.
27093
27094 2003-07-15  Karl Berry  <karl@gnu.org>
27095
27096         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
27097         gets expanded when surrounded by '$'.
27098
27099 2003-07-15  Jim Meyering  <jim@meyering.net>
27100
27101         * modules/save-cwd: Don't depend on error.  From Derek Price.
27102
27103 2003-07-15  Jim Meyering  <jim@meyering.net>
27104
27105         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
27106
27107 2003-07-14  Simon Josefsson  <jas@extundo.com>
27108
27109         * modules/mempcpy: New file.
27110         * MODULES.html.sh (func_all_modules): Add mempcpy.
27111
27112 2003-07-14  Simon Josefsson  <jas@extundo.com>
27113
27114         * m4/mempcpy.m4: New file.
27115
27116 2003-07-14  Simon Josefsson  <jas@extundo.com>
27117
27118         * lib/mempcpy.h: New file.
27119         * lib/mempcpy.c: New file.
27120
27121 2003-07-14  Paul Eggert  <eggert@twinsun.com>
27122
27123         * modules/getdate, modules/posixtm: Depend on mktime.
27124
27125 2003-07-14  Paul Eggert  <eggert@twinsun.com>
27126
27127         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
27128         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
27129         unicodeio.c, unicodeio.h, unlocked-io.h:
27130         Switch from LGPL to GPL.
27131
27132 2003-07-14  Paul Eggert  <eggert@twinsun.com>
27133
27134         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
27135         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
27136         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
27137         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
27138         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
27139         updated automatically by ../config/srclist-update.  This changes
27140         their license from LPGL to GPL.
27141
27142 2003-07-14  Paul Eggert  <eggert@twinsun.com>
27143
27144         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
27145         assumed to refer to the root of the most recent stable gettext version.
27146         * config/srclistvars.sh: Add defaults for eggert.
27147         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
27148         Match "This program" as well as "The program".  This is needed
27149         for gettext.
27150
27151 2003-07-14  Jim Meyering  <jim@meyering.net>
27152
27153         Don't emit diagnostics.  Let callers do that.
27154         * lib/save-cwd.c: Don't include "error.h".
27155         (save_cwd): Don't call error.  Ensure that errno is valid
27156         when returning nonzero.
27157
27158         * lib/save-cwd.h (restore_cwd): Update prototype.
27159         * lib/save-cwd.c (restore_cwd): Remove two parameters.
27160         Simplify.  Don't call error upon failure.  Let callers do that.
27161         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
27162         when auditing is enabled.  But don't bother updating the #if.
27163
27164 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
27165
27166         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
27167         it breaks C++ compilation.
27168         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
27169
27170 2003-07-10  Simon Josefsson  <jas@extundo.com>
27171
27172         * modules/strchrnul (Makefile.am): Add strchrnul.h.
27173
27174 2003-07-10  Jim Meyering  <jim@meyering.net>
27175
27176         * m4/clock_time.m4: Remove trailing blank.
27177         * m4/intmax_t.m4: Likewise.
27178
27179 2003-07-10  Jim Meyering  <jim@meyering.net>
27180
27181         * lib/vasnprintf.c: Remove trailing blanks.
27182         Make cpp indentation consistent.
27183
27184 2003-07-09  Paul Eggert  <eggert@twinsun.com>
27185
27186         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
27187         posixver.c, strftime.c, strnlen.c, strverscmp.c:
27188         Switch from LGPL to GPL.
27189
27190 2003-07-09  Paul Eggert  <eggert@twinsun.com>
27191
27192         * config/srclist.txt: Sort sublists.  Add
27193         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
27194         that differ from gnulib for one reason or another; we'd like this list
27195         to be smaller but for now let's document what we have.
27196
27197 2003-07-08  Paul Eggert  <eggert@twinsun.com>
27198
27199         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
27200         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
27201         and sweeter "eval x=$x".
27202         * config/srclist.txt: Get lib/argp* from glibc.
27203
27204 2003-07-07  Paul Eggert  <eggert@twinsun.com>
27205
27206         * lib/mktime.c: Fix some boundary cases and remove need for floating
27207         point.
27208
27209         Issue a compile-time diagnostic if time_t is floating point, or if
27210         two's complement arithmetic is not in effect, or if arithmetic
27211         right shift does not propagate the sign.  These assumptions were
27212         all in the original code but they weren't checked.
27213
27214         (TIME_T_MIDPOINT, verify): New macros.
27215         (__isleap): Remove; it has integer overflow problems.
27216         (leapyear): New function, without those problems.
27217         (ydhms_tm_diff): Remove; splitting into two parts.
27218         (ydhms_diff): New function, containing the arithmetic part of
27219         the old ydhms_tm_diff function.  Issue a compile-time
27220         diagnostic if we are not using C99 integer division.
27221         Avoid casts when possible.
27222         (guess_time_tm): New function, containing the checking part of
27223         the old ydhms_tm_diff function.  Return the new value, rather than
27224         the difference between it and the old.  Accept a new argument T
27225         so that *T specifies the old value.  Check for overflow in the result.
27226
27227         (__mktime_internal): Use a time_t offset, not a long int offset.
27228         This undoes the 2003-06-04 change, which is no longer needed now
27229         that we have better overflow checking.
27230         (localtime_offset): Likewise.
27231
27232         (__mktime_internal): Avoid harmful overflow on hosts where time_t
27233         and long are 64-bit but int is only 32-bit.
27234         (ydhms_diff): Use long int to store year1 and yday1.
27235         Issue a compile-time diagnostic if long int is not wide enough.
27236
27237         (__mktime_internal): Use long int to store adjusted year and yday.
27238         Use plain C rather than preprocessor commands, if that doesn't
27239         affect efficiency.
27240         Check for overflow (and try to repair) after each probe
27241         rather than checking only at the very end.  This avoids some bugs
27242         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
27243         does not equal GMT offset at maximum time).
27244         Use integer to check for overflow rather than floating point; this
27245         is more portable to non-IEEE hosts, and is a tad faster.
27246         When we detect that we are oscillating between two values,
27247         don't check whether tm_isdst has the requested value, since
27248         we already know the answer.  When tm_isdst has the wrong value,
27249         use a different heuristic to find the right one, based on the
27250         extreme values actually observed in practice in tz2003a,
27251         rather than the (overly optimistic) "previous 3 calendar quarters".
27252
27253         (not_equal_tm, print_tm, check_result): Use "const T" rather than
27254         "T const" to accommodate glibc style.
27255         (check_result): Use less-confusing report format.  "long" -> "long int.
27256         (main): Likewise.
27257         Don't loop if the iteration overflows time_t.
27258         Allow a negative step in the iteration.
27259
27260 2003-07-06  Karl Berry  <karl@gnu.org>
27261
27262         * config/depcomp: update from automake.
27263         * config/config.sub: update from prep.
27264
27265 2003-07-03  Karl Berry  <karl@gnu.org>
27266
27267         * config/config.guess: update from prep.
27268
27269 2003-07-01  Paul Eggert  <eggert@twinsun.com>
27270
27271         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
27272         xreadlink.c now includes it unconditionally.
27273
27274 2003-07-01  Paul Eggert  <eggert@twinsun.com>
27275
27276         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
27277         having it depend on HAVE_SYS_TYPES_H.
27278
27279 2003-07-01  Bruno Haible  <bruno@clisp.org>
27280
27281         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
27282         <sys/types.h> should be sufficient.
27283         Reported by Paul Eggert.
27284
27285 2003-06-26  Karl Berry  <karl@gnu.org>
27286
27287         * config/depcomp: update from automake.
27288
27289 2003-06-26  Bruno Haible  <bruno@clisp.org>
27290
27291         * modules/human: Depend on module stdbool.
27292
27293 2003-06-25  Bruno Haible  <bruno@clisp.org>
27294
27295         * modules/readlink: New file.
27296         * modules/xreadlink: Depend on it.
27297         * MODULES.html.sh (func_all_modules): Add readlink.
27298
27299 2003-06-25  Bruno Haible  <bruno@clisp.org>
27300
27301         * m4/readlink.m4: New file.
27302
27303 2003-06-25  Bruno Haible  <bruno@clisp.org>
27304
27305         * lib/readlink.c: New file.
27306
27307 2003-06-22  Karl Berry  <karl@gnu.org>
27308
27309         * config/srclist.txt: update mkinstalldirs from automake.
27310         * config/mkinstalldirs: update.
27311
27312 2003-06-22  Bruno Haible  <bruno@clisp.org>
27313
27314         Portability to mingw32.
27315         * m4/ssize_t.m4: New file, from GNU gettext.
27316         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
27317         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
27318
27319 2003-06-22  Bruno Haible  <bruno@clisp.org>
27320
27321         * modules/safe-read: Add m4/ssize_t.m4.
27322         * modules/xreadlink: Add m4/ssize_t.m4.
27323
27324 2003-06-20  Bruno Haible  <bruno@clisp.org>
27325
27326         Assume C89, so PARAMS isn't needed.
27327         * lib/unicodeio.h (PARAMS): Remove.
27328         * lib/unicodeio.c: Don't use PARAMS.
27329
27330 2003-06-18  Karl Berry  <karl@gnu.org>
27331
27332         * config/config.{guess,sub}: update from prep.
27333
27334 2003-06-18  Jim Meyering  <jim@meyering.net>
27335
27336         Merge changes from coreutils.
27337         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
27338         Remove explicit declarations of xmalloc and realloc.
27339         Include xalloc.h.
27340         (read_utmp): Remove anachronistic cast of xmalloc.
27341
27342 2003-06-17  Paul Eggert  <eggert@twinsun.com>
27343
27344         Assume C89, so PARAMS isn't needed.
27345         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
27346         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
27347         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
27348         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
27349         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
27350         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
27351         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
27352         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
27353         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
27354         lib/xstrtod.h, lib/xstrtol.h: Likewise.
27355         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
27356         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
27357         no longer needed. Anyway, config.h should always be included before any
27358         other file.
27359
27360 2003-06-11  Simon Josefsson  <jas@extundo.com>
27361
27362         * modules/sysexits: New file.
27363         * MODULES.html.sh (func_all_modules): Add sysexits.
27364
27365 2003-06-11  Simon Josefsson  <jas@extundo.com>
27366
27367         * lib/sysexit_.h: New file.
27368
27369 2003-06-11  Derek Price  <derek@ximbiot.com>
27370
27371         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
27372         necessary.
27373
27374 2003-06-11  Bruno Haible  <bruno@clisp.org>
27375
27376         * m4/sysexits.m4: New file.
27377
27378 2003-06-10  Simon Josefsson  <jas@extundo.com>
27379
27380         * lib/argp.h: New file, from glibc.
27381         * lib/argp-ba.c: New file, from glibc.
27382         * lib/argp-eexst.c: New file, from glibc.
27383         * lib/argp-fmtstream.c: New file, from glibc.
27384         * lib/argp-fmtstream.h: New file, from glibc.
27385         * lib/argp-fs-xinl.c: New file, from glibc.
27386         * lib/argp-help.c: New file, from glibc.
27387         * lib/argp-namefrob.h: New file, from glibc.
27388         * lib/argp-parse.c: New file, from glibc.
27389         * lib/argp-pv.c: New file, from glibc.
27390         * lib/argp-pvh.c: New file, from glibc.
27391         * lib/argp-xinl.c: New file, from glibc.
27392
27393 2003-06-10  Simon Josefsson  <jas@extundo.com>
27394
27395         * modules/strchrnul: New file.
27396
27397 2003-06-10  Simon Josefsson  <jas@extundo.com>
27398
27399         * modules/argp: New file.
27400
27401 2003-06-10  Simon Josefsson  <jas@extundo.com>
27402
27403         * m4/strchrnul.m4: New file.
27404
27405 2003-06-10  Simon Josefsson  <jas@extundo.com>
27406
27407         * lib/strchrnul.h: New file.
27408         * lib/strchrnul.c: New file.
27409
27410 2003-06-10  Bruno Haible  <bruno@clisp.org>
27411
27412         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
27413
27414 2003-06-07  Karl Berry  <karl@gnu.org>
27415
27416         * config/config.{guess,sub}: update from prep.
27417
27418 2003-06-07  Jim Meyering  <jim@meyering.net>
27419
27420         * modules/strtod: Use $(...) notation, not @...@ for
27421         AC_REPLACE'd variables.
27422         * modules/localcharset: Likewise.
27423
27424 2003-06-07  Jim Meyering  <jim@meyering.net>
27425
27426         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
27427         in place of my name in the copyright comment.
27428         Remove definition and uses of __P.
27429
27430         From coreutils.
27431         * lib/stat.c: Don't declare xmalloc explicitly.
27432         Instead, include "xalloc.h".
27433         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
27434         xrealloc, and xcalloc return values.
27435         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
27436         Improve comment.
27437         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
27438
27439 2003-06-07  Bruno Haible  <bruno@clisp.org>
27440
27441         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
27442         avoid AC_CONFIG_LINKS.
27443         * modules/fnmatch (Makefile.am): Use explicit creation rule for
27444         fnmatch.h, to avoid AC_CONFIG_LINKS.
27445         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
27446
27447 2003-06-07  Bruno Haible  <bruno@clisp.org>
27448
27449         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
27450         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
27451         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
27452         directory.
27453         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
27454         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
27455         directory.
27456
27457 2003-06-06  Jim Meyering  <jim@meyering.net>
27458
27459         Merge from coreutils.
27460         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
27461         Consolidate declarations and initializations of *_base* locals.
27462
27463         Merge from coreutils.
27464         This avoids a core dump on systems without GNU putenv,
27465         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
27466         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
27467         (unsetenv): New static function, from GNU libc.
27468         (rpl_putenv): Use it.
27469
27470         * lib/modechange.c: Remove trailing blanks.
27471
27472         Merge from coreutils.
27473         * lib/fsusage.c: Remove declaration of statfs.
27474         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
27475
27476         * lib/posixtm.c: Include <stdbool.h> unconditionally.
27477
27478 2003-06-06  Jim Meyering  <jim@meyering.net>
27479
27480         * lib/stdbool_.h: Renamed from stdbool.h.in.
27481
27482 2003-06-06  Jim Meyering  <jim@meyering.net>
27483             Bruno Haible  <bruno@clisp.org>
27484
27485         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
27486         Adjust Makefile.am snippet not to redirect directly to target.
27487         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
27488
27489 2003-06-05  Paul Eggert  <eggert@twinsun.com>
27490
27491         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
27492         mismatch, look in future quarters as well as past.  This fixes a
27493         bug when processing fall-backwards gaps immediately after a long
27494         period of daylight-saving time.
27495
27496         * lib/mktime.c: Assume freestanding C89 or better.
27497         (HAVE_LIMITS_H): Remove.  Assume it's 1.
27498         (__P): Remove; not used.
27499         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
27500         (mktime, not_equal_tm, print_tm, check_result,
27501         main): Use prototypes.  Use const * where appropriate.
27502         (main): Fix typo in testing code that uncovered by above changes.
27503         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
27504
27505 2003-06-04  Paul Eggert  <eggert@twinsun.com>
27506
27507         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
27508         locale.h, localeconv.  This merges changes from coreutils.
27509
27510         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
27511         It can be removed after the next Autoconf is released.
27512         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
27513         needed.
27514
27515 2003-06-04  Paul Eggert  <eggert@twinsun.com>
27516
27517         * lib/mktime.c: Fix Debian bug 177940
27518         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
27519         (localtime_offset): Now long int, not time_t, because we want it
27520         to be guaranteed to be signed.  All uses changed.
27521         (__mktime_internal): If overflow would occur when adding offset,
27522         don't add it.
27523
27524         Merge 'human' changes from coreutils.  Rewrite to support
27525         locale-specific notations like thousands separators.
27526         * lib/human.c: Simplify authorship notice.
27527         Include human.h immediately after config.h.
27528         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
27529         <limits.h>: Do not include, since human.h does.
27530         (SIZE_MAX, UINTMAX_MAX): New macros.
27531         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
27532         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
27533         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
27534         (power_letter): Renamed from suffixes.
27535         (generate_suffix_backwards): Remove.
27536         (adjust_value): Now takes int style (because of human.h changes)
27537         and long double value (for greater precision on some platforms).
27538         (group_number): New function.
27539         (human_readable): Use it.  Use integer options, not enum.
27540         Put the options before the sizes in the arg list.
27541         Support all the new options.
27542         The old human_readable function has been removed;
27543         use inttostr.h instead.
27544         (human_readable, default_block_size, humblock):
27545         Use uintmax_t, not int, for block sizes.
27546         (human_readable_inexact, block_size_types): Remove.
27547         (block_size_opts): New constant.
27548         (human_options): Renamed from human_block_size, with new signature
27549         that allows block sizes up to UINTMAX_MAX.  All callers changed.
27550         * lib/human.h: Add copyright and authorship notice.
27551         Include <limits.h> and <stdbool.h> unconditionally.
27552         (PARAMS): Remove.  All uses removed.
27553         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
27554         (enum human_inexact_style): Remove tag; now a nameless enum.
27555         (human_floor, human_ceiling, human_round_to_even): Now have
27556         values 2, 0, 1 rather than -1, 1, 0.
27557         (human_group_digits, human_suppress_point_zero, human_autoscale,
27558         human_base_1024, human_SI, human_B): New constants.
27559         (human_readable_inexact, human_block_size): Remove.
27560         (human_readable): Size args are now uintmax_t, not int.
27561         (human_options): New decl.
27562
27563         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
27564         unnecessary now that we assume C89 or better.  This change
27565         imported from coreutils.
27566
27567         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
27568         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
27569         in the 2003-05-30 sync from glibc.
27570
27571         .h files should stand alone, but we shouldn't include <sys/types.h>
27572         if we can get away with just <stddef.h>.
27573
27574         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
27575         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
27576         rather than <sys/types.h>, as we merely need size_t.
27577         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
27578         to get size_t.
27579         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
27580         Include <stdio.h>, to get FILE.
27581         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
27582         memcasecmp.h has included <stddef.h> and all we need is size_t.
27583         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
27584         our interface, instead of including <sys/types.h>
27585
27586 2003-06-04  Paul Eggert  <eggert@twinsun.com>
27587
27588         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
27589         now, as glibc mktime is buggy on non-glibc systems.
27590
27591 2003-06-03  Karl Berry  <karl@gnu.org>
27592
27593         * config/config.sub: update from prep.
27594
27595 2003-06-02  Paul Eggert  <eggert@twinsun.com>
27596
27597         [from coreutils]
27598         Fix some minor time-related bugs with POSIX time arguments.
27599         Some valid time stamps were being rejected (notably -1, and
27600         time stamps before 1900 on 64-bit hosts).  And some invalid
27601         time stamps were being accepted, e.g. September 31.
27602
27603         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
27604         that we can return (time_t) -1 successfully.
27605         * lib/posixtm.c: Likewise.
27606         [HAVE_STDBOOL_H]: Include <stdbool.h>.
27607         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
27608         (t): Remove static var.
27609         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
27610         of static var.  All uses changed.
27611         (year): Do not reject years before 1900; they can occur with
27612         64-bit time_t.
27613         (posix_time_parse): Do not check for out-of-range components;
27614         that is now the caller's responsibility, since our checks were
27615         only approximations.
27616         (posixtime): Use mktime to check for out-of-range components,
27617         since it knows them exactly.
27618         If mktime returns (time_t) -1, check whether an error actually occurred
27619         by invoking localtime on -1.
27620         (main) [TEST_POSIXTIME]: Check for input data errors, and report
27621         posixtime failures better.
27622         Improve the test data (in comments only).
27623
27624 2003-06-02  Karl Berry  <karl@gnu.org>
27625
27626         * config/mkinstalldirs (version): new variable.
27627         (--version): new option.
27628         (usage): improve message.
27629
27630 2003-05-30  Karl Berry  <karl@gnu.org>
27631
27632         * lib/mktime.c: update from libc.
27633
27634 2003-05-30  Bruno Haible  <bruno@clisp.org>
27635
27636         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
27637         * config/config.rpath: Upgrade to gettext-0.12.1.
27638
27639 2003-05-30  Bruno Haible  <bruno@clisp.org>
27640
27641         * m4/gettext.m4: Upgrade to gettext-0.12.1.
27642         * m4/nls.m4: New file, from gettext-0.12.1.
27643         * m4/po.m4: New file, from gettext-0.12.1.
27644         * m4/progtest.m4: Upgrade to gettext-0.12.1.
27645
27646 2003-05-30  Bruno Haible  <bruno@clisp.org>
27647
27648         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
27649         * lib/localcharset.h: Likewise.
27650         * lib/localcharset.c: Likewise.
27651
27652 2003-05-29  Karl Berry  <karl@gnu.org>
27653
27654         * config/config.rpath: update from gettext.
27655
27656 2003-05-28  Paul Eggert  <eggert@twinsun.com>
27657
27658         Assume the headers required for C89 freestanding compilers.
27659         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
27660         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
27661         * m4/human.m4 (gl_HUMAN): Likewise.
27662         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
27663         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
27664         * m4/userspec.m4 (gl_USERSPEC): Likewise.
27665         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
27666         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
27667         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
27668
27669 2003-05-28  Paul Eggert  <eggert@twinsun.com>
27670
27671         Assume the headers required for C89 freestanding compilers.
27672         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
27673         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
27674         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
27675         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
27676         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
27677         define, since <limits.h> is guaranteed to do that.
27678         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
27679         * lib/exclude.c: Include <stdbool.h> unconditionally.
27680         * lib/tempname.c: Include <stddef.h> unconditionally.
27681         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
27682         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
27683         <stddef.h> does that.
27684         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
27685         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
27686         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
27687         needed.
27688         * lib/xstrtol.c: Likewise.
27689         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
27690         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
27691
27692         * lib/addext.c (addext): Use assignment rather than cast, to avoid
27693         warnings on some platforms.
27694
27695         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
27696         arbitrarily.
27697
27698 2003-05-26  Jim Meyering  <jim@meyering.net>
27699
27700         Merge in a change from coreutils:
27701         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
27702         that is guaranteed to be `no'.  Use `no_such_member' to indicate
27703         that condition, rather than `-1' which is slightly misleading.
27704         Change the name of the cache variable to have the gl_ prefix.
27705         Prompted by a patch from Richard Dawe for DJGPP.
27706
27707 2003-05-24  Karl Berry  <karl@gnu.org>
27708
27709         * config/config.guess: update from prep.
27710
27711 2003-05-22  Karl Berry  <karl@gnu.org>
27712
27713         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
27714
27715 2003-05-20  Karl Berry  <karl@gnu.org>
27716
27717         * config/config.guess: update from prep.
27718
27719 2003-05-18  Karl Berry  <karl@gnu.org>
27720
27721         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
27722         might actually be set by the user.
27723
27724         * config/depcomp, install-sh, mdate-sh: update from automake.
27725
27726 2003-05-17  Bruno Haible  <bruno@clisp.org>
27727
27728         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
27729         invalid expansion for AC_EGREP_CPP.
27730         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
27731         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
27732         Suggested by Akim Demaille <akim@epita.fr> in
27733         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
27734
27735 2003-05-12  Jim Meyering  <jim@meyering.net>
27736
27737         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
27738         the space-padded-by-default conversion specifiers, %e, %k, %l.
27739
27740 2003-05-12  Bruno Haible  <bruno@clisp.org>
27741
27742         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
27743         the string is longer than 4 KB.
27744
27745 2003-05-11  Karl Berry  <karl@gnu.org>
27746
27747         * config/config.{guess,sub}: update from prep.
27748
27749 2003-05-09  Bruno Haible  <bruno@clisp.org>
27750
27751         * modules/error: Add m4/strerror_r.m4 to file list.
27752
27753 2003-05-03  Bruno Haible  <bruno@clisp.org>
27754
27755         Upgrade to Unicode-4.0.
27756         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
27757         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
27758         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
27759         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
27760         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
27761         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
27762         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
27763         Change width of U+E0100..U+E01EF from 1 to 0.
27764
27765 2003-04-25  Jim Meyering  <jim@meyering.net>
27766
27767         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
27768         of type size_t, not int.
27769
27770 2003-04-25  Bruno Haible  <bruno@clisp.org>
27771
27772         * lib/copy-file.c: Include <stddef.h>, for size_t.
27773
27774 2003-04-21  Paul Eggert  <eggert@twinsun.com>
27775
27776         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
27777         code which expansion is under static control.  Patch imported from
27778         Akim Demaille's patch to Bison; see
27779         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
27780
27781 2003-04-14  Bruno Haible  <bruno@clisp.org>
27782
27783         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
27784
27785 2003-04-11  Jim Meyering  <jim@meyering.net>
27786
27787         Merge changes from Coreutils.
27788
27789         2003-03-22  Jim Meyering  <jim@meyering.net>
27790
27791         * lib/strftime.c (widen): Cast alloca return value to proper type.
27792
27793         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
27794
27795         From GNU libc.
27796         * lib/strftime.c (my_strftime): Handle very large width
27797         specifications for numeric values correctly.  Improve checks for
27798         overflow.
27799
27800         2003-01-19  Jim Meyering  <jim@meyering.net>
27801
27802         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
27803         definitions.
27804         (nl_get_alt_digit) [! defined my_strftime]: Define.
27805         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
27806         _nl_get_alt_digit and _nl_get_walt_digit.
27807
27808         * lib/strftime.c (my_strftime): Merge in locale-related changes from
27809         libc. These changes have no effect outside of _LIBC.
27810
27811 2003-04-10  Bruno Haible  <bruno@clisp.org>
27812
27813         * modules/findprog: New file.
27814         * MODULES.html.sh (func_all_modules): Add it.
27815
27816 2003-04-10  Bruno Haible  <bruno@clisp.org>
27817
27818         * m4/findprog.m4: New file.
27819         * m4/eaccess.m4: New file.
27820
27821 2003-04-10  Bruno Haible  <bruno@clisp.org>
27822
27823         * lib/findprog.h: New file, from GNU gettext.
27824         * lib/findprog.c: New file, from GNU gettext.
27825
27826 2003-04-05  Jim Meyering  <jim@meyering.net>
27827
27828         Merge changes from Coreutils.
27829
27830         * lib/exclude.h (PARAMS): Remove definition and uses.
27831         * lib/exclude.c: Remove uses of `PARAMS'.
27832
27833         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
27834         Add test-cases for DOS filenames. Declare program_name.
27835         (main): Set up program_name.  Patch by Rich Dawe.
27836
27837         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
27838         error from mntctl.
27839         Use mntctl's return value to drive the entry-processing loop, since
27840         we can't rely on the value of the vmt_length member in the last
27841         entry.  On some systems doing so could result in exhausting
27842         virtual memory.  Based in part on a patch from Mike Jetzer.
27843
27844 2003-04-04  Bruno Haible  <bruno@clisp.org>
27845
27846         * modules/linebreak: New file.
27847         * MODULES.html.sh (func_all_modules): Add it.
27848
27849 2003-04-04  Bruno Haible  <bruno@clisp.org>
27850
27851         * m4/linebreak.m4: New file.
27852
27853 2003-04-04  Bruno Haible  <bruno@clisp.org>
27854
27855         * lib/linebreak.h: New file, from GNU gettext.
27856         * lib/linebreak.c: New file, from GNU gettext with slight
27857         modifications.
27858         * lib/lbrkprop.h: New file, from GNU gettext.
27859
27860 2003-04-03  Bruno Haible  <bruno@clisp.org>
27861
27862         * modules/utf8-ucs4: New file.
27863         * modules/utf16-ucs4: New file.
27864         * modules/ucs4-utf8: New file.
27865         * modules/ucs4-utf16: New file.
27866         * MODULES.html.sh (func_all_modules): Add them.
27867
27868 2003-04-03  Bruno Haible  <bruno@clisp.org>
27869
27870         * m4/utf-ucs4.m4: New file.
27871         * m4/ucs4-utf.m4: New file.
27872
27873 2003-04-03  Bruno Haible  <bruno@clisp.org>
27874
27875         * lib/utf8-ucs4.h: New file, from GNU gettext.
27876         * lib/utf16-ucs4.h: New file, from GNU gettext.
27877         * lib/ucs4-utf8.h: New file, from GNU gettext.
27878         * lib/ucs4-utf16.h: New file, from GNU gettext.
27879
27880 2003-04-02  Bruno Haible  <bruno@clisp.org>
27881
27882         * modules/binary-io: New file.
27883         * MODULES.html.sh (func_all_modules): Add it.
27884
27885 2003-04-02  Bruno Haible  <bruno@clisp.org>
27886
27887         * lib/binary-io.h: New file, from GNU gettext.
27888
27889 2003-04-01  Bruno Haible  <bruno@clisp.org>
27890
27891         * modules/pathname: New file.
27892         * MODULES.html.sh (func_all_modules): Add it.
27893
27894 2003-04-01  Bruno Haible  <bruno@clisp.org>
27895
27896         * lib/pathname.h: New file, from GNU gettext.
27897         * lib/concatpath.c: New file, from GNU gettext.
27898
27899 2003-03-30  Bruno Haible  <bruno@clisp.org>
27900
27901         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
27902
27903 2003-03-30  Bruno Haible  <bruno@clisp.org>
27904
27905         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
27906         function chown() doesn't exist.
27907
27908 2003-03-28  Bruno Haible  <bruno@clisp.org>
27909
27910         * modules/copy-file: New file.
27911         * MODULES.html.sh (func_all_modules): Add it.
27912
27913 2003-03-28  Bruno Haible  <bruno@clisp.org>
27914
27915         * m4/copy-file.m4: New file.
27916
27917 2003-03-28  Bruno Haible  <bruno@clisp.org>
27918
27919         * lib/copy-file.h: New file, from GNU gettext.
27920         * lib/copy-file.c: New file, from GNU gettext.
27921
27922 2003-03-18  Jim Meyering  <jim@meyering.net>
27923
27924         * lib/quote.c (quote_n): Fix typo in comment.
27925
27926 2003-03-18  Bruno Haible  <bruno@clisp.org>
27927
27928         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
27929         checking.
27930         * m4/onceonly_2_57.m4: Likewise.
27931
27932 2003-03-17  Bruno Haible  <bruno@clisp.org>
27933
27934         * m4/onceonly.m4: Require autoconf 2.54 or newer.
27935         (m4_quote): Remove macro.
27936         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
27937
27938 2003-03-14  Jim Meyering  <jim@meyering.net>
27939
27940         Merge changes from Coreutils.
27941         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
27942         to be const, in order to avoid warnings.
27943         (obstack_room): Likewise.
27944         (obstack_empty_p): Likewise.
27945
27946 2003-03-14  Bruno Haible  <bruno@clisp.org>
27947
27948         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
27949         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
27950
27951 2003-03-13  Paul Eggert  <eggert@twinsun.com>
27952
27953         Merge changes from Bison.
27954         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
27955         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
27956         when compiling Bison 1.875's `bitset bset = obstack_alloc
27957         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
27958         * lib/hash.c: Include <stdbool.h> unconditionally.
27959
27960 2003-03-13  Paul Eggert  <eggert@twinsun.com>
27961
27962         * m4/onceonly.m4 (m4_quote): New macro.
27963         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
27964         Quote AC_FOREACH variable-expansions properly.
27965
27966 2003-03-13  Paul Eggert  <eggert@twinsun.com>
27967
27968         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
27969
27970 2003-03-09  Paul Eggert  <eggert@twinsun.com>
27971
27972         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
27973         Reported by Bruce Becker; see:
27974         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
27975
27976 2003-03-03  Paul Eggert  <eggert@twinsun.com>
27977             Bruno Haible  <bruno@clisp.org>
27978
27979         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
27980         Reported by John Hughes, see
27981         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
27982
27983 2003-02-20  Bruno Haible  <bruno@clisp.org>
27984
27985         * MODULES.html.sh (func_all_modules): Add poll.
27986
27987 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
27988
27989         * modules/poll: New file.
27990
27991 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
27992
27993         * lib/poll_.h: New file.
27994         * lib/poll.c: New file.
27995
27996 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
27997
27998         * m4/poll.m4: New file.
27999
28000 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28001
28002         * modules/mathl: New file.
28003
28004 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28005
28006         * lib/mathl.h: New file.
28007         * lib/acosl.c: New file.
28008         * lib/asinl.c: New file.
28009         * lib/atanl.c: New file.
28010         * lib/ceill.c: New file.
28011         * lib/cosl.c: New file.
28012         * lib/expl.c: New file.
28013         * lib/floorl.c: New file.
28014         * lib/frexpl.c: New file.
28015         * lib/ldexpl.c: New file.
28016         * lib/logl.c: New file.
28017         * lib/sincosl.c: New file.
28018         * lib/sinl.c: New file.
28019         * lib/sqrtl.c: New file.
28020         * lib/tanl.c: New file.
28021         * lib/trigl.c: New file.
28022         * lib/trigl.h: New file.
28023
28024 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
28025
28026         * m4/mathl.m4: New file.
28027
28028 2003-02-18  Bruno Haible  <bruno@clisp.org>
28029
28030         * MODULES.html.sh (func_all_modules): Add mathl.
28031
28032 2003-02-17  Bruno Haible  <bruno@clisp.org>
28033
28034         * modules/mkdtemp: New module.
28035         * MODULES.html.sh (func_all_modules): Add it.
28036
28037 2003-02-17  Bruno Haible  <bruno@clisp.org>
28038
28039         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
28040
28041 2003-02-17  Bruno Haible  <bruno@clisp.org>
28042
28043         * lib/mkdtemp.h: New file, from GNU gettext.
28044         * lib/mkdtemp.c: New file, from GNU gettext.
28045
28046 2003-02-02  Jim Meyering  <jim@meyering.net>
28047
28048         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
28049         e.g. glibc-2.2.93.
28050
28051 2003-01-31  Bruno Haible  <bruno@clisp.org>
28052
28053         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
28054         'rpl_rename'.
28055         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
28056         'rpl_strnlen'.
28057         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
28058         'rpl_strtod'.
28059         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
28060         'rpl_utime'.
28061
28062 2003-01-31  Bruno Haible  <bruno@clisp.org>
28063
28064         * lib/rename.c: #undef rename before defining rpl_rename.
28065         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
28066
28067 2003-01-30  Bruno Haible  <bruno@clisp.org>
28068
28069         * modules/vasnprintf, modules/vasprintf: New modules.
28070         * MODULES.html.sh (func_all_modules): Add them.
28071
28072 2003-01-30  Bruno Haible  <bruno@clisp.org>
28073
28074         * m4/signed.m4: New file, from GNU gettext.
28075         * m4/longdouble.m4: New file, from GNU gettext.
28076         * m4/wchar_t.m4: New file, from GNU gettext.
28077         * m4/wint_t.m4: New file, from GNU gettext.
28078         * m4/vasnprintf.m4: New file.
28079         * m4/vasprintf.m4: New file.
28080
28081 2003-01-30  Bruno Haible  <bruno@clisp.org>
28082
28083         * lib/printf-args.h: New file, from GNU gettext.
28084         * lib/printf-args.c: New file, from GNU gettext.
28085         * lib/printf-parse.h: New file, from GNU gettext.
28086         * lib/printf-parse.c: New file, from GNU gettext.
28087         * lib/vasnprintf.h: New file, from GNU gettext.
28088         * lib/vasnprintf.c: New file, from GNU gettext.
28089         * lib/asnprintf.c: New file, from GNU gettext.
28090         * lib/vasprintf.h: New file, from GNU gettext with modifications.
28091         * lib/vasprintf.c: New file, from GNU gettext.
28092         * lib/asprintf.c: New file, from GNU gettext.
28093
28094 2003-01-29  Bruno Haible  <bruno@clisp.org>
28095
28096         * modules/stpncpy: New module.
28097         * MODULES.html.sh (func_all_modules): Add it.
28098
28099 2003-01-29  Bruno Haible  <bruno@clisp.org>
28100
28101         * m4/stpncpy.m4: New file.
28102
28103 2003-01-29  Bruno Haible  <bruno@clisp.org>
28104
28105         * lib/stpncpy.h: New file, from GNU gettext with modifications.
28106         * lib/stpncpy.c: New file, from GNU gettext with modifications.
28107
28108 2003-01-28  Bruno Haible  <bruno@clisp.org>
28109
28110         * modules/c-ctype: New module.
28111         * MODULES.html.sh (func_all_modules): Add it.
28112
28113 2003-01-28  Bruno Haible  <bruno@clisp.org>
28114
28115         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
28116         Paul Eggert.
28117         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
28118         Paul Eggert.
28119
28120 2003-01-27  Bruno Haible  <bruno@clisp.org>
28121
28122         * modules/xsetenv: New module.
28123         * MODULES.html.sh (func_all_modules): Add it.
28124
28125 2003-01-27  Bruno Haible  <bruno@clisp.org>
28126
28127         * lib/xsetenv.h: New file, from GNU gettext.
28128         * lib/xsetenv.c: New file, from GNU gettext.
28129
28130 2003-01-23  Jim Meyering  <jim@meyering.net>
28131
28132         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
28133         from working on systems without dirfd (at least Irix and OSF1/Tru64).
28134
28135 2003-01-23  Bruno Haible  <bruno@clisp.org>
28136
28137         * modules/minmax: New module.
28138         * MODULES.html.sh (func_all_modules): Add it.
28139
28140 2003-01-23  Bruno Haible  <bruno@clisp.org>
28141
28142         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
28143         Eggert.
28144
28145 2003-01-22  Bruno Haible  <bruno@clisp.org>
28146
28147         * modules/exit: New module.
28148         * MODULES.html.sh (func_all_modules): Add it.
28149
28150 2003-01-22  Bruno Haible  <bruno@clisp.org>
28151
28152         * lib/exit.h: New file, from GNU gettext.
28153
28154 2003-01-19  Bruno Haible  <bruno@clisp.org>
28155
28156         * gnulib-tool: Recognize option --extract-maintainer.
28157         (func_get_maintainer): New function.
28158         * modules/*: Add Maintainer entry.
28159
28160 2003-01-16  Jim Meyering  <jim@meyering.net>
28161
28162         * m4/regex.m4: The `regex' struct is both input and output.
28163         Initialize it before each use.  Patch by Tim Waugh.
28164
28165 2003-01-16  Bruno Haible  <bruno@clisp.org>
28166
28167         * MODULES.html.sh: Add a table of contents. Add the module name as
28168         leftmost column. Add hyperlinks.
28169
28170 2003-01-15  Bruno Haible  <bruno@clisp.org>
28171
28172         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
28173
28174 2003-01-15  Bruno Haible  <bruno@clisp.org>
28175
28176         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
28177         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
28178         suffix.
28179
28180 2003-01-15  Bruno Haible  <bruno@clisp.org>
28181
28182         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
28183
28184 2003-01-15  Bruno Haible  <bruno@clisp.org>
28185
28186         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
28187         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
28188
28189 2003-01-14  Jim Meyering  <jim@meyering.net>
28190
28191         * lib/same.c (same_name): Tweak a comment.
28192
28193 2003-01-14  Bruno Haible  <bruno@clisp.org>
28194
28195         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
28196         when a string comparison is sufficient.
28197
28198 2003-01-14  Bruno Haible  <bruno@clisp.org>
28199
28200         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
28201         'unsigned int'.
28202
28203 2003-01-14  Bruno Haible  <bruno@clisp.org>
28204
28205         * lib/hash-pjw.c: Add comment about low quality of this function.
28206
28207 2003-01-13  Bruno Haible  <bruno@clisp.org>
28208
28209         * modules/stpcpy: Distribute lib/stpcpy.h.
28210         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
28211
28212 2003-01-13  Bruno Haible  <bruno@clisp.org>
28213
28214         * modules/*: Add a description.
28215         * modules/strpbrk: Fix Makefile.am snippet.
28216         * modules/strtoimax: Fix dependencies.
28217         * modules/strtoumax: Likewise.
28218
28219 2003-01-13  Bruno Haible  <bruno@clisp.org>
28220
28221         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
28222         * modules/alloca (Makefile.am): All object files depend on alloca.h.
28223         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
28224
28225 2003-01-13  Bruno Haible  <bruno@clisp.org>
28226
28227         * gnulib-tool (func_create_testdir): Store config/* files in the main
28228         directory.
28229         * config.rpath: Move to ...
28230         * config/config.rpath: ... here.
28231         * modules/gettext: Contains config/config.rpath, not config.rpath.
28232         * modules/iconv: Likewise.
28233
28234 2003-01-12  Paul Eggert  <eggert@twinsun.com>
28235
28236         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
28237         to avoid collisions with libcurses and libreadline.
28238
28239         * m4/getstr.m4: Remove.
28240         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
28241
28242 2003-01-12  Paul Eggert  <eggert@twinsun.com>
28243
28244         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
28245         to avoid collisions with libcurses and libreadline.
28246
28247         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
28248         * lib/getstr.h, getstr.c: Remove.
28249         * lib/getline.c: Include "getline.h", to check interface.
28250         Move body of old getstr.c here: this defines MIN_CHUNK and
28251         declares getdelim2, which is renamed from getstr.
28252         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
28253
28254         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
28255         All uses changed.
28256         * lib/linebuffer.h: Likewise.
28257         (readline): Remove backward-compatibility macro.
28258
28259 2003-01-12  Paul Eggert  <eggert@twinsun.com>
28260
28261         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
28262         to avoid collisions with libcurses and libreadline.
28263         * getstr: Remove.
28264         * MODULES.html.sh: Remove getstr.
28265         * modules/getline: Depend on unlocked-io, not getstr.
28266
28267 2003-01-12  Jim Meyering  <jim@meyering.net>
28268
28269         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
28270
28271 2003-01-10  Bruno Haible  <bruno@clisp.org>
28272
28273         * modules/alloca: Change Makefile.am requirements. Simplify Include
28274         requirements. Add lib/alloca_.h to file list.
28275
28276 2003-01-10  Bruno Haible  <bruno@clisp.org>
28277
28278         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
28279
28280 2003-01-10  Bruno Haible  <bruno@clisp.org>
28281
28282         * lib/alloca_.h: New file.
28283         * lib/getdate.y: Unconditionally include alloca.h.
28284         * lib/makepath.c: Likewise.
28285         * lib/setenv.c: Likewise.
28286         * lib/userspec.c: Likewise.
28287
28288 2003-01-09  Karl Berry  <karl@gnu.org>
28289
28290         * MODULES.html.sh: include `dirname $0` in PATH, to find
28291         gnulib-tool.
28292
28293 2003-01-09  Bruno Haible  <bruno@clisp.org>
28294
28295         * modules/stdbool: Change configure.ac, Makefile.am requirements.
28296         Simplify Include requirements. Add lib/stdbool.h.in to file list.
28297
28298 2003-01-09  Bruno Haible  <bruno@clisp.org>
28299
28300         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
28301
28302 2003-01-09  Bruno Haible  <bruno@clisp.org>
28303
28304         * lib/stdbool.h.in: New file.
28305
28306 2003-01-09  Bruno Haible  <bruno@clisp.org>
28307
28308         * gnulib-tool (func_all_modules): Ignore files ending in ~.
28309         * MODULES.html.sh: Likewise.
28310
28311 2003-01-08  Jim Meyering  <jim@meyering.net>
28312
28313         * lib/full-write.c: Undefine and define-away `const' after inclusion
28314         of errno.h, not before.  Suggestion from Bruno Haible.
28315
28316 2003-01-08  Bruno Haible  <bruno@clisp.org>
28317
28318         * modules/full-read: Depend on full-write.
28319
28320 2003-01-08  Bruno Haible  <bruno@clisp.org>
28321
28322         * lib/safe-read.c: Include specification header first, to ensure its
28323         selfcontainedness.
28324         * lib/full-write.c: Likewise.
28325
28326 2003-01-07  Jim Meyering  <jim@meyering.net>
28327
28328         * lib/full-write.c: Rework so that it may serve to define full_read,
28329         too.
28330         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
28331
28332 2003-01-07  Bruno Haible  <bruno@clisp.org>
28333
28334         * lib/strtoimax.c: Include <stdint.h> as an alternative to
28335         <inttypes.h>.
28336         * lib/xstrtol.h: Likewise.
28337         * lib/xstrtoimax.c: Likewise.
28338         * lib/xstrtoumax.c: Likewise.
28339         * lib/human.h: Likewise.
28340
28341         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
28342         on systems that have <inttypes.h> but not <stdint.h>.
28343
28344 2003-01-07  Bruno Haible  <bruno@clisp.org>
28345
28346         * MODULES.html.sh: Add copyright notice.
28347         (missed_files): Omit CVS directory entries.
28348         (func_module): Make it work with sed-3.02.
28349         * MODULES.txt: Remove file.
28350
28351 2003-01-06  Jim Meyering  <jim@meyering.net>
28352
28353         * lib/version-etc.c: Update year in translatable copyright string.
28354
28355 2003-01-03  Karl Berry  <karl@gnu.org>
28356
28357         * config/config.{guess,sub}: update from prep.
28358
28359 2003-01-02  Karl Berry  <karl@gnu.org>
28360
28361         * doc/COPYING.DOC: belatedly updated to 1.2.
28362
28363 2003-01-01  Karl Berry  <karl@gnu.org>
28364
28365         * gnulib-tool (func_verify_module): report module name $module in
28366         error message, not $1.
28367         * gnulib-tool (create-testdir): don't complain if destdir couldn't
28368         be created, only if it doesn't exist.
28369         * gnulib-tool (last_checkin_date): don't expand the $Date here.
28370
28371 2002-12-31  Paul Eggert  <eggert@twinsun.com>
28372
28373         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
28374
28375 2002-12-31  Paul Eggert  <eggert@twinsun.com>
28376
28377         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
28378         memcmp if strcoll doesn't work.
28379
28380 2002-12-31  Bruno Haible  <bruno@clisp.org>
28381
28382         * lib/utime.c (utime_null): No need to call ftruncate if the file was
28383         nonempty.
28384
28385 2002-12-31  Bruno Haible  <bruno@clisp.org>
28386
28387         * lib/memcoll.c (STRCOLL): New macro.
28388         (memcoll): Use it.
28389
28390 2002-12-31  Bruno Haible  <bruno@clisp.org>
28391
28392         * lib/localcharset.h: New file.
28393         * lib/localcharset.c: Include it.
28394         * lib/unicodeio.c: Likewise.
28395
28396 2002-12-31  Bruno Haible  <bruno@clisp.org>
28397
28398         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
28399         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
28400
28401 2002-12-31  Bruno Haible  <bruno@clisp.org>
28402
28403         * lib/getline.h: Include <stddef.h>, for size_t.
28404
28405         * lib/unicodeio.h: Include <stddef.h>, for size_t.
28406         * lib/unicodeio.c: Don't include <stddef.h>.
28407
28408 2002-12-31  Bruno Haible  <bruno@clisp.org>
28409
28410         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
28411         HAVE_TM_ZONE.
28412
28413 2002-12-24  Karl Berry  <karl@gnu.org>
28414
28415         * config/config.guess: update from prep.
28416
28417 2002-12-24  Bruno Haible  <bruno@clisp.org>
28418
28419         General infrasructure.
28420         * m4/README: Rewritten.
28421         * m4/onceonly.m4: New file.
28422         * m4/onceonly_2_57.m4: New file.
28423
28424         Module atexit.
28425         * m4/atexit.m4: New file.
28426
28427         Module strtod.
28428         * m4/strtod.m4: New file.
28429
28430         Module strtol.
28431         * m4/strtol.m4: New file.
28432
28433         Module strtoul.
28434         * m4/strtoul.m4: New file.
28435
28436         Module memchr.
28437         * m4/memchr.m4: New file.
28438
28439         Module memcmp.
28440         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
28441         (jm_FUNC_MEMCMP): Invoke it.
28442
28443         Module memcpy.
28444         * m4/memcpy.m4: New file.
28445
28446         Module memmove.
28447         * m4/memmove.m4: New file.
28448
28449         Module memset.
28450         * m4/memset.m4: New file.
28451
28452         Module strcspn.
28453         * m4/strcspn.m4: New file.
28454
28455         Module strpbrk.
28456         * m4/strpbrk.m4: New file.
28457
28458         Module strstr.
28459         * m4/strstr.m4: New file.
28460
28461         Module strerror.
28462         * m4/strerror.m4: New file.
28463
28464         Module mktime.
28465         * m4/mktime.m4: Renamed from jm-mktime.m4.
28466         (gl_PREREQ_MKTIME): New macro.
28467         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
28468
28469         Module malloc.
28470         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
28471         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
28472         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
28473
28474         Module realloc.
28475         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
28476         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
28477         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
28478
28479         Module strftime.
28480         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
28481         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
28482         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
28483         gl_TM_GMTOFF.
28484         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
28485
28486         Module xalloc.
28487         * m4/xalloc.m4: New file.
28488
28489         Module alloca.
28490         * m4/alloca.m4: New file.
28491
28492         Module putenv.
28493         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
28494         (jm_FUNC_PUTENV): Invoke it.
28495
28496         Module setenv.
28497         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
28498         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
28499         when invoked twice.
28500         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
28501         gt_FUNC_SETENV.
28502
28503         Module memrchr.
28504         * m4/memrchr.m4: New file.
28505
28506         Module stpcpy.
28507         * m4/stpcpy.m4: New file.
28508
28509         Module strcase.
28510         * m4/strcase.m4: New file.
28511
28512         Module strdup.
28513         * m4/strdup.m4: New file.
28514
28515         Module strnlen.
28516         * m4/strnlen.m4: New file.
28517
28518         Module strndup.
28519         * m4/strndup.m4: New file.
28520
28521         Module xstrtod.
28522         * m4/xstrtod.m4: New file.
28523
28524         Module xstrtol.
28525         * m4/xstrtol.m4: New file.
28526
28527         Module getdate.
28528         * m4/getdate.m4: New file.
28529
28530         Module unlocked-io.
28531         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
28532         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
28533         * m4/jm-glibc-io.m4n: Remove file.
28534
28535         Module long-options.
28536         * m4/long-options.m4: New file.
28537
28538         Module md5.
28539         * m4/md5.m4: New file.
28540
28541         Module sha.
28542         * m4/sha.m4: New file.
28543
28544         Module getstr.
28545         * m4/getstr.m4: New file.
28546
28547         Module getline.
28548         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
28549         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
28550         <sys/types.h>, for size_t. Use the function name gnu_getline, not
28551         simply getline. Infoke gl_PREREQ_GETLINE.
28552
28553         Module obstack.
28554         * m4/obstack.m4: New file.
28555
28556         Module hash.
28557         * m4/hash.m4: New file.
28558
28559         Module readtokens.
28560         * m4/readtokens.m4: New file.
28561
28562         Module strverscmp.
28563         * m4/strverscmp.m4: New file.
28564
28565         Module stdbool.
28566         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
28567         OSF/1.
28568
28569         Module strtoll.
28570         * m4/strtoll.m4: New file.
28571
28572         Module strtoull.
28573         * m4/strtoull.m4: New file.
28574
28575         Module strtoimax.
28576         * m4/strtoimax.m4: New file.
28577
28578         Module strtoumax.
28579         * m4/strtoumax.m4: New file.
28580
28581         Module xstrtoimax.
28582         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
28583         jm_AC_PREREQ_XSTRTOIMAX.
28584         Moved the strtol prerequisites to strtol.m4.
28585         Moved the strtoll prerequisites to strtoll.m4.
28586         Moved the strtoimax prerequisites to strtoimax.m4.
28587
28588         Module xstrtoumax.
28589         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
28590         jm_AC_PREREQ_XSTRTOUMAX.
28591         Moved the strtoul prerequisites to strtoul.m4.
28592         Moved the strtoull prerequisites to strtoull.m4.
28593         Moved the strtoumax prerequisites to strtoumax.m4.
28594
28595         Module chown.
28596         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
28597         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
28598
28599         Module dup2.
28600         * m4/dup2.m4: New file.
28601
28602         Module ftruncate.
28603         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
28604         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
28605
28606         Module getgroups.
28607         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
28608         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
28609
28610         Module gettimeofday.
28611         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
28612         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
28613         gl_PREREQ_GETTIMEOFDAY.
28614
28615         Module mkdir.
28616         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
28617         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
28618
28619         Module mkstemp.
28620         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
28621         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
28622         jm_AC_TYPE_UINTMAX_T.
28623         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
28624
28625         Module stat.
28626         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
28627         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
28628
28629         Module lstat.
28630         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
28631         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
28632
28633         Module timespec.
28634         * m4/timespec.m4 (gl_TIMESPEC): New macro.
28635         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
28636         * m4/st_mtim.m4: Indentation.
28637
28638         Module nanosleep.
28639         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
28640         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
28641         gl_PREREQ_NANOSLEEP.
28642
28643         Module regex.
28644         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
28645         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
28646         (gl_REGEX): New macro.
28647
28648         Module rename.
28649         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
28650         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
28651
28652         Module rmdir.
28653         * m4/rmdir.m4: New file.
28654
28655         Module utime.
28656         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
28657         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
28658         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
28659
28660         Module dirname.
28661         * m4/dirname.m4: New file.
28662
28663         Module getopt.
28664         * m4/getopt.m4: New file.
28665
28666         Module unistd-safer.
28667         * m4/unistd-safer.m4: New file.
28668
28669         Module fnmatch.
28670         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
28671         declaration.
28672         (gl_PREREQ_FNMATCH_EXTRA): New macro.
28673         (gl_FUNC_FNMATCH_POSIX): New macro.
28674         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
28675         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
28676         simply fnmatch.
28677
28678         Module exclude.
28679         * m4/exclude.m4: New file.
28680
28681         Module human.
28682         * m4/human.m4: New file.
28683
28684         Module acl.
28685         * m4/acl.m4: Nop.
28686
28687         Module backupfile.
28688         * m4/backupfile.m4: New file.
28689         * m4/d-ino.m4: Indentation.
28690
28691         Module fsusage.
28692         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
28693         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
28694         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
28695
28696         Module dirfd.
28697         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
28698         requirements.
28699
28700         Module euidaccess.
28701         * m4/euidaccess.m4: New file.
28702
28703         Module file-type.
28704         * m4/file-type.m4: New file.
28705
28706         Module fileblocks.
28707         * m4/fileblocks.m4: New file.
28708
28709         Module filemode.
28710         * m4/filemode.m4: New file.
28711
28712         Module isdir.
28713         * m4/isdir.m4: New file.
28714
28715         Module lchown.
28716         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
28717         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
28718
28719         Module makepath.
28720         * m4/makepath.m4: New file.
28721
28722         Module modechange.
28723         * m4/modechange.m4: New file.
28724
28725         Module mountlist.
28726         * m4/mountlist.m4: New file.
28727         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
28728         Indentation.
28729
28730         Module path-concat.
28731         * m4/path-concat.m4: New file.
28732
28733         Module pathmax.
28734         * m4/pathmax.m4: New file.
28735
28736         Module same.
28737         * m4/same.m4: New file.
28738
28739         Module save-cwd.
28740         * m4/save-cwd.m4: New file.
28741
28742         Module savedir.
28743         * m4/savedir.m4: New file.
28744
28745         Module xgetcwd.
28746         * m4/xgetcwd.m4: New file.
28747         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
28748
28749         Module xreadlink.
28750         * m4/xreadlink.m4: New file.
28751
28752         Module safe-read.
28753         * m4/safe-read.m4: New file.
28754
28755         Module safe-write.
28756         * m4/safe-write.m4: New file.
28757
28758         Module closeout.
28759         * m4/closeout.m4: New file.
28760
28761         Module stdio-safer.
28762         * m4/stdio-safer.m4: New file.
28763
28764         Module getpass.
28765         * m4/getpass.m4: New file.
28766
28767         Module getugroups.
28768         * m4/getugroups.m4: New file.
28769
28770         Module group-member.
28771         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
28772         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
28773
28774         Module idcache.
28775         * m4/idcache.m4: New file.
28776
28777         Module userspec.
28778         * m4/userspec.m4: New file.
28779
28780         Module gettime.
28781         * m4/clock_time.m4: New file.
28782         * m4/gettime.m4: New file.
28783
28784         Module settime.
28785         * m4/settime.m4: New file.
28786
28787         Module posixtm.
28788         * m4/posixtm.m4: New file.
28789
28790         Module gethostname.
28791         * m4/gethostname.m4: New file.
28792
28793         Module canon-host.
28794         * m4/canon-host.m4: New file.
28795
28796         Module gettext.
28797         * m4/codeset.m4: New file, from gettext-0.11.5.
28798         * m4/gettext.m4: New file, from gettext-0.11.5.
28799         * m4/glibc21.m4: New file, from gettext-0.11.5.
28800         * m4/iconv.m4: New file, from gettext-0.11.5.
28801         * m4/intdiv0.m4: New file, from gettext-0.11.5.
28802         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
28803         * m4/inttypes.m4: New file, from gettext-0.11.5.
28804         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
28805         * m4/isc-posix.m4: New file, from gettext-0.11.5.
28806         * m4/lcmessage.m4: New file, from gettext-0.11.5.
28807         * m4/lib-ld.m4: New file, from gettext-0.11.5.
28808         * m4/lib-link.m4: New file, from gettext-0.11.5.
28809         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
28810         * m4/progtest.m4: New file, from gettext-0.11.5.
28811         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
28812         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
28813         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
28814
28815         Module localcharset.
28816         * m4/localcharset.m4: New file.
28817
28818         Module hard-locale.
28819         * m4/hard-locale.m4: New file.
28820
28821         Module mbswidth.
28822         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
28823         onceonly macros.
28824         * m4/mbrtowc.m4: Add comment.
28825
28826         Module memcasecmp.
28827         * m4/memcasecmp.m4: New file.
28828
28829         Module memcoll.
28830         * m4/memcoll.m4: New file.
28831
28832         Module unicodeio.
28833         * m4/unicodeio.m4: New file.
28834
28835         Module rpmatch.
28836         * m4/rpmatch.m4: New file.
28837
28838         Module yesno.
28839         * m4/yesno.m4: New file.
28840
28841         Module exitfail.
28842         * m4/exitfail.m4: New file.
28843
28844         Module c-stack.
28845         * m4/c-stack.m4 (gl_C_STACK): New macro.
28846         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
28847
28848         Module error.
28849         * m4/error.m4 (gl_ERROR): New macro.
28850         (jm_PREREQ_ERROR): Use onceonly macros.
28851
28852         Module fatal.
28853         * m4/fatal.m4: New file.
28854
28855         Module getloadavg.
28856         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
28857         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
28858
28859         Module getpagesize.
28860         * m4/getpagesize.m4: New file.
28861
28862         Module getusershell.
28863         * m4/getusershell.m4: New file.
28864
28865         Module physmem.
28866         * m4/physmem.m4: New file.
28867
28868         Module posixver.
28869         * m4/posixver.m4: New file.
28870
28871         Module quotearg.
28872         * m4/quotearg.m4: New file.
28873
28874         Module quote.
28875         * m4/quote.m4: New file.
28876
28877         Module readutmp.
28878         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
28879
28880         Module sig2str.
28881         * m4/sig2str.m4: New file.
28882
28883         Other.
28884         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
28885         ulonglong.m4.
28886         * m4/intmax_t.m4: New file.
28887         * m4/d-type.m4: Indentation.
28888         * m4/jm-macros.m4: Update.
28889         * m4/prereq.m4 (jm_PREREQ): Update.
28890         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
28891         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
28892         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
28893         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
28894         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
28895         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
28896         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
28897         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
28898         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
28899         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
28900         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
28901         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
28902         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
28903         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
28904         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
28905         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
28906         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
28907         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
28908         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
28909
28910 2002-12-24  Bruno Haible  <bruno@clisp.org>
28911
28912         * MODULES.txt: Update according to m4/ changes.
28913
28914         Module gettext.
28915         * config.rpath: New file, from gettext-0.11.5.
28916
28917         * modules/*: New module descriptions.
28918         * gnulib-tool: New file.
28919         * MODULES.html.sh: New file.
28920
28921 2002-12-21  Karl Berry  <karl@gnu.org>
28922
28923         * doc/fdl.texi: update to version 1.2.
28924
28925 2002-12-19  Karl Berry  <karl@gnu.org>
28926
28927         * config/config.guess: update from prep.
28928
28929 2002-12-18  Bruno Haible  <bruno@clisp.org>
28930
28931         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
28932         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
28933
28934 2002-12-17  Bruno Haible  <bruno@clisp.org>
28935
28936         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
28937         stdlib.h, string.h.
28938
28939 2002-12-17  Bruno Haible  <bruno@clisp.org>
28940
28941         * lib/canon-host.c (strdup): Remove unused declaration.
28942
28943         * lib/fsusage.c: Include full_read.h.
28944         (get_fs_usage): Use full_read instead of safe_read.
28945
28946         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
28947
28948 2002-12-12  Karl Berry  <karl@gnu.org>
28949
28950         * config/config.guess: update from prep.
28951
28952 2002-12-11  Bruno Haible  <bruno@clisp.org>
28953
28954         * m4/setenv.m4: New file, from gettext-0.11.5.
28955
28956 2002-12-11  Bruno Haible  <bruno@clisp.org>
28957
28958         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
28959         not unsetenv().
28960         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
28961         modifications:
28962
28963         2002-12-11  Bruno Haible  <bruno@clisp.org>
28964
28965                 * setenv.c (alloca): Fall back to malloc.
28966                 (freea): New macro.
28967                 (setenv): Use freea() to free memory allocated with alloca().
28968
28969         2002-11-13  Bruno Haible  <bruno@clisp.org>
28970
28971                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
28972                 function declarations.
28973                 * unsetenv.c (unsetenv): Likewise.
28974
28975         2002-03-04  Bruno Haible  <bruno@clisp.org>
28976
28977                 Portability to AIX 4.3.3.
28978                 * unsetenv.c: New file, extracted from setenv.c.
28979                 * setenv.c: Move the unsetenv() function to unsetenv.c.
28980
28981         2001-12-20  Bruno Haible  <bruno@clisp.org>
28982
28983                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
28984                 use malloc instead. For SunOS 4.
28985
28986         2001-12-11  Bruno Haible  <bruno@clisp.org>
28987
28988                 * setenv.c: Declare alloca.
28989                 (compar_fn_t): New typedef.
28990                 (KNOWN_VALUE, STORE_VALUE): Use it.
28991
28992         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
28993         setenv.h.
28994
28995 2002-12-10  Paul Eggert  <eggert@twinsun.com>
28996
28997         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
28998         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
28999         Choose values that are less likely to collide with system fnmatch
29000         options.
29001         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
29002         defined (e.g., a pure POSIX system).
29003         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
29004         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
29005
29006 2002-12-06  Paul Eggert  <eggert@twinsun.com>
29007
29008         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
29009         a pain in practice to deal with generated m4 files.  This change
29010         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
29011
29012         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
29013         and jm-glibc-io.m4, as they are no longer a special case.
29014         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
29015         kludge and the auto-generation stuff.  Check only whether the
29016         functions are declared, not whether they exist, since older hosts
29017         that don't declare the functions can't use the optimization anyway.
29018
29019 2002-12-06  Jim Meyering  <jim@meyering.net>
29020
29021         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
29022
29023         Merge in changes from libc's misc/error.c, in preparation
29024         for the merge of gnulib's changes back into libc.
29025
29026         * lib/error.c (_): Define only if not already defined.
29027         Move definition to follow all #include directives.
29028         Include unlocked-io.h only if !_LIBC.
29029         [_LIBC]: Include <libio/libioP.h>.
29030         [USE_IN_LIBIO]: Include <libio/iolibio.h>
29031         (fflush): Tweak definition to use INTUSE.
29032         (putc): Define.
29033
29034 2002-12-05  Paul Eggert  <eggert@twinsun.com>
29035
29036         * lib/alloca.c [defined emacs]: Include "lisp.h".
29037         (xalloc_die) [defined emacs]: New macro.
29038         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
29039         [! defined emacs]: Include <xalloc.h>.
29040         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
29041         (pointer): Typedef to POINTER_TYPE *.
29042         (malloc): Remove decl; we now always use xmalloc.
29043         (alloca): Use old-style definition, since Emacs needs this.
29044         Check for arithmetic overflow when computing combined size.
29045
29046 2002-12-04  Paul Eggert  <eggert@twinsun.com>
29047
29048         Do not generate unlocked-io.h automatically, since it's easier to
29049         maintain it by hand.
29050
29051         * lib/unlocked-io.h: New file, from GNU diffutils,
29052         but with proper copyright notice and attribution.
29053         * lib/gen-uio: Remove.
29054         * lib/Makefile.am: Add copyright notice.
29055         (libfetish_a_SOURCES): Add unlocked-io.h.
29056         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
29057         (DISTCLEANFILES, io_functions): Remove macros.
29058         (EXTRA_DIST): Remove gen_uio.
29059         (unlocked-io.h): Remove rule.
29060
29061 2002-12-04  Jim Meyering  <jim@meyering.net>
29062
29063         Reflect the fact that stat.c and lstat.c are no longer generated.
29064         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
29065         (DISTCLEANFILES): Likewise.
29066         (EXTRA_DIST): Likewise.
29067         (all_local): Don't depend on stat.c or lstat.c.
29068         (stat.c, lstat.c): Remove rules.
29069         (EXTRA_DIST): Remove xstat.in.
29070
29071         * lib/xstat.in: Remove file.  Contents moved into stat.c.
29072         * lib/stat.c: New file.  Contents mostly from xstat.in.
29073         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
29074         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
29075
29076         * lib/safe-read.c: Rework so that it may serve to define safe_write,
29077         too.
29078         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
29079
29080 2002-12-03  Jim Meyering  <jim@meyering.net>
29081
29082         * lib/safe-read.c, safe-write.c: Change variable names and comments,
29083         but not semantics, to minimize the differences between these two files.
29084         (safe_read): Change comment to mention SAFE_READ_ERROR.
29085
29086         * lib/safe-read.c (IS_EINTR): Define.
29087         (safe_read): Use IS_EINTR in place of in-function cpp directives.
29088
29089 2002-12-02  Jim Meyering  <jim@meyering.net>
29090
29091         * lib/safe-read.c (EINTR): Define.
29092         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
29093         (INT_MAX): Provide fallback.
29094         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
29095
29096         * lib/safe-read.h (SAFE_READ_ERROR): Define.
29097
29098 2002-12-02  Bruno Haible  <bruno@clisp.org>
29099
29100         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
29101         Define, taken from safe-read.c.
29102         (INT_MAX): Provide fallback.
29103         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
29104         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
29105
29106         * lib/safe-read.c (EINTR): Remove definition.
29107         (safe_read): Don't use EINTR if it is absent.
29108
29109 2002-12-01  Jim Meyering  <jim@meyering.net>
29110
29111         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
29112         zero.
29113         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
29114
29115 2002-11-27  Paul Eggert  <eggert@twinsun.com>
29116
29117         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
29118         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
29119         with `if (! (value < limit)) abort ();', for readability.
29120
29121 2002-11-26  Karl Berry  <karl@gnu.org>
29122
29123         * lib/strdup.c: copy from libc again, with jim's ok.
29124         * lib/.cppi-disable: re-add strdup.c
29125
29126 2002-11-25  Karl Berry  <karl@gnu.org>
29127
29128         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
29129         instead of "strtol.c".
29130
29131 2002-11-25  Karl Berry  <karl@gnu.org>
29132
29133         * config/install-sh: update from automake for variable quoting, $0 in
29134         error msgs, etc.
29135
29136         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
29137         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
29138         entry.
29139
29140 2002-11-25  Jim Meyering  <jim@meyering.net>
29141
29142         * lib/mktime.c: Sync from libc, now that it has the latest fix.
29143
29144 2002-11-24  Karl Berry  <karl@gnu.org>
29145
29146         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
29147         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
29148
29149 2002-11-24  Jim Meyering  <jim@meyering.net>
29150
29151         Update from coreutils:
29152
29153         * lib/mktime.c: Merge in changes from libc.
29154
29155         Avoid a link-time failure on some Linux systems.
29156         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
29157         (otherwise).
29158         (__mon_yday): Declare with the STATIC attribute.
29159         (__mktime_internal): Likewise.
29160         Based on a report from Greg Schafer.
29161
29162 2002-11-23  Jim Meyering  <jim@meyering.net>
29163
29164         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
29165         Use `unsigned', not `int', as type of index.
29166
29167         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
29168
29169         * lib/fsusage.c: Remove unneeded parentheses around operands of
29170         `defined'.
29171
29172 2002-11-22  Paul Eggert  <eggert@twinsun.com>
29173
29174         * lib/quotearg.h: Allow multiple inclusion by surrounding with
29175         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
29176         so that we can be included first.
29177         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
29178         * lib/quotearg.c: Include quotearg.h immediately after config.h.
29179         No need to include stddef.h or sys/types.h any more.
29180         Surround local include files with "", not "<>".
29181         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
29182         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
29183         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
29184         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
29185         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
29186         (ISPRINT): Remove; no longer needed now that we assume C89.
29187
29188         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
29189         Preserve errno.
29190
29191         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
29192         quotearg_char): Use SIZE_MAX rather than
29193         (size_t) -1 when we are talking about "infinity".
29194
29195         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
29196
29197 2002-11-22  Paul Eggert  <eggert@twinsun.com>
29198
29199         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
29200         hint that one should use `if (! x) abort ();' rather than `assert
29201         (x);', and anyway it's one less thing to worry about configuring.
29202         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
29203         hash_rehash, hash_insert): Use abort rather than assert.
29204
29205 2002-11-22  Bruno Haible  <bruno@clisp.org>
29206
29207         * lib/safe-read.h: Assume C89. Add comments.
29208         (safe_read): Change return type to size_t.
29209         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
29210         byte counts > SSIZE_MAX correctly.
29211         * lib/safe-write.h: New file.
29212         * lib/safe-write.c: New file.
29213         * lib/full-read.h: New file.
29214         * lib/full-read.c: New file.
29215         * lib/full-write.h: Assume C89. Add comments.
29216         * lib/full-write.c: Include safe-write.h.
29217         (full_write): Rewritten to use safe_write.
29218         Suggested by Jim Meyering and Paul Eggert.
29219
29220 2002-11-21  Jim Meyering  <jim@meyering.net>
29221
29222         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
29223
29224         Merge in changes from the coreutils.
29225
29226         2002-09-25  Paul Eggert  <eggert@twinsun.com>
29227         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
29228         <stdint.h>.
29229         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
29230         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
29231         int.  Work more efficiently if X is the same width as uintmax_t.
29232         Do not compare X to -1, to avoid bogus compiler warning.
29233         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
29234         Don't assume that f_frsize and f_bsize are the same type.
29235
29236         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
29237         warning on FreeBSD.
29238
29239         * lib/makepath.c (make_path): Restore umask *before* creating the final
29240         component.
29241         (make_path): Minor reformatting.
29242
29243         * lib/xmalloc.c: Adjust to work with new autoconf macros,
29244         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
29245         HAVE_MALLOC/HAVE_REALLOC.
29246
29247         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
29248         dummy ones.  At least on GNU/Linux systems, `auto' means something
29249         else.
29250         From Michael Stone.
29251
29252 2002-11-21  Bruno Haible  <bruno@clisp.org>
29253
29254         Remove case insensitive option matching.
29255         * lib/argmatch.h (argcasematch): Remove declaration.
29256         (ARGCASEMATCH): Remove macro.
29257         (__xargmatch_internal): Remove case_sensitive argument.
29258         (XARGMATCH): Update.
29259         (XARGCASEMATCH): Remove macro.
29260         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
29261         case_sensitive argument.
29262         (argcasematch): Remove function.
29263         (__xargmatch_internal): Remove case_sensitive argument.
29264         (main): Use XARGMATCH instead of XARGCASEMATCH.
29265
29266         * lib/xmalloc.c: Change compile-time error message. Add comment about
29267         required autoconf version.
29268
29269 2002-11-20  Paul Eggert  <eggert@twinsun.com>
29270
29271         Merge argmatch cleanups from Bison.  Assume C89.
29272
29273         * lib/argmatch.c: Include config.h here, not in argmatch.h.
29274         Include stdlib.h, for EXIT_FAILURE.
29275         Always include <string.h>, since we assume C89.
29276         (EXIT_FAILURE): Remove pre-C89 bug workaround.
29277         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
29278         Include <stddef.h> instead, since it's all we need for size_t.
29279         (PARAMS): Remove.  All uses removed.
29280         (ARRAY_CARDINALITY): Do not bother to #undef.
29281         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
29282         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
29283         Remove unnecessary parentheses.
29284         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
29285         Insert necessary parentheses.
29286         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
29287         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
29288
29289 2002-11-19  Bruno Haible  <bruno@clisp.org>
29290
29291         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
29292         * lib/mbswidth.h: Include <stddef.h>, for size_t.
29293
29294         * lib/mbswidth.h (PARAMS): Remove macro.
29295         (mbswidth, mbsnwidth): Use ANSI C function declarations.
29296         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
29297
29298         * lib/gcd.h (PARAMS): Remove macro.
29299         (gcd): Use ANSI C function declarations.
29300         * lib/gcd.c (gcd): Likewise.
29301
29302 2002-11-15  Bruno Haible  <bruno@clisp.org>
29303
29304         * lib/strcspn.c: Include <stddef.h>.
29305         (strcspn): Use ANSI C function declaration. Change return type to
29306         size_t. Use NULL.
29307         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
29308         (strpbrk): Use NULL.
29309         * lib/strpbrk.h (PARAMS): Remove macro.
29310         (strpbrk): Use ANSI C function declaration.
29311         * lib/strstr.c: Don't include <sys/types.h>.
29312         * lib/strstr.h (PARAMS): Remove macro.
29313         (strstr): Use ANSI C function declarations.
29314
29315 2002-11-14  Karl Berry  <karl@gnu.org>
29316
29317         * config/mkinstalldirs: `do' on separate line, instead of
29318         `for var; do'.
29319
29320 2002-11-06  Bruno Haible  <bruno@clisp.org>
29321
29322         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
29323         * lib/gcd.c (gcd): Likewise.
29324
29325 2002-11-05  Bruno Haible  <bruno@clisp.org>
29326
29327         * lib/gcd.h: New file, from gettext-0.11.5.
29328         * lib/gcd.c: New file, from gettext-0.11.5.
29329
29330 2002-11-05  Bruno Haible  <bruno@clisp.org>
29331
29332         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
29333         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
29334         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
29335         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
29336
29337         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
29338         <libintl.h>.
29339         * lib/makepath.c: Include gettext.h instead of <locale.h> and
29340         <libintl.h>.
29341
29342         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
29343         * lib/human.c: Include gettext.h instead of <libintl.h>.
29344         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
29345         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
29346         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
29347         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
29348         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
29349         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
29350         (textdomain): Remove definition.
29351         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
29352
29353         * lib/long-options.c: Remove include of <libintl.h> and definition of
29354         _.
29355         * lib/same.c: Remove include of <libintl.h> and definition of _.
29356
29357 2002-11-04  Owen Taylor  <otaylor@redhat.com>
29358
29359         * lib/config.charset: A few additions for Solaris.
29360
29361 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
29362
29363         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
29364         * lib/localcharset.c (locale_charset): Declare as extern "C".
29365
29366 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
29367
29368         * lib/config.charset: msdos in uk_UA uses CP1125.
29369
29370 2002-11-04  Bruno Haible  <bruno@clisp.org>
29371
29372         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
29373         * lib/strcase.h: New file, from GNU gettext-0.11.5.
29374         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
29375         * lib/strstr.h: New file, from GNU gettext-0.11.5.
29376         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
29377
29378 2002-11-04  Bruno Haible  <bruno@clisp.org>
29379
29380         * lib/localcharset.c (locale_charset): Don't return an empty string.
29381
29382 2002-11-04  Bruno Haible  <bruno@clisp.org>
29383
29384         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
29385         aliases.
29386
29387 2002-11-04  Bruno Haible  <bruno@clisp.org>
29388
29389         * lib/config.charset: Update for newest glibc. Add canonical names
29390         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
29391
29392 2002-11-04  Bruno Haible  <bruno@clisp.org>
29393
29394         * lib/config.charset: Add support for NetBSD.
29395
29396 2002-11-04  Bruno Haible  <bruno@clisp.org>
29397
29398         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
29399
29400 2002-11-01  Bruno Haible  <bruno@clisp.org>
29401
29402         * configure.in: Add AC_CONFIG_AUX_DIR call.
29403         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
29404         test/Makefile.
29405         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
29406
29407 2002-09-28  Karl Berry  <karl@gnu.org>
29408
29409         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
29410         installed automake until the next release, since changes have been
29411         made.
29412
29413 2002-09-25  Karl Berry  <karl@gnu.org>
29414
29415         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
29416         * lib/getopt*: copy from libc/posix.
29417         * lib/gettext.h: copy from gettext.
29418         * lib/.cppi-disable: add strdup.c, gettext.h.
29419
29420 2002-09-25  Karl Berry  <karl@gnu.org>
29421
29422         * config/srclist.txt: enable gettext.h check.
29423         * config/config.{guess,sub}: update from prep.
29424         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
29425                 from automake 1.6.3.
29426         See srclist*.
29427
29428 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
29429
29430         * regex.c (PATFETCH): Remove the translating fetch.
29431         (PATFETCH_RAW): Rename to PATFETCH.
29432         (set_image_of_range): New fun.
29433         (SET_RANGE_TABLE_WORK_AREA): Use it.
29434         (regex_compile): Don't translate the pattern chars so eagerly.
29435         Only do it when inserting an `exactn' bytecode or when handling
29436         a char-range.
29437         (mutually_exclusive_p): Avoid empty statement.
29438
29439 2002-07-06  Jim Meyering  <meyering@lucent.com>
29440
29441         * m4/README: Don't mention Makefile.am.in.
29442         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
29443
29444 2002-07-01  Jim Meyering  <meyering@lucent.com>
29445
29446         * lib/c-stack.c: Include sys/time.h.
29447         From Volker Borchert.
29448
29449 2002-06-26  Paul Eggert  <eggert@twinsun.com>
29450
29451         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
29452
29453 2002-06-26  Paul Eggert  <eggert@twinsun.com>
29454
29455         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
29456         New macro.  Use it uniformly instead of
29457         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
29458         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
29459         reported by Vin Shelton.
29460
29461 2002-06-22  Paul Eggert  <eggert@twinsun.com>
29462
29463         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
29464         Do not assume SA_SIGINFO behavior.
29465         Bug reported by Jim Meyering on NetBSD 1.5.2.
29466
29467 2002-06-22  Jim Meyering  <meyering@lucent.com>
29468
29469         * m4/c-stack.m4: New file, from diffutils-2.8.2.
29470         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
29471
29472         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
29473         now that configure.ac uses AC_GNU_SOURCE.
29474         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
29475         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
29476
29477         Update to latest tools.  Suggestions from Paul Eggert.
29478         * m4/stdbool.m4: New file, from diffutils-2.8.2.
29479         * m4/gnu-source.m4: Update from diffutils-2.8.2.
29480         * m4/fnmatch.m4: Likewise.
29481         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
29482         to AC_HEADER_STDBOOL
29483
29484 2002-06-22  Jim Meyering  <meyering@lucent.com>
29485
29486         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
29487         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
29488
29489 2002-06-22  Jim Meyering  <meyering@lucent.com>
29490
29491         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
29492
29493         * lib/exitfail.c, exitfail.h: Likewise.
29494         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
29495
29496         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
29497         of fnmatch.h.
29498         (EXTRA_DIST): Add fnmatch_loop.c.
29499         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
29500
29501         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
29502         * lib/fnmatch.c: Update from diffutils-2.8.2.
29503         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
29504         * lib/fnmatch.h: Remove file.
29505
29506 2002-06-21  Jim Meyering  <meyering@lucent.com>
29507
29508         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
29509         * m4/mbrtowc.m4: Likewise.
29510
29511         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
29512         * m4/mbswidth.m4: Reflect name change:
29513         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
29514         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
29515
29516         * m4/lib-link.m4: Update from gettext-0.11.2.
29517         * m4/gettext.m4: Likewise.
29518
29519         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
29520         From Alfred M. Szmidt.
29521
29522 2002-06-18  Paul Eggert  <eggert@twinsun.com>
29523
29524         * lib/file-type.h: Report an error if neither S_ISREG nor
29525         S_IFREG is defined, instead of using a test specific to glibc
29526         2.2.  This should be safe, since POSIX requires S_ISREG and
29527         Unix Version 7 had S_IFREG.  We don't need to check for
29528         <sys/types.h> since we don't use any symbols that it defines.
29529
29530 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
29531
29532         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
29533         $@-t, so that each temporary file name is unique and valid in the first
29534         8 characters, for operation under DOS.
29535
29536 2002-06-15  Paul Eggert  <eggert@twinsun.com>
29537
29538         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
29539
29540 2002-06-15  Jim Meyering  <meyering@lucent.com>
29541
29542         Work even with DJGPP 2.03, which lacks support for symlinks.
29543         From Richard Dawe.
29544         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
29545         is defined.
29546         * lib/lchown.c (S_ISLNK): Likewise.
29547
29548 2002-06-15  Jim Meyering  <meyering@lucent.com>
29549
29550         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
29551         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
29552         have been included before this file.
29553
29554 2002-06-14  Jim Meyering  <meyering@lucent.com>
29555
29556         * lib/file-type.h: Use the version from diffutils-2.8.2.
29557         * lib/file-type.c: Likewise.
29558
29559 2002-06-07  Jim Meyering  <meyering@lucent.com>
29560
29561         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
29562         They're needed at least for NetBSD 1.5.2.
29563         ($statxfs_includes): Include those same headers.
29564         ($statxfs_includes): Include sys/vfs.h if available.
29565         ($statxfs_includes): Likewise for sys/statvfs.h.
29566         Check for the following members in both structs statfs and statvfs:
29567         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
29568
29569 2002-06-01  Jim Meyering  <meyering@lucent.com>
29570
29571         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
29572         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
29573
29574 2002-05-28  Jim Meyering  <meyering@lucent.com>
29575
29576         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
29577         Reported by Volker Borchert.
29578
29579 2002-05-27  Jim Meyering  <meyering@lucent.com>
29580
29581         Fix a problem seen only on nonconforming systems whereby ls.c's
29582         use of localtime, and then of gettimeofday would cause trouble:
29583         the localtime call used to initialize rpl_gettimeofday's save
29584         mechanism would clobber ls's current local time information so
29585         that in any long listing the first file would always be listed
29586         with date 1970-01-01.  Analysis by Volker Borchert.
29587
29588         * lib/gettimeofday.c (localtime): Undefine.
29589         (rpl_localtime): New function.
29590
29591 2002-05-27  Jim Meyering  <meyering@lucent.com>
29592
29593         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
29594         localtime.
29595
29596         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
29597         use the replacement function; it wouldn't resolve at link time.
29598         Reported by Volker Borchert.
29599
29600 2002-05-22  Jim Meyering  <meyering@lucent.com>
29601
29602         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
29603         file-type.h.
29604         * lib/file-type.h: New file.
29605         * lib/file-type.c (file_type): New file/function.  Extracted from
29606         diffutils.
29607
29608 2002-04-30  Jim Meyering  <meyering@lucent.com>
29609
29610         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
29611
29612 2002-04-29  Paul Eggert  <eggert@twinsun.com>
29613
29614         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
29615
29616 2002-04-29  Paul Eggert  <eggert@twinsun.com>
29617
29618         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
29619         Do not check for alloca.h (no longer used) or stdbool.h (was never
29620         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
29621
29622 2002-04-29  Paul Eggert  <eggert@twinsun.com>
29623
29624         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
29625
29626 2002-04-29  Jim Meyering  <meyering@lucent.com>
29627
29628         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
29629         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
29630         Use AC_FUNC_STRNLEN here instead.
29631
29632         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
29633         With autoconf-2.53a, it's part of AC_PROG_CC.
29634
29635 2002-04-28  Paul Eggert  <eggert@twinsun.com>
29636
29637         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
29638         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
29639
29640 2002-04-28  Paul Eggert  <eggert@twinsun.com>
29641
29642         * lib/sig2str.h, lib/sig2str.c: New files.
29643         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
29644
29645 2002-04-28  Paul Eggert  <eggert@twinsun.com>
29646
29647         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
29648         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
29649         of 127, since 64 is the largest conceivable number for ancient
29650         nonstandard hosts.
29651         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
29652
29653 2002-04-28  Jim Meyering  <meyering@lucent.com>
29654
29655         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
29656
29657 2002-04-24  Jim Meyering  <meyering@lucent.com>
29658
29659         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
29660         (jm_PREREQ): Use it.
29661
29662         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
29663         mach/mach.h fcntl.h.
29664         Check for this function: setlocale.
29665
29666 2002-04-24  Jim Meyering  <meyering@lucent.com>
29667
29668         * lib/gettext.h: New file, from Gettext.
29669         * lib/Makefile.am (INCLUDES): Remove -I../intl.
29670         (libfetish_a_SOURCES): Add gettext.h.
29671
29672 2002-04-16  Jim Meyering  <meyering@lucent.com>
29673
29674         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
29675         ut_pid, ut_id, ut_exit.
29676
29677 2002-04-16  Jim Meyering  <meyering@lucent.com>
29678
29679         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
29680         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
29681         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
29682
29683 2002-04-12  Jim Meyering  <meyering@lucent.com>
29684
29685         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
29686         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
29687         existence of the getmntinfo function.  Needed for Darwin 5.3.
29688
29689         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
29690         This is necessary at least on Darwin 5.3.
29691
29692         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
29693         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
29694         strnlen.o in the library, and that makes some versions of ranlib
29695         object.
29696
29697 2002-04-12  Jim Meyering  <meyering@lucent.com>
29698
29699         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
29700
29701 2002-04-09  Jim Meyering  <meyering@lucent.com>
29702
29703         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
29704         to be more precise.  Rather than saying we're checking whether the
29705         function `works', say what we're testing.
29706         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
29707         Reported by Bruno Haible.
29708
29709 2002-03-10  Jim Meyering  <meyering@lucent.com>
29710
29711         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
29712         Suggestion from Santiago Vila.
29713
29714 2002-03-08  Jim Meyering  <meyering@lucent.com>
29715
29716         * lib/rename.c: Mention that this wrapper is needed also on
29717         mips-dec-ultrix4.4 systems.
29718
29719 2002-03-02  Jim Meyering  <meyering@lucent.com>
29720
29721         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
29722         not HAVE_CLOCK_SETTIME.
29723
29724 2002-02-27  Paul Eggert  <eggert@twinsun.com>
29725
29726         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
29727         Check for clock_settime.
29728
29729 2002-02-27  Paul Eggert  <eggert@twinsun.com>
29730
29731         * lib/nanosleep.h: Rename to....
29732         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
29733
29734         * lib/gettime.c: New file.
29735         * lib/settime.c: New file.
29736         * lib/stime.c: Remove.
29737
29738         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
29739         timespec.h.  Remove nanosleep.h.
29740
29741 2002-02-25  Paul Eggert  <eggert@twinsun.com>
29742
29743         * m4/acl.m4: New file.
29744         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
29745         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
29746
29747 2002-02-25  Paul Eggert  <eggert@twinsun.com>
29748
29749         * lib/acl.c, lib/acl.h: New files.
29750         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
29751
29752 2002-02-24  Jim Meyering  <meyering@lucent.com>
29753
29754         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
29755         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
29756         cause trouble.  Reported by Nelson Beebe.
29757
29758 2002-02-23  Paul Eggert  <eggert@twinsun.com>
29759
29760         * lib/path-concat.c (xpath_concat): Reorder code to pacify
29761         compilers that don't know that xalloc_die never returns.
29762
29763 2002-02-20  Jim Meyering  <meyering@lucent.com>
29764
29765         * lib/getdate.c: Regenerate using bison-1.33.
29766
29767 2002-02-17  Jim Meyering  <meyering@lucent.com>
29768
29769         * config/config.guess (main): Don't use `head -1'; it's no longer
29770         portable. Use `sed 1q' instead.
29771
29772 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
29773
29774         * m4/codeset.m4: Upgrade to gettext-0.11.
29775         * m4/gettext.m4: Upgrade to gettext-0.11.
29776         * m4/glibc21.m4: Upgrade to gettext-0.11.
29777         * m4/iconv.m4: Upgrade to gettext-0.11.
29778         * m4/isc-posix.m4: Upgrade to gettext-0.11.
29779         * m4/lcmessage.m4: Upgrade to gettext-0.11.
29780         * m4/lib-ld.m4: New file, from gettext-0.11.
29781         * m4/lib-link.m4: New file, from gettext-0.11.
29782         * m4/lib-prefix.m4: New file, from gettext-0.11.
29783         * m4/progtest.m4: Upgrade to gettext-0.11.
29784
29785 2002-02-15  Paul Eggert  <eggert@twinsun.com>
29786
29787         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
29788         (jm_PREREQ): Use it.
29789
29790 2002-02-15  Paul Eggert  <eggert@twinsun.com>
29791
29792         * lib/posixver.c, lib/posixver.h: New files.
29793         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
29794
29795 2002-02-02  Paul Eggert  <eggert@twinsun.com>
29796             Bruno Haible  <bruno@clisp.org>
29797
29798         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
29799         (fwrite_success_callback): New declaration.
29800         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
29801         print_unicode_char. Call failure callback instead of error.
29802         (fwrite_success_callback): New function.
29803         (exit_failure_callback): New function.
29804         (fallback_failure_callback): New function.
29805         (print_unicode_char): Call unicode_to_mb.
29806
29807 2002-01-26  Jim Meyering  <meyering@lucent.com>
29808
29809         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
29810         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
29811
29812 2002-01-26  Jim Meyering  <meyering@lucent.com>
29813
29814         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
29815
29816 2002-01-22  Paul Eggert  <eggert@twinsun.com>
29817
29818         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
29819
29820 2002-01-22  Jim Meyering  <meyering@lucent.com>
29821
29822         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
29823         Otherwise, some versions of automake would omit the rule that makes
29824         Makefile from Makefile.in.
29825
29826 2002-01-21  Paul Eggert  <eggert@twinsun.com>
29827
29828         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
29829         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
29830         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
29831         (memcoll): Set errno to zero if there is no error.
29832
29833         * lib/quotearg.c (quotearg_buffer_restyled):
29834         Fix bug with quoting buffers containing NUL when backslashing escapes.
29835         This bug was exposed by the other changes in this patch.
29836         (quotearg_n_options): New arg ARGSIZE.
29837         All callers changed.
29838         (quoting_options_from_style): New function.
29839         (quotearg_n_style): Use it.
29840         (quotearg_n_style_mem): New function.
29841
29842         * lib/quotearg.h (quotearg_n_style_mem): New function.
29843
29844 2002-01-19  Jim Meyering  <meyering@lucent.com>
29845
29846         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
29847         Remove useless quotes: DF_PROG="df".
29848         * m4/strnlen.m4: New file.
29849
29850 2002-01-16  Paul Eggert  <eggert@twinsun.com>
29851
29852         * lib/backupfile.c (ISDIGIT): Comment fix.
29853         * lib/getdate.y (ISDIGIT): Likewise.
29854         * lib/posixtm.c (ISDIGIT, year): Likewise.
29855         * lib/strverscmp.c (ISDIGIT): Likewise.
29856         * lib/userspec.c (ISDIGIT): Likewise.
29857
29858 2002-01-16  Jim Meyering  <meyering@lucent.com>
29859
29860         * lib/getdate.y: Add three semicolons, each just before a closing
29861         brace. Bison (as of version 1.31) no longer papers over that mistake.
29862
29863 2002-01-05  Jim Meyering  <meyering@lucent.com>
29864
29865         * lib/version-etc.c (version_etc_copyright): Update copyright year.
29866
29867 2001-12-19  Paul Eggert  <eggert@twinsun.com>
29868
29869         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
29870         not silently exit merely because the output buffer happens to
29871         have nothing pending.
29872
29873 2001-12-18  Paul Eggert  <eggert@twinsun.com>
29874
29875         See the big note in ../ChangeLog.
29876         * lib/human.c (suffixes): Prefer K to k for 1024.
29877         (generate_suffix_backwards): New function.
29878         (human_readable_inexact): Use it.
29879         * lib/xstrtol.c (__xstrtol): If there is no number but there
29880         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
29881         Accept 'K' as well as 'k'.
29882
29883 2001-12-15  Jim Meyering  <meyering@lucent.com>
29884
29885         * lib/regex.h (__restrict_arr): Update from libc.
29886
29887         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
29888         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
29889         (STREQ): Define.
29890
29891 2001-12-14  Jim Meyering  <meyering@lucent.com>
29892
29893         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
29894         Suggestion from Bruno Haible.
29895
29896 2001-12-10  Jim Meyering  <meyering@lucent.com>
29897
29898         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
29899         xrealloc, Instead, include "xalloc.h".
29900         (initbuffer): Don't cast xmalloc return value to char*.
29901         (readline): Reword comment.
29902         Don't cast xrealloc return value to char*
29903         Return NULL, not 0.
29904
29905 2001-12-09  Jim Meyering  <meyering@lucent.com>
29906
29907         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
29908         about `signed and unsigned type in conditional expression'.
29909         * lib/posixtm.c (posix_time_parse): Likewise.
29910
29911         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
29912
29913         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
29914         to avoid a pedantic warning.
29915
29916         * lib/getstr.c: Don't include assert.h.
29917         (getstr): Remove warning-evoking assertions.
29918         Return -1 if offset parameter is out of bounds.
29919         Change the type of a local from int to size_t.
29920
29921         * lib/strftime.c (my_strftime_localtime_r): Include this function
29922         definition in the `#if ! HAVE_TM_GMTOFF' block.
29923
29924         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
29925         Include xalloc.h instead.
29926
29927 2001-12-02  Jim Meyering  <meyering@lucent.com>
29928
29929         * lib/tempname.c: Don't declare getenv, thus reverting the change of
29930         2001-11-18.  It's no longer necessary, now that stdlib.h is always
29931         included.
29932
29933         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
29934         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
29935
29936 2001-11-30  Akim Demaille  <akim@epita.fr>
29937
29938         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
29939         before being defined.
29940
29941 2001-11-27  Paul Eggert  <eggert@twinsun.com>
29942
29943         * lib/quotearg.h (quotearg_n, quotearg_n_style):
29944         First arg is int, not unsigned.
29945         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
29946         (SIZE_MAX, UINT_MAX): New macros.
29947         (quotearg_n_options): Abort if N is negative.
29948         Avoid overflow check on hosts where size_t is 64 bits and int
29949         is 32 bits, as overflow is impossible there.
29950         Fix off-by-one typo that caused unnecessary reallocation.
29951
29952 2001-11-27  Jim Meyering  <meyering@lucent.com>
29953
29954         * lib/tempname.c: Merge with version from libc.
29955         * lib/regex.c: Likewise.
29956
29957         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
29958         systems for which STDC_HEADERS is 0, it was not included, resulting in
29959         a warning about an integer-to-pointer conversion problem with getenv.
29960         Reported by Volker Borchert.
29961
29962 2001-11-26  Jim Meyering  <meyering@lucent.com>
29963
29964         * lib/gtod.h: Remove file.
29965         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
29966         * lib/gettimeofday.c: Don't include gtod.h.
29967         (GTOD_init): Remove function.
29968         (rpl_gettimeofday): Do its job here instead, rather than aborting.
29969         Suggestion from Volker Borchert.
29970
29971 2001-11-23  Jim Meyering  <meyering@lucent.com>
29972
29973         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
29974         it.
29975         * lib/hash.c (struct hash_table): Define it here instead.
29976
29977 2001-11-22  Jim Meyering  <meyering@lucent.com>
29978
29979         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
29980
29981 2001-11-20  Jim Meyering  <meyering@lucent.com>
29982
29983         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
29984         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
29985
29986 2001-11-19  Jim Meyering  <meyering@lucent.com>
29987
29988         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
29989         directory.  Use "conftestXXXXXX" as the template.
29990         Suggestion from Paul Eggert.
29991
29992         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
29993         immediately, so the test doesn't mistakenly hit the max-open-files
29994         limit.
29995
29996 2001-11-18  Paul Eggert  <eggert@twinsun.com>
29997
29998         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
29999         (TEMPORARIES): New macro.
30000         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
30001         removes an artificial limitation (e.g. HP-UX 10.20, where
30002         TMP_MAX is 17576).
30003
30004 2001-11-18  Jim Meyering  <meyering@lucent.com>
30005
30006         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
30007
30008 2001-11-18  Jim Meyering  <meyering@lucent.com>
30009
30010         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
30011         on SunOS 4.
30012
30013         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
30014         files will be created before anything else.
30015
30016 2001-11-17  Paul Eggert  <eggert@twinsun.com>
30017
30018         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
30019         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
30020
30021 2001-11-17  Jim Meyering  <meyering@lucent.com>
30022
30023         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
30024         Prompted by a report from Bob Proulx.
30025
30026         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
30027         Instead, require UTILS_FUNC_MKSTEMP.
30028
30029 2001-11-17  Jim Meyering  <meyering@lucent.com>
30030
30031         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
30032         Now, that's done as part of AC_FUNC_STRTOD.
30033
30034 2001-11-17  Jim Meyering  <meyering@lucent.com>
30035
30036         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
30037         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
30038         rather than group writable.  Patch by Juan F. Codagnone.
30039
30040         * lib/readtokens.c: Remove explicit declarations of xmalloc and
30041         xrealloc, Instead, include "xalloc.h".
30042
30043         * lib/mountlist.c: Include unlocked-io.h after all system headers.
30044         Remove explicit declarations of xmalloc, xrealloc,
30045         and xstrdup.  Instead, include "xalloc.h".
30046
30047         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
30048         unlocked-io.h.
30049         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
30050         Likewise.
30051         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
30052
30053         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
30054         Reported by Padraig Brady.
30055
30056         * lib/mkstemp.c: #undef mkstemp.
30057         Include config.h.
30058         (rpl_mkstemp): Rename from mkstemp.
30059         Protoize.
30060
30061 2001-11-16  Jim Meyering  <meyering@lucent.com>
30062
30063         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
30064         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
30065         determine the amount of total physical memory, use pstat_getstatic.
30066         HPUX-11 doesn't define _SC_PHYS_PAGES.
30067         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
30068         If sysconf couldn't be used to determine the amount of available
30069         physical memory, use both pstat_getstatic and pstat_getdynamic.
30070         Based on a patch from Bob Proulx.
30071
30072 2001-11-10  Jim Meyering  <meyering@lucent.com>
30073
30074         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
30075         (jm_PREREQ): Use it.
30076
30077 2001-11-09  Jim Meyering  <meyering@lucent.com>
30078
30079         * m4/jm-macros.m4: Require autoconf-2.52f.
30080         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
30081         Use these AC_-prefixed names, not the AM_-prefixed ones.
30082
30083         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
30084
30085 2001-11-05  Jim Meyering  <meyering@lucent.com>
30086
30087         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
30088
30089 2001-11-04  Jim Meyering  <meyering@lucent.com>
30090
30091         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
30092         $DEFS.
30093
30094 2001-11-03  Jim Meyering  <meyering@lucent.com>
30095
30096         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
30097         of AC_DEFUN.
30098
30099         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
30100         know the name of the variable in the macro definition.
30101
30102 2001-11-03  Jim Meyering  <meyering@lucent.com>
30103
30104         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
30105         in argmatch_to_argument call.
30106
30107         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
30108         argument.
30109
30110         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
30111         e.g., a fault due to an attempt to free a NULL pointer.
30112
30113 2001-11-01  Jim Meyering  <meyering@lucent.com>
30114
30115         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
30116         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
30117
30118 2001-11-01  Jim Meyering  <meyering@lucent.com>
30119
30120         * lib/dirfd.c, lib/dirfd.h: New files.
30121         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
30122
30123         * lib/hash.c (hash_print) [TESTING]: Clean up.
30124
30125 2001-10-22  Paul Eggert  <eggert@twinsun.com>
30126
30127         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
30128         to avoid a warning if -Wall.
30129
30130 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
30131
30132         * README: New file
30133         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
30134         (per RMS's instructions, this is now the canonical source)
30135         * lgpl/, gpl/: New directories.
30136
30137 2001-10-21  Paul Eggert  <eggert@twinsun.com>
30138
30139         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
30140
30141 2001-10-21  Jim Meyering  <meyering@lucent.com>
30142
30143         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
30144         this code would end up calling gettext even in packages built
30145         with --disable-nls.
30146         * lib/getopt.c (_): Likewise.
30147         * lib/regex.c (_): Likewise.
30148
30149 2001-10-20  Paul Eggert  <eggert@twinsun.com>
30150
30151         * m4/error.m4 (jm_PREREQ_ERROR):
30152         Do not invoke AC_CHECK_FUNCS with strerror_r, as
30153         AC_FUNC_STRERROR_R does that.
30154         Check for strerror declaration.
30155
30156         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
30157         are supposed to have them these days.
30158         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
30159         Merge changes from latest Autoconf CVS.
30160         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
30161         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
30162         POSIX decided to standardize on the int flavor of strerror_r.
30163
30164 2001-10-20  Paul Eggert  <eggert@twinsun.com>
30165
30166         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
30167         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
30168         Use strerror_r that is only a macro, even if it is not a function.
30169         (strerror): Check for HAVE_DECL_STRERROR before declaring.
30170         (private_strerror): Use prototypes, not old-style function definition.
30171         (print_errno_message): New function.
30172         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
30173         char*-flavored one.
30174         (error_tail, error, error_at_line): Use it.
30175
30176 2001-10-11  Jim Meyering  <meyering@lucent.com>
30177
30178         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
30179         and quote_n (1, ... to avoid clobbering a buffer.
30180
30181 2001-10-05  Jim Meyering  <meyering@lucent.com>
30182
30183         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
30184         hash-pjw.h.
30185         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
30186         * lib/hash-pjw.h: New file.
30187
30188 2001-09-30  Jim Meyering  <meyering@lucent.com>
30189
30190         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
30191         `struct fsstat' has the `f_fstypename' member.
30192         Use that to define FS_TYPE, which is now used to make
30193         the getfsstat link test tighter.
30194
30195 2001-09-30  Jim Meyering  <meyering@lucent.com>
30196
30197         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
30198         Include <sys/ucred.h>, for Apple Darwin.
30199         Include sys/mount.h and sys/fs_types.h only if available.
30200         (FS_TYPE): Define.
30201         (read_filesystem_list): Use FS_TYPE.
30202
30203 2001-09-29  Paul Eggert  <eggert@twinsun.com>
30204
30205         * lib/exclude.c (excluded_filename): 0 -> false, since it's
30206         a boolean context.
30207
30208 2001-09-29  Jim Meyering  <meyering@lucent.com>
30209
30210         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
30211         [one-argument getmntent function]): Include stdio.h before mntent.h.
30212         SunOS 4.1.x needs it for the declaration of `FILE'.
30213         Patch by Volker Borchert.
30214
30215         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
30216         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
30217         sys/fs_types.h, and make the link-test for getfsstat guard #include
30218         directives with appropriate #if HAVE_*_H tests so that we can
30219         detect getfsstat on Apple Darwin1.3.7 systems.
30220         Reported by Nelson Beebe.
30221         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
30222
30223 2001-09-28  Paul Eggert  <eggert@twinsun.com>
30224
30225         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
30226         #defines strtoimax.  Also treat the other strto* functions
30227         like strtoimax.
30228
30229         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
30230         Check for strtoul and strtoumax,
30231         as those declarations are made even in the signed case.
30232         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
30233         Likewise, for strtol and strtoimax.
30234
30235 2001-09-28  Paul Eggert  <eggert@twinsun.com>
30236
30237         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
30238         #defines strtoimax.  Also treat the other strto* functions
30239         like strtoimax.
30240
30241         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
30242         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
30243         (strtoimax, strtoumax): Do not declare if already defined as a macro.
30244
30245 2001-09-26  Jim Meyering  <meyering@lucent.com>
30246
30247         Most macros in unlocked-io.h had the wrong number of arguments.
30248         * lib/gen-uio: New script.
30249         (USE_UNLOCKED_IO): Define to 1 if not already defined.
30250         * lib/unlocked-io.hin: Remove file.
30251         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
30252         rather than trying to embed it here.
30253         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
30254         Reported by Padraig Brady.
30255
30256 2001-09-25  Volker Borchert  <bt@teknon.de>
30257
30258         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
30259         `result'.
30260
30261 2001-09-24  Jim Meyering  <meyering@lucent.com>
30262
30263         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
30264
30265 2001-09-23  Jim Meyering  <meyering@lucent.com>
30266
30267         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
30268         instead of the mere test for existence of mntent.h.  The latter
30269         would get a false-positive on AIX 3.4 systems.
30270         In the outer getmntent if-block, don't die if neither of the getmntent
30271         tests succeeds.  Instead, just fall through and continue with the
30272         remaining tests.
30273
30274 2001-09-23  Jim Meyering  <meyering@lucent.com>
30275
30276         * lib/mountlist.c: Remove useless parentheses in #if directives.
30277         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
30278         the deprecated MOUNTED symbol is no longer defined in mntent.h.
30279
30280 2001-09-22  Jim Meyering  <meyering@lucent.com>
30281
30282         * m4/gettext.m4: New file.  From gettext.
30283         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
30284         * m4/progtest.m4: Likewise
30285         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
30286         * m4/glibc21.m4: Likewise.
30287
30288         * m4/libintl.m4: Remove.  No longer used.
30289
30290 2001-09-22  Jim Meyering  <meyering@lucent.com>
30291
30292         * lib/localcharset.c: Update from latest gettext.
30293         * lib/config.charset: Likewise.
30294
30295 2001-09-20  Jim Meyering  <meyering@lucent.com>
30296
30297         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
30298         strtoimax.
30299         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
30300         strtoumax.
30301
30302 2001-09-20  Jim Meyering  <meyering@lucent.com>
30303
30304         * lib/xstrtol.c (strtoimax): Guard declaration with
30305         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
30306         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
30307         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
30308         (strtoumax): Likewise, for completeness (it wasn't necessary).
30309
30310 2001-09-17  Paul Eggert  <eggert@twinsun.com>
30311
30312         * lib/strtoimax.c (HAVE_LONG_LONG):
30313         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
30314         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
30315         to work around bug in IBM C compiler.
30316
30317 2001-09-17  Jim Meyering  <meyering@lucent.com>
30318
30319         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
30320         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
30321         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
30322         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
30323         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
30324         whenever the right hand side need not be expanded by the shell.
30325
30326 2001-09-16  Paul Eggert  <eggert@twinsun.com>
30327
30328         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
30329         library.  It's not correct, as some older glibcs are buggy.
30330         fnmatch wasn't fixed until glibc 2.2.
30331
30332         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
30333         special shell magic here.
30334
30335 2001-09-16  Jim Meyering  <meyering@lucent.com>
30336
30337         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
30338         * m4/jm-macros.m4: Require it.
30339
30340 2001-09-16  Jim Meyering  <meyering@lucent.com>
30341
30342         * lib/mkdir.c: New file.
30343
30344 2001-09-15  Jim Meyering  <meyering@lucent.com>
30345
30346         * m4/jm-macros.m4: Check for help2man.
30347
30348 2001-09-11  Jim Meyering  <meyering@lucent.com>
30349
30350         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
30351         The body, by Paul Eggert, was moved here from configure.in.
30352         * m4/jm-macros.m4: Require UTILS_HOST_OS.
30353
30354 2001-09-04  Paul Eggert  <eggert@twinsun.com>
30355
30356         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
30357         (jm_PREREQ): Use it.
30358
30359 2001-09-04  Paul Eggert  <eggert@twinsun.com>
30360
30361         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
30362         Use ssize_t, not int, to store result of readlink.
30363         Check for ssize_t overflow as well as size_t overflow,
30364         as POSIX says the result of readlink is implementation-defined
30365         when ssize_t overflows.
30366         Remove unnecessary cast to char*.
30367         Use free+malloc instead of realloc, as the storage doesn't need
30368         to be preserved and it's clearer and can be more efficient that way.
30369         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
30370         * lib/xreadlink.h (xreadlink): Update prototype.
30371
30372 2001-09-04  Paul Eggert  <eggert@twinsun.com>
30373
30374         * lib/xgetcwd.c: Revert some of the previous change; intead,
30375         fix the HAVE_GETCWD_NULL code to behave more like the
30376         !HAVE_GETCWD_NULL code used to.
30377
30378         Include "xalloc.h".
30379         (xgetcwd): Do not return NULL when memory is exhausted; instead,
30380         invoke xalloc_die.
30381
30382 2001-09-03  Paul Eggert  <eggert@twinsun.com>
30383
30384         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
30385         sys/param.h, as pathmax.h includes them.
30386
30387 2001-09-03  Paul Eggert  <eggert@twinsun.com>
30388
30389         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
30390         (jm_PREREQ_XGETCWD): New macro.
30391
30392         * m4/getcwd.m4: New file.
30393
30394 2001-09-03  Paul Eggert  <eggert@twinsun.com>
30395
30396         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
30397         like the HAVE_GETCWD_NULL code.
30398         Include pathmax.h if not HAVE_GETCWD.
30399         Do not include xalloc.h.
30400         (INITIAL_BUFFER_SIZE): New symbol.
30401         Do not use xmalloc / xrealloc, since the caller is responsible for
30402         handling errors.  Preserve errno around `free' during failure.
30403         Do not overrun buffer when using getwd.
30404
30405 2001-09-03  Paul Eggert  <eggert@twinsun.com>
30406
30407         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
30408         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
30409         getcwd (NULL, 0).
30410
30411 2001-09-03  Paul Eggert  <eggert@twinsun.com>
30412
30413         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
30414         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
30415         spotted by Jim Meyering.
30416
30417 2001-09-03  Jim Meyering  <meyering@lucent.com>
30418
30419         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
30420         failure.
30421
30422 2001-09-02  Jim Meyering  <meyering@lucent.com>
30423
30424         * lib/error.c: Update from GNU libc.
30425
30426 2001-09-01  Jim Meyering  <meyering@lucent.com>
30427
30428         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
30429         Used by df.
30430
30431 2001-09-01  Jim Meyering  <meyering@lucent.com>
30432
30433         * lib/xreadlink.c: New file.
30434         * lib/xreadlink.h: New file.
30435         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
30436         xreadlink.h.
30437
30438         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
30439         doesn't conflict with sparc Solaris 7's definition in
30440         /usr/include/sys/int_types.h.
30441
30442         * lib/exclude.c: Use `""', not `<>' to #include non-system header
30443         files.
30444         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
30445         and strncasecmp as r-values.  Unixware didn't have declarations.
30446
30447 2001-08-31  Paul Eggert  <eggert@twinsun.com>
30448
30449         * lib/xstrtol.h: Add copyright notice.
30450         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
30451         LONGINT_INVALID_SUFFIX_CHAR.
30452
30453 2001-08-31  Paul Eggert  <eggert@twinsun.com>
30454
30455         * lib/xstrtol.c (strtoimax): New decl.
30456
30457 2001-08-31  Paul Eggert  <eggert@twinsun.com>
30458
30459         * lib/xgetcwd.c: Don't include pathmax.h.
30460         Include stdlib.h and unistd.h if available.
30461         Include xalloc.h.
30462         (xmalloc, xstrdup, free): Remove decls.
30463         (xgetcwd): Don't assume sizes fit in unsigned.
30464         Check for overflow when computing sizes.
30465         Simplify reallocation code.
30466
30467 2001-08-31  Paul Eggert  <eggert@twinsun.com>
30468
30469         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
30470         a directory's st_size can have an arbitrary value, so the old
30471         usage could waste an arbitrary amount of memory.  All uses
30472         changed.
30473         * lib/savedir.h: Update prototype.
30474
30475 2001-08-31  Paul Eggert  <eggert@twinsun.com>
30476
30477         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
30478
30479         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
30480         old strtoimax.c.
30481
30482         Also, make the following further changes to make this file's
30483         configuration more similar to that of strtol.c:
30484         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
30485         (strtoumax, uintmax_t, strtoull, strtol): Remove.
30486         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
30487         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
30488         changed to signed values.
30489
30490         And make the following changes as well:
30491         Fix copyright notice, as 1999 was missing.
30492         (verify): New macro.
30493         (strtoimax): Check sizes at compile-time, not run-time.
30494         Prefer strtol to strtoll if both work.
30495         (main): Remove; it was not that useful and was a pain to maintain.
30496
30497         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
30498
30499 2001-08-31  Jim Meyering  <meyering@lucent.com>
30500
30501         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
30502         Use an initial, malloc'd, buffer of length 128 rather than
30503         a statically allocated one of length 1024.
30504
30505 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30506
30507         Simplify code, partly by assuming autoconf 2.52 semantics.
30508
30509         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
30510
30511         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
30512         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
30513         All uses removed.
30514         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
30515         Move AC_REQUIRE to next-to-top level, to avoid confusion.
30516         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
30517         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
30518         jm_AC_HEADER_INTTYPES_H.
30519         * m4/jm-macros.m4 (jm_MACROS): Likewise.
30520
30521         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
30522
30523         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
30524         Quote first arg of AC_DEFUN.
30525         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
30526         since they are needed to parse the include file even if we need
30527         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
30528         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
30529         but with opposite signedness.
30530
30531 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30532
30533         Merge 'exclude' changes from tar 1.13.22.
30534         This fixes one or two unlikely storage allocation overflow bugs,
30535         but doesn't change user-visible behavior otherwise.
30536
30537 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30538
30539         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
30540         (jm_PREREQ_EXCLUDE): New macro.
30541
30542 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30543
30544         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
30545         tm to be declared.
30546
30547 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30548
30549         * lib/hash.c: Remove '2001' from copyright notice.
30550
30551 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30552
30553         * lib/full-write.h: New file.
30554         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
30555         * lib/full-write.c: Correct credits, as cccp.c no longer
30556         exists and anyway it was so heavily changed from the old cccp
30557         code as to be unrecognizable.  Include full-write.h.
30558         (full_write) Return size_t, with short writes meaning failure.
30559         All callers changed.  This fixes a bug with large buffers
30560         on 64-bit hosts.
30561         * lib/utime.c: Include full-write.h.
30562
30563 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30564
30565         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
30566         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
30567         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
30568         Include if available.
30569         (<xalloc.h>): Include
30570         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
30571         (verify): New macro.  Use it to verify that EXCLUDE macros do not
30572         collide with FNM macros.
30573         (struct patopts): New struct.
30574         (struct exclude): Use it, as exclude patterns now come with options.
30575         (new_exclude): Support above changes.
30576         (new_exclude, add_exclude_file):
30577         Initial size must now be a power of two to simplify overflow checking.
30578         (free_exclude, fnmatch_no_wildcards): New function.
30579         (excluded_filename): No longer requires options arg, as the options
30580         are determined by add_exclude.  Now returns bool, not int.
30581         (excluded_filename, add_exclude):
30582         Add support for the fancy new exclusion options.
30583         (add_exclude, add_exclude_file): Now takes int options arg.
30584         Check for arithmetic overflow when computing sizes.
30585         (add_exclude_file): xrealloc might modify errno, so don't
30586         realloc until after errno might be used.
30587
30588         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
30589         New macros.
30590         (free_exclude): New decl.
30591         (add_exclude, add_exclude_file): Now takes int options arg.
30592         (excluded_filename): No longer requires options arg, as the options
30593         are determined by add_exclude.  Now returns bool, not int.
30594
30595 2001-08-30  Paul Eggert  <eggert@twinsun.com>
30596
30597         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
30598
30599 2001-08-27  Jim Meyering  <meyering@lucent.com>
30600
30601         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
30602
30603         * lib/version-etc.c (N_): Remove definition.
30604         Revert most of last change.
30605         Instead, simply don't mark the `Copyright...' string for translation.
30606         Based on advice from Paul Eggert.
30607
30608         * lib/strtoxmax.c: Tweak comment.
30609
30610 2001-08-26  Jim Meyering  <meyering@lucent.com>
30611
30612         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
30613
30614         * m4/xstrtoimax.m4: New file.
30615         * m4/xstrtoumax.m4: Add comments explaining why we
30616         AC_REPLACE_FUNCS(strtol).
30617
30618 2001-08-26  Jim Meyering  <meyering@lucent.com>
30619
30620         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
30621         of copyright with `%s' so translators don't get an untranslated
30622         message in 2002.
30623         (COPYRIGHT_YEAR): Define.
30624         (version_etc): Use fprintf rather than fputs.
30625         Suggestion from Ulrich Drepper.
30626
30627         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
30628
30629         * lib/strtoll.c: New file, from GNU libc.
30630         * lib/xstrtoimax.c: New file.
30631
30632         * lib/xstrtol.h: Add xstrtoimax.
30633         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
30634         * lib/strtoimax.c: New file.  Likewise, but first define
30635         STRTOUXMAX_SIGNED.
30636
30637         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
30638         ...
30639         * lib/strtoxmax.c: ... then renamed to this.
30640
30641 2001-08-18  Paul Eggert  <eggert@twinsun.com>
30642
30643         * m4/inttypes.m4: Add AC_PREREQ(2.13).
30644         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
30645         (jm_AC_TYPE_INTMAX_T): New macro.
30646         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
30647
30648         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
30649
30650         * m4/longlong.m4: Renamed from ulonglong.m4.
30651         * m4/inttypes.m4: Renamed from inttypes_h.m4.
30652         * m4/uintmax_t.m4: Removed.
30653
30654 2001-08-13  Paul Eggert  <eggert@twinsun.com>
30655
30656         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
30657         Port to Solaris 8, where 'sed' requires a space after the 'r'
30658         command, and where sh dislikes "$/".  Clean up the spacing a bit.
30659         Redirect output to $tmp just once.
30660
30661 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
30662
30663         * lib/addext.c (<errno.h>): Include.
30664         (errno): Declare if not defined.
30665         (addext): Work correctly when pathconf returns -1 and leaves
30666         errno alone because there is no limit.  Also, work even if
30667         pathconf returns a value greater than SIZE_MAX.
30668
30669 2001-08-12  Jim Meyering  <meyering@lucent.com>
30670
30671         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
30672         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
30673         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
30674         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
30675         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
30676         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
30677         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
30678         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
30679         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
30680         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
30681         utime.m4, utimes.m4, xstrtoumax.m4:
30682         Quote the first argument in each use of AC_DEFUN.
30683
30684 2001-08-12  Jim Meyering  <meyering@lucent.com>
30685
30686         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
30687         Simply `return getcwd (NULL, 0);'.
30688         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
30689         Use 1300 as initial value for length, not PATH_MAX.
30690
30691         * lib/pathmax.h: Clean up cpp syntax.
30692
30693 2001-08-12  Jim Meyering  <meyering@lucent.com>
30694
30695         * lib/gettimeofday.c: New file.
30696         * lib/gtod.h: New file.
30697         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
30698
30699 2001-08-05  Jim Meyering  <meyering@lucent.com>
30700
30701         * m4/jm-macros.m4: Require autoconf-2.52.
30702
30703 2001-08-04  Jim Meyering  <meyering@lucent.com>
30704
30705         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
30706         stmt, to get in sync with glibc.
30707
30708 2001-08-03  Paul Eggert  <eggert@twinsun.com>
30709
30710         The following changes are from gettext 0.10.39 as maintained by
30711         Bruno Haible.
30712
30713         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
30714         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
30715         with inverted sense.  All uses changed.
30716
30717         * lib/mbswidth.c: Don't include <limits.h>.
30718         Include <stdlib.h> and <string.h> unconditionally.
30719         (iswcntrl, mbsinit, ISCNTRL): New macros.
30720         (mbsnwidth): Use K&R style function declarations.
30721         Don't bother checking for MB_LEN_MAX == 1, since the compiler
30722         can optimize it when MB_CUR_MAX == 1.
30723         The width of control characters is zero, not 1.
30724
30725 2001-08-03  Paul Eggert  <eggert@twinsun.com>
30726
30727         The following changes are from gettext 0.10.39 as maintained by
30728         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
30729
30730         * m4/codeset.m4: Upgrade to serial AM1.
30731         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
30732         all uses changed.  Quote first arg of AC_DEFUN.
30733         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
30734
30735         * m4/iconv.m4: Upgrade to serial AM2.
30736         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
30737         Add --with-libconv-prefix.
30738         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
30739         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
30740         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
30741         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
30742         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
30743
30744         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
30745         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
30746         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
30747         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
30748         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
30749         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
30750         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
30751         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
30752         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
30753
30754         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
30755         string.h any more.
30756
30757         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
30758         not the default value.
30759
30760         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
30761         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
30762         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
30763         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
30764         Also check for iswcntrl, used for wcwidth fallback.
30765         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
30766         to Autoconf 2.13.
30767
30768 2001-08-03  Jim Meyering  <meyering@lucent.com>
30769
30770         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
30771         as it was in the original.  Reported by Paul Eggert.
30772
30773 2001-07-16  Jim Meyering  <meyering@lucent.com>
30774
30775         * m4/gettimeofday.m4: New file.
30776         Prompted by a report from Bernhard Baehr.
30777
30778 2001-07-15  Jim Meyering  <meyering@lucent.com>
30779
30780         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
30781         stuff. Now it's in ../Makefile.cfg.
30782
30783 2001-07-15  Jim Meyering  <meyering@lucent.com>
30784
30785         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
30786         (BUILT_SOURCES): Add unlocked-io.h.
30787         (io_functions): Define.
30788         (unlocked-io.h): New rule.
30789         (DISTCLEANFILES): Add unlocked-io.h.
30790         (all-local): Depend on unlocked-io.h, to ensure it is created.
30791
30792         * lib/unlocked-io.hin: New file
30793
30794         * lib/regex.c: Update from glibc.
30795
30796 2001-07-05  Jim Meyering  <meyering@lucent.com>
30797
30798         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
30799         recommendation.
30800         (libfetish_a_SOURCES): Put all .h files here instead.
30801         Remove a thus-exposed (better checks in automake) duplicate and
30802         two unnecessary .h files.
30803
30804 2001-07-04  Jim Meyering  <meyering@lucent.com>
30805
30806         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
30807         that generates jm-glibc-io.m4 so that it doesn't trigger any make
30808         distcheck failure.
30809
30810 2001-07-02  Jim Meyering  <meyering@lucent.com>
30811
30812         The following changes were prompted by suggestions from Bruno Haible.
30813
30814         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
30815         is now generated.
30816         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
30817         definition of EXTRA_DIST.
30818         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
30819         ensure that the generated file is created/updated whenever the list
30820         of $(unlocked_functions) is changed.
30821         (jm-glibc-io.m4): New rule.
30822         (unlocked-io.h): New rule -- currently unused.
30823
30824 2001-06-24  Jim Meyering  <meyering@lucent.com>
30825
30826         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
30827         unmatched right bracket, rather than kludging it with an extra,
30828         falsely-matching quote in a comment.  Patch by Akim Demaille.
30829
30830 2001-06-11  Jim Meyering  <meyering@lucent.com>
30831
30832         * lib/regex.c: Update from GNU libc.
30833
30834 2001-05-27  Jim Meyering  <meyering@lucent.com>
30835
30836         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
30837         Check for ut_type in struct utmp.
30838
30839 2001-05-27  Jim Meyering  <meyering@lucent.com>
30840
30841         * lib/readutmp.h (UT_TYPE): Define.
30842
30843 2001-05-24  Jim Meyering  <meyering@lucent.com>
30844
30845         * lib/argmatch.c: Include "quote.h".
30846         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
30847         quote function.  Reported by Göran Uddeborg.
30848
30849 2001-05-22  Jim Meyering  <meyering@lucent.com>
30850
30851         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
30852         now that we use the package-supplied version unconditionally.
30853         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
30854
30855 2001-05-21  Jim Meyering  <meyering@lucent.com>
30856
30857         * m4/regex.m4: Change a couple backticks to single quotes to avoid
30858         shell syntax errors.
30859
30860 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
30861
30862         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
30863
30864 2001-05-20  Paul Eggert  <eggert@twinsun.com>
30865
30866         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
30867         Don't bother to check library strftime, since
30868         we'll be using our own my_strftime function anyway.
30869         Define my_strftime instead of strftime.
30870
30871 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
30872
30873         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
30874         which is not yet declared.
30875
30876 2001-05-15  Jim Meyering  <meyering@lucent.com>
30877
30878         * m4/regex.m4: Use proper quoting so brackets appear in the test
30879         program.
30880         Reported by, and with help from, Bruno Haible.
30881
30882 2001-05-13  Jim Meyering  <meyering@lucent.com>
30883
30884         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
30885         undefined.
30886
30887 2001-05-11  Paul Eggert  <eggert@twinsun.com>
30888
30889         dirname code cleanup.  base_name now behaves more compatibly
30890         with POSIX basename when given file names that have trailing
30891         slashes, and similarly for dir_name.  Add new primitives
30892         base_len and dir_len.  Put the directory-name-related decls
30893         into dirname.h.
30894
30895         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
30896         * lib/backupfile.c (base_name): Likewise.
30897         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
30898         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
30899         * lib/makepath.c (strip_trailing_slashes): Likewise.
30900         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
30901         ISSLASH): Likewise.
30902         * lib/rename.c (strip_trailing_slashes): Likewise.
30903         * lib/same.c (base_name): Likewise.
30904         * lib/stripslash.c (ISSLASH): Likewise.
30905
30906         * lib/addext.c: Include <dirname.h> after size_t is defined.
30907         * lib/backupfile.c: Likewise.
30908
30909         * lib/addext.c (addext): Use base_len to trim redundant
30910         trailing slashes instead of doing it ourselves.
30911         But do not trim the last slash if it is not redundant.
30912
30913         * lib/backupfile.c (find_backup_file_name,
30914         max_backup_version): Use base_len instead of rolling it ourselves.
30915         Handle the case of "" and (on DOS) "C:" correctly.
30916
30917         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
30918         needed. Include <string.h>, <dirname.h>.
30919         (base_name): Allow file names ending in slashes, other than names
30920         that are all slashes.  In this case, return the basename followed
30921         by the slashes.  This is more general, and can be used in places
30922         where the original base_name purposely had an assertion failure.
30923         (base_len): New function.
30924
30925         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
30926         Do not include <assert.h>; no longer needed.
30927         Include xalloc.h.
30928         (memrchr): Remove decl.
30929         (dir_name_r): Remove.
30930         (dir_len): Renamed from dirlen.  All callers changed.
30931         Rewrite in terms of base_name, for simplicity and consistency.
30932         (dir_name): Never return NULL.  All callers changed.
30933         Do not include <stdlib.h> in test program; no longer needed.
30934         return 0; is fine for test program.
30935
30936         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
30937         New macros.
30938         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
30939
30940         * lib/path-concat.c (path_concat): Use base_len to compute
30941         base length, not strlen; this means we cannot rely on memcpy
30942         to null-terminate.
30943
30944         * lib/same.c (STREQ): Remove.
30945         (same_name): Handle the case where the basename ends in trailing '/'.
30946
30947         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
30948         a slash was stripped.  Do not strip the last slash after a
30949         file system prefix.
30950
30951 2001-05-11  Paul Eggert  <eggert@twinsun.com>
30952
30953         * lib/Makefile.am (libfetish_a_SOURCES):
30954         Add strftime.c, since we now compile it on all hosts.
30955
30956         * lib/strftime.c (my_strftime):
30957         Define to nstrftime if emacs, but only if my_strftime is not defined.
30958         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
30959         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
30960         Add one more extra argument: a nanoseconds value.
30961         All uses changed.
30962         (ns): New macro.
30963         (my_strftime function): Add %N format.
30964         (emacs_strftimeu): Renamed from emacs_strftime,
30965         with extra ut argument.
30966
30967 2001-05-09  Paul Eggert  <eggert@twinsun.com>
30968
30969         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
30970
30971 2001-04-21  Jim Meyering  <meyering@lucent.com>
30972
30973         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
30974         doesn't interfere.
30975
30976 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
30977
30978         * m4/ftruncate.m4: Check for chsize.
30979         Link with ftruncate.o unconditionally if ftruncate is missing.
30980         This was required when cross-compiling to i586-mingw32msvc.
30981
30982 2001-04-08  Jim Meyering  <meyering@lucent.com>
30983
30984         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
30985         recomputed; that's necessary when the offset spans a DST transition.
30986         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
30987
30988 2001-04-02  Jim Meyering  <meyering@lucent.com>
30989
30990         * lib/regex.h, regex.c: Update from GNU libc.
30991
30992 2001-03-24  Jim Meyering  <meyering@lucent.com>
30993
30994         * m4/jm-macros.m4: Require autoconf-2.49d.
30995
30996 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
30997
30998         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
30999
31000 2001-03-19  Paul Eggert  <eggert@twinsun.com>
31001
31002         * lib/version-etc.c (version_etc_copyright): Update to 2001.
31003
31004 2001-03-17  Jim Meyering  <meyering@lucent.com>
31005
31006         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
31007         now that the version in autoconf is equivalent.
31008         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
31009
31010         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
31011         Suggestion from Akim Demaille.
31012
31013         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
31014         (jm_PREREQ_TEMPNAME): New function.
31015
31016 2001-03-16  Paul Eggert  <eggert@twinsun.com>
31017
31018         * lib/tempname.c (uint64_t): Define to uintmax_t if
31019         not defined, and if UINT64_MAX is not defined.
31020         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
31021         Reported by John David Anglin.
31022
31023 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
31024
31025         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
31026         resolve alias if codeset is empty.
31027         * lib/config.charset (BeOS): Use wildcard syntax.
31028
31029 2001-03-13  Jim Meyering  <meyering@lucent.com>
31030
31031         * lib/path-concat.c (path_concat)
31032         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
31033         concatenating e.g., `C:' and `foo'.
31034         From Bruno Haible.
31035
31036 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
31037
31038         * lib/localcharset.c (locale_charset): Don't use
31039         setlocale(LC_CTYPE,NULL). Don't return NULL.
31040         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
31041
31042 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
31043
31044         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
31045         support for DOS/DJGPP.
31046
31047 2001-03-01  Paul Eggert  <eggert@twinsun.com>
31048
31049         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
31050         lacks mkstemp.  Compile our own tempname.c if we compile our own
31051         mkstemp.c, as mkstemp relies on tempname.
31052
31053 2001-03-01  Jim Meyering  <meyering@lucent.com>
31054
31055         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
31056         AH_VERBATIM really does output its argument verbatim.
31057
31058 2001-02-28  Paul Eggert  <eggert@twinsun.com>
31059
31060         * lib/Makefile.am (libfetish_a_SOURCES):
31061         Add dup-safer.c, fopen-safer.c.
31062         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
31063
31064         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
31065         * lib/unistd-safer.h: New files.
31066
31067 2001-02-25  Paul Eggert  <eggert@twinsun.com>
31068
31069         The mkstemp replacement is taken from glibc 2.2.2, with some
31070         portability fixes for use outside glibc, as follows:
31071
31072         * lib/tempname.c (struct_stat64): New macro.
31073         (direxists, __gen_tempname): Use it.
31074         This avoids a portability problem with Solaris 8.
31075
31076         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
31077         (<stddef.h>, <stdint.h>, <string.h>):
31078         Include only if STDC_HEADERS || _LIBC.
31079         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
31080         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
31081         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
31082         (__set_errno): Define this macro if <errno.h> doesn't.
31083         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
31084         Define these macros if <stdio.h> doesn't.
31085         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
31086         Define these macros if <sys/stat.h>
31087         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
31088         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
31089         __xstat64): Define if not _LIBC.
31090         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
31091         (__gen_tempname): Invoke gettimeofday only if
31092         HAVE_GETTIMEOFDAY || _LIBC;
31093         otherwise, fall back on plain "time".
31094         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
31095
31096         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
31097
31098         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
31099
31100 2001-02-18  Paul Eggert  <eggert@twinsun.com>
31101
31102         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
31103
31104 2001-02-17  Paul Eggert  <eggert@twinsun.com>
31105
31106         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
31107         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
31108         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
31109         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
31110
31111 2001-02-17  Paul Eggert  <eggert@twinsun.com>
31112
31113         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
31114         Remove workaround macros for hosts that have mbrtowc but not
31115         mbstate_t, as we now insist on proper declarations for both
31116         before using mbrtowc.
31117
31118 2001-02-17  Jim Meyering  <meyering@lucent.com>
31119
31120         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
31121         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
31122         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
31123         UnixWare 7.1.1.
31124
31125         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
31126         rather than AC_CACHE_VAL.
31127
31128 2001-02-17  Jim Meyering  <meyering@lucent.com>
31129
31130         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
31131         around included file name.
31132
31133         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
31134
31135         * lib/strftime.c: Update from GNU libc (the only changes were to
31136         comments).
31137
31138 2001-02-17  Jim Meyering  <meyering@lucent.com>
31139
31140         * lib/regex.c: Update from libc.
31141
31142 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
31143
31144         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
31145         clash.
31146
31147 2001-02-16  Paul Eggert  <eggert@twinsun.com>
31148
31149         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
31150         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
31151         Reported by Mark Hounschell via Paul Eggert.
31152
31153 2001-02-07  Jim Meyering  <meyering@lucent.com>
31154
31155         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
31156
31157 2001-02-05  Jim Meyering  <meyering@lucent.com>
31158
31159         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
31160         it includes the patch required for `large file' support with at least
31161         HP-UX's 10.20 /bin/cc.
31162
31163 2001-02-03  Jim Meyering  <meyering@lucent.com>
31164
31165         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
31166         AS_IF, now that it works once again (mysteriously).
31167         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
31168
31169 2001-01-30  Jim Meyering  <meyering@lucent.com>
31170
31171         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
31172         * m4/chown.m4: Rename conftestchown to conftest.chown.
31173         * m4/rename.m4: s/conftestdir/conftest.d1/ and
31174         s/conftestdir2/conftest.d2/.
31175         * m4/utimes.m4: s/conftestdata/conftest.data/
31176         Inspired by Pavel Roskin's change in autoconf.
31177
31178 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
31179
31180         * lib/config.charset: Update for FreeBSD 4.2.
31181
31182 2001-01-27  Jim Meyering  <meyering@lucent.com>
31183
31184         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
31185         a use of AS_IF.
31186         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
31187
31188 2001-01-26  Jim Meyering  <meyering@lucent.com>
31189
31190         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
31191         quotearg.c includes it.
31192
31193 2001-01-26  Jim Meyering  <meyering@lucent.com>
31194
31195         * lib/quotearg.c: Include stddef.h.
31196         * lib/quote.c: Include stddef.h.
31197         Reported by Axel Kittenberger.
31198
31199         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
31200         line in double quotes so that it evokes a better diagnostic.
31201         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
31202         Reported by Axel Kittenberger.
31203
31204 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
31205
31206         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
31207         as if it was a `charset'.
31208
31209 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
31210
31211         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
31212         has const.
31213
31214 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
31215
31216         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
31217         to avoid a warning.  Add back 'const' to inptr.
31218
31219 2001-01-20  Jim Meyering  <meyering@lucent.com>
31220
31221         Be sure that headers are checked before used in code compiled
31222         for the type checks.
31223         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
31224         In place of that, invoke jm_CHECK_ALL_TYPES.
31225         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
31226         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
31227         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
31228         The check for ssize_t was mistakenly run before the test for unistd.h.
31229
31230         The configure-time check for stdbool.h was missing.
31231         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
31232         (jm_PREREQ_HASH): New function.
31233
31234 2001-01-17  Jim Meyering  <meyering@lucent.com>
31235
31236         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
31237         for autoconf-2.49c.
31238         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
31239
31240 2001-01-16  Jim Meyering  <meyering@lucent.com>
31241
31242         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
31243         From Bruno Haible.
31244
31245 2001-01-14  Jim Meyering  <meyering@lucent.com>
31246
31247         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
31248         foo and bar.  Create conftestdir/ in the script, not in the C code.
31249         Remove directories in the script, not in the C code.
31250         Remove conftestdir{,2} before trying to create the directory.
31251         Make the entire configure script fail if the mkdir fails.
31252
31253 2001-01-14  Jim Meyering  <meyering@lucent.com>
31254
31255         * lib/rename.c: New file.  From Volker Borchert.
31256         Include stdlib.h, string.h or strings.h, and xalloc.h.
31257         Use strip_trailing_slashes rather than open-coding it.
31258
31259 2001-01-03  Paul Eggert  <eggert@twinsun.com>
31260
31261         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
31262
31263 2001-01-03  Jim Meyering  <meyering@lucent.com>
31264
31265         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
31266         of local `inptr' to avoid warning with some system declarations of
31267         iconv.
31268
31269 2001-01-02  Volker Borchert  <bt@teknon.de>
31270
31271         * m4/rename.m4: New file.
31272         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
31273
31274 2001-01-01  Jim Meyering  <meyering@lucent.com>
31275
31276         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
31277         even on systems with utmpx.h.  It's necessary for the declaration of
31278         utmp's ut_user member.  Reported by Andreas Jaeger.
31279
31280         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
31281         available. They are required for the declarations of getgrgid and
31282         getpwuid resp.
31283         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
31284         Reported by Andreas Jaeger.
31285
31286 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
31287
31288         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
31289         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
31290         so `make install' also works in VPATH builds.
31291
31292 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
31293
31294         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
31295         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
31296         can be used in subdirectories.
31297
31298 2000-12-29  Paul Eggert  <eggert@twinsun.com>
31299
31300         * lib/modechange.c: Do not assume that mode_t uses the
31301         traditional octal encoding.  E.g. "chmod 1 FOO" should set
31302         the other-execute bit of FOO even if S_IXOTH != 1.
31303
31304         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
31305         WOTH, XOTH, ALLM): New macros.
31306         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
31307          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
31308         Use them.
31309         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
31310         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
31311         (mode_compile):
31312         No need to use uintmax_t; unsigned long is long enough.
31313         Don't bother to get suffix since we don't use it.
31314
31315 2000-12-26  Jim Meyering  <meyering@lucent.com>
31316
31317         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
31318         better with autoheader.
31319
31320 2000-12-24  Jim Meyering  <meyering@lucent.com>
31321
31322         * lib/hash.c (is_prime): Return explicit boolean values.
31323         (hash_get_first): Return NULL to appease Irix5.6's 89.
31324         Reported by Nelson Beebe.
31325
31326 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
31327
31328         * lib/localcharset.c (locale_charset): Add support for Win32.
31329
31330 2000-12-18  Paul Eggert  <eggert@twinsun.com>
31331
31332         * lib/physmem.h, lib/physmem.c: New files.
31333
31334         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
31335         (noinst_HEADERS): Add physmem.h.
31336
31337         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
31338         't' for compatibility with Solaris 8 sort.
31339
31340 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
31341
31342         * lib/config.charset: Add support for BeOS.
31343
31344 2000-12-17  Jim Meyering  <meyering@lucent.com>
31345
31346         * m4/dos.m4 (jm_AC_DOS): New file and macro.
31347         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
31348
31349 2000-12-16  Jim Meyering  <meyering@lucent.com>
31350
31351         This bug had a serious impact on chown: `chown N:M FILE' (for integer
31352         N and M) would have treated it like `chown N:N FILE'.
31353
31354         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
31355
31356 2000-12-16  Jim Meyering  <meyering@lucent.com>
31357
31358         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
31359         SHELLS_FILE to a file name that's useful on djgpp systems.
31360         Include stdlib.h.
31361         (ADDITIONAL_DEFAULT_SHELLS): Define.
31362         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
31363         Based mostly on a patch from Prashant TR.
31364
31365 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
31366
31367         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
31368         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
31369         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
31370
31371 2000-12-08  Andreas Schwab  <schwab@suse.de>
31372
31373         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
31374         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
31375
31376 2000-12-07  Jim Meyering  <meyering@lucent.com>
31377
31378         * lib/stripslash.c (ISSLASH): Define.
31379         (strip_trailing_slashes): Use ISSLASH rather than comparing against
31380         `/'.
31381         From Prashant TR.
31382
31383         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
31384         (dir_name_r): Declare this function as static.
31385         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
31386         manifest itself on a name containing a mix of slashes and
31387         backslashes.
31388         Make this function work with names starting with a DOS-style
31389         drive letter and colon prefix.
31390         (dir_name): Append `.' if necessary.
31391         Based mostly on patches from Prashant TR and Eli Zaretskii.
31392
31393         * lib/dirname.h (dir_name_r): Remove prototype.
31394
31395 2000-12-06  Paul Eggert  <eggert@twinsun.com>
31396
31397         * m4/off_t-format.m4: Remove this file.
31398         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
31399
31400 2000-12-06  Jim Meyering  <meyering@lucent.com>
31401
31402         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
31403         replacement strtoull, we may well need the replacement strtoul, too.
31404         Check for declarations of strtoul and strtoull.
31405         Check for strtol.  Mainly as a cue to cause automake to include
31406         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
31407         Check for limits.h -- strtol.c needs it.
31408
31409 2000-12-05  Jim Meyering  <meyering@lucent.com>
31410
31411         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
31412
31413 2000-12-04  Jim Meyering  <meyering@lucent.com>
31414
31415         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
31416         Also include memory.h, stdlib.h, unistd.h if appropriate.
31417         Reported by Andreas Jaeger (conflicting declaration of malloc).
31418
31419 2000-12-02  Jim Meyering  <meyering@lucent.com>
31420
31421         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
31422         * m4/jm-macros.m4 (jm_MACROS): require it.
31423
31424 2000-12-02  Jim Meyering  <meyering@lucent.com>
31425
31426         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
31427
31428 2000-12-01  Paul Eggert  <eggert@twinsun.com>
31429
31430         * lib/memrchr.c: Include <config.h> before any system include file.
31431
31432 2000-11-30  Jim Meyering  <meyering@lucent.com>
31433
31434         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
31435
31436 2000-11-30  Jim Meyering  <meyering@lucent.com>
31437
31438         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
31439
31440 2000-11-29  Paul Eggert  <eggert@twinsun.com>
31441
31442         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
31443
31444 2000-11-26  Jim Meyering  <meyering@lucent.com>
31445
31446         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
31447
31448 2000-11-22  Paul Eggert  <eggert@twinsun.com>
31449
31450         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
31451         size of (size_t) -1; it's not portable.
31452
31453 2000-11-17  Jim Meyering  <meyering@lucent.com>
31454
31455         * lib/strstr.c: Update from GNU libc.
31456
31457 2000-11-17  Akim Demaille  <akim@epita.fr>
31458
31459         * lib/obstack.h: Formatting changes.
31460         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
31461         prevent type checking.
31462         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
31463         cast the value to (void *): assigning a `foo *' to a `void *'
31464         variable is valid.
31465         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
31466
31467 2000-11-16  Jim Meyering  <meyering@lucent.com>
31468
31469         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
31470
31471 2000-11-11  Jim Meyering  <meyering@lucent.com>
31472
31473         * lib/error.c: Add a couple #includes, merging from GNU libc version.
31474
31475 2000-11-10  Jim Meyering  <meyering@lucent.com>
31476
31477         * lib/obstack.h: Update from GNU libc.
31478         * lib/obstack.c: Likewise.
31479
31480 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
31481
31482         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
31483
31484 2000-11-06  Paul Eggert  <eggert@twinsun.com>
31485
31486         * lib/getusershell.c (setusershell): Use rewind rather than
31487         fseek/fseeko, to avoid configuration hassles with fseeko.
31488         Don't bother opening SHELLS_FILE if shellstream is NULL;
31489         it's not necessary.
31490
31491 2000-11-05  Jim Meyering  <meyering@lucent.com>
31492
31493         * lib/makepath.h (make_dir): Declare.
31494         * lib/makepath.c (make_dir): Remove `static' attribute.
31495         Tweak a comment.
31496
31497 2000-11-04  Jim Meyering  <meyering@lucent.com>
31498
31499         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
31500
31501 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
31502
31503         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
31504         last one in a bucket, advance to the next bucket.
31505
31506 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
31507
31508         * lib/fnmatch.c: Do not comment out all the code if we are using
31509         the GNU C library, because in some cases we are replacing buggy
31510         code in the GNU C library itself.
31511
31512 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
31513
31514         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
31515         (regex_compile): Catch bogus \(\1\).
31516
31517 2000-10-30  Paul Eggert  <eggert@twinsun.com>
31518
31519         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
31520         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
31521         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
31522
31523 2000-10-30  Paul Eggert  <eggert@twinsun.com>
31524
31525         * lib/error.h, getline.h, modechange.h:
31526         Remove "2000" from Copyright line, as the file hasn't been
31527         changed this year other than in the copyright notice.
31528
31529         * lib/xalloc.h: Add "2000" to Copyright line, as this file
31530         was changed this year.
31531
31532 2000-10-29  Jim Meyering  <meyering@lucent.com>
31533
31534         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
31535         renaming.
31536         * m4/ls-mntd-fs.m4: Likewise
31537
31538 2000-10-29  Jim Meyering  <meyering@lucent.com>
31539
31540         * lib/xstat.in: Fix grammar in comment.
31541
31542 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
31543
31544         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
31545         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
31546         doesn't define __restrict_arr.
31547
31548 2000-10-28  Jim Meyering  <meyering@lucent.com>
31549
31550         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
31551         (jm_PREREQ_MEMCHR): New function.
31552
31553 2000-10-28  Jim Meyering  <meyering@lucent.com>
31554
31555         * lib/memchr.c: Update from libc.
31556         Adjust for portability:
31557         [HAVE_STDLIB_H]: Include stdlib.h.
31558         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
31559         Undef __memchr, too.
31560         [!weak_alias]: Define __memchr to memchr.
31561
31562         * lib/regex.c: Update from libc.
31563         * lib/regex.h: Likewise.
31564         * lib/getopt1.c: Likewise.
31565         * lib/memcmp.c: Likewise.
31566
31567         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
31568         Avoid using fseek, when possible -- it's broken by design.
31569         Patch by Ulrich Drepper.
31570
31571 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
31572
31573         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
31574         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
31575         Giving in to popular pressure to shut up the compiler with casts.
31576
31577 2000-10-26  Jim Meyering  <meyering@lucent.com>
31578
31579         * lib/strftime.c: Update from libc.
31580
31581 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
31582
31583         * regex.c: More `unsigned char' -> `re_char' changes.
31584         Also change several `int' into `re_wchar_t'.
31585         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
31586         (PUSH_FAILURE_POINTER): Don't cast any more.
31587         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
31588         We want GCC to complain, since this piece of code makes
31589         re_match non-reentrant, which *should* be fixed.
31590         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
31591         (EXTEND_BUFFER): Use RETALLOC.
31592         (SET_LIST_BIT): Don't cast.
31593         (re_wchar_t): New type.
31594         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
31595         that those two functions will always properly return.
31596         (IMMEDIATE_QUIT_CHECK): Cast to void.
31597         (analyse_first): Use recursion rather than an explicit stack.
31598         (re_compile_fastmap): Can't fail anymore.
31599         (re_search_2): Don't check re_compile_fastmap for failure.
31600         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
31601         Now also sets the new value (passed in a new argument).
31602         (re_match_2_internal): Use it.
31603         Also, use a new var `reg' of type size_t when looping through regs
31604         rather than reuse the inappropriate `mcnt'.
31605
31606 2000-10-25  Jim Meyering  <meyering@lucent.com>
31607
31608         * lib/obstack.c: Update from libc.
31609
31610 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
31611
31612         * regex.c (regex_compile): Change the way of handling a range from
31613         a char less than 256 to a char not less than 256.
31614
31615 2000-10-24  Andrew Innes  <andrewi@gnu.org>
31616
31617         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
31618         NT-Emacs only.
31619         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
31620         so that re_search functions only quit when callers expect them to.
31621
31622 2000-10-23  Jim Meyering  <meyering@lucent.com>
31623
31624         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
31625         wrong.  That set_locale call must not have any side effects.
31626         From Paul Eggert.
31627
31628 2000-10-22  Jim Meyering  <meyering@lucent.com>
31629
31630         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
31631         [CYCLIC]: Remove now-unused definition.
31632
31633         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
31634         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
31635         Suggestion from Ulrich Drepper.
31636
31637 2000-10-21  Jim Meyering  <meyering@lucent.com>
31638
31639         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
31640         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
31641         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
31642
31643 2000-10-21  Jim Meyering  <meyering@lucent.com>
31644
31645         * lib/dirname.c (memrchr): Declare if necessary.
31646         (dir_name): Remove the restriction that there be no
31647         trailing slashes.  Now, this code skips past them, effectively
31648         ignoring them.
31649         [TEST_DIRNAME] (main): New unit tests.
31650
31651         * lib/memrchr.c: New file from GNU libc.
31652         Undef __memrchr, too.
31653         [!weak_alias]: Define __memrchr to memrchr.
31654         Guard weak_alias use with `#ifdef weak_alias'.
31655
31656 2000-10-21  Jim Meyering  <meyering@lucent.com>
31657
31658         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
31659         (dir_name): Use dir_name_r.
31660         * lib/dirname.h (dir_name_r): Declare it.
31661
31662 2000-10-17  Jim Meyering  <meyering@lucent.com>
31663
31664         * lib/quote.h (PARAMS): Define and use.
31665         Reported by Akim Demaille.
31666
31667         * lib/getopt.c: Update from libc.
31668
31669 2000-10-16  Jim Meyering  <meyering@lucent.com>
31670
31671         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
31672         setlocale.
31673         From Jan Fedak.
31674
31675 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
31676
31677         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
31678
31679 2000-09-25  Jim Meyering  <meyering@lucent.com>
31680
31681         * lib/md5.h (rol): Define (from GnuPG).
31682
31683         * lib/sha.c: Give credit (GnuPG) where due.
31684         (M): Use rol rather than open-coding it.
31685         Add a FIXME comment.
31686
31687 2000-09-21  Jim Meyering  <meyering@lucent.com>
31688
31689         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
31690         Reported by Michael Stone.
31691
31692 2000-09-20  Jim Meyering  <meyering@lucent.com>
31693
31694         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
31695         (noinst_HEADERS): Add sha.h.
31696         Based on code from Scott G. Miller and from GnuPG.
31697
31698 2000-09-18  Jim Meyering  <meyering@lucent.com>
31699
31700         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
31701         LIBS. Otherwise, everyone ends up linking with -lelf for some
31702         configurations.
31703         Reported by Mike Stone.
31704
31705 2000-09-15  Jim Meyering  <meyering@lucent.com>
31706
31707         * lib/regex.c: Update from libc.
31708
31709 2000-09-10  Jim Meyering  <meyering@lucent.com>
31710
31711         * lib/getopt.c (_getopt_internal): Update from glibc.
31712
31713 2000-09-09  Jim Meyering  <meyering@lucent.com>
31714
31715         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
31716         think it should be used as a general replacement for isascii.
31717         * lib/fnmatch.c: Likewise.
31718         * lib/mbswidth.c: Likewise
31719         * lib/regex.c: Likewise.
31720
31721         Don't use atoi.
31722         * lib/userspec.c: Include sys/param.h and limits.h.
31723         Include xstrtol.h.
31724         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
31725         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
31726         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
31727         UID, GID.  Check range.
31728
31729 2000-09-06  Jim Meyering  <meyering@lucent.com>
31730
31731         * lib/getopt.c (_getopt_internal): Update from glibc.
31732
31733 2000-08-30  Jim Meyering  <meyering@lucent.com>
31734
31735         * lib/strftime.c: Merge in changes from GNU libc.
31736
31737 2000-08-26  Jim Meyering  <meyering@lucent.com>
31738
31739         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
31740         * m4/fpending.m4: New file.
31741
31742 2000-08-26  Jim Meyering  <meyering@lucent.com>
31743
31744         * lib/closeout.c: Include "__fpending.h".
31745         (close_stdout_status): Return right away if there's nothing to flush.
31746
31747         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
31748         * lib/__fpending.c: New file.
31749         * lib/__fpending.h: New file.
31750
31751 2000-08-20  Jim Meyering  <meyering@lucent.com>
31752
31753         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
31754         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
31755         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
31756
31757 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
31758
31759         Improve fileutils installation on systems where running
31760         programs (like install) can't be unlinked.
31761         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
31762         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
31763
31764 2000-08-07  Paul Eggert  <eggert@twinsun.com>
31765
31766         Standardize on "memory exhausted" instead of "Memory exhausted"
31767         or "virtual memory exhausted".
31768         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
31769         "virtual memory exhausted".
31770         * lib/same.c (same_name): Invoke xalloc_die instead of printing
31771         our own message.
31772         * lib/userspec.c (parse_user_spec): Likewise.
31773         * lib/bumpalloc.h: comment fix
31774         * lib/same.c, userspec.c: Include xalloc.h.
31775
31776         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
31777         not char *const and pointing to a constant array.
31778         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
31779         (xrealloc): Comment fix.
31780
31781         * lib/userspec.c (parse_user_spec):
31782         Don't translate a message until just before returning,
31783         to avoid unnecessary translation.
31784
31785 2000-08-07  Jim Meyering  <meyering@lucent.com>
31786
31787         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
31788         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
31789         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
31790         getgroups.c, gethostname.c, getopt.h, group-member.c,
31791         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
31792         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
31793         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
31794         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
31795         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
31796         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
31797         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
31798         yesno.c: Back out Copyright date changes for each file with no change
31799         this year.  This eases coordination with other programs using the same
31800         source code modules.  From Paul Eggert.
31801
31802 2000-08-06  Paul Eggert  <eggert@twinsun.com>
31803
31804         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
31805         not char, for compatibility with glibc 2.1.3 strftime.c.
31806
31807 2000-08-03  Greg McGary  <greg@mcgary.org>
31808
31809         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
31810         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
31811         (EXTEND_BUFFER): Use them.
31812
31813 2000-08-01  Jim Meyering  <meyering@lucent.com>
31814
31815         * lib/dirname.c (ISSLASH): Define.
31816         (BACKSLASH_IS_PATH_SEPARATOR): Define.
31817         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
31818         both `\' and `/' may be use as path separators.
31819         Based on a patch from Prashant TR.
31820
31821 2000-07-31  Paul Eggert  <eggert@twinsun.com>
31822
31823         * lib/quotearg.c (quotearg_n_options): Don't make the initial
31824         slot vector a constant, since it might get modified.
31825
31826 2000-07-31  Jim Meyering  <meyering@lucent.com>
31827
31828         * lib/xmalloc.c: Use `virtual memory exhausted', not
31829         `Memory exhausted'.
31830         * lib/obstack.c (print_and_abort): Likewise.
31831
31832 2000-07-30  Paul Eggert  <eggert@twinsun.com>
31833
31834         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
31835         buffer, so that the caller can always quote one small
31836         component of a "memory exhausted" message in slot 0.
31837         From a suggestion by Jim Meyering.
31838
31839 2000-07-30  Jim Meyering  <meyering@lucent.com>
31840
31841         * lib/makepath.c (make_path): Quote the other instance, too.
31842
31843         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
31844         (STATIC_BUF_SIZE): Define.
31845         (quotearg_n_options): Use only statically allocated storage when
31846         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
31847         than STATIC_BUF_SIZE.
31848
31849 2000-07-29  Jim Meyering  <meyering@lucent.com>
31850
31851         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
31852         * lib/dirname.c (dir_name): Likewise.
31853
31854         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
31855         `/'.
31856
31857         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
31858         (dir_name): Assert that there are no trailing slashes.
31859
31860 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
31861
31862         * lib/mbswidth.h (mbswidth): Add a flags argument.
31863         (mbswidth): New declaration.
31864         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
31865         * lib/mbswidth.c (mbswidth): Add a flags argument.
31866         (mbsnwidth): New function.
31867
31868 2000-07-24  Jim Meyering  <meyering@lucent.com>
31869
31870         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
31871
31872 2000-07-23  Paul Eggert  <eggert@twinsun.com>
31873
31874         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
31875
31876 2000-07-23  Paul Eggert  <eggert@twinsun.com>
31877
31878         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
31879         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
31880         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
31881         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
31882         invoke multibyte primitives.
31883
31884 2000-07-23  Paul Eggert  <eggert@twinsun.com>
31885
31886         * lib/quotearg.c:
31887         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
31888         so that mbstate_t is always defined.
31889
31890         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
31891         be 1 in at least one GCC installation, and this configuration
31892         error is likely to be common.  Ignoring MB_LEN_MAX hurts
31893         performance on hosts that have mbrtowc but have only unibyte
31894         locales, but I assume these hosts are rare.
31895
31896 2000-07-23  Paul Eggert  <eggert@twinsun.com>
31897
31898         * lib/mbswidth.c (_XOPEN_SOURCE):
31899         Don't define; this causes problems on Solaris 7.
31900         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
31901
31902 2000-07-23  Jim Meyering  <meyering@lucent.com>
31903
31904         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
31905         too: getgrgid, getpwuid, getuid.
31906
31907 2000-07-23  Jim Meyering  <meyering@lucent.com>
31908
31909         * lib/basename.c (base_name): Add an assertion.
31910
31911 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
31912
31913         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
31914         shadow its mbsinit function.
31915
31916 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
31917
31918         * lib/mbswidth.h: New file.
31919         * lib/mbswidth.c: New file.
31920         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
31921         (noinst_HEADERS): Add mbswidth.h.
31922
31923 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
31924
31925         * lib/config.charset: Add support for FreeBSD. Improve support for
31926         HP-UX and IRIX 6.
31927
31928 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
31929
31930         * m4/mbswidth.m4: New file.
31931         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
31932
31933 2000-07-15  Jim Meyering  <meyering@lucent.com>
31934
31935         * lib/makepath.c: Include quote.h.
31936         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
31937         corresponding argument in a `quote (...)' call.
31938         Give better diagnostics.
31939
31940         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
31941         (noinst_HEADERS): Add quote.h.
31942
31943         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
31944         from tar's src/misc.c.
31945         * lib/quote.h: New file.  Prototypes for same.
31946
31947 2000-07-14  Paul Eggert  <eggert@twinsun.com>
31948
31949         From a suggestion by Bruno Haible.
31950         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
31951         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
31952         to decide whether to define the BeOS workaround macro;
31953         this adjusts to the change to AC_MBSTATE_T.
31954
31955 2000-07-14  Jim Meyering  <meyering@lucent.com>
31956
31957         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
31958         jm_AC_TYPE_UINTMAX_T.
31959
31960 2000-07-13  Paul Eggert  <eggert@twinsun.com>
31961
31962         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
31963
31964         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
31965         quotearg_buffer_restyled): Add support for
31966         clocale_quoting_style.  Undo previous change to
31967         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
31968         and "{RIGHT QUOTATION MARK}" msgids.
31969
31970 2000-07-10  Paul Eggert  <eggert@twinsun.com>
31971
31972         From a suggestion by Bruno Haible.
31973         * m4/mbstate_t.m4 (AC_MBSTATE_T):
31974         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
31975         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
31976         and mbstate_t, to a single-part test that simply defines mbstate_t.
31977         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
31978         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
31979
31980 2000-07-10  Jim Meyering  <meyering@lucent.com>
31981
31982         * m4/strerror_r.m4: Mirror the correction made in autoconf.
31983
31984         * m4/gnu-source.m4: Output to confdefs.h directly.
31985         Suggestion from Akim Demaille.
31986
31987 2000-07-09  Paul Eggert  <eggert@twinsun.com>
31988
31989         The old behavior of quoting `like this' doesn't look good with
31990         newer, ISO-style fonts.  See:
31991         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
31992
31993         Instead, quote "like this" by default.  Let the translator
31994         tailor the locale-specific quoting behavior by providing
31995         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
31996
31997         * lib/quotearg.c (N_): New macro.
31998         (gettext_default): New function.
31999         (quotearg_buffer_restyled): Use
32000         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
32001         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
32002
32003 2000-07-09  Jim Meyering  <meyering@lucent.com>
32004
32005         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
32006         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
32007
32008         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
32009         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
32010
32011 2000-07-09  Jim Meyering  <meyering@lucent.com>
32012
32013         * lib/Most files: Update copyright dates to include 2000.
32014
32015 2000-07-08  Jim Meyering  <meyering@lucent.com>
32016
32017         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
32018         if not defined.
32019         (xgethostname): Remove now-unnecessary #ifdef.
32020         Move declaration of `err' into loop where it's used.
32021
32022 2000-07-05  Paul Eggert  <eggert@twinsun.com>
32023         and Bruno Haible  <haible@clisp.cons.org>
32024
32025         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
32026         only if the test for an object-type mbstate_t fails.  This
32027         prevents us from mistakenly reporting that mbstate_t is a
32028         system object type after we "#define mbstate_t int" to work
32029         around its lack.
32030
32031 2000-07-05  Paul Eggert  <eggert@twinsun.com>
32032         and Bruno Haible  <haible@clisp.cons.org>
32033
32034         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
32035
32036 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32037
32038         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
32039         to strerror_r.
32040         Include <ctype.h> for use of isalpha.
32041
32042 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32043
32044         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
32045         by allocating a larger buffer. Test the gethostname return value for
32046         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
32047         returns an error and ENAMETOOLONG isn't defined.
32048
32049 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
32050
32051         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
32052         dimension.
32053
32054 2000-07-04  Jim Meyering  <meyering@lucent.com>
32055
32056         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
32057         of the deprecated AC_CHECKING.
32058
32059 2000-07-04  Jim Meyering  <meyering@lucent.com>
32060
32061         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
32062         Reported by Bruno Haible.
32063
32064 2000-07-04  Jim Meyering  <meyering@lucent.com>
32065
32066         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
32067         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
32068         lacks mbrtowc.
32069
32070 2000-07-03  Paul Eggert  <eggert@twinsun.com>
32071
32072         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
32073         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
32074
32075 2000-07-03  Paul Eggert  <eggert@twinsun.com>
32076         and Bruno Haible  <haible@clisp.cons.org>
32077
32078         * lib/quotearg.c (mbrtowc):
32079         Assign to *pwc, and return 1 only if result is nonzero.
32080         (iswprint): Use ISPRINT when substituting our own mbrtowc.
32081
32082 2000-07-03  Jim Meyering  <meyering@lucent.com>
32083
32084         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
32085
32086 2000-07-03  Jim Meyering  <meyering@lucent.com>
32087
32088         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
32089         This is necessary to get a definition of e.g., UTMP_FILE on
32090         HP-UX 10.20.
32091         From Bob Proulx.
32092
32093 2000-07-02  Jim Meyering  <meyering@lucent.com>
32094
32095         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
32096
32097         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
32098         AC_LIBOBJ(function_name).
32099         * m4/chown.m4: Likewise.
32100         * m4/fnmatch.m4: Likewise.
32101         * m4/ftruncate.m4: Likewise.
32102         * m4/getgroups.m4: Likewise.
32103         * m4/getline.m4: Likewise.
32104         * m4/group-member.m4: Likewise.
32105         * m4/jm-macros.m4: Likewise.
32106         * m4/lstat.m4: Likewise.
32107         * m4/malloc.m4: Likewise.
32108         * m4/memcmp.m4: Likewise.
32109         * m4/nanosleep.m4: Likewise.
32110         * m4/putenv.m4: Likewise.
32111         * m4/realloc.m4: Likewise.
32112         * m4/regex.m4: Likewise.
32113         * m4/stat.m4: Likewise.
32114         * m4/strftime.m4: Likewise.
32115
32116 2000-07-02  Jim Meyering  <meyering@lucent.com>
32117
32118         * lib/quotearg.c (mbstate_t): Don't define here.
32119
32120 2000-07-02  Jim Meyering  <meyering@lucent.com>
32121
32122         * lib/nanosleep.c (SIGCONT): Define if not already defined.
32123
32124 2000-07-01  Jim Meyering  <meyering@lucent.com>
32125
32126         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
32127
32128 2000-07-01  Jim Meyering  <meyering@lucent.com>
32129
32130         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
32131         problem.
32132
32133 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
32134
32135         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
32136         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
32137
32138 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
32139
32140         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
32141         per change in ../m4/ls-mntd-fs.m4.
32142         (read_filesystem_list): Ignore symbolic links.
32143
32144 2000-06-29  Jim Meyering  <meyering@lucent.com>
32145
32146         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
32147         for declaration of strcmp.
32148
32149         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
32150
32151         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
32152         Avoid warning by casting result to `char *' to remove `const'.
32153
32154 2000-06-28  Jim Meyering  <meyering@lucent.com>
32155
32156         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
32157         included by quotearg.c, for which we perform this test.  From
32158         Bruno Haible.
32159
32160 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
32161
32162         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
32163         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
32164         <utmpx.h> exists, put readutmp.o into LIBOBJS.
32165
32166 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
32167
32168         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
32169
32170 2000-06-26  Paul Eggert  <eggert@twinsun.com>
32171
32172         savedir now sets errno on failure and invokes xmalloc to get memory.
32173         Fix a couple of other minor bugs while we're at it.
32174
32175         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
32176         (NAMLEN): Remove macro.
32177         (malloc, realloc): Remove decls.
32178         (stpcpy): Likewise.
32179         ("xalloc.h"): Include.
32180         (NAME_SIZE_DEFAULT): New macro.
32181         (savedir): Use xmalloc / xrealloc to allocate memory.
32182         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
32183         Skip "" directory entries.
32184         Use strlen to calculate directory entry length, since the old method
32185         is rarely used these days and isn't worth supporting.
32186         Don't use a pointer after freeing it.
32187         Check for integer overflow when calculating allocation size.
32188         Use memcpy to copy entries, instead of stpcpy.
32189         Set errno properly when returning NULL.
32190         Check for readdir error.
32191
32192 2000-06-26  Jim Meyering  <meyering@lucent.com>
32193
32194         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
32195
32196 2000-06-25  Jim Meyering  <meyering@lucent.com>
32197
32198         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
32199         Linux header bug when _XOPEN_SOURCE is defined to 500.
32200
32201 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
32202
32203         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
32204         deficiency.
32205
32206 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
32207
32208         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
32209         Include xalloc.h.
32210         Don't include <stdlib.h>.  Don't declare malloc, realloc.
32211
32212 2000-06-24  Jim Meyering  <meyering@lucent.com>
32213
32214         * m4/strerror_r.m4: Revive this file -- to try out an experimental
32215         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
32216         for which strerror does return char*, but which lacks a conveniently
32217         accessible declaration of the function.  If the compile-test says
32218         strerror_r doesn't work, then resort to a `run'-test that works on
32219         BeOS and segfaults on DEC Unix.
32220
32221 2000-06-24  Jim Meyering  <meyering@lucent.com>
32222
32223         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
32224
32225 2000-06-23  Paul Eggert  <eggert@twinsun.com>
32226
32227         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
32228         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
32229
32230 2000-06-23  Paul Eggert  <eggert@twinsun.com>
32231
32232         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
32233         (mbrtowc, mbstate_t): Define substitutes if
32234         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
32235         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
32236         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
32237
32238 2000-06-23  Jim Meyering  <meyering@lucent.com>
32239
32240         * m4/afs.m4: Add missing AC_MSG_RESULT.
32241         Reported by Bruno Haible.
32242
32243         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
32244         Suggestion from Bruno Haible.
32245
32246 2000-06-23  Jim Meyering  <meyering@lucent.com>
32247
32248         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
32249
32250 2000-06-21  Jim Meyering  <meyering@lucent.com>
32251
32252         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
32253
32254 2000-06-21  Jim Meyering  <meyering@lucent.com>
32255
32256         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
32257         (noinst_HEADERS): Add getstr.h.
32258
32259         * lib/getline.c (getstr): Move into a separate file.
32260         * lib/getstr.c (getstr): New file, extracted from getline.c, with
32261         the following changes: new parameter, delim2; both delim[12]
32262         parameters have type `int', not `char'.  The latter would lose
32263         with 8-bit delimiters.
32264         * lib/getstr.h: New file.
32265
32266 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
32267
32268         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
32269         than 1024, return a memory chunk of least possible size, instead
32270         of size PATH_MAX + 2. In the loop, increment the size proportionally.
32271         Use free/xmalloc instead of xrealloc to avoid copying for very long
32272         paths.
32273
32274 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
32275
32276         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
32277         the empty string.
32278
32279 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
32280
32281         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
32282         address, not strdup.  Include <stdlib.h> and don't declare free().
32283
32284 2000-06-19  Jim Meyering  <meyering@lucent.com>
32285
32286         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
32287
32288 2000-06-18  Jim Meyering  <meyering@lucent.com>
32289
32290         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
32291
32292         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
32293         `checking whether...' message to be consistent with that of the
32294         lstat test.
32295
32296 2000-06-18  Jim Meyering  <meyering@lucent.com>
32297
32298         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
32299         Besides, these days every porting target provides a mkdir function.
32300
32301         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
32302         needed. (this snippet comes from src/system.h).
32303
32304 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
32305
32306         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
32307
32308 2000-06-15  Paul Eggert  <eggert@twinsun.com>
32309
32310         * lib/human.c (adjust_value): New function.
32311         (human_readable_inexact): Apply rounding style even when
32312         printing approximate values.
32313
32314 2000-06-14  Paul Eggert  <eggert@twinsun.com>
32315
32316         * lib/human.c (human_readable_inexact): Allow an input block
32317         size that is not a multiple of the output block size, and vice versa.
32318         Reported by Piergiorgio Sartor.
32319
32320 2000-06-14  Paul Eggert  <eggert@twinsun.com>
32321
32322         * lib/getdate.y (get_date): Apply relative times after time
32323         zone indicator, not before.  Reported by Todd A. Jacobs.
32324
32325 2000-06-13  Jim Meyering  <meyering@lucent.com>
32326
32327         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
32328
32329         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
32330
32331 2000-06-12  Paul Eggert  <eggert@twinsun.com>
32332
32333         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
32334
32335 2000-06-12  Jim Meyering  <meyering@lucent.com>
32336
32337         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
32338         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
32339         optional argument.
32340         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
32341         the optional argument, `lib'.
32342
32343 2000-06-08  Jim Meyering  <meyering@lucent.com>
32344
32345         * m4/largefile.m4: Remove file (now that it's part of autoconf).
32346
32347 2000-06-04  Paul Eggert  <eggert@twinsun.com>
32348
32349         Rewrite largefile configuration so that we don't need to run
32350         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
32351         AC_CANONICAL_HOST in configure.in -- jmm]
32352
32353         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
32354         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
32355         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
32356         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
32357         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
32358         All uses changed.
32359         Instead of inspecting the output of getconf, try to compile the
32360         test program without and with the macro definition.
32361         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
32362         for getconf.  Instead, check for the needed flags by compiling
32363         test programs.
32364
32365 2000-06-04  Paul Eggert  <eggert@twinsun.com>
32366
32367         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
32368
32369 2000-06-04  Jim Meyering  <meyering@lucent.com>
32370
32371         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
32372         SunOS 4.1.4 for which gid_t is an unsigned type.
32373
32374 2000-06-03  Jim Meyering  <meyering@lucent.com>
32375
32376         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
32377         now that autoconf requires that.
32378
32379         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
32380         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
32381         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
32382
32383 2000-06-03  Jim Meyering  <meyering@lucent.com>
32384
32385         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
32386
32387 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
32388
32389         * m4/glibc21.m4: New file.
32390         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
32391
32392 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
32393
32394         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
32395         newer, don't install charset.alias.
32396         * lib/config.charset: Change the Linux/glibc rules so they become empty
32397         on glibc-2.1 or newer.
32398
32399 2000-06-02  Jim Meyering  <meyering@lucent.com>
32400
32401         * lib/mountlist.c: Back out last change.  Instead, do this...
32402         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
32403         me_dummy member using the same `ignore'-testing code.
32404         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
32405         fs_type strings.
32406         From Mark D. Roth.
32407
32408 2000-05-29  Jim Meyering  <meyering@lucent.com>
32409
32410         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
32411         mounts with the `ignore' attribute.  Based on a patch from
32412         Mark D. Roth.
32413
32414 2000-05-28  Jim Meyering  <meyering@lucent.com>
32415
32416         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
32417         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
32418         * m4/stat.m4: Likewise.
32419         * m4/lstat.m4: Likewise.
32420         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
32421
32422         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
32423         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
32424
32425 2000-05-26  Jim Meyering  <meyering@lucent.com>
32426
32427         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
32428
32429 2000-05-24  Jim Meyering  <meyering@lucent.com>
32430
32431         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
32432         autoconf requires that.
32433         * m4/lib-check.m4: Likewise.
32434         * m4/jm-macros.m4: Likewise.
32435         * m4/strftime.m4: Likewise.
32436
32437         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
32438         AC_CHECK_DECLS, now that autoconf requires that.
32439
32440 2000-05-22  Jim Meyering  <meyering@lucent.com>
32441
32442         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
32443         * m4/lstat.m4: Likewise.
32444
32445 2000-05-22  Jim Meyering  <meyering@lucent.com>
32446
32447         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
32448
32449 2000-05-20  Jim Meyering  <meyering@lucent.com>
32450
32451         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
32452         (jm_PREREQ): Use it.
32453
32454 2000-05-18  Jim Meyering  <meyering@lucent.com>
32455
32456         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
32457         back, too, since it may have been modified by allocate_entry.
32458         (hash_delete): Rewrite to use neither the assignment operator
32459         nor the comma operator in an if-expression.
32460
32461 2000-05-15  Paul Eggert  <eggert@twinsun.com>
32462
32463         * lib/closeout.c:
32464         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
32465         Remove; no longer needed.
32466         "quotearg.h": Add include.
32467         (file_name): Do not bother to explicitly initialize to NULL; it's less
32468         efficient on some hosts.
32469         (close_stdout_status): Remove test as to whether stdout was already
32470         closed; it breaks for the case "echo x | sort >&-".
32471         Quote file name colons.
32472         Do not assume that _("write error") lacks format strings.
32473
32474 2000-05-15  Jim Meyering  <meyering@lucent.com>
32475
32476         * lib/version-etc.c (version_etc_copyright): Update the copyright
32477         string used in all --version output.
32478
32479 2000-05-14  Jim Meyering  <meyering@lucent.com>
32480
32481         * lib/closeout.c (close_stdout_set_file_name): New function.
32482         (close_stdout_status): Use new file-scoped global.
32483         Return right away if fstat says the stdout file descriptor is invalid.
32484         * lib/closeout.h (close_stdout_set_file_name): Declare.
32485
32486 2000-05-10  Jim Meyering  <meyering@lucent.com>
32487
32488         * lib/closeout.c [default_exit_status]: New file-scoped variable.
32489         (close_stdout_set_status): New function.
32490         * lib/closeout.h (close_stdout_set_status): Declare.
32491
32492 2000-05-09  Jim Meyering  <meyering@lucent.com>
32493
32494         * m4/gettext.m4: Rename this...
32495         * m4/libintl.m4: ...to this.
32496
32497 2000-05-08  Jim Meyering  <meyering@lucent.com>
32498
32499         * lib/long-options.c: Don't include closeout.h.
32500         (parse_long_options): Don't call close_stdout for --version.
32501
32502 2000-05-06  Paul Eggert  <eggert@twinsun.com>
32503
32504         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
32505         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
32506         2.1.3 bug.  This avoids a clash when files like regex.c define
32507         _GNU_SOURCE.
32508
32509 2000-05-06  Jim Meyering  <meyering@lucent.com>
32510
32511         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
32512         (AC_REPLACE_FUNCS): Add strnlen.
32513
32514         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
32515         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
32516
32517         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
32518         AC_SEARCH_LIBS call for nanosleep.
32519         (LIB_NANOSLEEP): Set and AC_SUBST.
32520
32521 2000-05-06  Jim Meyering  <meyering@lucent.com>
32522
32523         * lib/strnlen.c: Undefine __strnlen and strnlen.
32524         [!weak_alias]: Define __strnlen to strnlen.
32525
32526         * lib/atexit.c: New file, from libiberty.
32527
32528 2000-05-06  Jim Meyering  <meyering@lucent.com>
32529
32530         * lib/closeout.c (close_stdout_status): Also check for errors on the
32531         stderr stream.
32532
32533 2000-05-05  Jim Meyering  <meyering@lucent.com>
32534
32535         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
32536         AC_SEARCH_LIBS call for clock_gettime.
32537         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
32538
32539         * m4/search-libs.m4: Update from autoconf.
32540
32541         su doesn't work on Solaris 2.6.
32542         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
32543         <shadow.h>.  Reported by Dragos Harabor.
32544
32545 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
32546
32547         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
32548         memcpy instead of xmalloc, xrealloc, path_concat.
32549         (locale_charset): Treat empty environment variables as absent.
32550         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
32551
32552 2000-05-04  Jim Meyering  <meyering@lucent.com>
32553
32554         * lib/getopt.c: Update from glibc.
32555         * lib/obstack.c: Likewise.
32556         * lib/obstack.h: Likewise.
32557         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
32558         file
32559
32560         * lib/regex.h: Likewise.
32561         * lib/strndup.c: Likewise.
32562         * lib/strnlen.c: New file, from glibc.
32563
32564 2000-05-03  Jim Meyering  <meyering@lucent.com>
32565
32566         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
32567
32568 2000-05-02  Paul Eggert  <eggert@twinsun.com>
32569
32570         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
32571         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
32572         compile-time test, rather than inspecting host and OS, to
32573         decide whether to define _LARGEFILE_SOURCE.
32574
32575 2000-05-01  Jim Meyering  <meyering@lucent.com>
32576
32577         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
32578
32579         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
32580         Based on a patch from Bruno Haible.
32581
32582 2000-05-01  Jim Meyering  <meyering@lucent.com>
32583
32584         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
32585
32586 2000-04-29  Jim Meyering  <meyering@lucent.com>
32587
32588         * lib/path-concat.c: Declare strdup only if it's not defined.
32589         * lib/canon-host.c: Likewise.
32590
32591 2000-04-28  Jim Meyering  <meyering@lucent.com>
32592
32593         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
32594         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
32595         is included first, then limits.h is included by locale.h by libintl.h.
32596         From John David Anglin.
32597
32598 2000-04-25  Jim Meyering  <meyering@lucent.com>
32599
32600         * lib/makepath.c (S_IRWXUGO): Define.
32601         (make_path): Always perform explicit chmod if MODE specifies any
32602         of the `special' permission bits.  Prompted by a bug report against
32603         install from Mate Wierdl and Joost van Baal.
32604
32605 2000-04-18  Jim Meyering  <meyering@lucent.com>
32606
32607         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
32608         (jm_PREREQ): Use it.
32609
32610 2000-04-18  Jim Meyering  <meyering@lucent.com>
32611
32612         * lib/README: New file.
32613
32614         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
32615         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
32616
32617 2000-04-17  Jim Meyering  <meyering@lucent.com>
32618
32619         Get it right :-)
32620         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
32621         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
32622         Suggestion from Akim Demaille.
32623
32624 2000-04-17  Jim Meyering  <meyering@lucent.com>
32625
32626         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
32627         the definition of it to rpl_strftime also defined-away the system's
32628         declaration.
32629
32630 2000-04-15  Jim Meyering  <meyering@lucent.com>
32631
32632         Use `C' to denote so-called `contiguous' files, the same way
32633         that tar does.
32634         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
32635         (ftypelet): Use S_ISCTG.
32636         From Michael Deutschmann.
32637
32638 2000-04-14  Jim Meyering  <meyering@lucent.com>
32639
32640         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
32641         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
32642         clobbered.
32643
32644 2000-04-14  Jim Meyering  <meyering@lucent.com>
32645
32646         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
32647
32648 2000-04-13  Jim Meyering  <meyering@lucent.com>
32649
32650         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
32651         AH_VERBATIM to insert required #ifndef into config.h.in.
32652         Suggestion from Akim Demaille.
32653
32654 2000-04-12  Jim Meyering  <meyering@lucent.com>
32655
32656         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
32657         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
32658         Christian Krackowizer.
32659
32660         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
32661         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
32662         (AC_SYS_LARGEFILE): Require.
32663         (AM_C_PROTOTYPES): Require.
32664
32665 2000-04-08  Jim Meyering  <meyering@lucent.com>
32666
32667         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
32668         names don't conflict.  Reported by Eli Zaretskii.
32669
32670 2000-04-07  Jim Meyering  <meyering@lucent.com>
32671
32672         * lib/putenv.c: Move inclusion of errno.h so it follows that of
32673         sys/types.h, to work around system header problems on AIX 3.2.5.
32674         From Bruno Haible.
32675
32676 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
32677
32678         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
32679         bug.  Deal with the different error behavior of Irix iconv.
32680
32681 2000-04-05  Paul Eggert  <eggert@twinsun.com>
32682
32683         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
32684         IRIX if the installer said otherwise.
32685
32686 2000-04-05  Jim Meyering  <meyering@lucent.com>
32687
32688         Portability tweaks required for ultrix4.3.
32689         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
32690         (jm_CHECK_DECLS): Add getutent to the list of functions.
32691         (_jm_DECL_HEADERS): Add utmpx.h.
32692         From John David Anglin.
32693
32694         * m4/strftime.m4: Back out the 2000-04-02 change.
32695         Instead of that change, simply undefine putenv in the test program.
32696
32697 2000-04-05  Jim Meyering  <meyering@lucent.com>
32698
32699         Portability tweaks required for ultrix4.3.
32700         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
32701         getutent.
32702         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
32703         * lib/canon-host.c: Declare strdup.
32704         * lib/path-concat.c: Likewise.
32705         From John David Anglin.
32706
32707 2000-04-04  Jim Meyering  <meyering@lucent.com>
32708
32709         Be more DOS 8.3-friendly.
32710         * lib/ref-add.sin: Renamed from ref-add.sed.in.
32711         * lib/ref-del.sin: Renamed from ref-del.sed.in.
32712         * lib/Makefile.am: Reflect renaming.
32713         Reported by Eli Zaretskii.
32714
32715         Use a temporary file name that won't clash with `charset.alias'
32716         in the DOS 8.3 name space.
32717         * lib/Makefile.am (charset_tmp): Define.
32718         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
32719         (uninstall-local): Likewise.
32720         Reported by Eli Zaretskii.
32721
32722 2000-04-03  Jim Meyering  <meyering@lucent.com>
32723
32724         * m4/gettext.m4: Fix typo in comment.
32725
32726         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
32727         textutils/configure.in).  Suggestion from Paul Eggert.
32728         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
32729
32730 2000-04-02  Paul Eggert  <eggert@twinsun.com>
32731
32732         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
32733         variable in the shell rather than using putenv, which isn't
32734         portable.  This avoids the configure-time inter-test dependency
32735         on the potentially-renamed putenv function.
32736
32737 2000-03-30  Paul Eggert  <eggert@twinsun.com>
32738
32739         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
32740         before checking struct stat.st_blksize, so that
32741         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
32742
32743 2000-03-29  Paul Eggert  <eggert@twinsun.com>
32744
32745         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
32746         since strftime.c uses HAVE_STRFTIME to decide whether to use
32747         the underlying strftime.
32748
32749 2000-03-29  Paul Eggert  <eggert@twinsun.com>
32750
32751         * lib/time/strftime.c (my_strftime): Make sure we call the system
32752         strftime, not ourselves, when invoking the underlying strftime.
32753
32754 2000-03-24  Jim Meyering  <meyering@lucent.com>
32755
32756         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
32757         (charset_alias): Define.
32758         (install-exec-local): Factor out common code.
32759         (uninstall-local): Split lines longer than 80.
32760         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
32761         (SUFFIXES): Define.
32762         (.sed.in.sed): New rule.  Don't redirect directly to $@.
32763         (CLEANFILES): Add ref-add.sed and ref-del.sed.
32764
32765 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
32766
32767         * lib/config.charset: Output a line containing "Packages using this
32768         file".
32769         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
32770         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
32771         ref-del.sed): New rules.
32772
32773 2000-03-17  Jim Meyering  <meyering@lucent.com>
32774
32775         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
32776         Otherwise, include <strings.h>
32777
32778 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
32779
32780         * lib/unicodeio.c (utf8_wctomb): New function.
32781         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
32782         format instead of in UCS-4 with platform dependent endianness.
32783
32784 2000-03-10  Jim Meyering  <meyering@lucent.com>
32785
32786         * m4/lib-check.m4: Look for getspnam in -lgen, too.
32787         From Marco Franzen.
32788
32789 2000-03-07  Paul Eggert  <eggert@twinsun.com>
32790
32791         * lib/savedir.c (savedir): Work even if directory size is
32792         negative; this can happen with some screwy NFS configurations.
32793
32794 2000-03-06  Jim Meyering  <meyering@lucent.com>
32795
32796         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
32797         if it's NULL (because we ran out of memory).  From Bruno Haible.
32798
32799 2000-03-05  Jim Meyering  <meyering@lucent.com>
32800
32801         * lib/localcharset.c ("path-concat.h"): Include.
32802         (get_charset_aliases): Use path_concat instead of ANSI string
32803         concatenation.
32804
32805         * lib/unicodeio.h (PARAMS): Define.
32806         Use it to guard prototype.
32807
32808 2000-03-04  Jim Meyering  <meyering@lucent.com>
32809
32810         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
32811         for lib/localcharset.c.
32812
32813 2000-03-04  Jim Meyering  <meyering@lucent.com>
32814
32815         * lib/Makefile.am (install-exec-local): Create $(libdir) before
32816         installing into it.
32817         (uninstall-local): Uncomment this rule so `make distcheck' works
32818         once again.
32819
32820         * lib/unicodeio.c (<errno.h>): Include it.
32821         (errno): Declare if not defined.
32822
32823         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
32824
32825         * lib/config.charset: New version, incorporating remarks from a linux
32826         i18n mailing list.  From Bruno Haible.
32827
32828 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
32829
32830         * m4/codeset.m4: New file.
32831         * m4/iconv.m4: New file.
32832         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
32833
32834 2000-03-03  Jim Meyering  <meyering@lucent.com>
32835
32836         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
32837
32838 2000-03-02  Jim Meyering  <meyering@lucent.com>
32839
32840         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
32841         the messages come out on separate lines.
32842
32843         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
32844         rather than jm_CHECK_DECLARATIONS.
32845         * m4/decl.m4: Remove now-unused file.
32846
32847         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
32848         geteuid.
32849
32850 2000-03-02  Jim Meyering  <meyering@lucent.com>
32851
32852         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
32853
32854 2000-03-01  Jim Meyering  <meyering@lucent.com>
32855
32856         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
32857         * lib/unicodeio.c: Likewise.
32858
32859 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
32860
32861         * lib/config.charset: New file.
32862         * lib/localcharset.c: New file.
32863         * lib/unicodeio.h, lib/unicodeio.c: New files.
32864         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
32865         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
32866         (noinst_HEADERS): Add unicodeio.h.
32867         (all-local, install-exec-local, charset.alias): New targets.
32868
32869 2000-02-28  Paul Eggert  <eggert@twinsun.com>
32870
32871         * lib/quotearg.c (ALERT_CHAR): New macro.
32872         (quotearg_buffer_restyled): Use it.
32873
32874 2000-02-27  Jim Meyering  <meyering@lucent.com>
32875
32876         * m4/check-decl.m4: Add getenv to the list.
32877
32878 2000-02-27  Jim Meyering  <meyering@lucent.com>
32879
32880         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
32881         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
32882
32883         * lib/backupfile.c: Guard inclusion of stdlib.h with
32884         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
32885         Declare malloc if needed.
32886
32887         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
32888         `#ifndef HAVE_DECL..'
32889         now that autoconf always defines the HAVE_DECL_ symbols.
32890         * lib/human.c: Likewise.
32891         * lib/same.c: Likewise.
32892         * lib/strtoumax.c: Likewise.
32893
32894         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
32895         declaration check was not run.
32896         * lib/hash.c: Likewise.
32897         * lib/human.c: Likewise.
32898         * lib/same.c: Likewise.
32899         * lib/strtoumax.c: Likewise.
32900
32901         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
32902         `.', then first look up the entire `.'-containing string as a login
32903         name.
32904
32905 2000-02-23  Jim Meyering  <meyering@lucent.com>
32906
32907         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
32908         in place of my hack.
32909
32910 2000-02-18  Paul Eggert  <eggert@twinsun.com>
32911
32912         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
32913         (textint): New typedef.
32914         (parser_control): Member year changed from int to textint.
32915         All uses changed.
32916         (YYSTYPE): Removed; replaced by %union with int and textint members.
32917         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
32918         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
32919         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
32920         (tSNUMBER, tUNUMBER): Now of type <textintval>.
32921         (date, number, to_year): Use width of number in digits, not its value,
32922         to determine whether it's a 2-digit year, or a 2-digit time.
32923         (yylex): Store number of digits of numeric tokens.
32924         Reported by John Kendall.
32925
32926         (parser_control): Changed from struct parser_control to typedef (for
32927         consistency).  All uses changed.
32928
32929         (tID): Removed; not used.
32930         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
32931
32932 2000-02-14  Paul Eggert  <eggert@twinsun.com>
32933
32934         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
32935         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
32936
32937 2000-02-12  Jim Meyering  <meyering@lucent.com>
32938
32939         * lib/userspec.c (ISDIGIT): Define it.
32940         (isdigit): Remove definition.
32941         (is_number): Use ISDIGIT, not isdigit.
32942         <libintl.h>: Include.
32943         (_ and N_): Define.
32944         (parse_user_spec): Mark translatable strings.
32945
32946 2000-02-10  Jim Meyering  <meyering@lucent.com>
32947
32948         With these changes, nanosleep.[ch] are finally enough like the other
32949         lib/* replacement files to compile on a few more losing systems.
32950
32951         * lib/nanosleep.h: Don't include config.h.
32952         Remove prototype from declaration of nanosleep.
32953         (PARAMS): Remove now-unneeded definition.
32954         * lib/nanosleep.c: #undef nanosleep.
32955         (rpl_nanosleep): Rename from nanosleep.
32956
32957 2000-02-10  Jim Meyering  <meyering@lucent.com>
32958
32959         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
32960         gnu_nanosleep to rpl_nanosleep.
32961
32962 2000-02-09  Jim Meyering  <meyering@lucent.com>
32963
32964         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
32965         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
32966
32967 2000-02-08  Akim Demaille  <akim@epita.fr>
32968
32969         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
32970         `[' and `]' and remove uses of `changequote'.
32971         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
32972         (AC_SYS_LARGEFILE): Likewise.
32973         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
32974         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
32975         of changequote.
32976         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
32977         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
32978         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
32979         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
32980
32981 2000-02-05  Jim Meyering  <meyering@lucent.com>
32982
32983         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
32984         Remove explicit use of AC_HEADER_TIME.  It is required by
32985         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
32986         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
32987         in autoconf whereby the expansion of the latter ended up preceding
32988         the expansion of its prerequisite, AC_HEADER_TIME.
32989         Reported by Volker Borchert.
32990
32991 2000-02-03  Jim Meyering  <meyering@lucent.com>
32992
32993         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
32994
32995 2000-02-03  Jim Meyering  <meyering@lucent.com>
32996
32997         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
32998         rather than with `#if HAVE_UTMPNAME'.
32999
33000 2000-02-02  Jim Meyering  <meyering@lucent.com>
33001
33002         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
33003         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
33004         Reported by Eli Zaretskii.
33005
33006 2000-02-01  Jim Meyering  <meyering@lucent.com>
33007
33008         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
33009
33010 2000-01-31  Jim Meyering  <meyering@lucent.com>
33011
33012         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
33013         functions.  Add the time.h and sys/time.h headers along with the
33014         AC_REQUIRE'ment of AC_HEADER_TIME.
33015
33016 2000-01-31  Jim Meyering  <meyering@lucent.com>
33017
33018         * lib/nanosleep.h (nanosleep): Guard declaration with
33019         `#if ! HAVE_DECL_NANOSLEEP'.
33020         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
33021         the declaration in that vendor's sys/timers.h.
33022         Reported by Christian Krackowizer.
33023
33024         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
33025         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
33026         (ISPRINT): Likewise.
33027         Reported by Tom Tromey.
33028
33029 2000-01-30  Jim Meyering  <meyering@lucent.com>
33030
33031         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
33032
33033         * m4/prereq.m4 (utmp_includes): Define.
33034         Check for ut_user and ut_name members in both struct utmpx
33035         and struct utmp.
33036
33037 2000-01-30  Jim Meyering  <meyering@lucent.com>
33038
33039         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
33040         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
33041         header files where only utmpx.ut_user is declared.
33042
33043         * lib/readutmp.h (UT_USER): Define.
33044
33045 2000-01-29  Jim Meyering  <meyering@lucent.com>
33046
33047         * m4/lib-check.m4: New file containing library-related checks from
33048         fileutils and sh-utils (textutils had none).
33049
33050 2000-01-28  Jim Meyering  <meyering@lucent.com>
33051
33052         * m4/perl.m4: Change format of warning message to look more like that
33053         from the missing script.  Suggestion from François Pinard.
33054
33055 2000-01-25  Jim Meyering  <meyering@lucent.com>
33056
33057         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
33058         well as time.h in the compile check.
33059         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
33060         Fix typo in cross-compiling case: s/yes/no/.
33061
33062 2000-01-23  Jim Meyering  <meyering@lucent.com>
33063
33064         * m4/jm-macros.m4: Move df-related tests here from
33065         fileutils/configure.in
33066
33067         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
33068         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
33069
33070         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
33071         s/space/ac_fsusage_space/.
33072         (jm_FILE_SYSTEM_USAGE): Take two parameters.
33073
33074         * m4/ftruncate.m4: New file (derived from part of
33075         fileutils/configure.in).
33076         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
33077         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
33078
33079         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
33080         AC_SUBST these here, rather than just in sh-util/configure.in, so
33081         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
33082         all the same.
33083         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
33084         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
33085         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
33086         (AC_SUBST(POW_LIBM)): Likewise.
33087         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
33088
33089 2000-01-23  Jim Meyering  <meyering@lucent.com>
33090
33091         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
33092         obstack.c.
33093
33094 2000-01-22  Jim Meyering  <meyering@lucent.com>
33095
33096         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
33097
33098         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
33099
33100         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
33101         configure.in
33102         (AC_CHECK_HEADERS): Likewise for sh-utils.
33103         (AC_CHECK_HEADERS): Likewise for textutils.
33104         Merge the three lists of headers.
33105
33106         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
33107         from fileutils' configure.in.
33108
33109         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
33110         code. Moved tests into their own function (_jm_DECL_HEADERS) in
33111         check-decl.m4.
33112
33113         * m4/check-decl.m4: Use #if rather than #ifdef.
33114         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
33115         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
33116         (_jm_DECL_HEADERS): Define new function.
33117         (jm_CHECK_DECLARATIONS): Require it.
33118
33119 2000-01-22  Jim Meyering  <meyering@lucent.com>
33120
33121         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
33122         [! HAVE_DECL_STRTOULL]: Declare strtoull.
33123         Required for some AIX systems.  Reported by Christian Krackowizer.
33124         [TESTING] (main): New function.
33125
33126         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
33127         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
33128         letters.
33129
33130         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
33131         iswprint.
33132
33133         * lib/strverscmp.c (ISDIGIT): Define.
33134         (strverscmp): Use ISDIGIT, not isdigit.
33135
33136 2000-01-19  Jim Meyering  <meyering@lucent.com>
33137
33138         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
33139         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
33140         defines `struct timespec' in <sys/time.h>
33141
33142         * m4/c-bs-a.m4: Remove uses of changequote altogether.
33143         Thanks to Akim for explaining.
33144
33145 2000-01-17  Paul Eggert  <eggert@twinsun.com>
33146
33147         * lib/nanosleep.c (nanosleep):
33148         Don't use SA_INTERRUPT to decide whether to call sigaction, as
33149         POSIX.1 doesn't require SA_INTERRUPT and some systems
33150         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
33151         it's been part of POSIX.1 since day 1 (in 1988).
33152
33153 2000-01-17  Jim Meyering  <meyering@lucent.com>
33154
33155         * lib/interlock: Remove unused file.  Reported by François Pinard.
33156
33157 2000-01-16  Paul Eggert  <eggert@twinsun.com>
33158
33159         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
33160         alert, backslash, formfeed, and vertical tab unnecessarily in
33161         shell quoting style.
33162
33163 2000-01-16  Jim Meyering  <meyering@lucent.com>
33164
33165         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
33166         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
33167         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
33168         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
33169
33170 2000-01-16  Jim Meyering  <meyering@lucent.com>
33171
33172         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
33173         because the latter didn't work.
33174
33175 2000-01-15  Jim Meyering  <meyering@lucent.com>
33176
33177         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
33178         (AC_REPLACE_FUNCS): Add memcpy and memset.
33179         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
33180         Add strpbrk.
33181         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
33182
33183 2000-01-12  Jim Meyering  <meyering@lucent.com>
33184
33185         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
33186         (jm_PREREQ): Use it.
33187         (jm_PREREQ_READUTMP): New macro.
33188         (jm_PREREQ): Use it.
33189
33190 2000-01-11  Paul Eggert  <eggert@twinsun.com>
33191
33192         Quote multibyte characters correctly.
33193         * m4/c-bs-a.m4: New file.
33194         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
33195         (jm_PREREQ): Use it.
33196
33197 2000-01-11  Paul Eggert  <eggert@twinsun.com>
33198
33199         * m4/uintmax_t.m4: Port to autoconf 2.13.
33200
33201 2000-01-08  Jim Meyering  <meyering@ascend.com>
33202
33203         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
33204         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
33205
33206 2000-01-04  Jim Meyering  <meyering@ascend.com>
33207
33208         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
33209         jm_STRUCT_DIRENT_D_TYPE.
33210         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
33211         jm_STRUCT_DIRENT_D_INO.
33212         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
33213         jm_STRUCT_UTIMBUF.
33214         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
33215         renamings.
33216         * m4/utime.m4: Likewise.
33217
33218         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
33219         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
33220
33221 2000-01-03  Paul Eggert  <eggert@twinsun.com>
33222
33223         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
33224         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
33225
33226 2000-01-02  Jim Meyering  <meyering@ascend.com>
33227
33228         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
33229         remember if this is necessary.
33230
33231 1999-12-26  Jim Meyering  <meyering@ascend.com>
33232
33233         * m4/jm-macros.m4: Use it here.
33234         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
33235
33236 1999-12-23  Jim Meyering  <meyering@ascend.com>
33237
33238         * m4/jm-macros.m4: Check for clock_gettime (moved from
33239         fileutils/configure.in)
33240         Check for gettimeofday.
33241
33242 1999-12-20  Jim Meyering  <meyering@ascend.com>
33243
33244         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
33245         autoconf-2.14a-1999-12-20.
33246
33247 1999-12-19  Jim Meyering  <meyering@ascend.com>
33248
33249         * m4/lstat-slash.m4: New file.
33250         * m4/jm-macros.m4: Use the new macro:
33251         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33252
33253 1999-12-07  Jim Meyering  <meyering@ascend.com>
33254
33255         * m4/perl.m4: Require that File::Compare be available, too.
33256         Too many systems seem to lack it.
33257
33258         * m4/strftime.m4: Add checks for most of the cpp macros tested in
33259         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
33260
33261 1999-11-18  Paul Eggert  <eggert@twinsun.com>
33262
33263         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
33264         problem with the QNX 4.25 shell, which doesn't propagate exit
33265         status of failed commands inside shell assignments.
33266
33267 1999-11-17  Jim Meyering  <meyering@ascend.com>
33268
33269         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
33270
33271 1999-11-07  Jim Meyering  <meyering@ascend.com>
33272
33273         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
33274
33275 1999-11-06  Jim Meyering  <meyering@ascend.com>
33276
33277         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
33278         * m4/jm-macros.m4 (jm_MACROS): Use it here.
33279
33280 1999-11-05  Jim Meyering  <meyering@ascend.com>
33281
33282         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
33283         configure.in of textutils, fileutils, and sh-utils into this one
33284         (shared between those packages) file.
33285         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
33286         AC_STRUCT_ST_BLKSIZE.
33287
33288 1999-11-03  Jim Meyering  <meyering@ascend.com>
33289
33290         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
33291         of AC_CHECK_TYPE checks includes unistd.h.
33292         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
33293         Suggestion from Akim Demaille.
33294
33295 1999-10-30  Jim Meyering  <meyering@ascend.com>
33296
33297         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
33298         m4-quoted string.
33299         * m4/ls-mntd-fs.m4: Likewise.
33300         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
33301         * m4/jm-winsz1.m4: Likewise.
33302
33303         * m4/const.m4: Remove file, since the fix made it into the experimental
33304         version of autoconf.
33305         * m4/mktime.m4: Likewise.
33306
33307         * m4/check-type.m4: Remove file, now that the latest version of
33308         AC_CHECK_TYPE takes a third arg to specify additional #includes.
33309
33310         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
33311         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
33312         AC_CHECK_TYPE.
33313
33314 1999-10-04  Jim Meyering  <meyering@ascend.com>
33315
33316         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
33317
33318 1999-09-22  Paul Eggert  <eggert@twinsun.com>
33319
33320         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
33321         2.95.1 bug with HP-UX 10.20.
33322
33323 1999-09-17  Jim Meyering  <meyering@ascend.com>
33324
33325         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
33326         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
33327         due to missing strdup (against sh-utils-2.0).
33328
33329 1999-08-29  Jim Meyering  <meyering@ascend.com>
33330
33331         * m4/jm-macros.m4: Require jm_BISON.
33332         * m4/bison.m4: New file.
33333
33334 1999-08-17  Paul Eggert  <eggert@twinsun.com>
33335
33336         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
33337         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
33338
33339 1999-08-05  Jim Meyering  <meyering@ascend.com>
33340
33341         * m4/getline.m4: Rename test file from conftestdata to conftest.data
33342         to avoid conflicts with `conftest' on 8+3 filesystems.
33343         Suggestion from Eli Zaretskii.
33344
33345 1999-08-04  Jim Meyering  <meyering@ascend.com>
33346
33347         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
33348         fileutils and sh-utils (textutils's getline test was inadequate).
33349         (AM_FUNC_GETLINE): Run this test.
33350         (AC_CHECK_FUNCS): Check for getdelim.
33351         Reported by Bob Proulx.
33352
33353 1999-08-02  Jim Meyering  <meyering@ascend.com>
33354
33355         * m4/jm-macros.m4: Add a comment.
33356
33357 1999-08-01  Paul Eggert  <eggert@twinsun.com>
33358
33359         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
33360         <inttypes.h> defines strtoumax as a macro (and not as a
33361         function).
33362
33363 1999-08-01  Paul Eggert  <eggert@twinsun.com>
33364
33365         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
33366         that we can shift, multiply and divide unsigned long long
33367         values; Ultrix cc can't do it.
33368
33369 1999-08-01  Paul Eggert  <eggert@twinsun.com>
33370
33371         * m4/mktime.m4: New file, which is a preview of what should appear
33372         in the next public autoconf release.
33373
33374 1999-08-01  Paul Eggert  <eggert@twinsun.com>
33375
33376         * m4/lfs.m4: Remove this file.
33377         * m4/largefile.m4: New file.  It contains the old contents of
33378         lfs.m4, except that all names with prefix AC_LFS have been
33379         changed to use the prefix AC_SYS_LARGEFILE instead, to be
33380         compatible with future autoconf versions.  Also, some minor m4
33381         quoting problems have been fixed.
33382
33383 1999-08-01  Paul Eggert  <eggert@twinsun.com>
33384
33385         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
33386         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
33387         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
33388         and simplify the shell code.
33389
33390 1999-08-01  Jim Meyering  <meyering@ascend.com>
33391
33392         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
33393         m4.
33394
33395 1999-07-20  Jim Meyering  <meyering@ascend.com>
33396
33397         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
33398
33399 1999-07-15  Jim Meyering  <meyering@ascend.com>
33400
33401         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
33402
33403 1999-05-22  Jim Meyering  <meyering@ascend.com>
33404
33405         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
33406
33407 1999-05-20  Jim Meyering  <meyering@ascend.com>
33408
33409         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
33410         Add a colon after each `then' in case $4 is empty.
33411
33412 1999-05-16  Jim Meyering  <meyering@ascend.com>
33413
33414         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
33415
33416 1999-05-10  Jim Meyering  <meyering@ascend.com>
33417
33418         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
33419
33420         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
33421         AC_FUNC_MKTIME.
33422
33423 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
33424
33425         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
33426
33427 1999-05-04  Paul Eggert  <eggert@twinsun.com>
33428
33429         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
33430         not CPPFLAGS, so that linking works correctly in IRIX.
33431
33432 1999-04-30  Paul Eggert  <eggert@twinsun.com>
33433
33434         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
33435
33436 1999-04-20  Paul Eggert  <eggert@twinsun.com>
33437
33438         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
33439         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
33440         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
33441         jm_AC_TYPE_UNSIGNED_LONG_LONG.
33442         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
33443
33444         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
33445
33446 1999-04-20  Jim Meyering  <meyering@ascend.com>
33447
33448         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
33449         AC_REPLACE xstroull if necessary.  From Paul Eggert.
33450         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
33451
33452 1999-04-18  Jim Meyering  <meyering@ascend.com>
33453
33454         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
33455         * m4/jm-macros.m4: Use it.
33456
33457 1999-04-06  Jim Meyering  <meyering@ascend.com>
33458
33459         * m4/strftime.m4: Remove test for %f.
33460
33461 1999-03-29  Jim Meyering  <meyering@ascend.com>
33462
33463         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
33464         superset of the AC_TYPE_* checks in the textutils, fileutils,
33465         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
33466         AC_TYPE_PID_T.
33467
33468 1999-03-28  Jim Meyering  <meyering@ascend.com>
33469
33470         * m4/jm-macros.m4: Define GNU_PACKAGE here.
33471         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
33472         replaced e.g., in the *.sh files of the sh-utils.
33473
33474 1999-03-20  Jim Meyering  <meyering@ascend.com>
33475
33476         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
33477         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
33478         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
33479
33480 1999-03-19  Jim Meyering  <meyering@ascend.com>
33481
33482         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
33483
33484 1999-03-12  Jim Meyering  <meyering@ascend.com>
33485
33486         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
33487
33488 1999-03-07  Jim Meyering  <meyering@ascend.com>
33489
33490         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
33491         declared.
33492
33493 1999-02-17  Jim Meyering  <meyering@ascend.com>
33494
33495         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
33496         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
33497
33498 1999-02-07  Jim Meyering  <meyering@ascend.com>
33499
33500         * m4/group-member.m4: New file -- extracted from sh-utils'
33501         configure.in.
33502
33503         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
33504         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
33505
33506 1999-02-06  Jim Meyering  <meyering@ascend.com>
33507
33508         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
33509         * m4/fnmatch.m4: Likewise.
33510         * m4/getgroups.m4: Likewise.
33511         * m4/lstat.m4: Likewise.
33512         * m4/malloc.m4: Likewise.
33513         * m4/putenv.m4: Likewise.
33514         * m4/realloc.m4: Likewise.
33515         * m4/regex.m4: Likewise.
33516         * m4/stat.m4: Likewise.
33517         * m4/strftime.m4: Likewise.
33518         Suggestion from Alain Magloire.
33519
33520         * m4/chown.m4: Use `.$ac_objext', not `.o'.
33521         * m4/fnmatch.m4: Likewise.
33522         * m4/getgroups.m4: Likewise.
33523         * m4/getline.m4: Likewise.
33524         * m4/lstat.m4: Likewise.
33525         * m4/malloc.m4: Likewise.
33526         * m4/memcmp.m4: Likewise.
33527         * m4/putenv.m4: Likewise.
33528         * m4/realloc.m4: Likewise.
33529         * m4/regex.m4: Likewise.
33530         * m4/stat.m4: Likewise.
33531         * m4/strftime.m4: Likewise.
33532         Suggestion from Alain Magloire.
33533
33534         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
33535         an argument.
33536
33537         * m4/regex.m4: Add a run-time Test for proper operation of
33538         re_compile_pattern.
33539
33540 1999-01-31  Jim Meyering  <meyering@ascend.com>
33541
33542         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
33543
33544 1999-01-30  Jim Meyering  <meyering@ascend.com>
33545
33546         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
33547
33548         * m4/jm-mktime.m4: Make this a wrapper around the official
33549         AM_FUNC_MKTIME rather than my private copy, now that the official one
33550         is up to date.
33551         * m4/mktime.m4: Remove file.
33552
33553         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
33554         * m4/uptime.m4: Likewise.
33555         * m4/uintmax_t.m4: Likewise.
33556
33557 1999-01-28  Jim Meyering  <meyering@ascend.com>
33558
33559         * m4/jm-macros.m4: Use jm_AFS.
33560         * m4/afs.m4: New file (from fileutils' configure.in).
33561
33562         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
33563         * m4/chown.m4: Likewise.
33564         * m4/d-ino.m4: Likewise.
33565         * m4/d-type.m4: Likewise.
33566         * m4/fnmatch.m4: Likewise.
33567         * m4/getgroups.m4: Likewise.
33568         * m4/gettext.m4: Likewise.
33569         * m4/jm-mktime.m4: Likewise.
33570         * m4/jm-winsz2.m4: Likewise.
33571         * m4/lcmessage.m4: Likewise.
33572         * m4/ls-mntd-fs.m4: Likewise.
33573         * m4/malloc.m4: Likewise.
33574         * m4/memcmp.m4: Likewise.
33575         * m4/putenv.m4: Likewise.
33576         * m4/realloc.m4: Likewise.
33577         * m4/st_mtim.m4: Likewise.
33578         * m4/strftime.m4: Likewise.
33579
33580 1999-01-16  Jim Meyering  <meyering@ascend.com>
33581
33582         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
33583         (ARGMATCH_DIE_DECL): Define.
33584
33585 1999-01-12  Jim Meyering  <meyering@ascend.com>
33586
33587         * m4/Makefile.am.in: Rewrite to avoid using fmt.
33588         Reported by Lars Hecking.
33589
33590 1999-01-10  Jim Meyering  <meyering@ascend.com>
33591
33592         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
33593         gross kludge.
33594         * m4/inttypes_h.m4: Likewise.
33595         * m4/lstat.m4: Likewise.
33596         * m4/malloc.m4: Likewise.
33597         * m4/readdir.m4: Likewise.
33598         * m4/realloc.m4: Likewise.
33599         * m4/st_dm_mode.m4: Likewise.
33600         * m4/stat.m4: Likewise.
33601         * m4/utimbuf.m4: Likewise.
33602         * m4/utimes.m4: Likewise.
33603
33604         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
33605         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
33606         comments in config.h.in are meaningful.
33607
33608         * m4/jm-macros.m4: Require autoconf-2.13 here.
33609
33610         * m4/regex.m4: By default, don't use the included regex.c on systems
33611         with glibc 2.  Suggestion from Uli Drepper.
33612
33613 1999-01-02  Jim Meyering  <meyering@ascend.com>
33614
33615         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
33616
33617 1998-12-18  Jim Meyering  <meyering@ascend.com>
33618
33619         * m4/Makefile.am.in (Makefile.am): Simplify rule.
33620         Based on a suggestion from Lars Hecking.
33621
33622 1998-11-16  Paul Eggert  <eggert@twinsun.com>
33623
33624         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
33625
33626 1998-11-16  Jim Meyering  <meyering@ascend.com>
33627
33628         * m4/lfs.m4: Double-quote the `uname...` expression.
33629
33630 1998-11-14  Jim Meyering  <meyering@ascend.com>
33631
33632         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
33633         * m4/stat.m4: Likewise.
33634
33635 1998-11-03  Jim Meyering  <meyering@ascend.com>
33636
33637         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
33638         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
33639
33640 1998-10-18  Jim Meyering  <meyering@ascend.com>
33641
33642         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
33643
33644 1998-10-17  Jim Meyering  <meyering@ascend.com>
33645
33646         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
33647         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
33648         calls for those previously hard-coded headers.  Instead, take a new
33649         parameter.
33650         (jm_CHECK_DECLARATIONS): Reflect interface change.
33651         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
33652         (jm_CHECK_DECL_LOCALTIME_R): New macro.
33653
33654         * m4/mktime.m4: Test for spring-forward gap before long-running test.
33655
33656 1998-10-14  Jim Meyering  <meyering@ascend.com>
33657
33658         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
33659         instead of "TZ=America/Vancouver".  From Paul Eggert.
33660
33661 1998-10-11  Jim Meyering  <meyering@ascend.com>
33662
33663         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
33664         This adds a test for a recently added compatibility fix for mktime.c.
33665         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
33666
33667 1998-09-27  Jim Meyering  <meyering@ascend.com>
33668
33669         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
33670
33671         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
33672         ../configure.in, including a change from Gordon Matzigkeit to allow
33673         cross-compiling for the Hurd.
33674
33675         * m4/glibc.m4: New file/macro to test for the GNU C Library
33676         versions 1 and 2.  From Gordon Matzigkeit.
33677         Indent.
33678
33679 1998-09-21  Jim Meyering  <meyering@ascend.com>
33680
33681         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
33682
33683 1998-08-18  Paul Eggert  <eggert@twinsun.com>
33684
33685         Port nanosecond-resolution times to UnixWare 2.1.2 and
33686         pedantic Solaris 2.6.
33687
33688         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
33689         AC_STRUCT_ST_MTIM.
33690         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
33691         Generate name of ns member, instead of just 1 or undef.
33692         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
33693
33694 1998-08-15  Jim Meyering  <meyering@ascend.com>
33695
33696         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
33697         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
33698         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
33699         instead of jm_TYPE_SSIZE_T.
33700
33701 1998-08-12  Jim Meyering  <meyering@ascend.com>
33702
33703         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
33704
33705 1998-08-02  Jim Meyering  <meyering@ascend.com>
33706
33707         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
33708         in acconfig.h manually.
33709
33710 1998-07-31  Paul Eggert  <eggert@twinsun.com>
33711
33712         * m4/st_mtim.m4: New file.
33713
33714 1998-07-28  Jim Meyering  <meyering@ascend.com>
33715
33716         * m4/utimes.m4: Undef stat.
33717
33718 1998-07-25  Jim Meyering  <meyering@ascend.com>
33719
33720         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
33721         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
33722
33723 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
33724
33725         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
33726         uid and gid actually remain unchanged.
33727
33728 1998-07-07  Jim Meyering  <meyering@ascend.com>
33729
33730         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
33731
33732 1998-07-04  Jim Meyering  <meyering@ascend.com>
33733
33734         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
33735         to prove that this macro can be used in packages without regex.c.
33736
33737 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
33738
33739         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
33740         is to be used.
33741
33742 1998-07-03  Jim Meyering  <meyering@ascend.com>
33743
33744         * m4/gettext.m4: Add -lintl if it's found to be necessary.
33745
33746         * m4/gettext.m4: New file -- from gettext-0.10.35.
33747         * m4/lcmessage.m4: Likewise.
33748         * m4/progtest.m4: Likewise.
33749
33750         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
33751         * m4/jm-macros.m4: Require the new macro.
33752
33753 1998-06-29  Jim Meyering  <meyering@ascend.com>
33754
33755         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
33756         for the definition of NGROUPS (used in a system header included
33757         by sys/mount.h).
33758
33759 1998-06-28  Jim Meyering  <meyering@ascend.com>
33760
33761         * m4/ls-mntd-fs.m4: New file.
33762         * m4/fstypename.m4: New file.
33763
33764         * m4/jm-macros.m4: Require the new macro.
33765         * m4/jm-glibc-io.m4: New file.
33766
33767 1998-05-19  Jim Meyering  <meyering@ascend.com>
33768
33769         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
33770         * m4/lchown.m4: New file.
33771
33772         * m4/Makefile.am.in: New file.
33773         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
33774
33775 1998-05-14  Jim Meyering  <meyering@ascend.com>
33776
33777         * m4/Makefile.am (EXTRA_DIST): Add them.
33778         * m4/jm-macros.m4: New file.
33779         * m4/utimbuf.m4: New file.
33780
33781 1998-05-12  Jim Meyering  <meyering@ascend.com>
33782
33783         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
33784
33785 1998-05-11  Jim Meyering  <meyering@ascend.com>
33786
33787         * m4/isc-posix.m4: New file.
33788
33789 1998-05-10  Jim Meyering  <meyering@ascend.com>
33790
33791         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
33792
33793 1998-05-09  Jim Meyering  <meyering@ascend.com>
33794
33795         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
33796         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
33797         with automake.
33798
33799         * m4/ssize_t.m4: New file.
33800         * m4/mktime.m4: Remove file -- the new automake has this now.
33801
33802 1998-04-26  Jim Meyering  <meyering@ascend.com>
33803
33804         * m4/assert.m4: New file.
33805         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
33806
33807 1998-04-05  Jim Meyering  <meyering@ascend.com>
33808
33809         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
33810         (jm_PREREQ): Use it here.
33811
33812 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
33813
33814         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
33815         in acconfig.h.
33816
33817 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
33818
33819         * m4/prereq.m4: New file.
33820         * m4/error.m4: New file.
33821         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
33822
33823 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
33824
33825         * m4/getline.m4: Don't set am_cv_func_working_getline before the
33826         cache-check for the same variable -- that defeated the purpose of
33827         the test; the test program was never run.  This was a problem only
33828         on systems with losing getline functions -- HP-UX 10.20 is one.
33829         Reported by Bjorn Helgaas.
33830
33831 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
33832
33833         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
33834
33835 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
33836
33837         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
33838
33839         * m4/const.m4: New file.  Use an initializer in this declaration
33840         typedef int charset[2]; const charset x;
33841         Reported by Bob Glickstein.
33842
33843 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
33844
33845         * m4/chown.m4: Fix reversed types on -1 args to chown.
33846         From Kaveh Ghazi.
33847
33848 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
33849
33850         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
33851         Add lseek and memchr.
33852
33853         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
33854         T.E.Dickey <dickey@clark.net> said that some older preprocessors
33855         have a 20-character limit on names.
33856
33857 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
33858
33859         * m4/inttypes_h.m4: New file.
33860         * m4/uintmax_t.m4: New file.
33861         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
33862
33863 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
33864   Free Software Foundation, Inc.
33865 Copying and distribution of this file, with or without modification,
33866 are permitted provided the copyright notice and this notice are preserved.