Fix *printf behaviour for large precisions on mingw and BeOS.
[gnulib.git] / ChangeLog
1 2007-11-04  Bruno Haible  <bruno@clisp.org>
2
3         Fix *printf behaviour for large precisions on mingw and BeOS.
4         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
5         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
6         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
7         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
8         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
9         gl_PRINTF_PRECISION and test its result. Invoke
10         gl_PREREQ_VASNPRINTF_PRECISION.
11         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
12         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
15         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18         * doc/functions/fprintf.texi: Update.
19         * doc/functions/printf.texi: Update.
20         * doc/functions/snprintf.texi: Update.
21         * doc/functions/sprintf.texi: Update.
22         * doc/functions/vfprintf.texi: Update.
23         * doc/functions/vprintf.texi: Update.
24         * doc/functions/vsnprintf.texi: Update.
25         * doc/functions/vsprintf.texi: Update.
26
27 2007-11-04  Bruno Haible  <bruno@clisp.org>
28
29         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
30
31 2007-11-04  Bruno Haible  <bruno@clisp.org>
32
33         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
34         Reported by Sylvain Beucler <beuc@gnu.org>.
35
36 2007-11-03  Bruno Haible  <bruno@clisp.org>
37
38         * tests/test-fprintf-posix2.sh: New file.
39         * tests/test-fprintf-posix2.c: New file.
40         * modules/fprintf-posix-tests (Files): Add them.
41         (TESTS): Add test-fprintf-posix2.sh.
42         (configure.ac): Check for getrlimit and setrlimit.
43         (check_PROGRAMS): Add test-fprintf-posix2.
44
45         * tests/test-printf-posix2.sh: New file.
46         * tests/test-printf-posix2.c: New file.
47         * modules/printf-posix-tests (Files): Add them.
48         (TESTS): Add test-printf-posix2.sh.
49         (configure.ac): Check for getrlimit and setrlimit.
50         (check_PROGRAMS): Add test-printf-posix2.
51
52         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
53         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
54         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
55         (decode_double): New function, copied from decode_long_double.
56         (scale10_round_decimal_decoded): New function, extracted from
57         scale10_round_decimal_long_double.
58         (scale10_round_decimal_long_double): Use it.
59         (scale10_round_decimal_double): New function.
60         (floorlog10): New function.
61         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
62         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
63         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
64         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
65         gl_PRINTF_ENOMEM and test its result. Invoke
66         gl_PREREQ_VASNPRINTF_ENOMEM.
67         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
68         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
69         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
70         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
71         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
72         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
73         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
74         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
75         * modules/snprintf-posix (Depends-on): Likewise.
76         * modules/sprintf-posix (Depends-on): Likewise.
77         * modules/vasnprintf-posix (Depends-on): Likewise.
78         * modules/vasprintf-posix (Depends-on): Likewise.
79         * modules/vfprintf-posix (Depends-on): Likewise.
80         * modules/vsnprintf-posix (Depends-on): Likewise.
81         * modules/vsprintf-posix (Depends-on): Likewise.
82         * doc/functions/fprintf.texi: Update.
83         * doc/functions/printf.texi: Update.
84         * doc/functions/snprintf.texi: Update.
85         * doc/functions/sprintf.texi: Update.
86         * doc/functions/vfprintf.texi: Update.
87         * doc/functions/vprintf.texi: Update.
88         * doc/functions/vsnprintf.texi: Update.
89         * doc/functions/vsprintf.texi: Update.
90
91 2007-11-03  Bruno Haible  <bruno@clisp.org>
92
93         * modules/frexp-nolibm-tests: New file.
94
95         * modules/frexp-nolibm: New file.
96         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
97
98 2007-11-03  Bruno Haible  <bruno@clisp.org>
99
100         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
101         value is C99 compliant.
102         Needed for OSF/1 5.1.
103
104 2007-11-03  Bruno Haible  <bruno@clisp.org>
105
106         Fix out-of-memory handling of vasnprintf.
107         * lib/printf-parse.c: Include <errno.h>.
108         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
109         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
110         is already set.
111
112 2007-11-02  Eric Blake  <ebb9@byu.net>
113
114         Fix tests on cygwin.
115         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
116
117 2007-11-01  Bruno Haible  <bruno@clisp.org>
118
119         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
120         warning.
121         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
122         needed for POSIX compatibility.
123
124 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
125
126         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
127         for compatibility with GNU.
128
129 2007-11-01  Bruno Haible  <bruno@clisp.org>
130
131         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
132         (putenv): Renamed from rpl_putenv. Change argument type from
133         'const char *' to 'char *'.
134         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
135         of defining putenv in config.h, just set REPLACE_PUTENV.
136         * modules/putenv (Depends-on): Add stdlib.
137         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
138         (Include): Use <stdlib.h>.
139         * lib/stdlib.in.h (putenv): New declaration.
140         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
141         REPLACE_PUTENV.
142         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
143         REPLACE_PUTENV.
144         Needed for MacOS X 10.5.0.
145         Reported by Peter O'Gorman <peter@pogma.com>.
146
147 2007-11-01  Jim Meyering  <meyering@redhat.com>
148
149         Treat an empty date string exactly like "0".
150         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
151         if the remaining date string (to be parsed) is empty, use "0".
152         Reported by Mischa Molhoek and discussed in this thread:
153         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
154
155 2007-10-31  Bruno Haible  <bruno@clisp.org>
156
157         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
158         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
159         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
160         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
161         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
162         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
163
164 2007-10-31  Bruno Haible  <bruno@clisp.org>
165
166         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
167         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
168         (AC_TYPE_LONG_LONG_INT): Use it.
169         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
170         it as well.
171         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
172         to m4/longlong.m4.
173         * modules/stdint (Files): Remove m4/ulonglong.m4.
174         * modules/strtoull (Files): Use m4/longlong.m4 instead of
175         m4/ulonglong.m4.
176         * modules/strtoumax (Files): Likewise.
177
178 2007-10-30  Bruno Haible  <bruno@clisp.org>
179
180         * modules/xvasprintf-posix: New file.
181         Suggested by Eric Blake.
182
183 2007-10-30  Bruno Haible  <bruno@clisp.org>
184
185         * modules/xprintf-posix-tests: New file.
186         * tests/test-xprintf-posix.sh: New file.
187         * tests/test-xprintf-posix.c: New file.
188         * tests/test-xfprintf-posix.c: New file.
189
190         * modules/xprintf-posix: New file.
191
192 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
193
194         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
195         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
196         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
197
198 2007-10-29  Bruno Haible  <bruno@clisp.org>
199
200         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
201         contain the special marker '_cv_'.
202         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
203         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
204         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
205         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
206         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
207         Reported by Ralf Wildenhues.
208
209 2007-10-29  Bruno Haible  <bruno@clisp.org>
210
211         * gnulib-tool (func_import): When --lgpl is not specified, set
212         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
213         GPLv3.
214         Reported by Simon Josefsson.
215
216 2007-10-28  Bruno Haible  <bruno@clisp.org>
217
218         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
219         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
220         HAVE_DECL_ISFINITE.
221         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
222         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
223         HAVE_DECL_ISFINITE.
224
225 2007-10-28  Bruno Haible  <bruno@clisp.org>
226
227         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
228         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
229
230 2007-10-28  Bruno Haible  <bruno@clisp.org>
231
232         Fix link errors with Sun C 5.0 on Solaris 10.
233         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
234         function is declared but not present in the compiler's libm.
235         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
236         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
237         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
238         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
239         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
240         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
241         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
242         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
243         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
244         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
245         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
246         HAVE_DECL_FLOORL.
247
248 2007-10-28  Bruno Haible  <bruno@clisp.org>
249
250         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
251         gl_FUNC_FLOORL. Cache the result.
252         (gl_FUNC_FLOORL): Use it.
253         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
254         gl_FUNC_CEILL. Cache the result.
255         (gl_FUNC_CEILL): Use it.
256
257         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
258         gl_FUNC_FLOOR. Cache the result.
259         (gl_FUNC_FLOOR): Use it.
260         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
261         gl_FUNC_CEIL. Cache the result.
262         (gl_FUNC_CEIL): Use it.
263
264         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
265         gl_FUNC_FLOORF. Cache the result.
266         (gl_FUNC_FLOORF): Use it.
267         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
268         gl_FUNC_CEILF. Cache the result.
269         (gl_FUNC_CEILF): Use it.
270
271 2007-10-28  Bruno Haible  <bruno@clisp.org>
272
273         * gnulib-tool: Allow specifying the LGPL version number through
274         --lgpl=2 or --lgpl=3.
275         (func_usage): Document --lgpl with argument.
276         Handle --lgpl=... arguments.
277         (func_import): Recognize also gl_LGPL calls with an argument. When
278         --lgpl=2 is used and the module's license is just LGPL, report an
279         error. Set sed_transform_lib_file according to the lgpl variable. In
280         the generated files, use --lgpl or gl_LGPL invocations with argument,
281         if necessary.
282         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
283         an LGPv2+ license.
284         * doc/gnulib-tool.texi (Modified imports): Update explanation of
285         gl_LGPL macro.
286
287 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
288             Bruno Haible  <bruno@clisp.org>
289
290         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
291         (u16_uctomb_aux): Likewise.
292         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
293         !HAVE_INLINE.
294         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
295
296 2007-10-28  Bruno Haible  <bruno@clisp.org>
297
298         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
299         Invoke AM_GETTEXT_OPTION if it exists.
300         * modules/vasprintf: Likewise.
301         * modules/verror: Likewise.
302         * modules/xprintf: Likewise.
303         * modules/xvasprintf: Likewise.
304
305 2007-10-27  Ben Pfaff  <blp@gnu.org>
306
307         * lib/math.in.h: Define isfinite macro and prototypes for
308         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
309         implementations.
310         * m4/math_h.m4: New substitutions for isfinite module.
311         * lib/isfinite.c: New file.
312         * m4/isfinite.m4: New file.
313         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
314         * modules/isfinite: New file.
315         * modules/isfinite-tests: New file.
316         * tests/tests-isfinite.c: New file.
317         * doc/functions/isfinite.texi: Mention isfinite module.
318         * MODULES.html.sh: Mention new module.
319
320 2007-10-27  Ben Pfaff  <blp@gnu.org>
321
322         Ralf Wildenhues reported that Tru64 4.0D declares the round
323         functions but does not have definitions.
324         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
325         cannot be found in any library, set the output variable to
326         "missing" instead of "".
327         * m4/round.m4: Also use our substitute if we cannot find round in
328         any library, even if it is declared.
329         * m4/roundf.m4: Likewise for roundf.
330         * m4/roundl.m4: Likewise for roundl.
331         * lib/math.in.h: Undefine roundf, round, roundl before defining
332         their replacements, to allow for hypothetical systems where these
333         may be defined as macros but not available in libraries.
334
335 2007-10-27  Bruno Haible  <bruno@clisp.org>
336
337         * doc/gnulib.texi: Invoke @firstparagraphindent.
338         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
339         changes in gnulib.
340         (Source changes): New section.
341
342 2007-10-26  Bruno Haible  <bruno@clisp.org>
343
344         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
345         borrowed from autoconf.
346
347 2007-10-26  Bruno Haible  <bruno@clisp.org>
348
349         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
350         strerror returned the empty string. Needed on HP-UX 11.00.
351
352 2007-10-24  Micah Cowan  <micah@cowan.name>
353
354         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
355         * build-aux/bootstrap: Remove support for now-unnecessary option,
356         --cvs-user, and envvars CVS_USER, CVS_RSH.
357
358 2007-10-24  Jim Meyering  <meyering@redhat.com>
359
360         Avoid diagnostics from sha1sum when there is no cached checksum.
361         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
362         if the po.s1 file hasn't been created yet.
363
364         * build-aux/bootstrap: Sync from coreutils:
365         2007-10-24  Jim Meyering  <meyering@redhat.com>
366         Get gnulib from the git repository, not from an obsolete cvs one.
367         * build-aux/bootstrap: Suggestion from Micah Cowan.
368         2007-10-04  Jim Meyering  <jim@meyering.net>
369         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
370         (update_po_files): Work also when there are no .po files in po/.
371
372 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
373
374         * README: Append ".git" to git and cg examples.
375         Problem reported by Benoit Sigoure.
376
377 2007-10-23  Micah Cowan  <micah@cowan.name>
378
379         * users.txt: Add wget.
380
381 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
382
383         Fix linking of some unistdio tests on FreeBSD.
384         * modules/unistdio/u16-vsnprintf-tests
385         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
386         * modules/unistdio/u16-vsprintf-tests
387         (test_u16_vsnprintf1_LDADD): Likewise.
388         * modules/unistdio/u32-vsnprintf-tests
389         (test_u32_vsnprintf1_LDADD): Likewise.
390         * modules/unistdio/u32-vsprintf-tests
391         (test_u32_vsprintf1_LDADD): Likewise.
392         * modules/unistdio/u8-vsnprintf-tests
393         (test_u8_vsnprintf1_LDADD): Likewise.
394         * modules/unistdio/u8-vsprintf-tests
395         (test_u8_vsprintf1_LDADD): Likewise.
396         * modules/unistdio/ulc-vsnprintf-tests
397         (test_ulc_vsnprintf1_LDADD): Likewise.
398         * modules/unistdio/ulc-vsprintf-tests
399         (test_ulc_vsprintf1_LDADD): Likewise.
400
401         Fix linking of some uniconv tests on FreeBSD.
402         * modules/uniconv/u16-conv-from-enc-tests
403         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
404         * modules/uniconv/u16-conv-to-enc-tests
405         (test_u16_conv_to_enc_LDADD): Likewise.
406         * modules/uniconv/u16-strconv-from-enc-tests
407         (test_u16_strconv_from_enc_LDADD): Likewise.
408         * modules/uniconv/u16-strconv-to-enc-tests
409         (test_u16_strconv_to_enc_LDADD): Likewise.
410         * modules/uniconv/u32-conv-from-enc-tests
411         (test_u32_conv_from_enc_LDADD): Likewise.
412         * modules/uniconv/u32-conv-to-enc-tests
413         (test_u32_conv_to_enc_LDADD): Likewise.
414         * modules/uniconv/u32-strconv-from-enc-tests
415         (test_u32_strconv_from_enc_LDADD): Likewise.
416         * modules/uniconv/u32-strconv-to-enc-tests
417         (test_u32_strconv_to_enc_LDADD): Likewise.
418         * modules/uniconv/u8-conv-from-enc-tests
419         (test_u8_conv_from_enc_LDADD): Likewise.
420         * modules/uniconv/u8-conv-to-enc-tests
421         (test_u8_conv_to_enc_LDADD): Likewise.
422         * modules/uniconv/u8-strconv-from-enc-tests
423         (test_u8_strconv_from_enc_LDADD): Likewise.
424         * modules/uniconv/u8-strconv-to-enc-tests
425         (test_u8_strconv_to_enc_LDADD): Likewise.
426
427 2007-10-22  Bruno Haible  <bruno@clisp.org>
428
429         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
430         size.
431
432 2007-10-22  Eric Blake  <ebb9@byu.net>
433
434         Tweak x*printf documentation.
435         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
436         variable name and comments.
437         Suggested by Bruno Haible.
438
439 2007-10-22  Bruno Haible  <bruno@clisp.org>
440
441         * lib/acl.c (copy_acl): Fix file name in comment.
442
443 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
444
445         Fix Tru64 problem with stdbool.h.
446         * lib/stdbool.in.h (false, true):
447         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
448         Don't declare as an enum in this situation; it runs afoul of Tru64.
449         Problem reported by Steven M. Schweda in
450         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
451
452 2007-10-22  Eric Blake  <ebb9@byu.net>
453
454         Also wrap vf?printf.
455         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
456         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
457         (xvprintf, xvfprintf): New functions.
458
459 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
460
461         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
462         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
463
464         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
465         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
466
467 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
468
469         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
470         by Bruno Haible.
471
472 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
473
474         * lib/getloadavg.c
475         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
476         Undef `sys' after including sys/table.h, for Tru64 4.0D.
477
478         * tests/test-i-ring.c: Work for C89.
479
480 2007-10-22  Bruno Haible  <bruno@clisp.org>
481
482         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
483         -1u, in preprocessor expression, so that we don't test for the bug
484         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
485         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
486
487 2007-10-22  Eric Blake  <ebb9@byu.net>
488
489         * tests/test-yesno.sh: Silence stderr during test.
490
491 2007-10-22  Simon Josefsson  <simon@josefsson.org>
492
493         * modules/crypto/gc-camellia: New file.
494
495         * m4/gc-camellia.m4: New file.
496
497         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
498
499         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
500
501 2007-10-22  Simon Josefsson  <simon@josefsson.org>
502
503         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
504         --help to stdout.  Reported by sms@antinode.org (Steven
505         M. Schweda).
506
507 2007-10-22  Simon Josefsson  <simon@josefsson.org>
508
509         * users.txt: Fix link to libksba.
510
511 2007-10-21  Ben Pfaff  <blp@gnu.org>
512
513         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
514         round.c roundf implementation that depends on floorf and ceilf to
515         be tested unconditionally.
516
517 2007-10-21  Ben Pfaff  <blp@gnu.org>
518
519         * m4/check-libm-func.m4: Removed.
520         * m4/check-math-lib.m4: New file.
521         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
522         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
523         definition and lack of AC_LIBOBJ([roundf]).
524         * m4/roundl.m4: Ditto, and similarly for roundl.
525         * modules/round: Reference new m4 file.
526         * modules/roundf: Ditto.
527         * modules/roundl: Ditto.
528         * tests/test-round2.c (main): Use ROUND instead of round.
529         Bug report from Bruno Haible.
530
531 2007-10-21  Bruno Haible  <bruno@clisp.org>
532
533         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
534         context.
535
536 2007-10-21  Bruno Haible  <bruno@clisp.org>
537
538         * tests/test-wcwidth.c (main): Allow negative result for some control
539         characters.
540
541         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
542         Needed on OSF/1 5.1.
543
544 2007-10-21  Bruno Haible  <bruno@clisp.org>
545
546         * tests/test-floorf1.c: Include isnanf.h.
547         (main): Use isnanf() instead of isnan().
548         * tests/test-ceilf1.c: Include isnanf.h.
549         (main): Use isnanf() instead of isnan().
550         * tests/test-truncf1.c: Include isnanf.h.
551         (main): Use isnanf() instead of isnan().
552         * tests/test-roundf1.c: Include isnanf.h.
553         (main): Use isnanf() instead of isnan().
554
555 2007-10-21  Eric Blake  <ebb9@byu.net>
556
557         * users.txt: Update URL for m4.
558
559 2007-10-21  Bruno Haible  <bruno@clisp.org>
560
561         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
562
563 2007-10-21  Bruno Haible  <bruno@clisp.org>
564
565         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
566         Git's management files if the CVS files are not present.
567
568 2007-10-20  Bruno Haible  <bruno@clisp.org>
569
570         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
571         gcc-3.4.x.
572
573 2007-10-20  Ben Pfaff  <blp@gnu.org>
574
575         * lib/math.in.h: Declare round, roundf, roundl if we are providing
576         implementations.
577         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
578         * lib/round.c: New file.
579         * lib/roundf.c: New file.
580         * lib/roundl.c: New file.
581         * m4/round.m4: New file.
582         * m4/roundf.m4: New file.
583         * m4/roundl.m4: New file.
584         * m4/check-libm-func-m4: New file.
585         * modules/math: Replace round, roundf, roundl related @VARS@ in
586         math.in.h.
587         * modules/round: New file.
588         * modules/round-tests: New file.
589         * modules/roundf: New file.
590         * modules/roundf-tests: New file.
591         * modules/roundl: New file.
592         * modules/roundl-tests: New file.
593         * tests/test-round1.c: New file.
594         * tests/test-round2.c: New file.
595         * tests/test-roundf1.c: New file.
596         * tests/test-roundf2.c: New file.
597         * tests/test-roundl.c: New file.
598         * doc/functions/round.texi: Mention round module.
599         * doc/functions/roundf.texi: Mention roundf module.
600         * doc/functions/roundl.texi: Mention roundl module.
601         * MODULES.html.sh: Mention new modules.
602         Thanks to Bruno Haible for suggestions.
603
604 2007-10-20  Jim Meyering  <meyering@redhat.com>
605
606         * lib/xprintf.c: Include <config.h> unconditionally.
607
608         Change xprintf's license to GPL.
609         * modules/xprintf (License): s/LGPL/GPL/, since this module
610         depends on modules (exit and exitfail) which are GPL.
611         Suggestion from Bruno Haible.
612
613         xprintf fixes.
614         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
615         Use a clearer diagnostic.
616         Patch from Bruno Haible.
617
618 2007-10-20  Bruno Haible  <bruno@clisp.org>
619
620         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
621         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
622         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
623
624 2007-10-20  Bruno Haible  <bruno@clisp.org>
625
626         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
627         precision in the comparison result > x - 1 or similar.
628         * tests/test-ceilf2.c (correct_result_p): Likewise.
629         * tests/test-truncf2.c (correct_result_p): Likewise.
630         * tests/test-trunc2.c (correct_result_p): Likewise.
631         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
632
633 2007-10-20  Bruno Haible  <bruno@clisp.org>
634
635         * modules/ceil: New file.
636         * m4/ceil.m4: New file.
637         * doc/functions/ceil.texi: Mention the 'ceil' module.
638
639 2007-10-20  Bruno Haible  <bruno@clisp.org>
640
641         * modules/floor: New file.
642         * m4/floor.m4: New file.
643         * doc/functions/floor.texi: Mention the 'floor' module.
644
645 2007-10-20  Bruno Haible  <bruno@clisp.org>
646
647         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
648         of %a.
649         * modules/floorf-tests (Depends-on): Likewise.
650         * modules/truncf-tests (Depends-on): Likewise.
651         * modules/trunc-tests (Depends-on): Likewise.
652         Reported by Ben Pfaff.
653
654 2007-10-19  Jim Meyering  <meyering@redhat.com>
655
656         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
657         Don't bother testing specific errno values.  Just test ferror.
658
659         New module: xprintf
660         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
661
662 2007-10-19  Bruno Haible  <bruno@clisp.org>
663
664         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
665         syntax.
666         * modules/javaexec (Makefile.am): Likewise.
667         * modules/relocatable-prog (Makefile.am): Likewise.
668         Suggested by Jim Meyering.
669
670 2007-10-18  Bruno Haible  <bruno@clisp.org>
671
672         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
673         Reported by Jim Meyering.
674
675 2007-10-18  Eric Blake  <ebb9@byu.net>
676
677         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
678
679 2007-10-18  Bruno Haible  <bruno@clisp.org>
680
681         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
682         the format string into writable memory. Needed in Fortify conditions.
683
684 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
685             Bruno Haible  <bruno@clisp.org>
686
687         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
688         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
689         * modules/trim (Depends-on): Add mbchar.
690         (configure.ac): Add gl_FUNC_MBRTOWC.
691         (Makefile.am): Augment lib_SOURCES.
692
693 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
694
695         Modify glob.c to use fstatat and dirfd, to simplify it.
696         Suggested by Eric Blake.
697         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
698         Don't include <stdbool.h>; not used.
699         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
700         (link_exists_p): Simplify implementation, since we can now assume
701         dirfd and fstatat.
702         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
703
704 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
705
706         * gnulib-tool (func_get_dependencies): Fix sed script to
707         match only tests.
708
709 2007-10-17  Bruno Haible  <bruno@clisp.org>
710
711         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
712         allow locale names without encoding suffix.
713         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
714         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
715
716 2007-10-16  Bruno Haible  <bruno@clisp.org>
717
718         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
719         * lib/getgroups.c (getgroups): Likewise.
720         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
721
722 2007-10-16  Bruno Haible  <bruno@clisp.org>
723
724         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
725         * modules/malloc-posix (License): Likewise.
726         * modules/realloc-posix (License): Likewise.
727         * modules/calloc-posix (License): Likewise.
728         * modules/intprops (License): Change from GPL to LGPL, with
729         Paul Eggert's approval.
730
731 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
732
733         Merge glibc changes into lib/glob.c.
734
735         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
736         2007-10-15 04:59:03 UTC.  Here are the changes:
737
738         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
739
740         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
741
742         * lib/glob.c: Add some branch prediction throughout.
743
744         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
745
746         [BZ #5103]
747         * lib/glob.c (glob): Recognize patterns starting \/.
748
749         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
750
751         [BZ #3996]
752         * lib/glob.c (attribute_hidden): Define if not defined.
753         (glob): Unescape dirname, filename or username when needed and not
754         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
755         is NULL.  Handle unescaped [ in pattern without closing ].
756         Don't pass GLOB_CHECK down to recursive glob for directories.
757         (__glob_pattern_type): New function.
758         (__glob_pattern_p): Implement using __glob_pattern_type.
759         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
760         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
761         Remove unreachable code.
762
763         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
764
765         * lib/glob.c (glob_in_dir): Add some comments and asserts to
766         explain why there are no leaks.
767
768         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
769
770         [BZ #3253]
771         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
772         time, rather allocate increasingly bigger arrays of pointers, if
773         possible with alloca, if too large with malloc.
774
775 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
776
777         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
778         Problem reported by H.Merijn Brand in
779         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
780         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
781         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
782
783 2007-10-15  Bruno Haible  <bruno@clisp.org>
784
785         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
786         with explicit rpl_ prefix.
787         * lib/fopen.c (fopen): Likewise.
788         * lib/freopen.c (freopen): Likewise.
789         * lib/iconv.c (iconv): Likewise.
790         * lib/iconv_close.c (iconv_close): Likewise.
791
792 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
793
794         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
795
796 2007-10-15  Bruno Haible  <bruno@clisp.org>
797
798         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
799         <stddef.h> instead of <stdlib.h> since we only need NULL.
800         Reported by Ben Pfaff <blp@cs.stanford.edu>.
801
802 2007-10-15  Bruno Haible  <bruno@clisp.org>
803
804         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
805         Replace paragraph talking about LIBOBJS.
806         Reported by Colin Watson <cjwatson@debian.org>.
807
808 2007-10-15  Bruno Haible  <bruno@clisp.org>
809
810         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
811         <stdlib.h> before using NULL.
812
813 2007-10-15  Simon Josefsson  <simon@josefsson.org>
814
815         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
816         Reported by Albert Chin <china@thewrittenword.com>.
817
818 2007-10-14  Bruno Haible  <bruno@clisp.org>
819
820         * modules/iconv_open-utf-tests: New file.
821         * tests/test-iconv-utf.c: New file.
822
823         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
824         * modules/iconv_open-utf: New file.
825         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
826         (iconv, iconv_close): New declarations.
827         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
828         be defined.
829         (iconv_open): Add special handling of conversion between UTF-8 and
830         UTF-{16,32}{BE,LE}.
831         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
832         * lib/iconv_close.c: New file.
833         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
834         gl_FUNC_ICONV_OPEN.
835         (gl_FUNC_ICONV_OPEN): Use it.
836         (gl_FUNC_ICONV_OPEN_UTF): New macro.
837         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
838         and REPLACE_ICONV_UTF.
839         * modules/iconv_open (Depends-on): Add c-strcase.
840         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
841         ICONV_CONST.
842         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
843
844 2007-10-13  Albert Chin  <china@thewrittenword.com>
845             Bruno Haible  <bruno@clisp.org>
846
847         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
848         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
849
850 2007-10-13  Bruno Haible  <bruno@clisp.org>
851
852         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
853         defined, use the ISO C99 inline semantics.
854         * lib/argp.h (ARGP_EI): Likewise.
855
856 2007-10-13  Bruno Haible  <bruno@clisp.org>
857
858         Handle 'inline' change in gcc 4.3.0.
859         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
860         argp_fmtstream_write, argp_fmtstream_set_lmargin,
861         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
862         argp_fmtstream_point): Disable 'extern' declaration if the function
863         definition is going to be provided inline.
864         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
865         semantics, not the ISO C99 inline semantics.
866         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
867         'extern' declaration if the function definition is going to be provided
868         inline.
869         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
870         the GNU C inline semantics, not the ISO C99 inline semantics. With
871         GCC 4.2, avoid a warning.
872
873 2007-10-13  Bruno Haible  <bruno@clisp.org>
874
875         * lib/freading.h (freading): Enable the use of __freading for
876         glibc >= 2.7.
877         * lib/freading.c (freading): Likewise.
878
879 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
880
881         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
882         "warning: C99 inline functions are not supported; using GNU89".
883
884 2007-10-12  Bruno Haible  <bruno@clisp.org>
885
886         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
887         of 2.
888         * tests/test-ceilf2.c: New file.
889         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
890
891         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
892         * modules/ceilf-tests: Update.
893
894 2007-10-12  Bruno Haible  <bruno@clisp.org>
895
896         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
897         of 2.
898         * tests/test-floorf2.c: New file.
899         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
900
901         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
902         * modules/floorf-tests: Update.
903
904 2007-10-12  Bruno Haible  <bruno@clisp.org>
905
906         * tests/test-trunc2.c: New file.
907         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
908
909         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
910         * modules/trunc-tests: Update.
911
912 2007-10-12  Bruno Haible  <bruno@clisp.org>
913
914         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
915         of 2.
916         * tests/test-truncf2.c: New file.
917         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
918
919         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
920         * modules/truncf-tests: Update.
921
922 2007-10-11  Eric Blake  <ebb9@byu.net>
923
924         Don't claim strerror is broken on Interix.
925         * doc/functions/strerror.texi (strerror): Known broken systems are
926         now Solaris 8, and not Interix.
927         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
928         Interix on cross-compile.
929         Reported by Martin Koeppe in
930         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
931
932 2007-10-11  Bruno Haible  <bruno@clisp.org>
933
934         * modules/i-ring-tests: New file.
935         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
936         instead of assert.
937
938 2007-10-11  Bruno Haible  <bruno@clisp.org>
939
940         * modules/filenamecat-tests: New file.
941         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
942         * lib/filenamecat.c: Remove test code.
943
944 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
945
946         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
947
948         * lib/strerror.c: Include <string.h> always, to test interface,
949         and to remove the need for the dummy.
950         Include intprops.h to compute width instead of doing it ourselves
951         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
952         (strerror): Define it to return NULL if there's no system strerror.
953         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
954         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
955         ancient pre-strerror Unix systems well any more.  Saying "unknown
956         system error" is enough.
957         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
958         simpler strerror.c implementation.
959         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
960         Simplify the tests to reflect the simpler strerror implementation.
961         * modules/strerror (Depends-on): Add intprops.
962
963 2007-10-09  Eric Blake  <ebb9@byu.net>
964
965         Silence test-fpending.
966         * modules/fpending-tests (Files): Add wrapper script.
967         * tests/test-fpending.sh: New file.
968
969 2007-10-09  Bruno Haible  <bruno@clisp.org>
970
971         * MODULES.html.sh (func_module): Don't create a hyperlink for
972         function names like 'printf_frexp'.
973         (Misc): Add crc, memxor.
974         (Characteristics of floating types): New section.
975         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
976         isnanf-nolibm, signbit, trunc, truncf, truncl.
977         (Enhancements for ISO C 99 functions): New subsection Input/output.
978         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
979         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
980         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
981         (Compatibility checks for POSIX:2001 functions): Add clock-time.
982         (Enhancements for POSIX:2001 functions): Add chdir-long.
983         (File system functions): Add areadlink, chdir-safer, read-file.
984         Remove cycle-check.
985         (File system as inode set): New section.
986         (Date and time): Add gethrxtime.
987         (Multithreading): Add openmp.
988         (Internationalization functions): Add localename.
989         (Unicode string functions): Add unistr/u*-mbsnlen.
990         (Support for maintaining and releasing projects): Add git-version-gen.
991         (Lone files): Remove directories.
992
993 2007-10-08  Ben Pfaff  <blp@gnu.org>
994
995         * lib/xmalloca.h: Fix typo in comment.
996
997 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
998
999         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
1000         when avoiding problems with integer overflow.  Use a portable test
1001         instead.
1002
1003 2007-10-08  Simon Josefsson  <simon@josefsson.org>
1004
1005         * modules/dummy (License): Change to LGPLv2+.
1006         * modules/float (License): Likewise
1007         * modules/realloc (License): Likewise
1008         * modules/stdlib (License): Likewise
1009
1010 2007-10-07  Bruno Haible  <bruno@clisp.org>
1011
1012         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
1013         * floor.c (TWO_MANT_DIG): Likewise.
1014         * ceil.c (TWO_MANT_DIG): Likewise.
1015         Reported by Ben Pfaff.
1016
1017 2007-10-07  Bruno Haible  <bruno@clisp.org>
1018
1019         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
1020         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
1021         * lib/frexp.c (FUNC): Likewise.
1022         * lib/printf-frexp.h (printf_frexp): Likewise.
1023         * lib/printf-frexpl.h (printf_frexpl): Likewise.
1024         * lib/printf-frexp.c (FUNC): Likewise.
1025         Suggested by Jim Meyering.
1026
1027 2007-10-07  Jim Meyering  <meyering@redhat.com>
1028
1029         Make xnanosleep's integer overflow test more robust.
1030         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
1031         so that gcc-4.3.0 doesn't optimize away this test for overflow.
1032
1033 2007-10-07  Bruno Haible  <bruno@clisp.org>
1034
1035         * NEWS: Mention the license change.
1036
1037         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
1038         abbreviations in the modules files.
1039
1040         Change copyright notice from GPLv2+ to GPLv3+.
1041         * README: Change copyright notice.
1042         * MODULES.html.sh: Likewise.
1043         * build-aux/bootstrap.conf: Likewise.
1044         * build-aux/config.libpath: Likewise.
1045         * build-aux/csharpcomp.sh.in: Likewise.
1046         * build-aux/csharpexec.sh.in: Likewise.
1047         * build-aux/install-reloc: Likewise.
1048         * build-aux/javacomp.sh.in: Likewise.
1049         * build-aux/javaexec.sh.in: Likewise.
1050         * build-aux/ldd.sh.in: Likewise.
1051         * build-aux/reloc-ldflags: Likewise.
1052         * build-aux/relocatable.sh.in: Likewise.
1053         * build-aux/x-to-1.in: Likewise.
1054         * check-module: Likewise.
1055         * config/srclistvars.sh: Likewise.
1056         * gnulib-tool: Likewise.
1057         * lib/acl-internal.h: Likewise.
1058         * lib/acl.c: Likewise.
1059         * lib/acl.h: Likewise.
1060         * lib/acl_entries.c: Likewise.
1061         * lib/areadlink-with-size.c: Likewise.
1062         * lib/areadlink.c: Likewise.
1063         * lib/areadlink.h: Likewise.
1064         * lib/argmatch.c: Likewise.
1065         * lib/argmatch.h: Likewise.
1066         * lib/argp-ba.c: Likewise.
1067         * lib/argp-eexst.c: Likewise.
1068         * lib/argp-fmtstream.c: Likewise.
1069         * lib/argp-fmtstream.h: Likewise.
1070         * lib/argp-fs-xinl.c: Likewise.
1071         * lib/argp-help.c: Likewise.
1072         * lib/argp-namefrob.h: Likewise.
1073         * lib/argp-parse.c: Likewise.
1074         * lib/argp-pin.c: Likewise.
1075         * lib/argp-pv.c: Likewise.
1076         * lib/argp-pvh.c: Likewise.
1077         * lib/argp-xinl.c: Likewise.
1078         * lib/argp.h: Likewise.
1079         * lib/at-func.c: Likewise.
1080         * lib/atanl.c: Likewise.
1081         * lib/backupfile.c: Likewise.
1082         * lib/backupfile.h: Likewise.
1083         * lib/basename.c: Likewise.
1084         * lib/binary-io.h: Likewise.
1085         * lib/byteswap.in.h: Likewise.
1086         * lib/c-stack.c: Likewise.
1087         * lib/c-stack.h: Likewise.
1088         * lib/c-strcasestr.c: Likewise.
1089         * lib/c-strcasestr.h: Likewise.
1090         * lib/c-strstr.c: Likewise.
1091         * lib/c-strstr.h: Likewise.
1092         * lib/c-strtod.c: Likewise.
1093         * lib/calloc.c: Likewise.
1094         * lib/canon-host.c: Likewise.
1095         * lib/canon-host.h: Likewise.
1096         * lib/canonicalize-lgpl.c: Likewise.
1097         * lib/canonicalize.c: Likewise.
1098         * lib/canonicalize.h: Likewise.
1099         * lib/ceil.c: Likewise.
1100         * lib/ceilf.c: Likewise.
1101         * lib/ceill.c: Likewise.
1102         * lib/chdir-long.c: Likewise.
1103         * lib/chdir-long.h: Likewise.
1104         * lib/chdir-safer.c: Likewise.
1105         * lib/chdir-safer.h: Likewise.
1106         * lib/chown.c: Likewise.
1107         * lib/classpath.c: Likewise.
1108         * lib/classpath.h: Likewise.
1109         * lib/clean-temp.c: Likewise.
1110         * lib/clean-temp.h: Likewise.
1111         * lib/cloexec.c: Likewise.
1112         * lib/close-stream.c: Likewise.
1113         * lib/closein.c: Likewise.
1114         * lib/closein.h: Likewise.
1115         * lib/closeout.c: Likewise.
1116         * lib/closeout.h: Likewise.
1117         * lib/concat-filename.c: Likewise.
1118         * lib/copy-file.c: Likewise.
1119         * lib/copy-file.h: Likewise.
1120         * lib/count-one-bits.h: Likewise.
1121         * lib/crc.c: Likewise.
1122         * lib/crc.h: Likewise.
1123         * lib/creat-safer.c: Likewise.
1124         * lib/csharpcomp.c: Likewise.
1125         * lib/csharpcomp.h: Likewise.
1126         * lib/csharpexec.c: Likewise.
1127         * lib/csharpexec.h: Likewise.
1128         * lib/cycle-check.c: Likewise.
1129         * lib/cycle-check.h: Likewise.
1130         * lib/diacrit.c: Likewise.
1131         * lib/diacrit.h: Likewise.
1132         * lib/diffseq.h: Likewise.
1133         * lib/dirchownmod.c: Likewise.
1134         * lib/dirent.in.h: Likewise.
1135         * lib/dirfd.c: Likewise.
1136         * lib/dirfd.h: Likewise.
1137         * lib/dirname.c: Likewise.
1138         * lib/dirname.h: Likewise.
1139         * lib/dummy.c: Likewise.
1140         * lib/dup-safer.c: Likewise.
1141         * lib/dup2.c: Likewise.
1142         * lib/eealloc.h: Likewise.
1143         * lib/error.c: Likewise.
1144         * lib/error.h: Likewise.
1145         * lib/euidaccess.c: Likewise.
1146         * lib/exclude.c: Likewise.
1147         * lib/exclude.h: Likewise.
1148         * lib/execute.c: Likewise.
1149         * lib/execute.h: Likewise.
1150         * lib/exitfail.c: Likewise.
1151         * lib/exitfail.h: Likewise.
1152         * lib/expl.c: Likewise.
1153         * lib/fatal-signal.c: Likewise.
1154         * lib/fatal-signal.h: Likewise.
1155         * lib/fbufmode.c: Likewise.
1156         * lib/fbufmode.h: Likewise.
1157         * lib/fchdir.c: Likewise.
1158         * lib/fchmodat.c: Likewise.
1159         * lib/fchownat.c: Likewise.
1160         * lib/fcntl--.h: Likewise.
1161         * lib/fcntl-safer.h: Likewise.
1162         * lib/fcntl.in.h: Likewise.
1163         * lib/fd-safer.c: Likewise.
1164         * lib/fflush.c: Likewise.
1165         * lib/file-has-acl.c: Likewise.
1166         * lib/file-set.c: Likewise.
1167         * lib/file-type.c: Likewise.
1168         * lib/file-type.h: Likewise.
1169         * lib/fileblocks.c: Likewise.
1170         * lib/filemode.c: Likewise.
1171         * lib/filemode.h: Likewise.
1172         * lib/filename.h: Likewise.
1173         * lib/filenamecat.c: Likewise.
1174         * lib/filenamecat.h: Likewise.
1175         * lib/findprog.c: Likewise.
1176         * lib/findprog.h: Likewise.
1177         * lib/float.in.h: Likewise.
1178         * lib/floor.c: Likewise.
1179         * lib/floorf.c: Likewise.
1180         * lib/floorl.c: Likewise.
1181         * lib/fopen-safer.c: Likewise.
1182         * lib/fopen.c: Likewise.
1183         * lib/fpending.c: Likewise.
1184         * lib/fpending.h: Likewise.
1185         * lib/fprintf.c: Likewise.
1186         * lib/fprintftime.h: Likewise.
1187         * lib/fpucw.h: Likewise.
1188         * lib/fpurge.c: Likewise.
1189         * lib/fpurge.h: Likewise.
1190         * lib/freadable.c: Likewise.
1191         * lib/freadable.h: Likewise.
1192         * lib/freadahead.c: Likewise.
1193         * lib/freadahead.h: Likewise.
1194         * lib/freading.c: Likewise.
1195         * lib/freading.h: Likewise.
1196         * lib/free.c: Likewise.
1197         * lib/freopen.c: Likewise.
1198         * lib/frexp.c: Likewise.
1199         * lib/frexpl.c: Likewise.
1200         * lib/fseek.c: Likewise.
1201         * lib/fseterr.c: Likewise.
1202         * lib/fseterr.h: Likewise.
1203         * lib/fstatat.c: Likewise.
1204         * lib/fstrcmp.c: Likewise.
1205         * lib/fstrcmp.h: Likewise.
1206         * lib/fsusage.c: Likewise.
1207         * lib/fsusage.h: Likewise.
1208         * lib/ftell.c: Likewise.
1209         * lib/ftello.c: Likewise.
1210         * lib/fts-cycle.c: Likewise.
1211         * lib/fts.c: Likewise.
1212         * lib/fts_.h: Likewise.
1213         * lib/full-read.c: Likewise.
1214         * lib/full-read.h: Likewise.
1215         * lib/full-write.c: Likewise.
1216         * lib/full-write.h: Likewise.
1217         * lib/fwritable.c: Likewise.
1218         * lib/fwritable.h: Likewise.
1219         * lib/fwriteerror.c: Likewise.
1220         * lib/fwriteerror.h: Likewise.
1221         * lib/fwriting.c: Likewise.
1222         * lib/fwriting.h: Likewise.
1223         * lib/gcd.c: Likewise.
1224         * lib/gcd.h: Likewise.
1225         * lib/getcwd.c: Likewise.
1226         * lib/getdate.h: Likewise.
1227         * lib/getdate.y: Likewise.
1228         * lib/getdomainname.c: Likewise.
1229         * lib/getdomainname.h: Likewise.
1230         * lib/getgroups.c: Likewise.
1231         * lib/gethostname.c: Likewise.
1232         * lib/gethrxtime.c: Likewise.
1233         * lib/gethrxtime.h: Likewise.
1234         * lib/getloadavg.c: Likewise.
1235         * lib/getndelim2.c: Likewise.
1236         * lib/getndelim2.h: Likewise.
1237         * lib/getnline.c: Likewise.
1238         * lib/getnline.h: Likewise.
1239         * lib/getopt.c: Likewise.
1240         * lib/getopt.in.h: Likewise.
1241         * lib/getopt1.c: Likewise.
1242         * lib/getopt_int.h: Likewise.
1243         * lib/getpagesize.h: Likewise.
1244         * lib/getsubopt.c: Likewise.
1245         * lib/gettime.c: Likewise.
1246         * lib/getugroups.c: Likewise.
1247         * lib/getugroups.h: Likewise.
1248         * lib/getusershell.c: Likewise.
1249         * lib/gl_anyavltree_list1.h: Likewise.
1250         * lib/gl_anyavltree_list2.h: Likewise.
1251         * lib/gl_anyhash_list1.h: Likewise.
1252         * lib/gl_anyhash_list2.h: Likewise.
1253         * lib/gl_anylinked_list1.h: Likewise.
1254         * lib/gl_anylinked_list2.h: Likewise.
1255         * lib/gl_anyrbtree_list1.h: Likewise.
1256         * lib/gl_anyrbtree_list2.h: Likewise.
1257         * lib/gl_anytree_list1.h: Likewise.
1258         * lib/gl_anytree_list2.h: Likewise.
1259         * lib/gl_anytree_oset.h: Likewise.
1260         * lib/gl_anytreehash_list1.h: Likewise.
1261         * lib/gl_anytreehash_list2.h: Likewise.
1262         * lib/gl_array_list.c: Likewise.
1263         * lib/gl_array_list.h: Likewise.
1264         * lib/gl_array_oset.c: Likewise.
1265         * lib/gl_array_oset.h: Likewise.
1266         * lib/gl_avltree_list.c: Likewise.
1267         * lib/gl_avltree_list.h: Likewise.
1268         * lib/gl_avltree_oset.c: Likewise.
1269         * lib/gl_avltree_oset.h: Likewise.
1270         * lib/gl_avltreehash_list.c: Likewise.
1271         * lib/gl_avltreehash_list.h: Likewise.
1272         * lib/gl_carray_list.c: Likewise.
1273         * lib/gl_carray_list.h: Likewise.
1274         * lib/gl_linked_list.c: Likewise.
1275         * lib/gl_linked_list.h: Likewise.
1276         * lib/gl_linkedhash_list.c: Likewise.
1277         * lib/gl_linkedhash_list.h: Likewise.
1278         * lib/gl_list.c: Likewise.
1279         * lib/gl_list.h: Likewise.
1280         * lib/gl_oset.c: Likewise.
1281         * lib/gl_oset.h: Likewise.
1282         * lib/gl_rbtree_list.c: Likewise.
1283         * lib/gl_rbtree_list.h: Likewise.
1284         * lib/gl_rbtree_oset.c: Likewise.
1285         * lib/gl_rbtree_oset.h: Likewise.
1286         * lib/gl_rbtreehash_list.c: Likewise.
1287         * lib/gl_rbtreehash_list.h: Likewise.
1288         * lib/gl_sublist.c: Likewise.
1289         * lib/gl_sublist.h: Likewise.
1290         * lib/group-member.c: Likewise.
1291         * lib/group-member.h: Likewise.
1292         * lib/hard-locale.c: Likewise.
1293         * lib/hard-locale.h: Likewise.
1294         * lib/hash-pjw.c: Likewise.
1295         * lib/hash-pjw.h: Likewise.
1296         * lib/hash-triple.c: Likewise.
1297         * lib/hash.c: Likewise.
1298         * lib/hash.h: Likewise.
1299         * lib/human.c: Likewise.
1300         * lib/human.h: Likewise.
1301         * lib/i-ring.c: Likewise.
1302         * lib/i-ring.h: Likewise.
1303         * lib/idcache.c: Likewise.
1304         * lib/imaxabs.c: Likewise.
1305         * lib/imaxdiv.c: Likewise.
1306         * lib/inet_pton.c: Likewise.
1307         * lib/inet_pton.h: Likewise.
1308         * lib/intprops.h: Likewise.
1309         * lib/inttostr.c: Likewise.
1310         * lib/inttostr.h: Likewise.
1311         * lib/inttypes.in.h: Likewise.
1312         * lib/isapipe.c: Likewise.
1313         * lib/isdir.c: Likewise.
1314         * lib/isnan.c: Likewise.
1315         * lib/isnan.h: Likewise.
1316         * lib/isnanf.c: Likewise.
1317         * lib/isnanf.h: Likewise.
1318         * lib/isnanl-nolibm.h: Likewise.
1319         * lib/isnanl.c: Likewise.
1320         * lib/isnanl.h: Likewise.
1321         * lib/javacomp.c: Likewise.
1322         * lib/javacomp.h: Likewise.
1323         * lib/javaexec.c: Likewise.
1324         * lib/javaexec.h: Likewise.
1325         * lib/javaversion.c: Likewise.
1326         * lib/javaversion.h: Likewise.
1327         * lib/javaversion.java: Likewise.
1328         * lib/lbrkprop.h: Likewise.
1329         * lib/lchmod.h: Likewise.
1330         * lib/lchown.c: Likewise.
1331         * lib/ldexpl.c: Likewise.
1332         * lib/linebreak.c: Likewise.
1333         * lib/linebreak.h: Likewise.
1334         * lib/linebuffer.c: Likewise.
1335         * lib/linebuffer.h: Likewise.
1336         * lib/locale.in.h: Likewise.
1337         * lib/logl.c: Likewise.
1338         * lib/long-options.c: Likewise.
1339         * lib/long-options.h: Likewise.
1340         * lib/lstat.c: Likewise.
1341         * lib/lstat.h: Likewise.
1342         * lib/math.in.h: Likewise.
1343         * lib/mbchar.c: Likewise.
1344         * lib/mbchar.h: Likewise.
1345         * lib/mbfile.h: Likewise.
1346         * lib/mbiter.h: Likewise.
1347         * lib/mbscasecmp.c: Likewise.
1348         * lib/mbscasestr.c: Likewise.
1349         * lib/mbschr.c: Likewise.
1350         * lib/mbscspn.c: Likewise.
1351         * lib/mbslen.c: Likewise.
1352         * lib/mbsncasecmp.c: Likewise.
1353         * lib/mbsnlen.c: Likewise.
1354         * lib/mbspbrk.c: Likewise.
1355         * lib/mbspcasecmp.c: Likewise.
1356         * lib/mbsrchr.c: Likewise.
1357         * lib/mbssep.c: Likewise.
1358         * lib/mbsspn.c: Likewise.
1359         * lib/mbsstr.c: Likewise.
1360         * lib/mbstok_r.c: Likewise.
1361         * lib/mbswidth.c: Likewise.
1362         * lib/mbswidth.h: Likewise.
1363         * lib/mbuiter.h: Likewise.
1364         * lib/memcasecmp.c: Likewise.
1365         * lib/memcasecmp.h: Likewise.
1366         * lib/memchr.c: Likewise.
1367         * lib/memcmp.c: Likewise.
1368         * lib/memcoll.c: Likewise.
1369         * lib/memcoll.h: Likewise.
1370         * lib/memcpy.c: Likewise.
1371         * lib/memrchr.c: Likewise.
1372         * lib/mkancesdirs.c: Likewise.
1373         * lib/mkdir-p.c: Likewise.
1374         * lib/mkdir-p.h: Likewise.
1375         * lib/mkdir.c: Likewise.
1376         * lib/mkdirat.c: Likewise.
1377         * lib/mkdtemp.c: Likewise.
1378         * lib/mkstemp-safer.c: Likewise.
1379         * lib/mkstemp.c: Likewise.
1380         * lib/modechange.c: Likewise.
1381         * lib/modechange.h: Likewise.
1382         * lib/mountlist.c: Likewise.
1383         * lib/mountlist.h: Likewise.
1384         * lib/mpsort.c: Likewise.
1385         * lib/nanosleep.c: Likewise.
1386         * lib/obstack.c: Likewise.
1387         * lib/obstack.h: Likewise.
1388         * lib/open-safer.c: Likewise.
1389         * lib/open.c: Likewise.
1390         * lib/openat-die.c: Likewise.
1391         * lib/openat-priv.h: Likewise.
1392         * lib/openat-proc.c: Likewise.
1393         * lib/openat.c: Likewise.
1394         * lib/openat.h: Likewise.
1395         * lib/pagealign_alloc.c: Likewise.
1396         * lib/pagealign_alloc.h: Likewise.
1397         * lib/physmem.c: Likewise.
1398         * lib/physmem.h: Likewise.
1399         * lib/pipe-safer.c: Likewise.
1400         * lib/pipe.c: Likewise.
1401         * lib/pipe.h: Likewise.
1402         * lib/posixtm.c: Likewise.
1403         * lib/posixtm.h: Likewise.
1404         * lib/posixver.c: Likewise.
1405         * lib/printf-frexp.c: Likewise.
1406         * lib/printf-frexp.h: Likewise.
1407         * lib/printf-frexpl.c: Likewise.
1408         * lib/printf-frexpl.h: Likewise.
1409         * lib/printf.c: Likewise.
1410         * lib/progname.c: Likewise.
1411         * lib/progname.h: Likewise.
1412         * lib/progreloc.c: Likewise.
1413         * lib/putenv.c: Likewise.
1414         * lib/quote.c: Likewise.
1415         * lib/quote.h: Likewise.
1416         * lib/quotearg.c: Likewise.
1417         * lib/quotearg.h: Likewise.
1418         * lib/raise.c: Likewise.
1419         * lib/readline.c: Likewise.
1420         * lib/readline.h: Likewise.
1421         * lib/readlink.c: Likewise.
1422         * lib/readtokens.c: Likewise.
1423         * lib/readtokens.h: Likewise.
1424         * lib/readtokens0.c: Likewise.
1425         * lib/readtokens0.h: Likewise.
1426         * lib/readutmp.c: Likewise.
1427         * lib/readutmp.h: Likewise.
1428         * lib/realloc.c: Likewise.
1429         * lib/relocwrapper.c: Likewise.
1430         * lib/rename-dest-slash.c: Likewise.
1431         * lib/rename.c: Likewise.
1432         * lib/rmdir.c: Likewise.
1433         * lib/rpmatch.c: Likewise.
1434         * lib/safe-read.c: Likewise.
1435         * lib/safe-read.h: Likewise.
1436         * lib/safe-write.c: Likewise.
1437         * lib/safe-write.h: Likewise.
1438         * lib/same-inode.h: Likewise.
1439         * lib/same.c: Likewise.
1440         * lib/same.h: Likewise.
1441         * lib/save-cwd.c: Likewise.
1442         * lib/save-cwd.h: Likewise.
1443         * lib/savedir.c: Likewise.
1444         * lib/savedir.h: Likewise.
1445         * lib/savewd.c: Likewise.
1446         * lib/savewd.h: Likewise.
1447         * lib/search.in.h: Likewise.
1448         * lib/setenv.c: Likewise.
1449         * lib/setenv.h: Likewise.
1450         * lib/settime.c: Likewise.
1451         * lib/sh-quote.c: Likewise.
1452         * lib/sh-quote.h: Likewise.
1453         * lib/sig2str.c: Likewise.
1454         * lib/sig2str.h: Likewise.
1455         * lib/signal.in.h: Likewise.
1456         * lib/signbitd.c: Likewise.
1457         * lib/signbitf.c: Likewise.
1458         * lib/signbitl.c: Likewise.
1459         * lib/sigprocmask.c: Likewise.
1460         * lib/sincosl.c: Likewise.
1461         * lib/sleep.c: Likewise.
1462         * lib/sprintf.c: Likewise.
1463         * lib/sqrtl.c: Likewise.
1464         * lib/stat-time.h: Likewise.
1465         * lib/stdio--.h: Likewise.
1466         * lib/stdio-safer.h: Likewise.
1467         * lib/stdlib--.h: Likewise.
1468         * lib/stdlib-safer.h: Likewise.
1469         * lib/stdlib.in.h: Likewise.
1470         * lib/stpcpy.c: Likewise.
1471         * lib/stpncpy.c: Likewise.
1472         * lib/strchrnul.c: Likewise.
1473         * lib/strcspn.c: Likewise.
1474         * lib/strerror.c: Likewise.
1475         * lib/strftime.c: Likewise.
1476         * lib/strftime.h: Likewise.
1477         * lib/striconveh.c: Likewise.
1478         * lib/striconveh.h: Likewise.
1479         * lib/striconveha.c: Likewise.
1480         * lib/striconveha.h: Likewise.
1481         * lib/stripslash.c: Likewise.
1482         * lib/strnlen1.c: Likewise.
1483         * lib/strnlen1.h: Likewise.
1484         * lib/strtod.c: Likewise.
1485         * lib/strtoimax.c: Likewise.
1486         * lib/strtok_r.c: Likewise.
1487         * lib/strtol.c: Likewise.
1488         * lib/strtoll.c: Likewise.
1489         * lib/strtoul.c: Likewise.
1490         * lib/strtoull.c: Likewise.
1491         * lib/sysexits.in.h: Likewise.
1492         * lib/tempname.c: Likewise.
1493         * lib/tempname.h: Likewise.
1494         * lib/timespec.h: Likewise.
1495         * lib/tls.c: Likewise.
1496         * lib/tls.h: Likewise.
1497         * lib/tmpdir.c: Likewise.
1498         * lib/tmpdir.h: Likewise.
1499         * lib/tmpfile-safer.c: Likewise.
1500         * lib/tmpfile.c: Likewise.
1501         * lib/trigl.c: Likewise.
1502         * lib/trigl.h: Likewise.
1503         * lib/trim.c: Likewise.
1504         * lib/trim.h: Likewise.
1505         * lib/trunc.c: Likewise.
1506         * lib/truncf.c: Likewise.
1507         * lib/truncl.c: Likewise.
1508         * lib/tsearch.c: Likewise.
1509         * lib/unicodeio.c: Likewise.
1510         * lib/unicodeio.h: Likewise.
1511         * lib/unistd--.h: Likewise.
1512         * lib/unistd-safer.h: Likewise.
1513         * lib/unistdio/ulc-fprintf.c: Likewise.
1514         * lib/unistdio/ulc-vfprintf.c: Likewise.
1515         * lib/unlinkdir.c: Likewise.
1516         * lib/unlinkdir.h: Likewise.
1517         * lib/unlocked-io.h: Likewise.
1518         * lib/unsetenv.c: Likewise.
1519         * lib/userspec.c: Likewise.
1520         * lib/utime.c: Likewise.
1521         * lib/utimecmp.c: Likewise.
1522         * lib/utimecmp.h: Likewise.
1523         * lib/utimens.c: Likewise.
1524         * lib/verify.h: Likewise.
1525         * lib/verror.c: Likewise.
1526         * lib/verror.h: Likewise.
1527         * lib/version-etc-fsf.c: Likewise.
1528         * lib/version-etc.c: Likewise.
1529         * lib/version-etc.h: Likewise.
1530         * lib/vfprintf.c: Likewise.
1531         * lib/vprintf.c: Likewise.
1532         * lib/vsprintf.c: Likewise.
1533         * lib/w32spawn.h: Likewise.
1534         * lib/wait-process.c: Likewise.
1535         * lib/wait-process.h: Likewise.
1536         * lib/wcwidth.c: Likewise.
1537         * lib/write-any-file.c: Likewise.
1538         * lib/xalloc-die.c: Likewise.
1539         * lib/xalloc.h: Likewise.
1540         * lib/xasprintf.c: Likewise.
1541         * lib/xgetcwd.c: Likewise.
1542         * lib/xgetcwd.h: Likewise.
1543         * lib/xgetdomainname.c: Likewise.
1544         * lib/xgetdomainname.h: Likewise.
1545         * lib/xgethostname.c: Likewise.
1546         * lib/xmalloc.c: Likewise.
1547         * lib/xmalloca.c: Likewise.
1548         * lib/xmalloca.h: Likewise.
1549         * lib/xmemcoll.c: Likewise.
1550         * lib/xnanosleep.c: Likewise.
1551         * lib/xreadlink.c: Likewise.
1552         * lib/xreadlink.h: Likewise.
1553         * lib/xsetenv.c: Likewise.
1554         * lib/xsetenv.h: Likewise.
1555         * lib/xstriconv.c: Likewise.
1556         * lib/xstriconv.h: Likewise.
1557         * lib/xstrndup.c: Likewise.
1558         * lib/xstrndup.h: Likewise.
1559         * lib/xstrtod.c: Likewise.
1560         * lib/xstrtod.h: Likewise.
1561         * lib/xstrtol-error.c: Likewise.
1562         * lib/xstrtol.c: Likewise.
1563         * lib/xstrtol.h: Likewise.
1564         * lib/xtime.h: Likewise.
1565         * lib/xvasprintf.c: Likewise.
1566         * lib/xvasprintf.h: Likewise.
1567         * lib/yesno.c: Likewise.
1568         * lib/yesno.h: Likewise.
1569         * posix-modules: Likewise.
1570         * tests/test-alloca-opt.c: Likewise.
1571         * tests/test-arcfour.c: Likewise.
1572         * tests/test-arctwo.c: Likewise.
1573         * tests/test-argmatch.c: Likewise.
1574         * tests/test-argp-2.sh: Likewise.
1575         * tests/test-argp.c: Likewise.
1576         * tests/test-arpa_inet.c: Likewise.
1577         * tests/test-array_list.c: Likewise.
1578         * tests/test-array_oset.c: Likewise.
1579         * tests/test-atexit.c: Likewise.
1580         * tests/test-avltree_list.c: Likewise.
1581         * tests/test-avltree_oset.c: Likewise.
1582         * tests/test-avltreehash_list.c: Likewise.
1583         * tests/test-base64.c: Likewise.
1584         * tests/test-binary-io.c: Likewise.
1585         * tests/test-byteswap.c: Likewise.
1586         * tests/test-c-ctype.c: Likewise.
1587         * tests/test-c-strcasecmp.c: Likewise.
1588         * tests/test-c-strcasestr.c: Likewise.
1589         * tests/test-c-strncasecmp.c: Likewise.
1590         * tests/test-c-strstr.c: Likewise.
1591         * tests/test-canonicalize-lgpl.c: Likewise.
1592         * tests/test-canonicalize.c: Likewise.
1593         * tests/test-carray_list.c: Likewise.
1594         * tests/test-ceilf.c: Likewise.
1595         * tests/test-ceill.c: Likewise.
1596         * tests/test-count-one-bits.c: Likewise.
1597         * tests/test-crc.c: Likewise.
1598         * tests/test-dirname.c: Likewise.
1599         * tests/test-fbufmode.c: Likewise.
1600         * tests/test-fcntl.c: Likewise.
1601         * tests/test-fflush.c: Likewise.
1602         * tests/test-floorf.c: Likewise.
1603         * tests/test-floorl.c: Likewise.
1604         * tests/test-fopen.c: Likewise.
1605         * tests/test-fprintf-posix.c: Likewise.
1606         * tests/test-fprintf-posix.h: Likewise.
1607         * tests/test-fpurge.c: Likewise.
1608         * tests/test-freadable.c: Likewise.
1609         * tests/test-freadahead.c: Likewise.
1610         * tests/test-freading.c: Likewise.
1611         * tests/test-freopen.c: Likewise.
1612         * tests/test-frexp.c: Likewise.
1613         * tests/test-frexpl.c: Likewise.
1614         * tests/test-fseek.c: Likewise.
1615         * tests/test-fseeko.c: Likewise.
1616         * tests/test-fseterr.c: Likewise.
1617         * tests/test-fstrcmp.c: Likewise.
1618         * tests/test-ftell.c: Likewise.
1619         * tests/test-ftello.c: Likewise.
1620         * tests/test-fwritable.c: Likewise.
1621         * tests/test-fwriting.c: Likewise.
1622         * tests/test-getaddrinfo.c: Likewise.
1623         * tests/test-getpass.c: Likewise.
1624         * tests/test-gettimeofday.c: Likewise.
1625         * tests/test-hmac-md5.c: Likewise.
1626         * tests/test-hmac-sha1.c: Likewise.
1627         * tests/test-iconv.c: Likewise.
1628         * tests/test-iconvme.c: Likewise.
1629         * tests/test-inttypes.c: Likewise.
1630         * tests/test-isnan.c: Likewise.
1631         * tests/test-isnanf.c: Likewise.
1632         * tests/test-isnanl-nolibm.c: Likewise.
1633         * tests/test-isnanl.c: Likewise.
1634         * tests/test-isnanl.h: Likewise.
1635         * tests/test-ldexpl.c: Likewise.
1636         * tests/test-linked_list.c: Likewise.
1637         * tests/test-linkedhash_list.c: Likewise.
1638         * tests/test-locale.c: Likewise.
1639         * tests/test-localename.c: Likewise.
1640         * tests/test-lock.c: Likewise.
1641         * tests/test-lseek.c: Likewise.
1642         * tests/test-malloca.c: Likewise.
1643         * tests/test-math.c: Likewise.
1644         * tests/test-mbscasecmp.c: Likewise.
1645         * tests/test-mbscasestr1.c: Likewise.
1646         * tests/test-mbscasestr2.c: Likewise.
1647         * tests/test-mbscasestr3.c: Likewise.
1648         * tests/test-mbscasestr4.c: Likewise.
1649         * tests/test-mbschr.c: Likewise.
1650         * tests/test-mbscspn.c: Likewise.
1651         * tests/test-mbsncasecmp.c: Likewise.
1652         * tests/test-mbspbrk.c: Likewise.
1653         * tests/test-mbspcasecmp.c: Likewise.
1654         * tests/test-mbsrchr.c: Likewise.
1655         * tests/test-mbsspn.c: Likewise.
1656         * tests/test-mbsstr1.c: Likewise.
1657         * tests/test-mbsstr2.c: Likewise.
1658         * tests/test-mbsstr3.c: Likewise.
1659         * tests/test-md5.c: Likewise.
1660         * tests/test-memmem.c: Likewise.
1661         * tests/test-netinet_in.c: Likewise.
1662         * tests/test-open.c: Likewise.
1663         * tests/test-printf-frexp.c: Likewise.
1664         * tests/test-printf-frexpl.c: Likewise.
1665         * tests/test-printf-posix.c: Likewise.
1666         * tests/test-printf-posix.h: Likewise.
1667         * tests/test-rbtree_list.c: Likewise.
1668         * tests/test-rbtree_oset.c: Likewise.
1669         * tests/test-rbtreehash_list.c: Likewise.
1670         * tests/test-read-file.c: Likewise.
1671         * tests/test-rijndael.c: Likewise.
1672         * tests/test-search.c: Likewise.
1673         * tests/test-signbit.c: Likewise.
1674         * tests/test-sleep.c: Likewise.
1675         * tests/test-snprintf-posix.c: Likewise.
1676         * tests/test-snprintf-posix.h: Likewise.
1677         * tests/test-snprintf.c: Likewise.
1678         * tests/test-sprintf-posix.c: Likewise.
1679         * tests/test-sprintf-posix.h: Likewise.
1680         * tests/test-stat-time.c: Likewise.
1681         * tests/test-stdbool.c: Likewise.
1682         * tests/test-stdint.c: Likewise.
1683         * tests/test-stdio.c: Likewise.
1684         * tests/test-stdlib.c: Likewise.
1685         * tests/test-stpncpy.c: Likewise.
1686         * tests/test-strcasestr.c: Likewise.
1687         * tests/test-striconv.c: Likewise.
1688         * tests/test-striconveh.c: Likewise.
1689         * tests/test-striconveha.c: Likewise.
1690         * tests/test-string.c: Likewise.
1691         * tests/test-sys_select.c: Likewise.
1692         * tests/test-sys_socket.c: Likewise.
1693         * tests/test-sys_stat.c: Likewise.
1694         * tests/test-sys_time.c: Likewise.
1695         * tests/test-sysexits.c: Likewise.
1696         * tests/test-time.c: Likewise.
1697         * tests/test-tls.c: Likewise.
1698         * tests/test-trunc.c: Likewise.
1699         * tests/test-truncf.c: Likewise.
1700         * tests/test-truncl.c: Likewise.
1701         * tests/test-unistd.c: Likewise.
1702         * tests/test-vasnprintf-posix.c: Likewise.
1703         * tests/test-vasnprintf-posix2.c: Likewise.
1704         * tests/test-vasnprintf.c: Likewise.
1705         * tests/test-vasprintf-posix.c: Likewise.
1706         * tests/test-vasprintf.c: Likewise.
1707         * tests/test-verify.c: Likewise.
1708         * tests/test-vfprintf-posix.c: Likewise.
1709         * tests/test-vprintf-posix.c: Likewise.
1710         * tests/test-vsnprintf-posix.c: Likewise.
1711         * tests/test-vsnprintf.c: Likewise.
1712         * tests/test-vsprintf-posix.c: Likewise.
1713         * tests/test-wchar.c: Likewise.
1714         * tests/test-wctype.c: Likewise.
1715         * tests/test-wcwidth.c: Likewise.
1716         * tests/test-xstrtol.c: Likewise.
1717         * tests/test-xvasprintf.c: Likewise.
1718         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
1719         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
1720         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
1721         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
1722         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
1723         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
1724         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
1725         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
1726         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
1727         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
1728         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
1729         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
1730         * tests/uniname/test-uninames.c: Likewise.
1731         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
1732         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
1733         * tests/unistdio/test-u16-printf1.h: Likewise.
1734         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
1735         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
1736         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
1737         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
1738         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
1739         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
1740         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
1741         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
1742         * tests/unistdio/test-u32-printf1.h: Likewise.
1743         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
1744         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
1745         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
1746         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
1747         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
1748         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
1749         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
1750         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
1751         * tests/unistdio/test-u8-printf1.h: Likewise.
1752         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
1753         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
1754         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
1755         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
1756         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
1757         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
1758         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
1759         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
1760         * tests/unistdio/test-ulc-printf1.h: Likewise.
1761         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
1762         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
1763         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
1764         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
1765         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
1766         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
1767         * tests/uniwidth/test-u16-strwidth.c: Likewise.
1768         * tests/uniwidth/test-u16-width.c: Likewise.
1769         * tests/uniwidth/test-u32-strwidth.c: Likewise.
1770         * tests/uniwidth/test-u32-width.c: Likewise.
1771         * tests/uniwidth/test-u8-strwidth.c: Likewise.
1772         * tests/uniwidth/test-u8-width.c: Likewise.
1773         * tests/uniwidth/test-uc_width.c: Likewise.
1774         * config/srclist-update: Likewise.
1775         (fixlicense): Update to GPLv3+.
1776
1777         Change copyright notice from LGPLv2.1+ to LGPLv3+.
1778         * tests/test-tsearch.c: Change copyright notice.
1779
1780         Change copyright notice from LGPLv2.0+ to LGPLv3+.
1781         * lib/c-strcaseeq.h: Change copyright notice.
1782         * lib/streq.h: Likewise.
1783         * lib/uniconv.h: Likewise.
1784         * lib/uniconv/u-conv-from-enc.h: Likewise.
1785         * lib/uniconv/u-conv-to-enc.h: Likewise.
1786         * lib/uniconv/u-strconv-from-enc.h: Likewise.
1787         * lib/uniconv/u-strconv-to-enc.h: Likewise.
1788         * lib/uniconv/u16-conv-from-enc.c: Likewise.
1789         * lib/uniconv/u16-conv-to-enc.c: Likewise.
1790         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
1791         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
1792         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
1793         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
1794         * lib/uniconv/u32-conv-from-enc.c: Likewise.
1795         * lib/uniconv/u32-conv-to-enc.c: Likewise.
1796         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
1797         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
1798         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
1799         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
1800         * lib/uniconv/u8-conv-from-enc.c: Likewise.
1801         * lib/uniconv/u8-conv-to-enc.c: Likewise.
1802         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
1803         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
1804         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
1805         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
1806         * lib/uniname.h: Likewise.
1807         * lib/uniname/uniname.c: Likewise.
1808         * lib/unistdio.h: Likewise.
1809         * lib/unistdio/u-asnprintf.h: Likewise.
1810         * lib/unistdio/u-asprintf.h: Likewise.
1811         * lib/unistdio/u-printf-args.c: Likewise.
1812         * lib/unistdio/u-printf-args.h: Likewise.
1813         * lib/unistdio/u-printf-parse.h: Likewise.
1814         * lib/unistdio/u-snprintf.h: Likewise.
1815         * lib/unistdio/u-sprintf.h: Likewise.
1816         * lib/unistdio/u-vasprintf.h: Likewise.
1817         * lib/unistdio/u-vsnprintf.h: Likewise.
1818         * lib/unistdio/u-vsprintf.h: Likewise.
1819         * lib/unistdio/u16-asnprintf.c: Likewise.
1820         * lib/unistdio/u16-asprintf.c: Likewise.
1821         * lib/unistdio/u16-printf-parse.c: Likewise.
1822         * lib/unistdio/u16-snprintf.c: Likewise.
1823         * lib/unistdio/u16-sprintf.c: Likewise.
1824         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
1825         * lib/unistdio/u16-u16-asprintf.c: Likewise.
1826         * lib/unistdio/u16-u16-snprintf.c: Likewise.
1827         * lib/unistdio/u16-u16-sprintf.c: Likewise.
1828         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
1829         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
1830         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
1831         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
1832         * lib/unistdio/u16-vasnprintf.c: Likewise.
1833         * lib/unistdio/u16-vasprintf.c: Likewise.
1834         * lib/unistdio/u16-vsnprintf.c: Likewise.
1835         * lib/unistdio/u16-vsprintf.c: Likewise.
1836         * lib/unistdio/u32-asnprintf.c: Likewise.
1837         * lib/unistdio/u32-asprintf.c: Likewise.
1838         * lib/unistdio/u32-printf-parse.c: Likewise.
1839         * lib/unistdio/u32-snprintf.c: Likewise.
1840         * lib/unistdio/u32-sprintf.c: Likewise.
1841         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
1842         * lib/unistdio/u32-u32-asprintf.c: Likewise.
1843         * lib/unistdio/u32-u32-snprintf.c: Likewise.
1844         * lib/unistdio/u32-u32-sprintf.c: Likewise.
1845         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
1846         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
1847         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
1848         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
1849         * lib/unistdio/u32-vasnprintf.c: Likewise.
1850         * lib/unistdio/u32-vasprintf.c: Likewise.
1851         * lib/unistdio/u32-vsnprintf.c: Likewise.
1852         * lib/unistdio/u32-vsprintf.c: Likewise.
1853         * lib/unistdio/u8-asnprintf.c: Likewise.
1854         * lib/unistdio/u8-asprintf.c: Likewise.
1855         * lib/unistdio/u8-printf-parse.c: Likewise.
1856         * lib/unistdio/u8-snprintf.c: Likewise.
1857         * lib/unistdio/u8-sprintf.c: Likewise.
1858         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
1859         * lib/unistdio/u8-u8-asprintf.c: Likewise.
1860         * lib/unistdio/u8-u8-snprintf.c: Likewise.
1861         * lib/unistdio/u8-u8-sprintf.c: Likewise.
1862         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
1863         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
1864         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
1865         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
1866         * lib/unistdio/u8-vasnprintf.c: Likewise.
1867         * lib/unistdio/u8-vasprintf.c: Likewise.
1868         * lib/unistdio/u8-vsnprintf.c: Likewise.
1869         * lib/unistdio/u8-vsprintf.c: Likewise.
1870         * lib/unistdio/ulc-asnprintf.c: Likewise.
1871         * lib/unistdio/ulc-asprintf.c: Likewise.
1872         * lib/unistdio/ulc-printf-parse.c: Likewise.
1873         * lib/unistdio/ulc-snprintf.c: Likewise.
1874         * lib/unistdio/ulc-sprintf.c: Likewise.
1875         * lib/unistdio/ulc-vasnprintf.c: Likewise.
1876         * lib/unistdio/ulc-vasprintf.c: Likewise.
1877         * lib/unistdio/ulc-vsnprintf.c: Likewise.
1878         * lib/unistdio/ulc-vsprintf.c: Likewise.
1879         * lib/unistr.h: Likewise.
1880         * lib/unistr/u-cpy-alloc.h: Likewise.
1881         * lib/unistr/u-cpy.h: Likewise.
1882         * lib/unistr/u-endswith.h: Likewise.
1883         * lib/unistr/u-move.h: Likewise.
1884         * lib/unistr/u-set.h: Likewise.
1885         * lib/unistr/u-startswith.h: Likewise.
1886         * lib/unistr/u-stpcpy.h: Likewise.
1887         * lib/unistr/u-stpncpy.h: Likewise.
1888         * lib/unistr/u-strcat.h: Likewise.
1889         * lib/unistr/u-strcpy.h: Likewise.
1890         * lib/unistr/u-strcspn.h: Likewise.
1891         * lib/unistr/u-strdup.h: Likewise.
1892         * lib/unistr/u-strlen.h: Likewise.
1893         * lib/unistr/u-strncat.h: Likewise.
1894         * lib/unistr/u-strncpy.h: Likewise.
1895         * lib/unistr/u-strnlen.h: Likewise.
1896         * lib/unistr/u-strpbrk.h: Likewise.
1897         * lib/unistr/u-strspn.h: Likewise.
1898         * lib/unistr/u-strstr.h: Likewise.
1899         * lib/unistr/u-strtok.h: Likewise.
1900         * lib/unistr/u16-check.c: Likewise.
1901         * lib/unistr/u16-chr.c: Likewise.
1902         * lib/unistr/u16-cmp.c: Likewise.
1903         * lib/unistr/u16-cpy-alloc.c: Likewise.
1904         * lib/unistr/u16-cpy.c: Likewise.
1905         * lib/unistr/u16-endswith.c: Likewise.
1906         * lib/unistr/u16-mblen.c: Likewise.
1907         * lib/unistr/u16-mbsnlen.c: Likewise.
1908         * lib/unistr/u16-mbtouc-aux.c: Likewise.
1909         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
1910         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
1911         * lib/unistr/u16-mbtouc.c: Likewise.
1912         * lib/unistr/u16-mbtoucr.c: Likewise.
1913         * lib/unistr/u16-move.c: Likewise.
1914         * lib/unistr/u16-next.c: Likewise.
1915         * lib/unistr/u16-prev.c: Likewise.
1916         * lib/unistr/u16-set.c: Likewise.
1917         * lib/unistr/u16-startswith.c: Likewise.
1918         * lib/unistr/u16-stpcpy.c: Likewise.
1919         * lib/unistr/u16-stpncpy.c: Likewise.
1920         * lib/unistr/u16-strcat.c: Likewise.
1921         * lib/unistr/u16-strchr.c: Likewise.
1922         * lib/unistr/u16-strcmp.c: Likewise.
1923         * lib/unistr/u16-strcpy.c: Likewise.
1924         * lib/unistr/u16-strcspn.c: Likewise.
1925         * lib/unistr/u16-strdup.c: Likewise.
1926         * lib/unistr/u16-strlen.c: Likewise.
1927         * lib/unistr/u16-strmblen.c: Likewise.
1928         * lib/unistr/u16-strmbtouc.c: Likewise.
1929         * lib/unistr/u16-strncat.c: Likewise.
1930         * lib/unistr/u16-strncmp.c: Likewise.
1931         * lib/unistr/u16-strncpy.c: Likewise.
1932         * lib/unistr/u16-strnlen.c: Likewise.
1933         * lib/unistr/u16-strpbrk.c: Likewise.
1934         * lib/unistr/u16-strrchr.c: Likewise.
1935         * lib/unistr/u16-strspn.c: Likewise.
1936         * lib/unistr/u16-strstr.c: Likewise.
1937         * lib/unistr/u16-strtok.c: Likewise.
1938         * lib/unistr/u16-to-u32.c: Likewise.
1939         * lib/unistr/u16-to-u8.c: Likewise.
1940         * lib/unistr/u16-uctomb-aux.c: Likewise.
1941         * lib/unistr/u16-uctomb.c: Likewise.
1942         * lib/unistr/u32-check.c: Likewise.
1943         * lib/unistr/u32-chr.c: Likewise.
1944         * lib/unistr/u32-cmp.c: Likewise.
1945         * lib/unistr/u32-cpy-alloc.c: Likewise.
1946         * lib/unistr/u32-cpy.c: Likewise.
1947         * lib/unistr/u32-endswith.c: Likewise.
1948         * lib/unistr/u32-mblen.c: Likewise.
1949         * lib/unistr/u32-mbsnlen.c: Likewise.
1950         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
1951         * lib/unistr/u32-mbtouc.c: Likewise.
1952         * lib/unistr/u32-mbtoucr.c: Likewise.
1953         * lib/unistr/u32-move.c: Likewise.
1954         * lib/unistr/u32-next.c: Likewise.
1955         * lib/unistr/u32-prev.c: Likewise.
1956         * lib/unistr/u32-set.c: Likewise.
1957         * lib/unistr/u32-startswith.c: Likewise.
1958         * lib/unistr/u32-stpcpy.c: Likewise.
1959         * lib/unistr/u32-stpncpy.c: Likewise.
1960         * lib/unistr/u32-strcat.c: Likewise.
1961         * lib/unistr/u32-strchr.c: Likewise.
1962         * lib/unistr/u32-strcmp.c: Likewise.
1963         * lib/unistr/u32-strcpy.c: Likewise.
1964         * lib/unistr/u32-strcspn.c: Likewise.
1965         * lib/unistr/u32-strdup.c: Likewise.
1966         * lib/unistr/u32-strlen.c: Likewise.
1967         * lib/unistr/u32-strmblen.c: Likewise.
1968         * lib/unistr/u32-strmbtouc.c: Likewise.
1969         * lib/unistr/u32-strncat.c: Likewise.
1970         * lib/unistr/u32-strncmp.c: Likewise.
1971         * lib/unistr/u32-strncpy.c: Likewise.
1972         * lib/unistr/u32-strnlen.c: Likewise.
1973         * lib/unistr/u32-strpbrk.c: Likewise.
1974         * lib/unistr/u32-strrchr.c: Likewise.
1975         * lib/unistr/u32-strspn.c: Likewise.
1976         * lib/unistr/u32-strstr.c: Likewise.
1977         * lib/unistr/u32-strtok.c: Likewise.
1978         * lib/unistr/u32-to-u16.c: Likewise.
1979         * lib/unistr/u32-to-u8.c: Likewise.
1980         * lib/unistr/u32-uctomb.c: Likewise.
1981         * lib/unistr/u8-check.c: Likewise.
1982         * lib/unistr/u8-chr.c: Likewise.
1983         * lib/unistr/u8-cmp.c: Likewise.
1984         * lib/unistr/u8-cpy-alloc.c: Likewise.
1985         * lib/unistr/u8-cpy.c: Likewise.
1986         * lib/unistr/u8-endswith.c: Likewise.
1987         * lib/unistr/u8-mblen.c: Likewise.
1988         * lib/unistr/u8-mbsnlen.c: Likewise.
1989         * lib/unistr/u8-mbtouc-aux.c: Likewise.
1990         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
1991         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
1992         * lib/unistr/u8-mbtouc.c: Likewise.
1993         * lib/unistr/u8-mbtoucr.c: Likewise.
1994         * lib/unistr/u8-move.c: Likewise.
1995         * lib/unistr/u8-next.c: Likewise.
1996         * lib/unistr/u8-prev.c: Likewise.
1997         * lib/unistr/u8-set.c: Likewise.
1998         * lib/unistr/u8-startswith.c: Likewise.
1999         * lib/unistr/u8-stpcpy.c: Likewise.
2000         * lib/unistr/u8-stpncpy.c: Likewise.
2001         * lib/unistr/u8-strcat.c: Likewise.
2002         * lib/unistr/u8-strchr.c: Likewise.
2003         * lib/unistr/u8-strcmp.c: Likewise.
2004         * lib/unistr/u8-strcpy.c: Likewise.
2005         * lib/unistr/u8-strcspn.c: Likewise.
2006         * lib/unistr/u8-strdup.c: Likewise.
2007         * lib/unistr/u8-strlen.c: Likewise.
2008         * lib/unistr/u8-strmblen.c: Likewise.
2009         * lib/unistr/u8-strmbtouc.c: Likewise.
2010         * lib/unistr/u8-strncat.c: Likewise.
2011         * lib/unistr/u8-strncmp.c: Likewise.
2012         * lib/unistr/u8-strncpy.c: Likewise.
2013         * lib/unistr/u8-strnlen.c: Likewise.
2014         * lib/unistr/u8-strpbrk.c: Likewise.
2015         * lib/unistr/u8-strrchr.c: Likewise.
2016         * lib/unistr/u8-strspn.c: Likewise.
2017         * lib/unistr/u8-strstr.c: Likewise.
2018         * lib/unistr/u8-strtok.c: Likewise.
2019         * lib/unistr/u8-to-u16.c: Likewise.
2020         * lib/unistr/u8-to-u32.c: Likewise.
2021         * lib/unistr/u8-uctomb-aux.c: Likewise.
2022         * lib/unistr/u8-uctomb.c: Likewise.
2023         * lib/unitypes.h: Likewise.
2024         * lib/uniwidth.h: Likewise.
2025         * lib/uniwidth/cjk.h: Likewise.
2026         * lib/uniwidth/u16-strwidth.c: Likewise.
2027         * lib/uniwidth/u16-width.c: Likewise.
2028         * lib/uniwidth/u32-strwidth.c: Likewise.
2029         * lib/uniwidth/u32-width.c: Likewise.
2030         * lib/uniwidth/u8-strwidth.c: Likewise.
2031         * lib/uniwidth/u8-width.c: Likewise.
2032         * lib/uniwidth/width.c: Likewise.
2033
2034 2007-10-07  Bruno Haible  <bruno@clisp.org>
2035
2036         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
2037         The file is still under LGPL (see modules/inttypes).
2038
2039 2007-10-06  Bruno Haible  <bruno@clisp.org>
2040
2041         * modules/trunc (Dependencies): Add 'extensions'.
2042         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
2043         Reported by Ben Pfaff <blp@gnu.org>.
2044
2045 2007-10-06  Bruno Haible  <bruno@clisp.org>
2046
2047         * modules/freopen-tests: New file.
2048         * tests/test-freopen.c: New file.
2049
2050         * modules/fopen-tests: New file.
2051         * tests/test-fopen.c: New file.
2052
2053         * modules/fopen: New file.
2054         * lib/fopen.c: New file.
2055         * m4/fopen.m4: New file.
2056         * modules/freopen: New file.
2057         * lib/freopen.c: New file.
2058         * m4/freopen.m4: New file.
2059         * lib/stdio.in.h (fopen, freopen): New declarations.
2060         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
2061         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
2062         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
2063         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
2064         * doc/functions/fopen.texi: Mention the 'fopen' module.
2065         * doc/functions/freopen.texi: Mention the 'freopen' module.
2066
2067 2007-10-06  Bruno Haible  <bruno@clisp.org>
2068
2069         * modules/open-tests: New file.
2070         * tests/test-open.c: New file.
2071
2072         * modules/open: New file.
2073         * lib/open.c: New file.
2074         * m4/open.m4: New file.
2075         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
2076         lib/open.c does.
2077         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
2078         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
2079         macros.
2080         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
2081         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
2082         REPLACE_OPEN.
2083         * doc/functions/open.texi: Mention the 'open' module.
2084
2085 2007-10-04  Bruno Haible  <bruno@clisp.org>
2086
2087         * modules/ceill-tests: New file.
2088         * tests/test-ceill.c: New file.
2089
2090         * modules/ceill: New file.
2091         * lib/ceill.c: Replace entire file.
2092         * m4/ceill.m4: New file.
2093         * lib/math.in.h (ceill): Replace declaration.
2094         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
2095         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
2096         * doc/functions/ceill.texi: Mention the 'ceill' module.
2097         * modules/mathl (Files): Remove lib/ceill.c.
2098         (Depends-on): Add ceill.
2099
2100 2007-10-04  Bruno Haible  <bruno@clisp.org>
2101
2102         * modules/ceilf-tests: New file.
2103         * tests/test-ceilf.c: New file.
2104
2105         * modules/ceilf: New file.
2106         * lib/ceil.c: New file.
2107         * lib/ceilf.c: New file.
2108         * m4/ceilf.m4: New file.
2109         * lib/math.in.h (ceilf): New declaration.
2110         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
2111         HAVE_DECL_CEILF.
2112         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
2113         HAVE_DECL_CEILF.
2114         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
2115
2116 2007-10-04  Bruno Haible  <bruno@clisp.org>
2117
2118         * modules/floorl-tests: New file.
2119         * tests/test-floorl.c: New file.
2120
2121         * modules/floorl: New file.
2122         * lib/floorl.c: Replace entire file.
2123         * m4/floorl.m4: New file.
2124         * lib/math.in.h (floorl): Replace declaration.
2125         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
2126         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
2127         * doc/functions/floorl.texi: Mention the 'floorl' module.
2128         * modules/mathl (Files): Remove lib/floorl.c.
2129         (Depends-on): Add floorl.
2130
2131 2007-10-04  Bruno Haible  <bruno@clisp.org>
2132
2133         * modules/floorf-tests: New file.
2134         * tests/test-floorf.c: New file.
2135
2136         * modules/floorf: New file.
2137         * lib/floor.c: New file.
2138         * lib/floorf.c: New file.
2139         * m4/floorf.m4: New file.
2140         * lib/math.in.h (floorf): New declaration.
2141         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
2142         HAVE_DECL_FLOORF.
2143         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
2144         HAVE_DECL_FLOORF.
2145         * doc/functions/floorf.texi: Mention the 'floorf' module.
2146
2147 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
2148             Bruno Haible  <bruno@clisp.org>
2149
2150         Advertise for the Git server instead of the CVS server.
2151         * doc/gnulib-intro.texi (Steady Development): Mention the Git
2152         repository instead of the CVS one.
2153         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
2154         about all VCS systems generically.
2155         * doc/gnulib.texi (Introduction): Capitalize `Git'.
2156
2157 2007-10-04  Bruno Haible  <bruno@clisp.org>
2158
2159         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
2160         means.
2161         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
2162
2163 2007-10-04  Bruno Haible  <bruno@clisp.org>
2164
2165         * modules/truncl-tests: New file.
2166         * tests/test-truncl.c: New file.
2167
2168         * modules/truncl: New file.
2169         * lib/truncl.c: New file.
2170         * m4/truncl.m4: New file.
2171         * lib/math.in.h (truncl): New declaration.
2172         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
2173         HAVE_DECL_TRUNCL.
2174         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
2175         HAVE_DECL_TRUNCL.
2176         * doc/functions/truncl.texi: Mention the 'truncl' module.
2177
2178 2007-10-04  Bruno Haible  <bruno@clisp.org>
2179
2180         * modules/truncf-tests: New file.
2181         * tests/test-truncf.c: New file.
2182
2183         * modules/truncf: New file.
2184         * lib/trunc.c: Make paramerizable through USE_* macros.
2185         * lib/truncf.c: New file.
2186         * m4/truncf.m4: New file.
2187         * lib/math.in.h (truncf): New declaration.
2188         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
2189         HAVE_DECL_TRUNCF.
2190         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
2191         HAVE_DECL_TRUNCF.
2192         * doc/functions/truncf.texi: Mention the 'truncf' module.
2193
2194 2007-10-03  Bruno Haible  <bruno@clisp.org>
2195
2196         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
2197         augmentation also for tests modules.
2198         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
2199         * modules/atexit-tests (Makefile.am): Likewise.
2200         * modules/binary-io-tests (Makefile.am): Likewise.
2201         * modules/c-strcase-tests (Makefile.am): Likewise.
2202         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
2203         * modules/canonicalize-tests (Makefile.am): Likewise.
2204         * modules/closein-tests (Makefile.am): Likewise.
2205         * modules/fprintf-posix-tests (Makefile.am): Likewise.
2206         * modules/freadahead-tests (Makefile.am): Likewise.
2207         * modules/fseek-tests (Makefile.am): Likewise.
2208         * modules/fseeko-tests (Makefile.am): Likewise.
2209         * modules/ftell-tests (Makefile.am): Likewise.
2210         * modules/ftello-tests (Makefile.am): Likewise.
2211         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
2212         * modules/isnanl-tests (Makefile.am): Likewise.
2213         * modules/lseek-tests (Makefile.am): Likewise.
2214         * modules/mbscasecmp-tests (Makefile.am): Likewise.
2215         * modules/mbscasestr-tests (Makefile.am): Likewise.
2216         * modules/mbschr-tests (Makefile.am): Likewise.
2217         * modules/mbscspn-tests (Makefile.am): Likewise.
2218         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
2219         * modules/mbspbrk-tests (Makefile.am): Likewise.
2220         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
2221         * modules/mbsrchr-tests (Makefile.am): Likewise.
2222         * modules/mbsspn-tests (Makefile.am): Likewise.
2223         * modules/mbsstr-tests (Makefile.am): Likewise.
2224         * modules/printf-posix-tests (Makefile.am): Likewise.
2225         * modules/snprintf-posix-tests (Makefile.am): Likewise.
2226         * modules/sprintf-posix-tests (Makefile.am): Likewise.
2227         * modules/tsearch-tests (Makefile.am): Likewise.
2228         * modules/uniname/uniname-tests (Makefile.am): Likewise.
2229         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
2230         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
2231         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
2232         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
2233         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
2234         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
2235         * modules/vprintf-posix-tests (Makefile.am): Likewise.
2236         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
2237         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
2238         * modules/xstrtoimax-tests (Makefile.am): Likewise.
2239         * modules/xstrtol-tests (Makefile.am): Likewise.
2240         * modules/xstrtoumax-tests (Makefile.am): Likewise.
2241         * modules/yesno-tests (Makefile.am): Likewise.
2242
2243 2007-10-03  Bruno Haible  <bruno@clisp.org>
2244
2245         * modules/trunc-tests: New file.
2246         * tests/test-trunc.c: New file.
2247
2248         * modules/trunc: New file.
2249         * lib/trunc.c: New file.
2250         * m4/trunc.m4: New file.
2251         * lib/math.in.h (trunc): New declaration.
2252         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
2253         HAVE_DECL_TRUNC.
2254         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
2255         HAVE_DECL_TRUNC.
2256         * doc/functions/trunc.texi: Mention the 'trunc' module.
2257
2258 2007-10-03  Bruno Haible  <bruno@clisp.org>
2259
2260         * tests/test-fpending.c: New file, mostly copied
2261         from coreutils/lib/t-fpending.c.
2262         * modules/fpending-tests: New file.
2263
2264 2007-10-03  Bruno Haible  <bruno@clisp.org>
2265
2266         Port the stdio extensions to QNX (untested).
2267         * lib/fseterr.c (fseterr): Add support for QNX.
2268         * lib/fbufmode.c (fbufmode): Likewise.
2269         * lib/freadable.c (freadable): Likewise.
2270         * lib/fwritable.c (fwritable): Likewise.
2271         * lib/freading.c (freading): Likewise.
2272         * lib/fwriting.c (fwriting): Likewise.
2273         * lib/freadahead.c (freadahed): Likewise.
2274         * lib/fpurge.c (fpurge): Likewise.
2275         * lib/fseeko.c (rpl_fseeko): Likewise.
2276
2277 2007-10-03  Bruno Haible  <bruno@clisp.org>
2278             Jim Meyering  <jim@meyering.net>
2279             Eric Blake  <ebb9@byu.net>
2280
2281         * doc/relocatable.texi: Use @command instead of @program.
2282
2283 2007-10-02  Jim Meyering  <jim@meyering.net>
2284
2285         Perform one more "_.h" -> ".in.h" substitution.
2286         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
2287         instead of unistd_.h here, too.
2288
2289 2007-10-01  Bruno Haible  <bruno@clisp.org>
2290
2291         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
2292         Needed for the alloca-opt module.
2293
2294 2007-09-30  Bruno Haible  <bruno@clisp.org>
2295
2296         * lib/alloca.in.h: Renamed from lib/alloca_.h.
2297         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
2298         alloca_.h.
2299         * lib/argz.in.h: Renamed from lib/argz_.h.
2300         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
2301         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
2302         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
2303         byteswap_.h.
2304         * lib/dirent.in.h: Renamed from lib/dirent_.h.
2305         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
2306         dirent_.h.
2307         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
2308         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
2309         fcntl_.h.
2310         * lib/float.in.h: Renamed from lib/float_.h.
2311         * modules/float (Files, Makefile.am): Use float.in.h instead of
2312         float_.h.
2313         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
2314         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
2315         fnmatch_.h.
2316         * lib/getopt.in.h: Renamed from lib/getopt_.h.
2317         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
2318         getopt_.h.
2319         * lib/glob.in.h: Renamed from lib/glob_.h.
2320         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
2321         * lib/iconv.in.h: Renamed from lib/iconv_.h.
2322         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
2323         iconv_.h.
2324         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
2325         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
2326         inttypes_.h.
2327         * lib/locale.in.h: Renamed from lib/locale_.h.
2328         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
2329         locale_.h.
2330         * lib/math.in.h: Renamed from lib/math_.h.
2331         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
2332         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
2333         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
2334         of netinet_in_.h. Add dependency.
2335         * lib/poll.in.h: Renamed from lib/poll_.h.
2336         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
2337         * lib/search.in.h: Renamed from lib/search_.h.
2338         * modules/search (Files, Makefile.am): Use search.in.h instead of
2339         search_.h.
2340         * lib/signal.in.h: Renamed from lib/signal_.h.
2341         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
2342         _signal.h.
2343         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
2344         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
2345         stdbool_.h.
2346         * lib/stdint.in.h: Renamed from lib/stdint_.h.
2347         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
2348         stdint_.h.
2349         * lib/stdio.in.h: Renamed from lib/stdio_.h.
2350         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
2351         stdio_.h.
2352         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
2353         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
2354         stdlib_.h.
2355         * lib/string.in.h: Renamed from lib/string_.h.
2356         * modules/string (Files, Makefile.am): Use string.in.h instead of
2357         string_.h.
2358         * doc/gnulib-tool.texi (Initial import): Update.
2359         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
2360         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
2361         of sys_select_.h. Add dependency.
2362         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
2363         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
2364         of sys_socket_.h.
2365         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
2366         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
2367         sys_stat_.h.
2368         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
2369         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
2370         sys_time_.h.
2371         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
2372         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
2373         sysexits_.h.
2374         * lib/time.in.h: Renamed from lib/time_.h.
2375         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
2376         * lib/unistd.in.h: Renamed from lib/unistd_.h.
2377         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
2378         unistd_.h.
2379         * lib/wchar.in.h: Renamed from lib/wchar_.h.
2380         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
2381         wchar_.h.
2382         * lib/wctype.in.h: Renamed from lib/wctype_.h.
2383         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
2384         wctype_.h.
2385         * build-aux/bootstrap (slurp): Update.
2386         * lib/.cppi-disable: Update.
2387
2388 2007-09-30  Bruno Haible  <bruno@clisp.org>
2389
2390         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
2391         Needed on BeOS.
2392
2393 2007-09-30  Bruno Haible  <bruno@clisp.org>
2394
2395         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
2396
2397 2007-09-29  Bruno Haible  <bruno@clisp.org>
2398
2399         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
2400
2401 2007-09-29  Bruno Haible  <bruno@clisp.org>
2402
2403         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
2404         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
2405         * build-aux/install-reloc: Compile also areadlink.c.
2406         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
2407
2408 2007-09-29  Bruno Haible  <bruno@clisp.org>
2409
2410         * gnulib-tool (func_emit_initmacro_done): Indentation.
2411
2412 2007-09-29  Bruno Haible  <bruno@clisp.org>
2413
2414         * README: Add CVS checkout update instructions.
2415         Info from Bob Proulx <bob@proulx.com>.
2416
2417 2007-09-28  Eric Blake  <ebb9@byu.net>
2418
2419         Provide move-if-change.
2420         * build-aux/move-if-change: New file, based on best practice
2421         rather than any canonical upstream location.
2422
2423 2007-09-28  Jim Meyering  <jim@meyering.net>
2424
2425         Fix canonicalize loop-detection corner case.
2426         Do not attempt to stat the symlink values stored via seen_triple.
2427         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
2428         on linux-2.6.18, (but not 2.6.22).
2429         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
2430         triple_compare.  The former compares dev,ino,filename, while the latter
2431         would actually stat dirname(filename) when dev and ino were equal.
2432         * lib/hash-triple.c: Install <string.h>.
2433         (STREQ): Define.
2434         (triple_compare_ino_str): New function.
2435         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
2436
2437 2007-09-28  Eric Blake  <ebb9@byu.net>
2438
2439         Enforce that AC_REPLACE_FUNCS files exist.
2440         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
2441         override check for typos.
2442
2443         Fix test-closein on Solaris 10.
2444         * tests/test-closein.c (main): Don't assume stdin can be inherited
2445         closed on all systems.
2446         * tests/test-closein.sh: Likewise.
2447         Reported by Piotr Tarnowski.
2448
2449 2007-09-28  Jim Meyering  <jim@meyering.net>
2450
2451         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
2452
2453 2007-09-27  Jim Meyering  <jim@meyering.net>
2454
2455         canonicalize: Avoid a false-positive cycle failure.
2456         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
2457         Sort.  Remove cycle-check.
2458         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
2459         not cycle-check.h.
2460         (seen_triple): New function.
2461         (canonicalize_filename_mode): Use it instead of cycle-check.
2462         * tests/test-canonicalize.c: Add a test for this bug.
2463         * tests/test-canonicalize.sh: Set up and run the test.
2464
2465         New module, file-set, from coreutils.
2466         * modules/file-set: Define it.
2467         * lib/file-set.c, lib/file-set.h: Implement.
2468
2469         New module, hash-triple, from coreutils.
2470         * modules/hash-triple: Define it.
2471         * lib/hash-triple.c, lib/hash-triple.h: Implement.
2472
2473 2007-09-25  Eric Blake  <ebb9@byu.net>
2474
2475         Fix strerror on Interix.
2476         * lib/string_.h (strerror): Declare replacement.
2477         * doc/functions/strerror.texi (strerror): Document the Interix
2478         shortcoming.
2479         * modules/string (Makefile.am): Support new hooks.
2480         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
2481         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
2482         gl_FUNC_STRERROR_SEPARATE.
2483         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
2484         * lib/strerror.c (rpl_strerror): Provide replacement.
2485         * modules/strerror (Depends-on): Add string.
2486         (configure.ac): Detect use of module.
2487         * tests/test-strerror.c: New file.
2488         * modules/strerror-tests: New test module.
2489         * modules/argp (Depends-on): Add strerror.
2490         * modules/error (Depends-on): Likewise.
2491         Reported by Martin Koeppe.
2492
2493 2007-09-24  Bruno Haible  <bruno@clisp.org>
2494
2495         * README: Update git instructions.
2496
2497 2007-09-24  Eric Blake  <ebb9@byu.net>
2498
2499         Revert fpending breakage from 2007-09-08.
2500         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
2501         __fpending.c.
2502
2503 2007-09-24  Jim Meyering  <jim@meyering.net>
2504
2505         filenamecat.c: Add a test.
2506         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
2507         showing how the function works when DIR is the empty string.
2508
2509 2007-09-21  Simon Josefsson  <simon@josefsson.org>
2510
2511         * tests/test-canonicalize.sh: Turn on executable bit.
2512
2513 2007-09-19  Eric Blake  <ebb9@byu.net>
2514
2515         * README: Update CVS instructions.
2516
2517 2007-09-18  Bruno Haible  <bruno@clisp.org>
2518
2519         * modules/areadlink: New file.
2520         * lib/areadlink.h (areadlink): New declaration.
2521         * lib/areadlink.c: New file, based on lib/xreadlink.c.
2522
2523 2007-09-17  Jim Meyering  <jim@meyering.net>
2524
2525         * lib/savewd.c (ESTALE) [!defined]: Define.
2526         Reported to be required on Interix by Martin Koeppe.
2527
2528 2007-09-17  Bruno Haible  <bruno@clisp.org>
2529
2530         * gnulib-tool (func_version): Use $version.
2531
2532 2007-09-16  Bruno Haible  <bruno@clisp.org>
2533
2534         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
2535         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
2536         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
2537         Reported by Greg Schafer <gschafer@zip.com.au>.
2538
2539 2007-09-15  Bruno Haible  <bruno@clisp.org>
2540
2541         * gnulib-tool (sed): Try a little harder to make bash understand the
2542         alias.
2543         Reported by Bruce Korb <bruce.korb@gmail.com>.
2544
2545 2007-09-13  Eric Blake  <ebb9@byu.net>
2546
2547         * ChangeLog: Remove conflict markers.
2548
2549 2007-09-13  Simon Josefsson  <simon@josefsson.org>
2550
2551         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
2552         Reported by Bruno Haible <bruno@clisp.org>.
2553
2554 2007-09-12  Bruno Haible  <bruno@clisp.org>
2555
2556         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
2557         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
2558         is not defined.
2559
2560 2007-09-12  Eric Blake  <ebb9@byu.net>
2561
2562         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
2563         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
2564         Autoconf definition.
2565         * modules/euidaccess (Depends-on): Add extensions, for
2566         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
2567         * modules/fnmatch (Depends-on): Likewise.
2568         * modules/getaddrinfo (Depends-on): Likewise.
2569         * modules/getdelim (Depends-on): Likewise.
2570         * modules/getline (Depends-on): Likewise.
2571         * modules/getsubopt (Depends-on): Likewise.
2572         * modules/gettext (Depends-on): Likewise.
2573         * modules/group-member (Depends-on): Likewise.
2574         * modules/mbchar (Depends-on): Likewise.
2575         * modules/memmem (Depends-on): Likewise.
2576         * modules/mempcpy (Depends-on): Likewise.
2577         * modules/memrchr (Depends-on): Likewise.
2578         * modules/pagealign_alloc (Depends-on): Likewise.
2579         * modules/readutmp (Depends-on): Likewise.
2580         * modules/stpcpy (Depends-on): Likewise.
2581         * modules/stpncpy (Depends-on): Likewise.
2582         * modules/strchrnul (Depends-on): Likewise.
2583         * modules/strndup (Depends-on): Likewise.
2584         * modules/strsep (Depends-on): Likewise.
2585         * modules/strverscmp (Depends-on): Likewise.
2586         * modules/vasprintf (Depends-on): Likewise.
2587         * modules/wcwidth (Depends-on): Likewise.
2588         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
2589         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
2590         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
2591         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
2592         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
2593         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2594         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
2595         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
2596         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
2597         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
2598         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
2599         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
2600         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
2601         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
2602         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
2603         * m4/readutmp.m4 (gl_READUTMP): Likewise.
2604         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
2605         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
2606         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
2607         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
2608         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
2609         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
2610         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
2611         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
2612         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
2613         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
2614         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
2615         so that lock.m4 can be used in gettext without extensions module.
2616
2617 2007-09-11  Bruno Haible  <bruno@clisp.org>
2618
2619         * m4/isc-posix.m4: Remove file.
2620         Suggested by Eric Blake.
2621
2622 2007-09-11  Eric Blake  <ebb9@byu.net>
2623
2624         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
2625
2626 2007-09-10  Bruno Haible  <bruno@clisp.org>
2627
2628         * posix-modules: Fix typo in error message.
2629         Reported by Matt <mkraai@beckman.com>.
2630
2631 2007-09-09  Bruno Haible  <bruno@clisp.org>
2632
2633         * doc/functions/getdelim.texi: Update list of platforms lacking the
2634         function.
2635         * doc/functions/getline.texi: Likewise.
2636
2637 2007-09-09  Jim Meyering  <jim@meyering.net>
2638
2639         * lib/hash.c (hash_initialize): Detect calloc failure.
2640         Reported by Bruno Haible.
2641
2642 2007-09-09  Bruno Haible  <bruno@clisp.org>
2643
2644         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
2645         malloc or realloc fails.
2646
2647 2007-09-09  Bruno Haible  <bruno@clisp.org>
2648
2649         * modules/getcwd (Depends-on): Add malloc-posix.
2650         * modules/glob (Depends-on): Likewise.
2651         * modules/putenv (Depends-on): Likewise.
2652         * modules/strdup (Depends-on): Likewise.
2653         * modules/getdelim (Depends-on): Add realloc-posix.
2654         * modules/read-file (Depends-on): Likewise.
2655
2656 2007-09-09  Bruno Haible  <bruno@clisp.org>
2657
2658         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
2659         (gl_FUNC_MALLOC_POSIX): Require it.
2660         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
2661         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
2662         * modules/realloc (Files): Add m4/malloc.m4.
2663         * modules/calloc (Files): Likewise.
2664
2665 2007-09-09  Bruno Haible  <bruno@clisp.org>
2666
2667         * modules/malloc-posix: New file.
2668         * modules/malloc (Depends-on): Add malloc-posix.
2669         * lib/malloc.c: Include errno.h.
2670         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
2671         and a POSIX-compatible malloc into a single function. Set ENOMEM
2672         when returning NULL.
2673         * m4/malloc.m4: New file.
2674         * doc/functions/malloc.texi: Mention the malloc-posix module.
2675         * lib/stdlib_.h (malloc): New declaration.
2676         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2677         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
2678         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
2679         and HAVE_MALLOC_POSIX.
2680
2681 2007-09-09  Bruno Haible  <bruno@clisp.org>
2682
2683         * modules/realloc-posix: New file.
2684         * modules/realloc (Depends-on): Add realloc-posix.
2685         * lib/realloc.c: Include errno.h.
2686         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
2687         and a POSIX-compatible realloc into a single function. Set ENOMEM
2688         when returning NULL.
2689         * m4/realloc.m4: New file.
2690         * doc/functions/realloc.texi: Mention the realloc-posix module.
2691         * lib/stdlib_.h (realloc): New declaration.
2692         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2693         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
2694         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
2695         and HAVE_REALLOC_POSIX.
2696
2697 2007-09-09  Bruno Haible  <bruno@clisp.org>
2698
2699         * modules/calloc-posix: New file.
2700         * modules/calloc (Depends-on): Add calloc-posix.
2701         * lib/calloc.c: Include errno.h.
2702         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
2703         and a POSIX-compatible calloc into a single function. Set ENOMEM
2704         when returning NULL.
2705         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
2706         * doc/functions/calloc.texi: Mention the calloc-posix module.
2707         * lib/stdlib_.h (calloc): New declaration.
2708         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2709         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
2710         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
2711         and HAVE_CALLOC_POSIX.
2712
2713 2007-09-09  Bruno Haible  <bruno@clisp.org>
2714
2715         Allow for modules to show an arbitrary notice.
2716         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
2717         * gnulib-tool: New option --extract-notice.
2718         (func_usage): Document it.
2719         (sed_extract_prog): Update.
2720         (func_get_notice): New function.
2721         (func_modules_notice): New function.
2722         (func_import, func_create_testdir): Invoke it.
2723         Suggested by Jim Meyering.
2724
2725 2007-09-09  Bruno Haible  <bruno@clisp.org>
2726
2727         * gnulib-tool: New options --verbose, --quiet.
2728         (func_usage): Document them.
2729         (verbose): New variable.
2730         (func_execute_command): New function.
2731         (func_import): Don't show the module list and the file list if
2732         $verbose < 0.
2733         (func_create_testdir): Likewise. Use func_execute_command.
2734         (func_create_megatestdir): Use func_execute_command.
2735
2736 2007-09-08  Bruno Haible  <bruno@clisp.org>
2737
2738         * gnulib-tool (func_import): Prefer rsync over wget when available,
2739         for fetching the PO files.
2740
2741 2007-09-08  Bruno Haible  <bruno@clisp.org>
2742
2743         * posix-modules: New file. Portions copied from gnulib-tool.
2744         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
2745
2746 2007-09-08  Jim Meyering  <jim@meyering.net>
2747
2748         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
2749         * lib/fpending.h: Rename from __fpending.h.
2750         * lib/fpending.c: Rename from __fpending.c.
2751         Include "fpending.h", not "__fpending.h".
2752         * lib/__fpending.h, lib/__fpending.c: Remove files.
2753         * modules/fpending (Files): Reflect new file names.
2754         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
2755
2756 2007-09-08  Bruno Haible  <bruno@clisp.org>
2757
2758         * m4/inttypes-h.m4: Remove stub file.
2759
2760 2007-09-07  Simon Josefsson  <simon@josefsson.org>
2761
2762         * doc/headers/stdint.texi: Discuss #include_next issue.
2763
2764 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
2765
2766         * build-aux/bootstrap: Remove obsolete comment about wget --help.
2767
2768 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2769
2770         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
2771         in variable name.
2772
2773 2007-09-03  Jim Meyering  <jim@meyering.net>
2774
2775         New module: git-version-gen.
2776         * modules/git-version-gen: New file.
2777
2778         Import changes from coreutils for bootstrap script.
2779
2780         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
2781
2782         bootstrap: uses rsync to download the .po files
2783         * build-aux/bootstrap (po_download_command_format): New global.
2784         (download_po_files): Use rsync.
2785         (update_po_files): Don't remove .po files after download,
2786         so future rsync runs can take advantage of the copies.
2787
2788         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
2789
2790         Solve the unnecessary-.po-file-regeneration problem once and for all.
2791         * build-aux/bootstrap (download_po_files): New function, renamed from
2792         get_translations.  Now, downloads, but doesn't update LINGUAS.
2793         (update_po_files): New function.
2794
2795         bootstrap: Ignore more.
2796         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
2797         uniwidth to e.g., lib/.gitignore.
2798         (slurp): Handle the sys_stat_.h -> sys mapping, too.
2799
2800         * build-aux/bootstrap: New setting: vc_ignore.
2801         (insert_sorted_if_absent): Create $file if absent.
2802         Adapt to new, possibly empty, list: $vc_ignore.
2803
2804         bootstrap: generate more ignorable names
2805         * build-aux/bootstrap (slurp): When generating ignorable names,
2806         also map .sin to .sed, .gperf to .c, and .y to .c.
2807
2808 2007-09-03  Jim Meyering  <jim@meyering.net>
2809
2810         * build-aux/git-version-gen: New file, from coreutils.  For details, see
2811         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
2812
2813 2007-09-02  Bruno Haible  <bruno@clisp.org>
2814
2815         Fix mis-recognition of 'mcs' on QNX 6.
2816         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
2817         output contains the string "Mono".
2818         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
2819         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
2820
2821 2007-09-01  Bruno Haible  <bruno@clisp.org>
2822
2823         Fix collision between uniwidth/* and linebreak modules.
2824         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
2825         u32_width): Remove declarations.
2826         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
2827         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
2828         streq3, streq2, streq1, streq0): Remove functions.
2829         (STREQ): Remove macro.
2830         (is_cjk_encoding): Remove function.
2831         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
2832         (uc_width, u8_width, u16_width, u32_width): Remove functions.
2833         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
2834         * NEWS: Document the change.
2835
2836 2007-09-01  Bruno Haible  <bruno@clisp.org>
2837
2838         * lib/streq.h: Add double-inclusion guard.
2839
2840 2007-09-01  Karl Berry  <karl@gnu.org>
2841
2842         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
2843
2844 2007-08-28  Jim Meyering  <jim@meyering.net>
2845
2846         Rename mreadlink_with_size to areadlink_with_size.
2847         * NEWS: Document the change.
2848         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
2849         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
2850         * lib/mreadlink.h: Rename this to...
2851         * lib/areadlink.h: ...this.
2852         * modules/mreadlink-with-size: Rename this to...
2853         * modules/areadlink-with-size: ...this.
2854         * lib/canonicalize.c: Reflect the renaming.
2855         * modules/canonicalize: Likewise.
2856
2857 2007-08-26  Bruno Haible  <bruno@clisp.org>
2858
2859         * gnulib-tool (func_import): When deciding which files to remove,
2860         consider also dangling symbolic links.
2861         Reported by Eric Blake.
2862
2863 2007-08-26  Bruno Haible  <bruno@clisp.org>
2864
2865         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
2866
2867 2007-08-23  Simon Josefsson  <simon@josefsson.org>
2868
2869         * lib/readline.c: Don't include getline.h, the prototype is now
2870         found in stdio.h.
2871
2872 2007-08-23  Jim Meyering  <jim@meyering.net>
2873
2874         Getdelim touchup.
2875         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
2876         around the funlockfile call, since funlockfile never sets errno.
2877         Don't set errno upon failed realloc.
2878
2879 2007-08-22  Eric Blake  <ebb9@byu.net>
2880
2881         Getline touchups.
2882         * lib/getdelim.c (getdelim): Revert regression that required *n to
2883         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
2884         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
2885         getdelim, rather than whether implementation is missing.
2886         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
2887         * lib/stdio_.h (getline): Also declare if replacement is
2888         required.
2889         * doc/functions/getdelim.texi: New file.
2890         * doc/functions/getline.texi: Likewise.
2891         * doc/gnulib.texi (Function Substitutes): Add new files.
2892         Reported by Bruno Haible.
2893
2894 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
2895
2896         * users.txt: Add Guile.
2897
2898 2007-08-22  Eric Blake  <ebb9@byu.net>
2899
2900         * tests/test-getdelim.c (main): Use remove, not unlink.
2901         * tests/test-getline.c (main): Likewise.
2902
2903         Move getline and getdelim into stdio.h, per POSIX 200x.
2904         * modules/getline (Files): Remove getline.h.
2905         (Depends-on): Add stdio.
2906         (configure.ac): Add module indicator.
2907         * modules/getdelim (Files): Remove getdelim.h.
2908         (Depends-on): Add stdio.
2909         (configure.ac): Add module indicator.
2910         * modules/stdio (Makefile.am): Work with new indicators.
2911         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
2912         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
2913         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2914         * lib/getdelim.h: Delete.
2915         * lib/getline.h: Delete.
2916         * lib/stdio_.h (getdelim, getline): Declare.
2917         * modules/getdelim-tests: New module.
2918         * modules/getline-tests: Likewise.
2919         * tests/test-getdelim.c: New file.
2920         * tests/test-getline.c: Likewise.
2921         * NEWS: Document the change.
2922         * lib/getline.c: Update choice of header.
2923         * lib/csharpcomp.c: Likewise.
2924         * lib/getpass.c: Likewise.
2925         * lib/javacomp.c: Likewise.
2926         * lib/javaversion.c: Likewise.
2927         * lib/yesno.c: Likewise.
2928         * lib/getdelim.c: Likewise.
2929         (getdelim): Set errno on failure, and avoid memory leak.
2930
2931 2007-08-19  Bruno Haible  <bruno@clisp.org>
2932
2933         * modules/closein (Depends-on): Add freadahead.
2934         * lib/closein.c: Include freadahead.h.
2935         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
2936         is zero.
2937
2938 2007-08-19  Bruno Haible  <bruno@clisp.org>
2939
2940         * modules/freadahead-tests: New file.
2941         * tests/test-freadahead.sh: New file.
2942         * tests/test-freadahead.c: New file.
2943
2944         * modules/freadahead: New file.
2945         * lib/freadahead.h: New file.
2946         * lib/freadahead.c: New file.
2947         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
2948         fbufmode, fpurge, freadable, fwritable.
2949
2950 2007-08-19  Eric Blake  <ebb9@byu.net>
2951
2952         Test yesno in combination with closein.
2953         * lib/yesno.c (yesno): Document use of stdin.
2954         * modules/yesno-tests (Files): New module.
2955         * tests/test-yesno.c (main): New file.
2956         * tests/test-yesno.sh: Likewise.
2957
2958 2007-08-19  Bruno Haible  <bruno@clisp.org>
2959
2960         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
2961         * lib/fseeko.c (rpl_fseeko): Likewise.
2962         * lib/fseterr.c (fseterr): Likewise.
2963
2964 2007-08-19  Bruno Haible  <bruno@clisp.org>
2965
2966         * tests/test-lseek.c (main): Disable a test for BeOS.
2967         * doc/functions/lseek.texi: Document the BeOS bug.
2968
2969 2007-08-19  Bruno Haible  <bruno@clisp.org>
2970             Eric Blake  <ebb9@byu.net>
2971
2972         * lib/lseek.c: Include <sys/stat.h>.
2973         (rpl_lseek): Add workaround code also for Unix platforms.
2974         Needed for BeOS.
2975         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
2976         * doc/functions/lseek.texi: Document BeOS definiency.
2977
2978 2007-08-18  Bruno Haible  <bruno@clisp.org>
2979
2980         * modules/fstrcmp-tests: New file.
2981         * tests/test-fstrcmp.c: New file.
2982
2983 2007-08-18  Bruno Haible  <bruno@clisp.org>
2984
2985         * modules/fstrcmp: New file, from GNU gettext with modifications.
2986         * lib/fstrcmp.h: New file, from GNU gettext.
2987         * lib/fstrcmp.c: New file, from GNU gettext.
2988         * MODULES.html.sh (String handling): Add fstrcmp.
2989
2990 2007-08-18  Bruno Haible  <bruno@clisp.org>
2991
2992         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
2993         'bool'.
2994         (diag, compareseq): Remove const from the ctxt argument.
2995         (USE_HEURISTIC): Undefine at the end.
2996
2997 2007-08-18  Jim Meyering  <jim@meyering.net>
2998
2999         New file: lib/idcache.h
3000         * NEWS: Mention the addition.
3001         * modules/idcache (Files): Add lib/idcache.h
3002         * lib/idcache.c: Include "idcache.h".
3003         Don't include <sys/types.h>.
3004         Add a FIXME comment.
3005         Move file-scoped "static" declarations to the top.
3006         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
3007
3008 2007-08-17  Bruno Haible  <bruno@clisp.org>
3009         and Paul Eggert  <eggert@cs.ucla.edu>
3010
3011         * MODULES.html.sh: Add diffseq.
3012         * modules/diffseq: New file.
3013         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
3014         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
3015
3016 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
3017
3018         Import changes from coreutils for bootstrap script.
3019
3020         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
3021
3022         * build-aux/bootstrap (slurp): Work even in environments where
3023         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
3024         current code does not slurp files whose names start with ".", and
3025         this looks like it might be a troublesome area.
3026
3027         2007-07-11  Jim Meyering  <jim@meyering.net>
3028
3029         If there's a GPL vN copyright comment, require that N == 3.
3030
3031         2007-07-08  Jim Meyering  <jim@meyering.net>
3032
3033         Run the coreutils-specific code only if tests/Makefile.am.in exists.
3034         * build-aux/bootstrap (mam_template): Move definition out of loop.
3035
3036         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
3037
3038         * build-aux/bootstrap (symlink_to_dir): Rename function from
3039         symlink_to_gnulib.  Add a directory parameter.  Update all
3040         callers.
3041         (cp_mark_as_generated): Also check for -- and link to -- files in
3042         gl/.
3043
3044         2007-07-08  Jim Meyering  <jim@meyering.net>
3045
3046         Adapt to deeper hierarchy in gnulib.
3047         * build-aux/bootstrap (symlink_to_dir): If the destination
3048         directory doesn't exist, create it. This is required at least for
3049         "lib/uniwidth/cjk.h".
3050
3051         2007-05-15  Jim Meyering  <jim@meyering.net>
3052
3053         * build-aux/bootstrap: Now that generated Makefile.am files
3054         are no longer under version control, they must be created at
3055         bootstrap time.
3056
3057 2007-08-14  Ben Pfaff  <blp@gnu.org>
3058
3059         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
3060
3061 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
3062
3063         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
3064         given the changes below.
3065         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
3066         even on hosts that have padding bits beyond the supported 64.
3067
3068 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
3069
3070         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
3071         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
3072         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
3073         depends on it.
3074         (xstrtol_error): Remove.
3075         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
3076         but with a different signature.
3077         (ATTRIBUTE_NORETURN, __attribute__): New macros.
3078         * lib/xstrtol-error.c: Include exitfail.h.
3079         (xstrtol_fatal): New function, with a different signature from the
3080         old xstrtol_error, so that the caller need not worry about passing
3081         in an exit status, or about storage management of the option argument.
3082         (xstrtol_error): Now a static function.  Redo signature to
3083         implement xstrtol_fatal.  Output the correct number of hyphens in
3084         front of the option so that the caller need not worry about
3085         storage management.
3086         (N_): New macro.
3087         (_): Remove; not used now.
3088         * modules/xstrtol: Depend on getopt.
3089         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
3090         of old STRTOL_FATAL_ERROR macro.
3091         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
3092         of test program.
3093         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
3094         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
3095
3096 2007-08-08  Eric Blake  <ebb9@byu.net>
3097
3098         * lib/xstrtol-error.c: Add missing include.
3099
3100         Move xstrtol messages into gnulib domain, when --pobase is used.
3101         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
3102         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
3103         * modules/xstrtol (Files): Distribute new file.
3104         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
3105         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
3106         * tests/test-xstrtol.c: ...into new file.
3107         * tests/test-xstrtoul.c: Also test xstrtoul.
3108         * tests/test-xstrtoimax.c: Also test xstrtoimax.
3109         * tests/test-xstrtoumax.c: Also test xstrtoumax.
3110         * tests/test-xstrtol.sh: Drive the tests.
3111         * tests/test-xstrtoimax.sh: Likewise.
3112         * tests/test-xstrtoumax.sh: Likewise.
3113         * modules/xstrtol-tests: New module.
3114         * modules/xstrtoimax-tests: Likewise.
3115         * modules/xstrtoumax-tests: Likewise.
3116
3117 2007-08-08  Jim Meyering  <jim@meyering.net>
3118
3119         New function: mfile_name_concat.
3120         * lib/filenamecat.c (mfile_name_concat): New function, just like
3121         file_name_concat, but return NULL upon failure rather than exiting
3122         with a diagnostic.
3123         * lib/filenamecat.h: Declare it.
3124
3125 2007-08-07  Bruno Haible  <bruno@clisp.org>
3126
3127         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
3128         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
3129         warning from gcc.
3130         Reported by Eric Blake.
3131
3132 2007-08-07  Simon Josefsson  <simon@josefsson.org>
3133
3134         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
3135         * modules/crypto/arcfour (License): Likewise.
3136         * modules/crypto/des-tests (License): Likewise.
3137         * modules/crypto/gc-arctwo-tests (License): Likewise.
3138         * modules/crypto/gc-des-tests (License): Likewise.
3139         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
3140         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
3141         * modules/crypto/gc-md2-tests (License): Likewise.
3142         * modules/crypto/gc-md4-tests (License): Likewise.
3143         * modules/crypto/gc-md5-tests (License): Likewise.
3144         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
3145         * modules/crypto/gc-rijndael-tests (License): Likewise.
3146         * modules/crypto/gc-sha1-tests (License): Likewise.
3147         * modules/crypto/gc-tests (License): Likewise.
3148         * modules/crypto/hmac-md5 (License): Likewise.
3149         * modules/crypto/hmac-sha1 (License): Likewise.
3150         * modules/crypto/md2-tests (License): Likewise.
3151         * modules/crypto/md4-tests (License): Likewise.
3152         * modules/crypto/md5 (License): Likewise.
3153         * modules/crypto/rijndael (License): Likewise.
3154         * modules/crypto/sha1 (License): Likewise.
3155         * modules/memxor (License): Likewise.
3156
3157 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
3158         and Bruno Haible  <bruno@clisp.org>
3159
3160         * NEWS: Describe interface changes to human, xstrtol.
3161         * lib/human.h: Include <xstrtol.h>.
3162         (human_options): Return enum strtol_error, not int.  Remove
3163         bool arg; take int * instead.
3164         * lib/human.c: Don't include "gettext.h".
3165         (_): Remove; no longer used.
3166         Don't include <xstrtol.h>, since human.h does it.
3167         (human_options): Adjust to abovementioned interface changes.
3168         Do not report error to stderr; that's now the caller's
3169         responsibility.
3170         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
3171         interface change.
3172         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
3173         Str, Argument_type_string.  All uses changed.  Put " argument"
3174         in diagnostics to make them clearer.  Change wording of suffix
3175         message for clarity.
3176         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
3177         Argument_type_string.
3178         (STRTOL_FATAL_WARN): Remove; no longer used.
3179         * modules/human (Depends-on): Remove gettext-h.
3180
3181 2007-08-06  Simon Josefsson  <simon@josefsson.org>
3182
3183         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
3184
3185 2007-07-31  Bruno Haible  <bruno@clisp.org>
3186
3187         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
3188         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
3189         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
3190
3191 2007-07-31  Bruno Haible  <bruno@clisp.org>
3192
3193         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
3194         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
3195
3196 2007-07-30  Bruno Haible  <bruno@clisp.org>
3197
3198         * modules/base64 (License): Use the synonymous term "LGPLv2+".
3199         * modules/c-ctype (License): Likewise.
3200         * modules/c-strcase (License): Likewise.
3201         * modules/check-version (License): Likewise.
3202         * modules/iconv (License): Likewise.
3203         * modules/iconv_open (License): Likewise.
3204         * modules/read-file (License): Likewise.
3205         * modules/striconv (License): Likewise.
3206         * modules/strverscmp (License): Likewise.
3207         * modules/vasprintf (License): Likewise.
3208         * modules/crypto/des (License): Likewise.
3209         * modules/crypto/gc (License): Likewise.
3210         * modules/crypto/gc-arcfour (License): Likewise.
3211         * modules/crypto/gc-arctwo (License): Likewise.
3212         * modules/crypto/gc-des (License): Likewise.
3213         * modules/crypto/gc-hmac-md5 (License): Likewise.
3214         * modules/crypto/gc-hmac-sha1 (License): Likewise.
3215         * modules/crypto/gc-md2 (License): Likewise.
3216         * modules/crypto/gc-md4 (License): Likewise.
3217         * modules/crypto/gc-md5 (License): Likewise.
3218         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
3219         * modules/crypto/gc-random (License): Likewise.
3220         * modules/crypto/gc-rijndael (License): Likewise.
3221         * modules/crypto/gc-sha1 (License): Likewise.
3222         * modules/crypto/md2 (License): Likewise.
3223         * modules/crypto/md4 (License): Likewise.
3224
3225 2007-07-30  Jim Meyering  <jim@meyering.net>
3226
3227         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
3228         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
3229         it has valid stat data.  This bug would cause du not to count the
3230         sizes of inaccessible directories.
3231         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
3232         in <http://bugzilla.redhat.com/250077>.
3233
3234 2007-07-25  Peter O'Gorman  <peter@pogma.com>
3235             Bruno Haible  <bruno@clisp.org>
3236
3237         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
3238         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
3239         #include_next, gives a diagnostic about it, but reports no error in
3240         the exit code.
3241         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
3242
3243 2007-07-24  Ben Pfaff  <blp@gnu.org>
3244
3245         Improve name: "count-one-bits" is better than "popcount".
3246         * MODULES.html.sh: Update name.
3247         * lib/popcount.h: Renamed lib/count-one-bits.h.
3248         (popcount): Renamed count_one_bits.
3249         (popcountl): Renamed count_one_bits_l.
3250         (popcountll): Renamed count_one_bits_ll.
3251         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
3252         * modules/popcount: Renamed module/count-one-bits.
3253         * modules/popcount-tests: Renamed module/count-one-bits-tests.
3254         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
3255
3256 2007-07-23  Ben Pfaff  <blp@gnu.org>
3257
3258         * lib/popcount.h (popcount32): Reduce size of constants, to allow
3259         better code generation, and add U to large constants to avoid
3260         warnings, in non-GCC case.
3261         Suggested by Bruno Haible.
3262
3263 2007-07-23  Ben Pfaff  <blp@gnu.org>
3264
3265         * lib/popcount.h: Use verify_true instead of if...abort.
3266         * modules/popcount: Depend on verify module.
3267         Suggested by Jim Meyering.
3268
3269 2007-07-23  Bruno Haible  <bruno@clisp.org>
3270
3271         * gnulib-tool (func_import): Create a .cvsignore file also when the
3272         directory is not yet in CVS but the toplevel directory is. When
3273         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
3274         Reported by Karl Berry.
3275
3276 2007-07-22  Ben Pfaff  <blp@gnu.org>
3277
3278         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
3279         case.
3280         Suggested by Eric Blake.
3281
3282 2007-07-22  Ben Pfaff  <blp@gnu.org>
3283
3284         New module: popcount.
3285         * MODULES.html.sh: Add popcount.
3286         * modules/popcount: New file.
3287         * modules/popcount-tests: New file.
3288         * tests/test-popcount.c: New file.
3289         * lib/popcount.h: New file.
3290         * m4/popcount.m4: New file.
3291
3292 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
3293
3294         * build-aux/announce-gen: Update to GPLv3.
3295
3296         * build-aux/config.guess: Update from config.
3297
3298 2007-07-21  Bruno Haible  <bruno@clisp.org>
3299
3300         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
3301         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
3302
3303 2007-07-20  Jim Meyering  <jim@meyering.net>
3304
3305         * check-module: Diagnose a self-dependency.
3306
3307 2007-07-19  Bruno Haible  <bruno@clisp.org>
3308
3309         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
3310         empty.
3311         Reported by Eric Blake.
3312
3313 2007-07-18  Bruno Haible  <bruno@clisp.org>
3314
3315         * gnulib-tool: New options --po-base, --po-domain.
3316         (func_usage): Document them.
3317         (pobase, po_domain): New variables.
3318         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
3319         DEFAULT_TEXT_DOMAIN.
3320         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
3321         (func_import): Consider pobase and po_domain. Create a po/ directory.
3322         (func_create_testdir): Set pobase and po_domain to empty.
3323         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
3324         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
3325
3326 2007-07-18  Bruno Haible  <bruno@clisp.org>
3327
3328         * gnulib-tool (func_get_automake_snippet): Synthesize also an
3329         EXTRA_DIST augmentation for files in build-aux/.
3330
3331 2007-07-16  Bruno Haible  <bruno@clisp.org>
3332
3333         * modules/lseek (License): Use the synonymous term "LGPLv2+".
3334         * modules/getdelim (License): Likewise.
3335
3336 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3337
3338         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
3339         * modules/d-type (License): Likewise.
3340         * modules/extensions (License): Likewise.
3341         * modules/fnmatch (License): Likewise.
3342         * modules/fseeko (License): Likewise.
3343         * modules/getaddrinfo (License): Likewise.
3344         * modules/getline (License): Likewise.
3345         * modules/getlogin_r (License): Likewise.
3346         * modules/getpass (License): Likewise.
3347         * modules/gettimeofday (License): Likewise.
3348         * modules/glob (License): Likewise.
3349         * modules/inet_ntop (License): Likewise.
3350         * modules/malloc (License): Likewise.
3351         * modules/malloca (License): Likewise.
3352         * modules/memmem (License): Likewise.
3353         * modules/mempcpy (License): Likewise.
3354         * modules/memset (License): Likewise.
3355         * modules/minmax (License): Likewise.
3356         * modules/mktime (License): Likewise.
3357         * modules/netinet_in (License): Likewise.
3358         * modules/pathmax (License): Likewise.
3359         * modules/poll (License): Likewise.
3360         * modules/regex (License): Likewise.
3361         * modules/snprintf (License): Likewise.
3362         * modules/stdbool (License): Likewise.
3363         * modules/stdint (License): Likewise.
3364         * modules/stdio (License): Likewise.
3365         * modules/strcase (License): Likewise.
3366         * modules/strcasestr (License): Likewise.
3367         * modules/strdup (License): Likewise.
3368         * modules/string (License): Likewise.
3369         * modules/strndup (License): Likewise.
3370         * modules/strnlen (License): Likewise.
3371         * modules/strpbrk (License): Likewise.
3372         * modules/strptime (License): Likewise.
3373         * modules/strsep (License): Likewise.
3374         * modules/sys_select (License): Likewise.
3375         * modules/sys_socket (License): Likewise.
3376         * modules/sys_stat (License): Likewise.
3377         * modules/sys_time (License): Likewise.
3378         * modules/time (License): Likewise.
3379         * modules/time_r (License): Likewise.
3380         * modules/timegm (License): Likewise.
3381         * modules/unistd (License): Likewise.
3382         * modules/vsnprintf (License): Likewise.
3383         * modules/wctype (License): Likewise.
3384
3385 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3386
3387         * modules/argz (License): LGPLv2+.
3388
3389 2007-07-15  Karl Berry  <karl@gnu.org>
3390
3391         * doc/gnulib.texi: revise node structure per new fdl.texi.
3392
3393 2007-07-14  Bruno Haible  <bruno@clisp.org>
3394
3395         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
3396         the output file.
3397         * lib/uniname/uninames.h: Regenerated.
3398
3399 2007-07-14  Karl Berry  <karl@gnu.org>
3400
3401         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
3402         omitting sectioning and index commands.
3403
3404 2007-07-13  Bruno Haible  <bruno@clisp.org>
3405
3406         New gnulib-tool option --more-symlinks.
3407         * gnulib-tool (func_usage): Document --more-symlinks.
3408         (do_copyrights): New variable.
3409         Recognize option --more-symlinks.
3410         (func_import): Don't add a copyright notice transform to
3411         sed_transform_lib_file if do_copyrights is empty.
3412
3413 2007-07-13  Bruno Haible  <bruno@clisp.org>
3414
3415         * lib/vasnprintf.c (decimal_point_char): Define also if
3416         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
3417         && !NEED_PRINTF_DIRECTIVE_A.
3418         Reported by Clemens Koller <clemens.koller@anagramm.de> via
3419         Gary V. Vaughan <gary@gnu.org>.
3420
3421 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
3422
3423         * lib/inttypes_.h: Undo previous change, since it was fixed
3424         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
3425
3426 2007-07-13  Bruno Haible  <bruno@clisp.org>
3427
3428         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
3429         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
3430
3431 2007-07-13  Jim Meyering  <jim@meyering.net>
3432
3433         df: Don't fail for Tru64's "file-on-file mount".
3434         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
3435         so we fall through and use statfs instead.  Details here:
3436         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
3437         Reported by Albert Chin.
3438
3439 2007-07-13  Bruno Haible  <bruno@clisp.org>
3440
3441         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
3442         * modules/configmake (License): Likewise.
3443         * modules/gettext (License): Likewise.
3444         * modules/gettext-h (License): Likewise.
3445         * modules/include_next (License): Likewise.
3446         * modules/link-warning (License): Likewise.
3447         * modules/localcharset (License): Likewise.
3448         * modules/localename (License): Likewise.
3449         * modules/lock (License): Likewise.
3450         * modules/relocatable-lib-lgpl (License): Likewise.
3451         * modules/size_max (License): Likewise.
3452         * modules/vasnprintf (License): Likewise.
3453         * modules/wchar (License): Likewise.
3454         * modules/xsize (License): Likewise.
3455
3456 2007-07-13  Bruno Haible  <bruno@clisp.org>
3457
3458         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
3459         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
3460
3461 2007-07-12  Bruno Haible  <bruno@clisp.org>
3462
3463         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
3464         in the modules files.
3465
3466 2007-07-11  Karl Berry  <karl@gnu.org>
3467
3468         * MODULES.html.sh (func_module): use
3469          sed -e '\|^'"${includefile}"'$|d'
3470          instead of /.../d, to avoid errors on $includefile's containing /.
3471
3472 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
3473
3474         * gnulib-tool (func_import): Avoid duplication of --avoid
3475         statements
3476         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
3477         names to `_' in variable names.
3478
3479 2007-07-10  Eric Blake  <ebb9@byu.net>
3480
3481         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
3482         * NEWS: Document this change.
3483
3484 2007-07-08  Bruno Haible  <bruno@clisp.org>
3485
3486         Update to Unicode 5.0.
3487         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
3488         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
3489         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
3490         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
3491         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
3492         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
3493         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
3494         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
3495         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
3496         U+10A3F, U+1D242..U+1D244.
3497         (nonspacing_table_ind): Update.
3498         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
3499         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
3500
3501 2007-07-08  Bruno Haible  <bruno@clisp.org>
3502
3503         Update to Unicode 5.0.
3504         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
3505         code transform. Extend the name index field of unicode_name_to_code and
3506         unicode_code_to_name from 16 to 24 bits.
3507         * lib/uniname/uniname.c (unicode_character_name,
3508         unicode_name_character): Add the range 0x12xxx to the code transform.
3509         * lib/uniname/uninames.h: Regenerated.
3510         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
3511
3512 2007-07-07  Bruno Haible  <bruno@clisp.org>
3513
3514         * modules/wcwidth-tests: New file.
3515         * tests/test-wcwidth.c: New file.
3516
3517         Work around MacOS X wcwidth() bug.
3518         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
3519         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
3520         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
3521         original wcwidth in non-UTF-8 locales.
3522         * modules/wcwidth (Depends-on): Add localcharset, streq,
3523         uniwidth/width.
3524         * doc/functions/wcwidth.texi: Update.
3525
3526 2007-07-07  Bruno Haible  <bruno@clisp.org>
3527
3528         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
3529         (wcwidth): New declaration.
3530         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
3531         macros.
3532         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
3533         here. Prepare for creating <wchar.h> unconditionally.
3534         * modules/wchar (Depends-on): Add link-warning.
3535         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
3536         REPLACE_WCWIDTH, and GL_LINK_WARNING.
3537         * lib/wcwidth.h: Remove file.
3538         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
3539         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
3540         * modules/wcwidth (Files): Remove lib/wcwidth.h.
3541         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
3542         (Include): Replace wcwidth.h with <wchar.h>.
3543         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
3544         * lib/mbchar.h: Don't include wcwidth.h.
3545         * lib/mbswidth.c: Likewise.
3546         * NEWS: Mention the change.
3547
3548 2007-07-07  Bruno Haible  <bruno@clisp.org>
3549
3550         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
3551         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
3552         definition with an external declaration.
3553         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
3554         defined as a function. Remove AC_C_INLINE requirement.
3555         * modules/wcwidth (Files): Add lib/wcwidth.c.
3556         (Makefile.am): Remove redundant statement.
3557
3558 2007-07-07  Bruno Haible  <bruno@clisp.org>
3559
3560         * MODULES.html.sh (Unicode string functions): Add the new modules.
3561
3562         * tests/uniwidth/test-u32-strwidth.c: New file.
3563         * modules/uniwidth/u32-strwidth-tests: New file.
3564
3565         * lib/uniwidth/u32-strwidth.c: New file.
3566         * modules/uniwidth/u32-strwidth: New file.
3567
3568         * tests/uniwidth/test-u16-strwidth.c: New file.
3569         * modules/uniwidth/u16-strwidth-tests: New file.
3570
3571         * lib/uniwidth/u16-strwidth.c: New file.
3572         * modules/uniwidth/u16-strwidth: New file.
3573
3574         * tests/uniwidth/test-u8-strwidth.c: New file.
3575         * modules/uniwidth/u8-strwidth-tests: New file.
3576
3577         * lib/uniwidth/u8-strwidth.c: New file.
3578         * modules/uniwidth/u8-strwidth: New file.
3579
3580         * tests/uniwidth/test-u32-width.c: New file.
3581         * modules/uniwidth/u32-width-tests: New file.
3582
3583         * lib/uniwidth/u32-width.c: New file.
3584         * modules/uniwidth/u32-width: New file.
3585
3586         * tests/uniwidth/test-u16-width.c: New file.
3587         * modules/uniwidth/u16-width-tests: New file.
3588
3589         * lib/uniwidth/u16-width.c: New file.
3590         * modules/uniwidth/u16-width: New file.
3591
3592         * tests/uniwidth/test-u8-width.c: New file.
3593         * modules/uniwidth/u8-width-tests: New file.
3594
3595         * lib/uniwidth/u8-width.c: New file.
3596         * modules/uniwidth/u8-width: New file.
3597
3598         * tests/uniwidth/test-uc_width.c: New file.
3599         * modules/uniwidth/width-tests: New file.
3600
3601         * lib/uniwidth/width.c: New file, from GNU libiconv.
3602         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
3603         * modules/uniwidth/width: New file.
3604
3605         * lib/uniwidth.h: New file, from GNU libiconv.
3606         * modules/uniwidth/base: New file.
3607
3608 2007-07-07  Bruno Haible  <bruno@clisp.org>
3609
3610         * lib/uniname.h: New file, from GNU gettext.
3611         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
3612         * lib/uniname/uninames.h: New file, from GNU gettext.
3613         * lib/uniname/uniname.c: New file, from GNU gettext.
3614         * tests/uniname/test-uninames.sh: New file.
3615         * tests/uniname/test-uninames.c: New file, from GNU gettext.
3616         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
3617         * modules/uniname/base: New file.
3618         * modules/uniname/uniname: New file.
3619         * modules/uniname/uniname-tests: New file.
3620         * MODULES.html.sh (Unicode string functions): Add the new modules.
3621
3622 2007-07-06  Bruno Haible  <bruno@clisp.org>
3623
3624         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
3625
3626 2007-07-06  Bruno Haible  <bruno@clisp.org>
3627
3628         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
3629         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
3630         includes <cygwin/sys_time.h> which includes <sys/select.h> which
3631         include <sys/time.h>.
3632         Reported by Eric Blake.
3633
3634 2007-07-06  Eric Blake  <ebb9@byu.net>
3635
3636         Fix testing canonicalize on cygwin.
3637         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
3638         Revert patch from 2007-06-19.
3639         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
3640         canonicalize module is also in use.
3641         * tests/test-canonicalize.c: New file.
3642         * tests/test-canonicalize.sh: Likewise.
3643         * modules/canonicalize-tests: Likewise.
3644
3645 2007-07-06  Jim Meyering  <jim@meyering.net>
3646
3647         * lib/getugroups.c (getugroups): Detect getgrent failure.
3648         Adjust comment to reflect reality: this function may return -1.
3649
3650 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
3651
3652         * build-aux/bootstrap (TP_URL,get_translations): Update to use
3653         the new TP address.
3654         (usage): Fix typo
3655         (gnulib_mk): New variable.
3656
3657 2007-07-05  Jim Meyering  <jim@meyering.net>
3658
3659         Don't let endgrent clobber errno, no matter how improbable.
3660         * lib/getugroups.c (getugroups): Save and restore errno around
3661         endgrent call.
3662
3663         Close the group DB even when failing with 2^31 or more members.
3664         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
3665
3666 2007-07-04  Jim Meyering  <jim@meyering.net>
3667
3668         * lib/getugroups.h: New file.
3669         * lib/getugroups.c: Include "getugroups.h".
3670         Remove uses of "register" keyword.
3671         Move local variable, "cp", down into scope where used.
3672         Give "username" parameter the "const" attribute.
3673         * modules/getugroups (Files): Add lib/getugroups.h
3674
3675 2007-07-04  Karl Berry  <karl@gnu.org>
3676
3677         * MODULES.html.sh (func_all_modules): Complete rename of
3678         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
3679
3680 2007-07-02  Bruno Haible  <bruno@clisp.org>
3681
3682         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
3683         mode, when inttypes.h comes from gnulib.
3684         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
3685
3686 2007-07-02  Simon Josefsson  <simon@josefsson.org>
3687
3688         * NEWS: Mention lgpl module name change.
3689
3690         * modules/lgpl-2.1: Renamed from lgpl.
3691
3692         * NEWS: Mention gpl module name change.
3693
3694         * modules/gpl-3.0: New file, based on gpl-2.0.
3695
3696         * modules/gpl-2.0: Renamed from gpl.
3697
3698         * modules/gpl: Fix filename, doc/gpl.texi is now found at
3699         doc/gpl-2.0.texi.
3700
3701 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
3702
3703         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
3704         #define __STDC_LIMIT_MACROS temporarily while including
3705         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
3706         Problem reported by Joel E. Denny in
3707         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
3708
3709 2007-07-01  Bruno Haible  <bruno@clisp.org>
3710
3711         * lib/unistdio.h: New file.
3712         * lib/unistdio/u-asnprintf.h: New file.
3713         * lib/unistdio/u-asprintf.h: New file.
3714         * lib/unistdio/u-printf-args.c: New file.
3715         * lib/unistdio/u-printf-args.h: New file.
3716         * lib/unistdio/u-printf-parse.h: New file.
3717         * lib/unistdio/u-snprintf.h: New file.
3718         * lib/unistdio/u-sprintf.h: New file.
3719         * lib/unistdio/u-vasprintf.h: New file.
3720         * lib/unistdio/u-vsnprintf.h: New file.
3721         * lib/unistdio/u-vsprintf.h: New file.
3722         * lib/unistdio/ulc-asnprintf.c: New file.
3723         * lib/unistdio/ulc-asprintf.c: New file.
3724         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
3725         * lib/unistdio/ulc-printf-parse.c: New file.
3726         * lib/unistdio/ulc-snprintf.c: New file.
3727         * lib/unistdio/ulc-sprintf.c: New file.
3728         * lib/unistdio/ulc-vasnprintf.c: New file.
3729         * lib/unistdio/ulc-vasprintf.c: New file.
3730         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
3731         * lib/unistdio/ulc-vsnprintf.c: New file.
3732         * lib/unistdio/ulc-vsprintf.c: New file.
3733         * lib/unistdio/u8-asnprintf.c: New file.
3734         * lib/unistdio/u8-asprintf.c: New file.
3735         * lib/unistdio/u8-printf-parse.c: New file.
3736         * lib/unistdio/u8-snprintf.c: New file.
3737         * lib/unistdio/u8-sprintf.c: New file.
3738         * lib/unistdio/u8-vasnprintf.c: New file.
3739         * lib/unistdio/u8-vasprintf.c: New file.
3740         * lib/unistdio/u8-vsnprintf.c: New file.
3741         * lib/unistdio/u8-vsprintf.c: New file.
3742         * lib/unistdio/u8-u8-asnprintf.c: New file.
3743         * lib/unistdio/u8-u8-asprintf.c: New file.
3744         * lib/unistdio/u8-u8-snprintf.c: New file.
3745         * lib/unistdio/u8-u8-sprintf.c: New file.
3746         * lib/unistdio/u8-u8-vasnprintf.c: New file.
3747         * lib/unistdio/u8-u8-vasprintf.c: New file.
3748         * lib/unistdio/u8-u8-vsnprintf.c: New file.
3749         * lib/unistdio/u8-u8-vsprintf.c: New file.
3750         * lib/unistdio/u16-asnprintf.c: New file.
3751         * lib/unistdio/u16-asprintf.c: New file.
3752         * lib/unistdio/u16-printf-parse.c: New file.
3753         * lib/unistdio/u16-snprintf.c: New file.
3754         * lib/unistdio/u16-sprintf.c: New file.
3755         * lib/unistdio/u16-vasnprintf.c: New file.
3756         * lib/unistdio/u16-vasprintf.c: New file.
3757         * lib/unistdio/u16-vsnprintf.c: New file.
3758         * lib/unistdio/u16-vsprintf.c: New file.
3759         * lib/unistdio/u16-u16-asnprintf.c: New file.
3760         * lib/unistdio/u16-u16-asprintf.c: New file.
3761         * lib/unistdio/u16-u16-snprintf.c: New file.
3762         * lib/unistdio/u16-u16-sprintf.c: New file.
3763         * lib/unistdio/u16-u16-vasnprintf.c: New file.
3764         * lib/unistdio/u16-u16-vasprintf.c: New file.
3765         * lib/unistdio/u16-u16-vsnprintf.c: New file.
3766         * lib/unistdio/u16-u16-vsprintf.c: New file.
3767         * lib/unistdio/u32-asnprintf.c: New file.
3768         * lib/unistdio/u32-asprintf.c: New file.
3769         * lib/unistdio/u32-printf-parse.c: New file.
3770         * lib/unistdio/u32-snprintf.c: New file.
3771         * lib/unistdio/u32-sprintf.c: New file.
3772         * lib/unistdio/u32-vasnprintf.c: New file.
3773         * lib/unistdio/u32-vasprintf.c: New file.
3774         * lib/unistdio/u32-vsnprintf.c: New file.
3775         * lib/unistdio/u32-vsprintf.c: New file.
3776         * lib/unistdio/u32-u32-asnprintf.c: New file.
3777         * lib/unistdio/u32-u32-asprintf.c: New file.
3778         * lib/unistdio/u32-u32-snprintf.c: New file.
3779         * lib/unistdio/u32-u32-sprintf.c: New file.
3780         * lib/unistdio/u32-u32-vasnprintf.c: New file.
3781         * lib/unistdio/u32-u32-vasprintf.c: New file.
3782         * lib/unistdio/u32-u32-vsnprintf.c: New file.
3783         * lib/unistdio/u32-u32-vsprintf.c: New file.
3784         * tests/unistdio/test-ulc-asnprintf1.c: New file.
3785         * tests/unistdio/test-ulc-asnprintf1.h: New file.
3786         * tests/unistdio/test-ulc-printf1.h: New file.
3787         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
3788         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
3789         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
3790         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
3791         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
3792         * tests/unistdio/test-ulc-vasprintf1.c: New file.
3793         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
3794         * tests/unistdio/test-ulc-vsprintf1.c: New file.
3795         * tests/unistdio/test-u8-asnprintf1.c: New file.
3796         * tests/unistdio/test-u8-asnprintf1.h: New file.
3797         * tests/unistdio/test-u8-printf1.h: New file.
3798         * tests/unistdio/test-u8-vasnprintf1.c: New file.
3799         * tests/unistdio/test-u8-vasnprintf2.c: New file.
3800         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
3801         * tests/unistdio/test-u8-vasnprintf3.c: New file.
3802         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
3803         * tests/unistdio/test-u8-vasprintf1.c: New file.
3804         * tests/unistdio/test-u8-vsnprintf1.c: New file.
3805         * tests/unistdio/test-u8-vsprintf1.c: New file.
3806         * tests/unistdio/test-u16-asnprintf1.c: New file.
3807         * tests/unistdio/test-u16-asnprintf1.h: New file.
3808         * tests/unistdio/test-u16-printf1.h: New file.
3809         * tests/unistdio/test-u16-vasnprintf1.c: New file.
3810         * tests/unistdio/test-u16-vasnprintf2.c: New file.
3811         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
3812         * tests/unistdio/test-u16-vasnprintf3.c: New file.
3813         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
3814         * tests/unistdio/test-u16-vasprintf1.c: New file.
3815         * tests/unistdio/test-u16-vsnprintf1.c: New file.
3816         * tests/unistdio/test-u16-vsprintf1.c: New file.
3817         * tests/unistdio/test-u32-asnprintf1.c: New file.
3818         * tests/unistdio/test-u32-asnprintf1.h: New file.
3819         * tests/unistdio/test-u32-printf1.h: New file.
3820         * tests/unistdio/test-u32-vasnprintf1.c: New file.
3821         * tests/unistdio/test-u32-vasnprintf2.c: New file.
3822         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
3823         * tests/unistdio/test-u32-vasnprintf3.c: New file.
3824         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
3825         * tests/unistdio/test-u32-vasprintf1.c: New file.
3826         * tests/unistdio/test-u32-vsnprintf1.c: New file.
3827         * tests/unistdio/test-u32-vsprintf1.c: New file.
3828         * modules/unistdio/base: New file.
3829         * modules/unistdio/u-printf-args: New file.
3830         * modules/unistdio/ulc-asnprintf: New file.
3831         * modules/unistdio/ulc-asprintf: New file.
3832         * modules/unistdio/ulc-fprintf: New file.
3833         * modules/unistdio/ulc-printf-parse: New file.
3834         * modules/unistdio/ulc-snprintf: New file.
3835         * modules/unistdio/ulc-sprintf: New file.
3836         * modules/unistdio/ulc-vasnprintf: New file.
3837         * modules/unistdio/ulc-vasprintf: New file.
3838         * modules/unistdio/ulc-vfprintf: New file.
3839         * modules/unistdio/ulc-vsnprintf: New file.
3840         * modules/unistdio/ulc-vsprintf: New file.
3841         * modules/unistdio/u8-asnprintf: New file.
3842         * modules/unistdio/u8-asprintf: New file.
3843         * modules/unistdio/u8-printf-parse: New file.
3844         * modules/unistdio/u8-snprintf: New file.
3845         * modules/unistdio/u8-sprintf: New file.
3846         * modules/unistdio/u8-vasnprintf: New file.
3847         * modules/unistdio/u8-vasprintf: New file.
3848         * modules/unistdio/u8-vsnprintf: New file.
3849         * modules/unistdio/u8-vsprintf: New file.
3850         * modules/unistdio/u8-u8-asnprintf: New file.
3851         * modules/unistdio/u8-u8-asprintf: New file.
3852         * modules/unistdio/u8-u8-snprintf: New file.
3853         * modules/unistdio/u8-u8-sprintf: New file.
3854         * modules/unistdio/u8-u8-vasnprintf: New file.
3855         * modules/unistdio/u8-u8-vasprintf: New file.
3856         * modules/unistdio/u8-u8-vsnprintf: New file.
3857         * modules/unistdio/u8-u8-vsprintf: New file.
3858         * modules/unistdio/u16-asnprintf: New file.
3859         * modules/unistdio/u16-asprintf: New file.
3860         * modules/unistdio/u16-printf-parse: New file.
3861         * modules/unistdio/u16-snprintf: New file.
3862         * modules/unistdio/u16-sprintf: New file.
3863         * modules/unistdio/u16-vasnprintf: New file.
3864         * modules/unistdio/u16-vasprintf: New file.
3865         * modules/unistdio/u16-vsnprintf: New file.
3866         * modules/unistdio/u16-vsprintf: New file.
3867         * modules/unistdio/u16-u16-asnprintf: New file.
3868         * modules/unistdio/u16-u16-asprintf: New file.
3869         * modules/unistdio/u16-u16-snprintf: New file.
3870         * modules/unistdio/u16-u16-sprintf: New file.
3871         * modules/unistdio/u16-u16-vasnprintf: New file.
3872         * modules/unistdio/u16-u16-vasprintf: New file.
3873         * modules/unistdio/u16-u16-vsnprintf: New file.
3874         * modules/unistdio/u16-u16-vsprintf: New file.
3875         * modules/unistdio/u32-asnprintf: New file.
3876         * modules/unistdio/u32-asprintf: New file.
3877         * modules/unistdio/u32-printf-parse: New file.
3878         * modules/unistdio/u32-snprintf: New file.
3879         * modules/unistdio/u32-sprintf: New file.
3880         * modules/unistdio/u32-vasnprintf: New file.
3881         * modules/unistdio/u32-vasprintf: New file.
3882         * modules/unistdio/u32-vsnprintf: New file.
3883         * modules/unistdio/u32-vsprintf: New file.
3884         * modules/unistdio/u32-u32-asnprintf: New file.
3885         * modules/unistdio/u32-u32-asprintf: New file.
3886         * modules/unistdio/u32-u32-snprintf: New file.
3887         * modules/unistdio/u32-u32-sprintf: New file.
3888         * modules/unistdio/u32-u32-vasnprintf: New file.
3889         * modules/unistdio/u32-u32-vasprintf: New file.
3890         * modules/unistdio/u32-u32-vsnprintf: New file.
3891         * modules/unistdio/u32-u32-vsprintf: New file.
3892         * modules/unistdio/ulc-asnprintf-tests: New file.
3893         * modules/unistdio/ulc-vasnprintf-tests: New file.
3894         * modules/unistdio/ulc-vasprintf-tests: New file.
3895         * modules/unistdio/ulc-vsnprintf-tests: New file.
3896         * modules/unistdio/ulc-vsprintf-tests: New file.
3897         * modules/unistdio/u8-asnprintf-tests: New file.
3898         * modules/unistdio/u8-vasnprintf-tests: New file.
3899         * modules/unistdio/u8-vasprintf-tests: New file.
3900         * modules/unistdio/u8-vsnprintf-tests: New file.
3901         * modules/unistdio/u8-vsprintf-tests: New file.
3902         * modules/unistdio/u16-asnprintf-tests: New file.
3903         * modules/unistdio/u16-vasnprintf-tests: New file.
3904         * modules/unistdio/u16-vasprintf-tests: New file.
3905         * modules/unistdio/u16-vsnprintf-tests: New file.
3906         * modules/unistdio/u16-vsprintf-tests: New file.
3907         * modules/unistdio/u32-asnprintf-tests: New file.
3908         * modules/unistdio/u32-vasnprintf-tests: New file.
3909         * modules/unistdio/u32-vasprintf-tests: New file.
3910         * modules/unistdio/u32-vsnprintf-tests: New file.
3911         * modules/unistdio/u32-vsprintf-tests: New file.
3912         * MODULES.html.sh (Unicode string functions): Add the new modules.
3913
3914 2007-07-01  Bruno Haible  <bruno@clisp.org>
3915
3916         * lib/sprintf.c (sprintf): Limit the available length estimation,
3917         to avoid address wraparound.
3918         * lib/vsprintf.c (vsprintf): Likewise.
3919         * modules/sprintf-posix (Dependencies): Add stdint.
3920         * modules/vsprintf-posix (Dependencies): Likewise.
3921
3922 2007-07-01  Bruno Haible  <bruno@clisp.org>
3923
3924         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
3925         Windows PATH as well. Conservative double-quoting. Comments.
3926
3927 2007-07-01  Bruno Haible  <bruno@clisp.org>
3928             Eric Blake  <ebb9@byu.net>
3929             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3930
3931         * gnulib-tool (self_abspathname): Fix algorithm to cope with
3932         empty components in $PATH, denoting '.'.
3933
3934 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3935
3936         * gnulib-tool: Fix indentation.
3937         (func_create_megatestdir): Likewise.
3938         Report by Bruno Haible.
3939
3940 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3941
3942         Sync from Automake.
3943         * build-aux/gnupload: Fix shell portability issues with for loops.
3944         Report by Karl Berry.
3945
3946 2007-06-29  Simon Josefsson  <simon@josefsson.org>
3947
3948         * build-aux/maint.mk (POURL): Use translationproject.org.
3949
3950 2007-06-27  Simon Josefsson  <simon@josefsson.org>
3951             Bruno Haible  <bruno@clisp.org>
3952
3953         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
3954         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
3955         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
3956         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
3957         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
3958
3959 2007-06-27  Bruno Haible  <bruno@clisp.org>
3960
3961         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
3962         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
3963
3964 2007-06-26  Karl Berry  <karl@gnu.org>
3965
3966         * MODULES.html.sh: remove xreadlink-with-size.
3967
3968 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3969
3970         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
3971         method that I hope also handles the double-include problem noted
3972         by Bruno Haible in
3973         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
3974
3975 2007-06-23  Bruno Haible  <bruno@clisp.org>
3976
3977         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
3978         Don't let the 'mostlyclean' target fail if the last subdirectory could
3979         not be removed.
3980         Reported by Karl Berry.
3981
3982 2007-06-23  Bruno Haible  <bruno@clisp.org>
3983
3984         * gnulib-tool (echo): Add a speedier workaround for ksh.
3985         * tests/test-echo.sh: Likewise.
3986
3987 2007-06-23  Bruno Haible  <bruno@clisp.org>
3988
3989         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
3990         * tests/test-echo.sh: Likewise.
3991
3992 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3993
3994         * gnulib-tool (IFS): Initialize early, so we don't set it to
3995         empty later.
3996         (self_abspathname): Rewrite algorithm to set it, reindent.
3997         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
3998         (func_create_megatestdir): Merge some sed scripts.
3999
4000 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
4001
4002         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
4003         exposed by Sun Studio 11 cc on Solaris 8.
4004
4005 2007-06-22  Bruno Haible  <bruno@clisp.org>
4006
4007         * gnulib-tool (echo): Ensure the echo primitive does not interpret
4008         backslashes.
4009         * tests/test-echo.sh: New file.
4010
4011 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4012
4013         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
4014         simplify `sed_replace_build_aux' scripts, they are portable but
4015         echoing them with `echo' is not.
4016         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
4017
4018 2007-06-21  Karl Berry  <karl@gnu.org>
4019
4020         * config/srclist.txt: guess we can't handle the licenses via
4021         srclist at the moment.
4022
4023 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
4024
4025         * MODULES.html.sh: Add include_next.
4026         * modules/include_next: New file.
4027
4028 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
4029
4030         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
4031         INCLUDE_NEXT.
4032         (gl_CHECK_NEXT_HEADERS): New macro.
4033         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
4034         the obsolescent gl_ABSOLUTE_HEADER.
4035         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
4036         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
4037         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
4038         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
4039         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
4040         * m4/math_h.m4 (gl_MATH_H): Likewise.
4041         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
4042         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
4043         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
4044         * m4/stdint.m4 (gl_STDINT_H): Likewise.
4045         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
4046         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
4047         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
4048         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
4049         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
4050         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
4051         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
4052         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
4053         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
4054         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
4055         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
4056         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
4057         * m4/inttypes.m4 (gl_INTTYPES_H): Define
4058         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
4059         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
4060         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
4061         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
4062         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
4063         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
4064         * lib/float_.h: Likewise.
4065         * lib/inttypes_.h: Likewise.
4066         * lib/math_.h: Likewise.
4067         * lib/search_.h: Likewise.
4068         * lib/signal_.h: Likewise.
4069         * lib/stdint_.h: Likewise.
4070         * lib/stdio_.h: Likewise.
4071         * lib/stdlib_.h: Likewise.
4072         * lib/string_.h: Likewise.
4073         * lib/sys_stat_.h: Likewise.
4074         * lib/sys_time_.h: Likewise.
4075         * lib/time_.h: Likewise.
4076         * lib/unistd_.h: Likewise.
4077         * lib/wchar_.h: Likewise.
4078         * lib/wctype_.h: Likewise.
4079         * lib/dirent_.h: Likewise.
4080         * lib/iconv_.h: Likewise.
4081         * lib/locale_.h: Likewise.
4082         * lib/netinet_in_.h: Likewise.
4083         * lib/sys_select_.h: Likewise.
4084         * lib/sys_socket_.h: Likewise.
4085         * lib/sysexits_.h: Likewise.
4086         * modules/fcntl (Depends-on): Depend on include_next, not
4087         absolute_header.
4088         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
4089         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
4090         * modules/fchdir: Likewise.
4091         * modules/float: Likewise.
4092         * modules/iconv_open: Likewise.
4093         * modules/inttypes: Likewise.
4094         * modules/locale: Likewise.
4095         * modules/math: Likewise.
4096         * modules/netinet_in: Likewise.
4097         * modules/search: Likewise.
4098         * modules/signal: Likewise.
4099         * modules/stdint: Likewise.
4100         * modules/stdio: Likewise.
4101         * modules/stdlib: Likewise.
4102         * modules/string: Likewise.
4103         * modules/sys_select: Likewise.
4104         * modules/sys_socket: Likewise.
4105         * modules/sys_stat: Likewise.
4106         * modules/sys_time: Likewise.
4107         * modules/sysexits: Likewise.
4108         * modules/time: Likewise.
4109         * modules/unistd: Likewise.
4110         * modules/wchar: Likewise.
4111         * modules/wctype: Likewise.
4112         * modules/sys_stat: Change maintainer to "all".
4113         * modules/unistd: Likewise.
4114
4115 2007-06-20  Karl Berry  <karl@gnu.org>
4116
4117         * config/srclist.txt: track www changes in license files.
4118
4119 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
4120
4121         * build-aux/bootstrap: Remove stray dot.
4122         Make sure build_aux settings are honored when linking
4123         gnulib_extra_files.
4124
4125 2007-06-19  Eric Blake  <ebb9@byu.net>
4126
4127         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
4128         Allow compilation on cygwin.
4129
4130 2007-06-19  Jim Meyering  <jim@meyering.net>
4131
4132         xreadlink-with-size: Remove module.  No longer used.
4133         Ex-callers now use xreadlink or mreadlink-with-size.
4134         * modules/xreadlink-with-size: Remove module.
4135         * lib/xreadlink-with-size.c: Remove file.
4136         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
4137         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
4138         just before the function definition *is* accurate.
4139
4140         Eliminate one way canonicalize_filename_mode could exit.
4141         * lib/canonicalize.c (canonicalize_filename_mode):
4142         Use mreadlink_with_size, not xreadlink_with_size.
4143
4144 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
4145
4146         Detect porting problems to FreeBSD/arm, which has time_t wider than
4147         long int.  Original problem reported for GNU diff by Xin Li in
4148         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
4149         * modules/getdate (Depends-on): Add intprops, verify.
4150         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
4151         is an integer type no wider than long int.
4152
4153 2007-06-18  Jim Meyering  <jim@meyering.net>
4154
4155         New module: mreadlink-with-size.
4156         * MODULES.html.sh: Add mreadlink-with-size.
4157         * modules/mreadlink-with-size: New module
4158         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
4159         not xreadlink-with-size.
4160         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
4161
4162 2007-06-16  Bruno Haible  <bruno@clisp.org>
4163
4164         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
4165         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
4166         Reported by Gary V. Vaughan <gary@gnu.org>.
4167
4168 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
4169
4170         Revamp lchown so that it lives in unistd.h where it belongs.
4171         * lib/lchown.h: Remove.
4172         * lib/dirchownmod.c: Don't include lib/lchown.h.
4173         * lib/fchownat.c: Likewise.
4174         * lib/openat.c: Likewise.
4175         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
4176         does not follow symlinks.
4177         (EOPNOTSUPP): Define if not defined.
4178         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
4179         is defined to 0.
4180         (lchown): New decl.
4181         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
4182         Do not check for lchown decl.
4183         Set REPLACE_LCHOWN.
4184         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
4185         REPLACE_LCHOWN.
4186         * modules/chown: Make it clear it follows symlinks.
4187         * modules/lchown: Make it clear it doesn't follow symlinks.
4188         (Files): Remove lib/lchown.h
4189         (Depends-on): Add unistd.
4190         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
4191         (Include): Include <unistd.h>, not "lchown.h".
4192         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
4193         REPLACE_LCHOWN.
4194
4195 2007-06-15  Jim Meyering  <jim@meyering.net>
4196
4197         Change license (GPL to LGPL) of fsusage and dependents.
4198         * modules/fsusage (License): Change to LGPL.
4199         * modules/full-read (License): Likewise.
4200         * modules/full-write (License): Likewise.
4201         * modules/safe-read (License): Likewise.
4202         * modules/safe-write (License): Likewise.
4203
4204 2007-06-14  Ben Pfaff  <blp@gnu.org>
4205
4206         Missing part of allocsa -> malloca transition.
4207         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
4208         gl_MALLOCA.
4209
4210 2007-06-12  Bruno Haible  <bruno@clisp.org>
4211
4212         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
4213         to ia64, x86_64, i386.
4214         Reported by Eric Blake.
4215
4216 2007-06-12  Bruno Haible  <bruno@clisp.org>
4217
4218         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
4219         cross-compiling to x86_64.
4220
4221 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
4222
4223         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
4224         glitch reported by Ralf Wildenhues in
4225         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
4226
4227         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
4228         Vin Shelton.
4229
4230 2007-06-11  Bruno Haible  <bruno@clisp.org>
4231
4232         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
4233         replacement string.
4234         Reported by Eric Blake.
4235
4236 2007-06-10  Bruno Haible  <bruno@clisp.org>
4237
4238         Prepare vasnprintf code for use with Unicode strings.
4239         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
4240         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
4241         TYPE_U32_STRING.
4242         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
4243         a_u32_string variants.
4244         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
4245         * lib/printf-args.c: Don't include config.h and the specification
4246         header if PRINTF_FETCHARGS is already defined.
4247         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
4248         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
4249         TYPE_U16_STRING, TYPE_U32_STRING.
4250         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
4251         u16_directive, u16_directives, u32_directive, u32_directives): New
4252         types.
4253         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
4254         New declarations.
4255         * lib/printf-parse.c: Don't include config.h and the specification
4256         header if PRINTF_PARSE is already defined. Eliminate the set of
4257         parameters for WIDE_CHAR_VERSION; the user of this file must provide
4258         them now. Include c-ctype.h.
4259         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
4260         directive and CHAR_T_ONLY_ASCII.
4261         * lib/vasnprintf.c: Don't include config.h and the specification header
4262         if VASNPRINTF is already defined.
4263         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
4264         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
4265         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
4266         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
4267         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
4268         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
4269         code accordingly.
4270         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
4271         pad_ourselves also in this case, with the 'c' and 's' directives, and
4272         with a different notion of "width".
4273         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
4274
4275 2007-06-10  Bruno Haible  <bruno@clisp.org>
4276
4277         * modules/unistr/u32-mbsnlen: New file.
4278         * lib/unistr/u32-mbsnlen.c: New file.
4279
4280         * modules/unistr/u16-mbsnlen: New file.
4281         * lib/unistr/u16-mbsnlen.c: New file.
4282
4283         * modules/unistr/u8-mbsnlen: New file.
4284         * lib/unistr/u8-mbsnlen.c: New file.
4285
4286         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
4287         declarations.
4288
4289 2007-06-10  Bruno Haible  <bruno@clisp.org>
4290
4291         * lib/string_.h (mbsnlen): New declaration.
4292         * lib/mbsnlen.c: New file.
4293         * m4/mbsnlen.m4: New file.
4294         * modules/mbsnlen: New file.
4295         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
4296         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
4297         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
4298
4299 2007-06-10  Bruno Haible  <bruno@clisp.org>
4300
4301         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
4302
4303 2007-06-10  Bruno Haible  <bruno@clisp.org>
4304
4305         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
4306         * lib/mbuiter.h: Likewise.
4307
4308 2007-06-10  Bruno Haible  <bruno@clisp.org>
4309
4310         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
4311         declaration.
4312
4313 2007-06-10  Karl Berry  <karl@gnu.org>
4314
4315         * config/srclist.txt: remove gettext entries, Bruno prefers
4316         to update individually.
4317
4318 2007-06-10  Bruno Haible  <bruno@clisp.org>
4319
4320         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
4321         'maxlen'. Ensure only length + width bytes are allocated, not
4322         length + 1 + width.
4323
4324 2007-06-09  Bruno Haible  <bruno@clisp.org>
4325
4326         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
4327         (CHAR_T): Remove macro.
4328         (VASNPRINTF): Update.
4329
4330 2007-06-09  Bruno Haible  <bruno@clisp.org>
4331
4332         * MODULES.html.sh (Unicode string functions): Add the new modules.
4333
4334         * modules/uniconv/u32-conv-to-enc: New file.
4335         * lib/uniconv/u32-conv-to-enc.c: New file.
4336         * modules/uniconv/u32-conv-to-enc-tests: New file.
4337         * tests/uniconv/test-u32-conv-to-enc.c: New file.
4338
4339         * modules/uniconv/u16-conv-to-enc: New file.
4340         * lib/uniconv/u16-conv-to-enc.c: New file.
4341         * lib/uniconv/u-conv-to-enc.h: New file.
4342         * modules/uniconv/u16-conv-to-enc-tests: New file.
4343         * tests/uniconv/test-u16-conv-to-enc.c: New file.
4344
4345         * modules/uniconv/u8-conv-to-enc: New file.
4346         * lib/uniconv/u8-conv-to-enc.c: New file.
4347         * modules/uniconv/u8-conv-to-enc-tests: New file.
4348         * tests/uniconv/test-u8-conv-to-enc.c: New file.
4349
4350         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
4351         u32_conv_to_encoding): New declarations.
4352
4353 2007-06-09  Bruno Haible  <bruno@clisp.org>
4354
4355         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
4356
4357 2007-06-09  Bruno Haible  <bruno@clisp.org>
4358
4359         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
4360         * modules/malloca: Renamed from modules/allocsa, updated.
4361         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
4362         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
4363         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
4364         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
4365         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
4366         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
4367         * modules/xmalloca: Renamed from modules/xallocsa, updated.
4368         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
4369         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
4370         * modules/c-strcasestr (Depends-on): Update.
4371         * lib/c-strcasestr.c: Update.
4372         * modules/c-strstr (Depends-on): Update.
4373         * lib/c-strstr.c: Update.
4374         * modules/canonicalize-lgpl (Depends-on): Update.
4375         * lib/canonicalize-lgpl.c: Update.
4376         * modules/clean-temp (Depends-on): Update.
4377         * lib/clean-temp.c: Update.
4378         * modules/csharpcomp (Depends-on): Update.
4379         * lib/csharpcomp.c: Update.
4380         * modules/csharpexec (Depends-on): Update.
4381         * lib/csharpexec.c: Update.
4382         * modules/javacomp (Depends-on): Update.
4383         * lib/javacomp.c: Update.
4384         * modules/javaexec (Depends-on): Update.
4385         * lib/javaexec.c: Update.
4386         * modules/mbscasestr (Depends-on): Update.
4387         * lib/mbscasestr.c: Update.
4388         * modules/mbsstr (Depends-on): Update.
4389         * lib/mbsstr.c: Update.
4390         * modules/setenv (Depends-on): Update.
4391         * lib/setenv.c: Update.
4392         * modules/strcasestr (Depends-on): Update.
4393         * lib/strcasestr.c: Update.
4394         * modules/striconveha (Depends-on): Update.
4395         * lib/striconveha.c: Update.
4396         * modules/relocatable-prog-wrapper (Files): Update.
4397         * lib/relocwrapper.c: Update.
4398         * build-aux/install-reloc: Update.
4399         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
4400
4401 2007-06-08  Bruno Haible  <bruno@clisp.org>
4402
4403         Port to uClibc.
4404         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
4405         * lib/fpurge.c (fpurge): Likewise.
4406         * lib/freading.c (freading): Likewise.
4407         * lib/fseeko.c (rpl_fseeko): Likewise.
4408         * lib/fseterr.c (fseterr): Likewise.
4409         * lib/fwriting.c (fwriting): Likewise.
4410         * tests/test-fflush.c (main): Avoid a failure on uClibc.
4411
4412 2007-06-08  Bruno Haible  <bruno@clisp.org>
4413
4414         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
4415         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
4416         * modules/gettext (Files): Add m4/intlmacosx.m4.
4417
4418 2007-06-07  Bruno Haible  <bruno@clisp.org>
4419
4420         * modules/localename-tests: New file.
4421         * tests/test-localename.c: New file.
4422
4423         New module 'localename'.
4424         * lib/localename.h: New file.
4425         * lib/localename.c: New file, from GNU gettext.
4426         * m4/localename.m4: New file.
4427         * modules/localename: New file.
4428
4429 2007-06-07  Bruno Haible  <bruno@clisp.org>
4430
4431         Work around the lack of <wchar.h> on some builds of uClibc.
4432         * doc/headers/wchar.texi: Update.
4433         * lib/wchar_.h: Include <wchar.h> only if it exists.
4434         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
4435         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
4436         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
4437         doesn't exist.
4438         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
4439         * modules/mbfile (Depends-on): Add wchar.
4440         * modules/mbiter (Depends-on): Likewise.
4441         * modules/mbuiter (Depends-on): Likewise.
4442         Reported by Simon Josefsson.
4443
4444 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
4445
4446         Work around problem reported by Steven M. Schweda in
4447         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
4448         Tru64 5.1B with the Compaq compiler environment installed declares
4449         an 'isblank' function but does not define it in the C library.
4450         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
4451         * lib/regex_internal.h (isblank): Likewise.
4452         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
4453         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
4454
4455 2007-06-05  Bruno Haible  <bruno@clisp.org>
4456
4457         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
4458         ia64.
4459         * modules/printf-safe: New file.
4460         * modules/fprintf-posix (Depends-on): Add printf-safe.
4461         * modules/printf-posix (Depends-on): Likewise.
4462         * modules/snprintf-posix (Depends-on): Likewise.
4463         * modules/sprintf-posix (Depends-on): Likewise.
4464         * modules/vasnprintf-posix (Depends-on): Likewise.
4465         * modules/vasprintf-posix (Depends-on): Likewise.
4466         * modules/vfprintf-posix (Depends-on): Likewise.
4467         * modules/vprintf-posix (Depends-on): Likewise.
4468         * modules/vsnprintf-posix (Depends-on): Likewise.
4469         * modules/vsprintf-posix (Depends-on): Likewise.
4470         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
4471         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
4472         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
4473         "no" on i386, x86_64, ia64.
4474         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
4475         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4476         on i386, x86_64, ia64.
4477         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
4478         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4479         on i386, x86_64, ia64.
4480         * tests/test-vasnprintf-posix.c: Include float.h.
4481         (LDBL80_WORDS): New macro.
4482         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4483         on i386, x86_64, ia64.
4484         * tests/test-vasprintf-posix.c: Include float.h.
4485         (LDBL80_WORDS): New macro.
4486         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4487         on i386, x86_64, ia64.
4488         * tests/test-snprintf-posix.c: Include float.h.
4489         * tests/test-sprintf-posix.c: Likewise.
4490         * tests/test-vsnprintf-posix.c: Likewise.
4491         * tests/test-vsprintf-posix.c: Likewise.
4492
4493 2007-06-05  Bruno Haible  <bruno@clisp.org>
4494
4495         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
4496         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
4497         non-IEEE numbers on i386, x86_64, ia64.
4498         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
4499         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
4500         * tests/test-isnanl.h: Include float.h.
4501         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
4502
4503 2007-06-05  Bruno Haible  <bruno@clisp.org>
4504
4505         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
4506         also the %a / %A. Handle the %a / %A code before this extra handling.
4507
4508 2007-06-05  Bruno Haible  <bruno@clisp.org>
4509
4510         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
4511         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
4512
4513 2007-06-05  Bruno Haible  <bruno@clisp.org>
4514
4515         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
4516         typo in variable name.
4517
4518 2007-06-05  Eric Blake  <ebb9@byu.net>
4519
4520         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
4521         Reported by Simon Josefsson.
4522
4523 2007-06-04  Bruno Haible  <bruno@clisp.org>
4524
4525         Avoid test failures on some PowerPC platforms.
4526         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
4527         Define differently for PowerPC.
4528         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
4529         Reported by Gary V. Vaughan <gary@gnu.org>.
4530
4531 2007-06-02  Bruno Haible  <bruno@clisp.org>
4532
4533         Fix test-stdint failure on FreeBSD/ia64.
4534         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
4535         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
4536         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
4537         * doc/headers/stdint.texi: Update.
4538
4539 2007-06-01  Bruno Haible  <bruno@clisp.org>
4540
4541         * tests/test-binary-io.c (main): Pass a third argument to open().
4542         Reported by Gary V. Vaughan <gary@gnu.org>.
4543
4544 2007-06-01  Bruno Haible  <bruno@clisp.org>
4545
4546         * doc/functions/frexpl.texi: Update for mingw.
4547
4548 2007-06-01  Bruno Haible  <bruno@clisp.org>
4549
4550         * tests/test-lseek.c (main): Disable test of errno for invalid third
4551         argument.
4552         * doc/functions/lseek.texi: Update.
4553         Reported by Gary V. Vaughan <gary@gnu.org>.
4554
4555 2007-05-28  Bruno Haible  <bruno@clisp.org>
4556
4557         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
4558
4559 2007-05-31  Eric Blake  <ebb9@byu.net>
4560
4561         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
4562         cross compiling.
4563
4564 2007-05-30  Eric Blake  <ebb9@byu.net>
4565         and Bruno Haible  <bruno@clisp.org>
4566
4567         Work around mingw test failures exposed by m4-1.4.9b.
4568         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
4569         * tests/test-unistd.c: Disable uid_t and git_t tests for the
4570         moment.
4571
4572 2007-05-30  Bruno Haible  <bruno@clisp.org>
4573
4574         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
4575         assuming that they are closed. Needed on HP-UX 11.
4576
4577 2007-05-29  Bruno Haible  <bruno@clisp.org>
4578
4579         Fix a problem with #include_next.
4580         * lib/dirent_.h: Split the double-inclusion guard.
4581         * lib/fcntl_.h: Likewise.
4582         * lib/float_.h: Likewise.
4583         * lib/iconv_.h: Likewise.
4584         * lib/inttypes_.h: Likewise.
4585         * lib/locale_.h: Likewise.
4586         * lib/math_.h: Likewise.
4587         * lib/netinet_in_.h: Likewise.
4588         * lib/search_.h: Likewise.
4589         * lib/signal_.h: Likewise.
4590         * lib/stdint_.h: Likewise.
4591         * lib/stdio_.h: Likewise.
4592         * lib/stdlib_.h: Likewise.
4593         * lib/string_.h: Likewise.
4594         * lib/sys_select_.h: Likewise.
4595         * lib/sys_socket_.h: Likewise.
4596         * lib/sys_stat_.h: Likewise.
4597         * lib/sys_time_.h: Likewise.
4598         * lib/sysexits_.h: Likewise.
4599         * lib/time_.h: Likewise.
4600         * lib/unistd_.h: Likewise.
4601         * lib/wchar_.h: Likewise.
4602         * lib/wctype_.h: Likewise.
4603
4604 2007-05-29  Bruno Haible  <bruno@clisp.org>
4605
4606         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
4607         for the moment.
4608
4609 2007-05-29  Bruno Haible  <bruno@clisp.org>
4610
4611         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
4612         invocation.
4613         Reported by Eric Blake.
4614
4615 2007-05-29  Bruno Haible  <bruno@clisp.org>
4616
4617         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
4618         compiling case.
4619
4620 2007-05-29  Eric Blake  <ebb9@byu.net>
4621             Bruno Haible  <bruno@clisp.org>
4622
4623         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
4624         cross compiles.
4625
4626 2007-05-28  Eric Blake  <ebb9@byu.net>
4627
4628         * modules/closein-tests (test_closein_LDADD): Support test on
4629         cygwin with libtool.
4630
4631 2007-05-28  Bruno Haible  <bruno@clisp.org>
4632
4633         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
4634         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
4635         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
4636         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
4637         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
4638         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
4639         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
4640         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
4641         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
4642
4643 2007-05-28  Eric Blake  <ebb9@byu.net>
4644
4645         Unconditionally include <config.h> in unit tests.
4646         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
4647         * tests/test-allocsa.c, tests/test-arcfour.c,
4648         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
4649         tests/test-array_list.c, tests/test-array_oset.c,
4650         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
4651         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
4652         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
4653         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
4654         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
4655         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
4656         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
4657         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
4658         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
4659         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
4660         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
4661         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
4662         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
4663         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
4664         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
4665         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
4666         test-md5.c, test-memmem.c, test-printf-posix.c,
4667         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
4668         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
4669         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
4670         test-strcasestr.c, test-striconv.c, test-striconveh.c,
4671         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
4672         test-vasnprintf-posix2.c, test-vasnprintf.c,
4673         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
4674         test-vfprintf-posix.c, test-vprintf-posix.c,
4675         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
4676         test-xvasprintf.c: Likewise.
4677
4678 2007-05-28  Bruno Haible  <bruno@clisp.org>
4679
4680         * gnulib-tool (func_import): Remember the --with-tests command-line
4681         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
4682         Reported by Eric Blake.
4683
4684 2007-05-28  Bruno Haible  <bruno@clisp.org>
4685
4686         * modules/ftell-tests: New file.
4687         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
4688         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
4689
4690         * lib/ftell.c: New file.
4691         * modules/ftell: New file.
4692         * m4/ftell.m4: New file.
4693         * doc/functions/ftell.texi: Update.
4694         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
4695         REPLACE_FTELL.
4696         * lib/stdio_.h (rpl_ftell): New declaration.
4697         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
4698         REPLACE_FTELL.
4699
4700 2007-05-28  Eric Blake  <ebb9@byu.net>
4701
4702         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
4703
4704 2007-05-28  Bruno Haible  <bruno@clisp.org>
4705
4706         * modules/fseek-tests: New file.
4707         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
4708         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
4709
4710         * lib/fseek.c: New file.
4711         * modules/fseek: New file.
4712         * m4/fseek.m4: New file.
4713         * doc/functions/fseek.texi: Update.
4714         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
4715         REPLACE_FSEEK.
4716         * lib/stdio_.h (rpl_fseek): New declaration.
4717         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
4718         REPLACE_FSEEK.
4719
4720 2007-05-28  Bruno Haible  <bruno@clisp.org>
4721
4722         * lib/stdio_.h (fflush): More comments.
4723
4724 2007-05-28  Bruno Haible  <bruno@clisp.org>
4725
4726         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
4727         runtime test.
4728
4729 2007-05-28  Eric Blake  <ebb9@byu.net>
4730
4731         Improve lseek module.
4732         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
4733         * lib/unistd_.h (lseek): Scale back link warning message.
4734         * tests/test-lseek.c: Beef up test.
4735         * tests/test-lseek.sh: Exercise more facets of lseek.
4736         Reported by Bruno Haible.
4737
4738 2007-05-28  Bruno Haible  <bruno@clisp.org>
4739
4740         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
4741         to define.
4742
4743 2007-05-27  Bruno Haible  <bruno@clisp.org>
4744
4745         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
4746
4747 2007-05-27  Bruno Haible  <bruno@clisp.org>
4748
4749         * modules/openmp: New file.
4750         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
4751         Noah Misch.
4752
4753 2007-05-26  Bruno Haible  <bruno@clisp.org>
4754
4755         * modules/chdir-long (Depends-on): Add fchdir.
4756         * modules/chdir-safer (Depends-on): Likewise.
4757         * modules/fts (Depends-on): Likewise.
4758         * modules/fts-lgpl (Depends-on): Likewise.
4759         * modules/openat (Depends-on): Likewise.
4760         * modules/savewd (Depends-on): Likewise.
4761
4762 2007-05-24  Eric Blake  <ebb9@byu.net>
4763
4764         Fix lseek on mingw.
4765         * modules/lseek: New module.
4766         * m4/lseek.m4: New file.
4767         * lib/lseek.c: New file.
4768         * modules/lseek-tests: New file.
4769         * tests/test-lseek.c: New file.
4770         * tests/test-lseek.sh: New file.
4771         * MODULES.html.sh: Document lseek module.
4772         * modules/fflush (Depends-on): Add lseek, fseeko.
4773         * modules/fseeko (Depends-on): Likewise.
4774         * modules/ftello (Depends-on): Likewise.
4775         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
4776         broken.
4777         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
4778         broken.
4779         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
4780         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
4781         * lib/ftello.c (rpl_ftello): Likewise.
4782         * tests/test-fseeko.c (main): Test this.
4783         * tests/test-fseeko.sh: Likewise.
4784         * tests/test-ftello.c (main): Likewise.
4785         * tests/test-ftello.sh: Likewise.
4786         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
4787         implies replacing fseek.
4788         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
4789         HAVE_FTELLO.
4790         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
4791         * modules/unistd (Makefile.am): Likewise.
4792         * lib/unistd_.h (lseek): Declare a replacement.
4793         * doc/functions/lseek.texi (lseek): Document this fix.
4794         * doc/functions/fseek.texi (fseek): Likewise.
4795         * doc/functions/ftell.texi (ftell): Likewise.
4796
4797 2007-05-24  Bruno Haible  <bruno@clisp.org>
4798
4799         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
4800         in the printed representation of a NaN.
4801         * tests/test-vasprintf-posix.c (test_function): Likewise.
4802         * tests/test-snprintf-posix.h (test_function): Likewise.
4803         * tests/test-sprintf-posix.h (test_function): Likewise.
4804         Reported by Eric Blake.
4805
4806 2007-05-23  Eric Blake  <ebb9@byu.net>
4807
4808         Fix fseeko/ftello on cygwin 1.5.24.
4809         * doc/functions/fseeko.texi (fseeko): Document the fix.
4810         * doc/functions/ftello.texi (ftello): Document the fix.
4811         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
4812         * doc/functions/stdout.text (stdout): New file.
4813         * doc/functions/stderr.text (stderr): New file.
4814         * doc/gnulib.texi (Function Substitutes): Use new files.
4815         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
4816         prior to 1.7.0.
4817         * tests/test-ftello.c (main): Likewise for ftello.
4818         * tests/test-fseeko.sh: New file.
4819         * tests/test-ftello.sh: New file.
4820         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
4821         with seekable stdin.
4822         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
4823         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
4824         (gl_REPLACE_FSEEKO): New macro.
4825         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
4826         * modules/fseeko (Files): Distribute fseeko.c.
4827         * modules/ftello (Files): Distribute ftello.c.
4828         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
4829         mode.
4830         * lib/ftello.c (rpl_ftello): New file.
4831         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
4832         fseeko, ftello.
4833         (gl_STDIN_LARGE_OFFSET): New macro.
4834         * modules/stdio (Makefile.am): Perform the replacement.
4835         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
4836
4837 2007-05-23  Bruno Haible  <bruno@clisp.org>
4838
4839         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
4840         GNULIB_POSIXCHECK is defined.
4841
4842 2007-05-21  Bruno Haible  <bruno@clisp.org>
4843
4844         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
4845         Check also the output for NaN arguments. When cross-compiling, guess
4846         no on IRIX.
4847         * lib/vasnprintf.c: Update comments.
4848         * tests/test-vasnprintf-posix.c (strisnan): New function.
4849         (test_function): Use it.
4850         * tests/test-vasprintf-posix.c (strisnan): New function.
4851         (test_function): Use it.
4852         * tests/test-snprintf-posix.h (strisnan): New function.
4853         (test_function): Use it.
4854         * tests/test-sprintf-posix.h (strisnan): New function.
4855         (test_function): Use it.
4856         Reported by Eric Blake.
4857
4858 2007-05-20  Bruno Haible  <bruno@clisp.org>
4859
4860         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
4861         numbers that fails on BeOS.
4862         * doc/functions/frexpl.texi: Update.
4863
4864 2007-05-20  Jim Meyering  <jim@meyering.net>
4865
4866         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
4867         forced upon us by glibc-2.6.
4868
4869 2007-05-20  Bruno Haible  <bruno@clisp.org>
4870
4871         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
4872         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
4873         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
4874         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
4875         NEED_PRINTF_INFINITE.
4876         (is_infinitel): New function.
4877         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
4878         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
4879         gl_PREREQ_VASNPRINTF_INFINITE.
4880         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
4881         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4882         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
4883         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
4884         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
4885         gl_PREREQ_VASNPRINTF_INFINITE.
4886         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4887         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4888         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4889         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4890         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4891         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4892         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4893         * doc/functions/fprintf.texi: Update.
4894         * doc/functions/printf.texi: Update.
4895         * doc/functions/snprintf.texi: Update.
4896         * doc/functions/sprintf.texi: Update.
4897         * doc/functions/vfprintf.texi: Update.
4898         * doc/functions/vprintf.texi: Update.
4899         * doc/functions/vsnprintf.texi: Update.
4900         * doc/functions/vsprintf.texi: Update.
4901
4902 2007-05-20  Bruno Haible  <bruno@clisp.org>
4903
4904         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
4905         was not found in libc.
4906         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
4907
4908 2007-05-20  Bruno Haible  <bruno@clisp.org>
4909
4910         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4911         printed as "-nan" instead of "nan".
4912         * tests/test-vasprintf-posix.c (test_function): Likewise.
4913         * tests/test-snprintf-posix.h (test_function): Likewise.
4914         * tests/test-sprintf-posix.h (test_function): Likewise.
4915         Needed for HP-UX 11.
4916
4917 2007-05-20  Jim Meyering  <jim@meyering.net>
4918
4919         Fix buggy test for the fchownat-deref bug.
4920         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
4921         symlink required for the run-test.  Without it, this test would
4922         always declare that fchownat doesn't work, and client code would
4923         unnecessarily use the replacement function with fixed libc.
4924         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
4925         Reported by Greg Schafer.
4926
4927 2007-05-19  Bruno Haible  <bruno@clisp.org>
4928
4929         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
4930         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
4931         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
4932         Needed for IRIX 6.5 and Solaris 2.5.1.
4933
4934 2007-05-19  Bruno Haible  <bruno@clisp.org>
4935
4936         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
4937         (test_function): Skip tests involving -0.0 on platforms where
4938         -0.0 = 0.0.
4939         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
4940         (test_function): Skip tests involving -0.0 on platforms where
4941         -0.0 = 0.0.
4942         * tests/test-snprintf-posix.h (have_minus_zero): New function.
4943         (test_function): Skip tests involving -0.0 on platforms where
4944         -0.0 = 0.0.
4945         * tests/test-sprintf-posix.h (have_minus_zero): New function.
4946         (test_function): Skip tests involving -0.0 on platforms where
4947         -0.0 = 0.0.
4948         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
4949         tests.
4950         * tests/test-printf-posix.h (test_function): Likewise.
4951         * tests/test-printf-posix.output: Remove all -0.0 related results.
4952         Needed for IRIX 6.5.
4953
4954 2007-05-19  Bruno Haible  <bruno@clisp.org>
4955
4956         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4957         printed as "nan0x7fffffff" instead of "nan".
4958         * tests/test-vasprintf-posix.c (test_function): Likewise.
4959         * tests/test-snprintf-posix.h (test_function): Likewise.
4960         * tests/test-sprintf-posix.h (test_function): Likewise.
4961         * tests/test-fprintf-posix.h (NaN): Remove macro.
4962         (test_function): Remove all NaN related tests.
4963         * tests/test-printf-posix.h (NaN): Remove macro.
4964         (test_function): Remove all NaN related tests.
4965         * tests/test-printf-posix.output: Remove all NaN related results.
4966         Needed for IRIX 6.5.
4967
4968 2007-05-19  Bruno Haible  <bruno@clisp.org>
4969
4970         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
4971         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
4972
4973 2007-05-19  Bruno Haible  <bruno@clisp.org>
4974
4975         * lib/float_.h: New file.
4976         * m4/float_h.m4: New file.
4977         * modules/float: New file.
4978         * modules/isnanl (Dependencies): Add float.
4979         * modules/isnanl-nolibm (Dependencies): Likewise.
4980         * modules/mathl (Dependencies): Likewise.
4981         * modules/printf-frexpl (Dependencies): Likewise.
4982         * modules/signbit (Dependencies): Likewise.
4983         * modules/vasnprintf (Dependencies): Likewise.
4984         * doc/headers/float.texi: Update.
4985
4986 2007-05-19  Jim Meyering  <jim@meyering.net>
4987
4988         * lib/utimens.c (gl_futimens): Rename from futimens,
4989         now that glibc-2.6 declares futimens.
4990         * lib/utimens.h: Likewise.
4991
4992 2007-05-19  Bruno Haible  <bruno@clisp.org>
4993
4994         Avoid test failures on mingw.
4995         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
4996         * tests/test-printf-posix.sh: Likewise.
4997         * tests/test-vfprintf-posix.sh: Likewise.
4998         * tests/test-vprintf-posix.sh: Likewise.
4999
5000 2007-05-19  Bruno Haible  <bruno@clisp.org>
5001
5002         Fix *printf result for NaN, Inf, -0.0 on mingw.
5003         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
5004         * lib/vasnprintf.c: Include math.h and isnan.h.
5005         (is_infinite_or_zero): New function.
5006         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
5007         values in the %f, %F, %e, %E, %g, %G directives.
5008         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
5009         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5010         gl_PRINTF_INFINITE and test its result. Invoke
5011         gl_PREREQ_VASNPRINTF_INFINITE.
5012         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5013         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5014         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5015         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5016         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5017         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5018         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5019         * doc/functions/fprintf.texi: Update.
5020         * doc/functions/printf.texi: Update.
5021         * doc/functions/snprintf.texi: Update.
5022         * doc/functions/sprintf.texi: Update.
5023         * doc/functions/vfprintf.texi: Update.
5024         * doc/functions/vprintf.texi: Update.
5025         * doc/functions/vsnprintf.texi: Update.
5026         * doc/functions/vsprintf.texi: Update.
5027
5028 2007-05-19  Bruno Haible  <bruno@clisp.org>
5029
5030         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
5031         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
5032         Instead of multiplying with 10^k, set extra_zeroes to k.
5033         (scale10_round_long_double): Remove function.
5034
5035 2007-05-18  Bruno Haible  <bruno@clisp.org>
5036
5037         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
5038         introduced on 2007-05-06.
5039
5040 2007-05-18  Bruno Haible  <bruno@clisp.org>
5041
5042         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
5043         %g directives.
5044         * tests/test-vasprintf-posix.c (test_function): Likewise.
5045         * tests/test-snprintf-posix.h (test_function): Likewise.
5046         * tests/test-sprintf-posix.h (test_function): Likewise.
5047
5048 2007-05-18  Bruno Haible  <bruno@clisp.org>
5049
5050         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
5051         (strmatch): New function.
5052         (test_function): Test the %f directive on numbers of various exponents.
5053         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
5054         (strmatch): New function.
5055         (test_function): Test the %f directive on numbers of various exponents.
5056         * tests/test-snprintf-posix.h (strmatch): New function.
5057         (test_function): Test the %f directive on numbers of various exponents.
5058         * tests/test-sprintf-posix.h (strmatch): New function.
5059         (test_function): Test the %f directive on numbers of various exponents.
5060         * tests/test-snprintf-posix.c (SIZEOF): New macro.
5061         * tests/test-sprintf-posix.c (SIZEOF): New macro.
5062         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
5063         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
5064
5065 2007-05-18  Bruno Haible  <bruno@clisp.org>
5066
5067         Add support for 'long double' number output.
5068         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
5069         * lib/vasnprintf.c: Include math.h and float+.h.
5070         (mp_limb_t): New type.
5071         (GMP_LIMB_BITS): New macro.
5072         (mp_twolimb_t): New type.
5073         (GMP_TWOLIMB_BITS): New macro.
5074         (mpn_t): New type.
5075         (multiply, divide, convert_to_decimal, decode_long_double,
5076         scale10_round_long_double, scale10_round_decimal_long_double,
5077         floorlog10l): New functions.
5078         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
5079         for the %f, %F, %e, %E, %g, %G directives.
5080         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
5081         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5082         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
5083         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
5084         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5085         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5086         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5087         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5088         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5089         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5090         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5091         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
5092         * modules/snprintf-posix (Depends-on): Likewise.
5093         * modules/sprintf-posix (Depends-on): Likewise.
5094         * modules/vasnprintf-posix (Depends-on): Likewise.
5095         * modules/vasprintf-posix (Depends-on): Likewise.
5096         * modules/vfprintf-posix (Depends-on): Likewise.
5097         * modules/vsnprintf-posix (Depends-on): Likewise.
5098         * modules/vsprintf-posix (Depends-on): Likewise.
5099         * modules/vasnprintf (Files): Add lib/float+.h.
5100         * doc/functions/fprintf.texi: Update.
5101         * doc/functions/printf.texi: Update.
5102         * doc/functions/snprintf.texi: Update.
5103         * doc/functions/sprintf.texi: Update.
5104         * doc/functions/vfprintf.texi: Update.
5105         * doc/functions/vprintf.texi: Update.
5106         * doc/functions/vsnprintf.texi: Update.
5107         * doc/functions/vsprintf.texi: Update.
5108
5109 2007-05-18  Bruno Haible  <bruno@clisp.org>
5110
5111         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
5112
5113 2007-05-18  Bruno Haible  <bruno@clisp.org>
5114
5115         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
5116         for printing 64-bit integers. Needed for mingw.
5117
5118 2007-05-18  Bruno Haible  <bruno@clisp.org>
5119
5120         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
5121         gl_FUNC_FREXPL_WORKS.
5122         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
5123
5124 2007-05-18  Bruno Haible  <bruno@clisp.org>
5125
5126         * modules/frexpl-nolibm-tests: New file.
5127
5128         * modules/frexpl-nolibm: New file.
5129         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
5130
5131 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
5132
5133         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
5134         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
5135         GCC 4.2, which otherwise issues a lot of warnings.
5136         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
5137         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
5138         Likewise.
5139         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
5140         * modules/iconv_open (iconv.h): Likewise.
5141         * modules/locale (locale.h): Likewise.
5142         * modules/netinet_in (netinet/in.h): Likewise.
5143         * modules/sys_select (sys_select.h): Likewise.
5144         * modules/sys_socket (sys/socket.h): Likewise.
5145         * modules/sys_stat (sys/stat.h): Likewise.
5146         * modules/sysexits (sysexits.h): Likewise.
5147         * modules/unistd (unistd.h): Likewise.
5148
5149 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5150
5151         * modules/closein-tests (Makefile.am): Distribute
5152         `test-closein.sh'.
5153
5154 2007-05-17  Bruno Haible  <bruno@clisp.org>
5155
5156         * tests/test-printf-posix.output: Renamed from
5157         tests/test-fprintf-posix.out.
5158         * modules/fprintf-posix-tests: Update.
5159         * modules/printf-posix-tests: Update.
5160         * modules/vfprintf-posix-tests: Update.
5161         * modules/vprintf-posix-tests: Update.
5162         * tests/test-fprintf-posix.sh: Update.
5163         * tests/test-printf-posix.sh: Update.
5164         * tests/test-vfprintf-posix.sh: Update.
5165         * tests/test-vprintf-posix.sh: Update.
5166         Reported by Ralf Wildenhues.
5167
5168 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
5169
5170         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
5171         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
5172         GCC 4.2, which otherwise issues a lot of warnings.
5173         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
5174         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
5175         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
5176         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
5177         it should no longer be needed.
5178         * lib/string_.h: Likewise.
5179         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
5180         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
5181         * modules/inttypes (inttypes.h): Likewise.
5182         * modules/math (math.h): Likewise.
5183         * modules/search (search.h): Likewise.
5184         * modules/signal (signal.h): Likewise.
5185         * modules/stdint (stdint.h): Likewise.
5186         * modules/stdio (stdio.h): Likewise.
5187         * modules/stdlib (stdlib.h): Likewise.
5188         * modules/string (string.h): Likewise.
5189         * modules/sys_time (sys/time.h): Likewise.
5190         * modules/time (time.h): Likewise.
5191         * modules/wchar (wchar.h): Likewise.
5192         * modules/wctype (wtype.h): Likewise.
5193
5194 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
5195
5196         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
5197
5198 2007-05-13  Bruno Haible  <bruno@clisp.org>
5199
5200         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
5201         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
5202         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
5203         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
5204         (gl_PREREQ_STRTOK_R): Don't require it here.
5205
5206 2007-05-13  Bruno Haible  <bruno@clisp.org>
5207
5208         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
5209         when used in C++ mode.
5210
5211 2007-05-12  Bruno Haible  <bruno@clisp.org>
5212
5213         * lib/linebuffer.h: Tweak doc.
5214         * lib/linebuffer.c: Likewise.
5215
5216 2007-05-12  James Youngman  <jay@gnu.org>
5217
5218         * lib/linebuffer.c (readlinebuffer_delim): New function,
5219         like readlinebuffer, but use a caller-specified delimiter.
5220         (readlinebuffer): Just call readlinebuffer_delim with '\n'
5221         as the delimiter.
5222         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
5223
5224 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
5225
5226         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
5227         * modules/openat (Files): Remove openat-die.c.
5228         (Depends-on): Add openat-die.
5229         * modules/openat-die: New module.
5230
5231 2007-05-06  Bruno Haible  <bruno@clisp.org>
5232
5233         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
5234         Update with info about Cygwin.
5235         * doc/functions/fprintf.texi: Update.
5236         * doc/functions/printf.texi: Update.
5237         * doc/functions/snprintf.texi: Update.
5238         * doc/functions/sprintf.texi: Update.
5239         * doc/functions/vfprintf.texi: Update.
5240         * doc/functions/vprintf.texi: Update.
5241         * doc/functions/vsnprintf.texi: Update.
5242         * doc/functions/vsprintf.texi: Update.
5243         Reported by Eric Blake.
5244
5245 2007-05-06  Bruno Haible  <bruno@clisp.org>
5246
5247         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
5248         padding ourselves for the floating-point directives.
5249         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
5250         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
5251         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5252         gl_PRINTF_FLAG_ZERO and test its result. Invoke
5253         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
5254         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5255         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
5256         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5257         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5258         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5259         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5260         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5261         * tests/test-snprintf-posix.h (test_function): Also check the width
5262         and some flags in the %f directive.
5263         * tests/test-sprintf-posix.h (test_function): Likewise.
5264         * tests/test-vasnprintf-posix.c (test_function): Likewise.
5265         * tests/test-vasprintf-posix.c (test_function): Likewise.
5266         * doc/functions/fprintf.texi: Update.
5267         * doc/functions/printf.texi: Update.
5268         * doc/functions/snprintf.texi: Update.
5269         * doc/functions/sprintf.texi: Update.
5270         * doc/functions/vfprintf.texi: Update.
5271         * doc/functions/vprintf.texi: Update.
5272         * doc/functions/vsnprintf.texi: Update.
5273         * doc/functions/vsprintf.texi: Update.
5274
5275 2007-05-06  Bruno Haible  <bruno@clisp.org>
5276
5277         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
5278         pass the ' flag character to sprintf or snprintf.
5279         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
5280         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
5281         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5282         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
5283         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
5284         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5285         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
5286         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5287         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5288         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5289         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5290         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5291         * tests/test-snprintf-posix.h (test_function): Also check the grouping
5292         flag.
5293         * tests/test-sprintf-posix.h (test_function): Likewise.
5294         * tests/test-vasnprintf-posix.c (test_function): Likewise.
5295         * tests/test-vasprintf-posix.c (test_function): Likewise.
5296         * doc/functions/fprintf.texi: Update.
5297         * doc/functions/printf.texi: Update.
5298         * doc/functions/snprintf.texi: Update.
5299         * doc/functions/sprintf.texi: Update.
5300         * doc/functions/vfprintf.texi: Update.
5301         * doc/functions/vprintf.texi: Update.
5302         * doc/functions/vsnprintf.texi: Update.
5303         * doc/functions/vsprintf.texi: Update.
5304
5305 2007-05-01  Bruno Haible  <bruno@clisp.org>
5306
5307         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
5308
5309 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
5310
5311         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
5312         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
5313
5314 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
5315
5316         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
5317         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
5318         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
5319
5320 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
5321
5322         * lib/argp-help.c (struct hol_entry): New member `ord'.
5323         (HOL_ENTRY_PTRCMP): Use ord for comparison
5324         (hol_sort): Initialize ord.
5325
5326 2007-05-01  Bruno Haible  <bruno@clisp.org>
5327
5328         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
5329         Reported by Eric Blake.
5330         * doc/gnulib.texi (Function Substitutes): Update.
5331
5332 2007-05-01  Bruno Haible  <bruno@clisp.org>
5333
5334         * doc/functions.texi: Remove file, now redundant through
5335         doc/functions/*.texi.
5336
5337 2007-05-01  Bruno Haible  <bruno@clisp.org>
5338
5339         * modules/argp (Depends-on): Add sleep.
5340
5341 2007-05-01  Bruno Haible  <bruno@clisp.org>
5342
5343         * modules/sleep-tests: New file.
5344         * tests/test-sleep.c: New file.
5345
5346         * modules/sleep: New file.
5347         * lib/sleep.c: New file.
5348         * m4/sleep.m4: New file.
5349         * lib/unistd_.h (sleep): New declaration.
5350         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
5351         HAVE_SLEEP.
5352         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
5353         * doc/functions/sleep.texi: Document the sleep module.
5354
5355 2007-05-01  Bruno Haible  <bruno@clisp.org>
5356
5357         * lib/sigprocmask.h: Remove file.
5358         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
5359         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
5360         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
5361         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
5362         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
5363         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
5364         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
5365         HAVE_SIGSET_T as a shell variable.
5366         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
5367         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
5368         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
5369         (Depends-on): Add signal. Remove verify.
5370         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
5371         (Include): Mention <signal.h> instead of sigprocmask.h.
5372         * NEWS: Mention the change.
5373         * lib/fatal-signal.c: Don't include sigprocmask.h.
5374
5375 2007-05-01  Bruno Haible  <bruno@clisp.org>
5376
5377         * modules/signal: New file.
5378         * lib/signal_.h: New file.
5379         * m4/signal_h.m4: New file.
5380
5381 2007-05-01  Bruno Haible  <bruno@clisp.org>
5382
5383         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
5384         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
5385         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
5386         HAVE_WCTYPE_CTMP_BUG into wctype.h.
5387
5388 2007-05-01  Bruno Haible  <bruno@clisp.org>
5389
5390         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
5391         configure time.
5392         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
5393         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
5394         * modules/sys_stat (Makefile.am): Substitute their values into
5395         sys/stat.h.
5396
5397 2007-05-01  Bruno Haible  <bruno@clisp.org>
5398
5399         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
5400         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
5401         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
5402
5403 2007-05-01  Bruno Haible  <bruno@clisp.org>
5404
5405         * doc/header/assert.texi: Undo last change: don't mention the gnulib
5406         'assert' module here.
5407
5408 2007-05-01  Bruno Haible  <bruno@clisp.org>
5409
5410         * doc/functions/*.texi: New files.
5411         * doc/functions/google-ranking.txt: New file.
5412         * doc/gnulib.texi (Function Substitutes): New chapter.
5413         (ctime, inet_ntoa): Remove sections.
5414         * doc/ctime.texi: Remove file.
5415         * doc/inet_ntoa.texi: Remove file.
5416         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
5417         dependencies.
5418         (%.info): New rule, specifying a --reference-limit.
5419
5420 2007-05-01  Bruno Haible  <bruno@clisp.org>
5421
5422         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
5423
5424 2007-05-01  Bruno Haible  <bruno@clisp.org>
5425
5426         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
5427         the portability of 'mkdir' to mingw systems.
5428
5429 2007-05-01  Bruno Haible  <bruno@clisp.org>
5430
5431         * doc/headers/google-ranking.txt: New file.
5432
5433 2007-04-30  Eric Blake  <ebb9@byu.net>
5434
5435         Prefer fseeko to fseek.
5436         * modules/getpass (Depends-on): Add fseeko.
5437         * lib/getpass.c (getpass): Use fseeko, not fseek.
5438
5439 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
5440
5441         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
5442         assumes the sorting is stable, while most qsort implementations
5443         are not.  Use argument addresses to ensure they never compare as
5444         equal.
5445
5446         * tests/test-argp-2.sh (usage-indent test): Fix output
5447         (func_compare): Restore diff options
5448         * tests/test-argp.c: Restore #include "progname.h"
5449
5450 2007-04-29  Bruno Haible  <bruno@clisp.org>
5451
5452         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
5453         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5454         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
5455         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5456         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
5457         (configure.ac): Define CHECK_SNPRINTF_POSIX.
5458         (TESTS, check_PROGRAMS): Add test-snprintf.
5459         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
5460         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
5461         (TESTS, check_PROGRAMS): Add test-vsnprintf.
5462         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
5463         assertions that fail on HP-UX, OSF/1, or IRIX.
5464         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
5465
5466 2007-04-29  Bruno Haible  <bruno@clisp.org>
5467
5468         * MODULES.html.sh (posix_functions): Remove 'contents'.
5469
5470 2007-04-29  Karl Berry  <karl@gnu.org>
5471
5472         * config/srclist.txt (gendocs_template_min): new entry.
5473
5474 2007-04-29  Bruno Haible  <bruno@clisp.org>
5475
5476         Work around fpurge bug on BSD systems.
5477         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
5478         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
5479         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
5480         fpurge to rpl_fpurge if the system already has this function.
5481         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
5482         the case where the system already has this function. Correct invariants
5483         on BSD systems.
5484         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
5485         BSD systems.
5486
5487 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
5488
5489         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
5490         proposed by Sven Verdoolaege.
5491
5492         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
5493         options.
5494         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
5495         (usage and help tests): Update
5496
5497 2007-04-29  Bruno Haible  <bruno@clisp.org>
5498
5499         * tests/test-fflush.c (main): Use a file of size 17, not 10.
5500         Print more information in case of failure. Disable a test on BeOS.
5501
5502 2007-04-29  Bruno Haible  <bruno@clisp.org>
5503
5504         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
5505         This helps debugging on systems on which no gdb is available.
5506
5507 2007-04-29  Bruno Haible  <bruno@clisp.org>
5508
5509         * lib/freading.h: Improve comments.
5510         * lib/fwriting.h: Likewise.
5511         * tests/test-freading.c (main): Don't check freading immediately after
5512         repositioning. Needed for glibc.
5513
5514 2007-04-29  Bruno Haible  <bruno@clisp.org>
5515
5516         * lib/freading.c (freading): Trivial simplification.
5517
5518 2007-04-28  Bruno Haible  <bruno@clisp.org>
5519
5520         * tests/test-fwriting.c (main): Also test the interaction between
5521         fflush and fwriting.
5522         * modules/fwriting-tests (Depends-on): Add fflush.
5523
5524         * tests/test-freading.c (main): Also test the interaction between
5525         fflush and freading.
5526         * modules/freading-tests (Depends-on): Add fflush.
5527
5528 2007-04-28  Bruno Haible  <bruno@clisp.org>
5529
5530         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
5531         fseeko and ftello.
5532         Suggested by Eric Blake.
5533
5534 2007-04-28  Jim Meyering  <jim@meyering.net>
5535
5536         Avoid false-negative in gl_STDINT_H's C99 conformance test.
5537         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
5538         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
5539
5540 2007-04-27  Eric Blake  <ebb9@byu.net>
5541
5542         * doc/headers/assert.texi (assert.h): Document assert module use.
5543
5544 2007-04-27  Bruno Haible  <bruno@clisp.org>
5545
5546         * doc/headers/*.texi: New files.
5547         * doc/gnulib.texi (Header File Substitutes): New chapter.
5548         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
5549         dependencies.
5550         (standards.info ,standards.html, standards.dvi): Update dependencies.
5551         (mostlyclean, clean): New targets.
5552
5553 2007-04-27  Bruno Haible  <bruno@clisp.org>
5554
5555         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
5556         * modules/sysexits (Files, Makefile.am): Update.
5557
5558         * lib/sys_socket_.h: Renamed from lib/socket_.h.
5559         * modules/sys_socket (Files, Makefile.am): Update.
5560
5561         * lib/sys_stat_.h: Renamed from lib/stat_.h.
5562         * modules/sys_stat (Files, Makefile.am): Update.
5563
5564 2007-04-27  Eric Blake  <ebb9@byu.net>
5565
5566         * lib/freading.h: Improve comments.
5567         * lib/fwriting.h: Likewise.
5568         * lib/fflush.c: Likewise.
5569
5570         Fix closein for mingw.
5571         * modules/closein-tests: Add tests for closein.
5572         * tests/test-closein.c: New file.
5573         * tests/test-closein.sh: Likewise.
5574         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
5575         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
5576
5577 2007-04-27  Bruno Haible  <bruno@clisp.org>
5578
5579         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
5580         version is < 6.
5581         * lib/math_.h [__DECC]: Likewise.
5582         * lib/stdio_.h [__DECC]: Likewise.
5583         * lib/stdlib_.h [__DECC]: Likewise.
5584         * lib/string_.h [__DECC]: Likewise.
5585         * lib/time_.h [__DECC]: Likewise.
5586         * lib/wchar_.h [__DECC]: Likewise.
5587         * lib/wctype_.h [__DECC]: Likewise.
5588
5589 2007-04-27  Bruno Haible  <bruno@clisp.org>
5590
5591         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
5592
5593 2007-04-27  Bruno Haible  <bruno@clisp.org>
5594
5595         * lib/fflush.c: Add comments.
5596         * modules/fpurge-tests (Depends-on): Add fflush.
5597         * modules/freadable-tests (Depends-on): Likewise.
5598         * modules/fwritable-tests (Depends-on): Likewise.
5599
5600 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
5601
5602         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
5603         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
5604         Report by Bruno Haible <bruno@clisp.org>.
5605
5606 2007-04-26  Eric Blake  <ebb9@byu.net>
5607
5608         Fix fflush on mingw.
5609         * modules/fflush (Depends-on): Add freading.
5610         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
5611         but unread data.
5612
5613 2007-04-26  Eric Blake  <ebb9@byu.net>
5614         and Bruno Haible  <bruno@clisp.org>
5615
5616         Implement freading and fwriting.
5617         * lib/freading.c: New file.
5618         * lib/freading.h: Likewise.
5619         * m4/freading.m4: Likewise.
5620         * modules/freading: Likewise.
5621         * modules/freading-tests: Likewise.
5622         * tests/test-freading.c: Likewise.
5623         * lib/fwriting.c: New file.
5624         * lib/fwriting.h: Likewise.
5625         * m4/fwriting.m4: Likewise.
5626         * modules/fwriting: Likewise.
5627         * modules/fwriting-tests: Likewise.
5628         * tests/test-fwriting.c: Likewise.
5629         * MODULES.html.sh (File stream based Input/Output): Mention them.
5630
5631 2007-04-26  Bruno Haible  <bruno@clisp.org>
5632
5633         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
5634         'long' when we assume it.
5635         Suggested by Eric Blake.
5636
5637 2007-04-26  Bruno Haible  <bruno@clisp.org>
5638
5639         Ensure fseeko, ftello are declared on glibc systems.
5640         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
5641         * modules/fseeko (configure.ac-early): Likewise.
5642         * modules/ftello (configure.ac-early): Likewise.
5643         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
5644         AC_FUNC_FSEEKO for this.
5645         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
5646         (gl_CHECK_FSEEKO): Remove macro.
5647
5648 2007-04-26  Bruno Haible  <bruno@clisp.org>
5649
5650         * tests/test-fflush.c (main): Also check the ftell result after
5651         fflush and fseek/fseeko.
5652         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
5653         file descriptor position cache in the stream.
5654         * lib/fseeko.c (rpl_fseeko): Likewise.
5655
5656 2007-04-26  Bruno Haible  <bruno@clisp.org>
5657
5658         * modules/fflush-tests (Depends-on): Add fseeko.
5659
5660 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
5661             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5662
5663         * lib/argz_.h: ensure error_t definition is obtained in same
5664         mechanism system argz.h would have.
5665         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
5666         argz facilities are known bad.  Err on the side of caution if
5667         cross-compiling.
5668
5669 2007-04-25  Eric Blake  <ebb9@byu.net>
5670
5671         * lib/fpurge.c (includes): Use stdlib.h for free.
5672         * tests/test-fflush.c (main): Also test fflush-fseeko.
5673
5674 2007-04-25  Bruno Haible  <bruno@clisp.org>
5675
5676         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
5677         * lib/fseeko.c: New file.
5678         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
5679         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
5680         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
5681         gl_FUNC_FSEEKO.
5682         (gl_FUNC_FSEEKO): Invoke it.
5683         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
5684         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
5685         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
5686
5687 2007-04-25  Bruno Haible  <bruno@clisp.org>
5688
5689         * modules/fflush (Depends-on): Add ftello.
5690
5691 2007-04-25  Bruno Haible  <bruno@clisp.org>
5692
5693         * modules/ftello-tests: New file.
5694         * tests/test-ftello.c: New file.
5695
5696         * modules/ftello: New file.
5697         * m4/ftello.m4: New file.
5698         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
5699         HAVE_FTELLO.
5700         * lib/stdio_.h (ftello): New declaration.
5701         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
5702         HAVE_FTELLO.
5703
5704 2007-04-25  Bruno Haible  <bruno@clisp.org>
5705
5706         * modules/fseeko-tests: New file.
5707         * tests/test-fseeko.c: New file.
5708
5709         * modules/fseeko: New file.
5710         * m4/fseeko.m4: New file.
5711         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
5712         HAVE_FSEEKO.
5713         * lib/stdio_.h (fseeko): New declaration.
5714         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
5715         HAVE_FSEEKO.
5716
5717 2007-04-25  Bruno Haible  <bruno@clisp.org>
5718
5719         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
5720
5721 2007-04-25  Bruno Haible  <bruno@clisp.org>
5722
5723         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
5724         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
5725         * tests/test-unistd.c: Likewise.
5726         * tests/test-fcntl.c: Likewise.
5727
5728 2007-04-23  Eric Blake  <ebb9@byu.net>
5729
5730         * lib/fflush.c: Fix missing include.
5731         Reported by Bruno Haible.
5732
5733 2007-04-23  Bruno Haible  <bruno@clisp.org>
5734
5735         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
5736         Reported by Eric Blake.
5737
5738 2007-04-23  Bruno Haible  <bruno@clisp.org>
5739
5740         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
5741
5742 2007-04-23  Bruno Haible  <bruno@clisp.org>
5743
5744         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
5745
5746 2007-04-23  Bruno Haible  <bruno@clisp.org>
5747
5748         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
5749         Needed on HP-UX 11.
5750
5751 2007-04-16  Eric Blake  <ebb9@byu.net>
5752
5753         Make fflush rely on fpurge.
5754         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
5755         open coding all variants.
5756         * modules/fflush (Depends-on): Add fpurge and unistd.
5757         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
5758         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
5759
5760         Fix --with-tests compilation on cygwin.
5761         * modules/argmatch-tests (Makefile.am): List gnulib library first
5762         in LDADD.
5763         * modules/argp-tests (Makefile.am): Likewise.
5764         * modules/array-list-tests (Makefile.am): Likewise.
5765         * modules/array-oset-tests (Makefile.am): Likewise.
5766         * modules/avltree-list-tests (Makefile.am): Likewise.
5767         * modules/avltree-oset-tests (Makefile.am): Likewise.
5768         * modules/avltreehash-list-tests (Makefile.am): Likewise.
5769         * modules/carray-list-tests (Makefile.am): Likewise.
5770         * modules/dirname-tests (Makefile.am): Likewise.
5771         * modules/frexp-tests (Makefile.am): Likewise.
5772         * modules/isnanl-tests (Makefile.am): Likewise.
5773         * modules/linked-list-tests (Makefile.am): Likewise.
5774         * modules/linkedhash-list-tests (Makefile.am): Likewise.
5775         * modules/lock-tests (Makefile.am): Likewise.
5776         * modules/rbtree-list-tests (Makefile.am): Likewise.
5777         * modules/rbtree-oset-tests (Makefile.am): Likewise.
5778         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
5779         * modules/tls-tests (Makefile.am): Likewise.
5780         * modules/tsearch-tests (Makefile.am): Likewise.
5781         * modules/xvasprintf-tests (Makefile.am): Likewise.
5782
5783         Fix fpurge for cygwin.
5784         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
5785         value.
5786         * modules/fpurge-tests (Depends-on): Clean up trash.
5787
5788 2007-04-16  Simon Josefsson  <simon@josefsson.org>
5789
5790         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
5791
5792         * m4/autobuild.m4: Re-indent.
5793
5794 2007-04-13  Bruno Haible  <bruno@clisp.org>
5795
5796         * modules/fpurge-tests: New file.
5797         * tests/test-fpurge.c: New file.
5798
5799         * modules/fpurge: New file.
5800         * lib/fpurge.h: New file.
5801         * lib/fpurge.c: New file.
5802         * m4/fpurge.m4: New file.
5803
5804 2007-04-13  Bruno Haible  <bruno@clisp.org>
5805
5806         * modules/fbufmode-tests: New file.
5807         * tests/test-fbufmode.c: New file.
5808
5809         * modules/fbufmode: New file.
5810         * lib/fbufmode.h: New file.
5811         * lib/fbufmode.c: New file.
5812         * m4/fbufmode.m4: New file.
5813
5814 2007-04-13  Bruno Haible  <bruno@clisp.org>
5815
5816         * modules/fwritable-tests: New file.
5817         * tests/test-fwritable.c: New file.
5818
5819         * modules/fwritable: New file.
5820         * lib/fwritable.h: New file.
5821         * lib/fwritable.c: New file.
5822         * m4/fwritable.m4: New file.
5823
5824 2007-04-13  Bruno Haible  <bruno@clisp.org>
5825
5826         * modules/freadable-tests: New file.
5827         * tests/test-freadable.c: New file.
5828
5829         * modules/freadable: New file.
5830         * lib/freadable.h: New file.
5831         * lib/freadable.c: New file.
5832         * m4/freadable.m4: New file.
5833
5834 2007-04-13  Bruno Haible  <bruno@clisp.org>
5835
5836         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
5837         MOSTLYCLEANFILES.
5838
5839 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
5840
5841         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
5842         gzip bootstrap.conf to avoid dragging in i18n machinery.
5843         (gnulib_tool_option): Use it.
5844
5845 2007-04-13  Bruno Haible  <bruno@clisp.org>
5846
5847         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
5848         %F directives.
5849         * tests/test-vasprintf-posix.c (test_function): Likewise.
5850         * tests/test-snprintf-posix.h (test_function): Likewise.
5851         * tests/test-sprintf-posix.h (test_function): Likewise.
5852         * tests/test-fprintf-posix.h (test_function): Likewise.
5853         * tests/test-printf-posix.h (test_function): Likewise.
5854         * tests/test-fprintf-posix.out: Likewise.
5855
5856 2007-04-13  Bruno Haible  <bruno@clisp.org>
5857
5858         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
5859         * modules/tls-tests (configure.ac): Likewise.
5860         Reported by Arto C. Nirkko <anirkko@insel.ch>.
5861
5862 2007-04-13  Bruno Haible  <bruno@clisp.org>
5863
5864         * lib/tls.c (glthread_tls_get): Fix return type.
5865         Patch by Arto C. Nirkko <anirkko@insel.ch>.
5866
5867 2007-04-12  Eric Blake  <ebb9@byu.net>
5868
5869         * modules/gettime (Depends-on): Remove gettime.
5870         Reported by Dmitry V. Levin.
5871
5872 2007-04-12  Bruno Haible  <bruno@clisp.org>
5873
5874         * modules/fflush (Include): Mention <stdio.h>.
5875         * modules/strtoimax (Include): Mention <inttypes.h>.
5876         * modules/strtoumax (Include): Likewise.
5877
5878 2007-04-12  Eric Blake  <ebb9@byu.net>
5879
5880         * .cvsignore: New file.
5881         * .gitignore: Likewise.
5882
5883 2007-04-12  Bruno Haible  <bruno@clisp.org>
5884
5885         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
5886         not before, since $(LDADD) often contains libgnu.a.
5887         * modules/striconv-tests (test_striconv_LDADD): Likewise.
5888         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
5889         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
5890         Needed on Cygwin.
5891
5892 2007-04-12  Eric Blake  <ebb9@byu.net>
5893
5894         Work around glibc's failure to flush stdin on fclose.
5895         * lib/closein.c (close_stdin): Flush stdin before closing.
5896
5897         Work around glibc's failure to reset seekable stdin on exit.
5898         * modules/closein: New module.
5899         * lib/closein.c: New file.
5900         * lib/closein.h: Likewise.
5901         * m4/closein.m4: Likewise.
5902         * MODULES.html.sh (File stream based Input/Output): Document it.
5903
5904 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5905
5906         * gnulib-tool: Rename generated 'autobuild' script to
5907         'do-autobuild' in --create-megatestdir output.
5908
5909         * doc/gnulib.texi (Build robot for gnulib): Fix.
5910
5911 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5912
5913         * modules/sysexits (Depends-on): Add absolute-header.
5914
5915 2007-04-12  Eric Blake  <ebb9@byu.net>
5916
5917         No need to preserve errno on success.
5918         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
5919         Reported by Bruno Haible.
5920
5921 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5922
5923         * MODULES.html.sh (Support for maintaining and releasing
5924         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
5925
5926 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5927
5928         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
5929
5930 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5931
5932         * modules/autobuild: New module.
5933
5934         * m4/autobuild.m4: New file.
5935
5936 2007-04-11  Bruno Haible  <bruno@clisp.org>
5937
5938         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
5939         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
5940         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
5941         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
5942         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5943         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5944         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5945         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5946         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5947         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5948         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
5949         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5950         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5951         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
5952         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5953         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5954         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
5955         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5956         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5957         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
5958         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5959         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5960         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
5961         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5962         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5963         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
5964         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5965         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5966         Reported by Eric Blake.
5967
5968 2007-04-11  Bruno Haible  <bruno@clisp.org>
5969
5970         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
5971
5972 2007-04-10  Bruno Haible  <bruno@clisp.org>
5973
5974         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
5975         for NaN and Infinity. Needed on FreeBSD 6.1.
5976         * tests/test-vasnprintf-posix.c (test_function): Undo last change
5977         regarding results for "%010a" of Infinity and NaN.
5978         * tests/test-vasprintf-posix.c (test_function): Likewise.
5979         * tests/test-snprintf-posix.h (test_function): Likewise.
5980         * tests/test-sprintf-posix.h (test_function): Likewise.
5981         * tests/test-fprintf-posix.h (test_function): Likewise.
5982         * tests/test-printf-posix.h (test_function): Likewise.
5983         * tests/test-fprintf-posix.out: Likewise.
5984
5985 2007-04-10  Bruno Haible  <bruno@clisp.org>
5986
5987         * modules/locale-tests: New file.
5988         * tests/test-locale.c: New file.
5989
5990         * modules/locale: New file.
5991         * lib/locale_.h: New file.
5992         * m4/locale_h.m4: New file.
5993
5994 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
5995             Bruno Haible  <bruno@clisp.org>
5996
5997         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
5998         be determined, test for availability of the copysignf, copysign,
5999         copysignl functions.
6000         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
6001         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
6002         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
6003
6004 2007-04-09  Eric Blake  <ebb9@byu.net>
6005
6006         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
6007         * modules/stdio (Makefile.am): Support fflush.
6008         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
6009         * modules/fflush: New file.
6010         * lib/fflush.c: Likewise.
6011         * m4/fflush.m4: Likewise.
6012         * modules/fflush-tests: New test.
6013         * tests/test-fflush.c: Likewise.
6014         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
6015
6016 2007-04-06  Bruno Haible  <bruno@clisp.org>
6017
6018         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
6019         (VASNPRINTF): Use signbit for faster determination whether to print a
6020         minus sign.
6021         * modules/vasnprintf (Files): Remove lib/float+.h.
6022         * modules/fprintf-posix (Depends-on): Add signbit.
6023         * modules/snprintf-posix (Depends-on): Likewise.
6024         * modules/sprintf-posix (Depends-on): Likewise.
6025         * modules/vasnprintf-posix (Depends-on): Likewise.
6026         * modules/vasprintf-posix (Depends-on): Likewise.
6027         * modules/vfprintf-posix (Depends-on): Likewise.
6028         * modules/vsnprintf-posix (Depends-on): Likewise.
6029         * modules/vsprintf-posix (Depends-on): Likewise.
6030
6031 2007-04-06  Bruno Haible  <bruno@clisp.org>
6032
6033         * tests/test-frexp.c (main): Test also the sign bit of zero results.
6034         * tests/test-frexpl.c (main): Likewise.
6035         * tests/test-ldexpl.c (main): Likewise.
6036         * modules/frexp-tests (Depends-on): Add signbit.
6037         * modules/frexpl-tests (Depdends-on): Likewise.
6038         * modules/ldexpl-tests (Depdends-on): Likewise.
6039
6040 2007-04-06  Bruno Haible  <bruno@clisp.org>
6041
6042         * modules/signbit-tests: New file.
6043         * tests/test-signbit.c: New file.
6044
6045         * modules/signbit: New file.
6046         * lib/signbitf.c: New file.
6047         * lib/signbitd.c: New file.
6048         * lib/signbitl.c: New file.
6049         * m4/signbit.m4: New file.
6050         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
6051         (signbit): New macro.
6052         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
6053         REPLACE_SIGNBIT.
6054         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
6055         REPLACE_FREXPL into math.h.
6056
6057 2007-04-06  Bruno Haible  <bruno@clisp.org>
6058
6059         * modules/isnanf-nolibm-tests: New file.
6060         * tests/test-isnanf.c: New file.
6061
6062         * modules/isnanf-nolibm: New file.
6063         * lib/isnanf.h: New file.
6064         * lib/isnanf.c: New file.
6065         * lib/isnan.c: Consider the USE_FLOAT macro.
6066         * m4/isnanf.m4: New file.
6067
6068 2007-04-06  Bruno Haible  <bruno@clisp.org>
6069
6070         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
6071         (Link): New section.
6072
6073         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
6074
6075 2007-04-06  Bruno Haible  <bruno@clisp.org>
6076
6077         Assume the 'long double' type.
6078         * m4/longdouble.m4: Remove file.
6079         * config/srclist.txt: Don't mention longdouble.m4.
6080         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
6081         * lib/float+.h: Likewise.
6082         * lib/frexp.c: Likewise.
6083         * lib/printf-args.h: Likewise.
6084         * lib/printf-args.c: Likewise.
6085         * lib/printf-frexp.c: Likewise.
6086         * lib/printf-parse.c: Likewise.
6087         * lib/vasnprintf.c: Likewise.
6088         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
6089         * m4/intl.m4: Likewise.
6090         * m4/isnanl.m4: Likewise.
6091         * m4/printf.m4: Likewise.
6092         * m4/printf-frexpl.m4: Likewise.
6093         * m4/vasnprintf.m4: Likewise.
6094         * modules/allocsa (Files): Remove m4/longdouble.m4.
6095         * modules/gettext (Files): Likewise.
6096         * modules/relocatable-prog-wrapper (Files): Likewise.
6097         * modules/vasnprintf (Files): Likewise.
6098         * modules/isnanl (Files): Likewise.
6099         (Include): Simplify.
6100         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
6101         (Include): Simplify.
6102         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
6103         (Include): Simplify.
6104         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
6105         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6106         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
6107         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6108         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
6109         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6110         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
6111         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6112         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
6113         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6114         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
6115         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6116         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
6117         * tests/test-isnanl.c: Likewise.
6118         * tests/test-snprintf-posix.h: Likewise.
6119         * tests/test-sprintf-posix.h: Likewise.
6120         * tests/test-vasnprintf-posix.c: Likewise.
6121         * tests/test-vasnprintf-posix2.c: Likewise.
6122         * tests/test-vasprintf-posix.c: Likewise.
6123
6124 2007-04-06  Bruno Haible  <bruno@clisp.org>
6125
6126         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
6127         * lib/math_.h [__DECC]: Include the overridden include file through
6128         #include_next, outside the double-inclusion guard.
6129         * lib/stdio_.h [__DECC]: Likewise.
6130         * lib/stdlib_.h [__DECC]: Likewise.
6131         * lib/string_.h [__DECC]: Likewise.
6132         * lib/time_.h [__DECC]: Likewise.
6133         * lib/wchar_.h [__DECC]: Likewise.
6134         * lib/wctype_.h [__DECC]: Likewise.
6135         * lib/inttypes_.h [__DECC]: Likewise.
6136         Reported by Albert Chin <china@thewrittenword.com> in
6137         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
6138
6139 2007-04-04  Eric Blake  <ebb9@byu.net>
6140
6141         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
6142         1.5.x.
6143
6144 2007-04-04  Bruno Haible  <bruno@clisp.org>
6145
6146         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
6147         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
6148
6149 2007-04-04  Bruno Haible  <bruno@clisp.org>
6150
6151         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
6152         results for "%010a" of Infinity and NaN.
6153         * tests/test-vasprintf-posix.c (test_function): Likewise.
6154         * tests/test-snprintf-posix.h (test_function): Likewise.
6155         * tests/test-sprintf-posix.h (test_function): Likewise.
6156         * tests/test-fprintf-posix.h (test_function): Remove these tests.
6157         * tests/test-printf-posix.h (test_function): Likewise.
6158         * tests/test-fprintf-posix.out: Update.
6159         Needed for FreeBSD 6.1.
6160
6161 2007-04-04  Bruno Haible  <bruno@clisp.org>
6162
6163         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
6164         directly used by the gnulib modules nor by gnulib-tool.
6165
6166 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
6167
6168         * DEPENDENCIES: Give overall description of version dependency
6169         desirability.  Use more-typical names for apps.
6170         Add shell, coreutils, diffutils, grep, tar, gzip.
6171
6172 2007-04-04  Simon Josefsson  <simon@josefsson.org>
6173
6174         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
6175
6176 2007-04-04  Karl Berry  <karl@gnu.org>
6177
6178         * MODULES.html.sh (func_module): missing '.
6179
6180 2007-04-03  Bruno Haible  <bruno@clisp.org>
6181
6182         * modules/argmatch-tests (Makefile.am): New variable
6183         test_argmatch_LDADD.
6184         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
6185         * modules/array-list-tests (Makefile.am): New variable
6186         test_array_list_LDADD.
6187         * modules/array-oset-tests (Makefile.am): New variable
6188         test_array_oset_LDADD.
6189         * modules/avltree-list-tests (Makefile.am): New variable
6190         test_avltree_list_LDADD.
6191         * modules/avltree-oset-tests (Makefile.am): New variable
6192         test_avltree_oset_LDADD.
6193         * modules/avltreehash-list-tests (Makefile.am): New variable
6194         test_avltreehash_list_LDADD.
6195         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
6196         test_canonicalize_lgpl_LDADD.
6197         * modules/carray-list-tests (Makefile.am): New variable
6198         test_carray_list_LDADD.
6199         * modules/dirname-tests (Makefile.am): New variable
6200         test_dirname_LDADD.
6201         * modules/linked-list-tests (Makefile.am): New variable
6202         test_linked_list_LDADD.
6203         * modules/linkedhash-list-tests (Makefile.am): New variable
6204         test_linkedhash_list_LDADD.
6205         * modules/rbtree-list-tests (Makefile.am): New variable
6206         test_rbtree_list_LDADD.
6207         * modules/rbtree-oset-tests (Makefile.am): New variable
6208         test_rbtree_oset_LDADD.
6209         * modules/rbtreehash-list-tests (Makefile.am): New variable
6210         test_rbtreehash_list_LDADD.
6211         * modules/xvasprintf-tests (Makefile.am): New variable
6212         test_xvasprintf_LDADD.
6213         Reported by Eric Blake.
6214
6215 2007-04-03  Eric Blake  <ebb9@byu.net>
6216
6217         * DEPENDENCIES: Weaken m4 requirements.
6218
6219 2007-04-03  Bruno Haible  <bruno@clisp.org>
6220
6221         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
6222         * modules/isnanl-tests (configure.ac): Likewise.
6223
6224 2007-04-03  Ben Pfaff  <blp@gnu.org>
6225
6226         * modules/iconv_open: Add $(srcdir)/ to source directory
6227         references in Makefile fragments that call gperf, to fix VPATH
6228         builds.
6229
6230 2007-04-03  Bruno Haible  <bruno@clisp.org>
6231
6232         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
6233         * lib/ldexpl.c: Undo last change.
6234
6235 2007-04-03  Bruno Haible  <bruno@clisp.org>
6236
6237         * modules/printf-frexpl (Depends-on): Undo last change.
6238         (Files): Add m4/ldexpl.m4.
6239
6240 2007-04-03  Bruno Haible  <bruno@clisp.org>
6241
6242         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
6243         * modules/isnanl (Link): New section.
6244
6245         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
6246         * modules/frexp (Link): New section.
6247
6248         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
6249         * modules/frexpl (Link): New section.
6250
6251         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
6252         * modules/ldexpl (Link): New section.
6253
6254 2007-04-03  Bruno Haible  <bruno@clisp.org>
6255
6256         * modules/TEMPLATE-EXTENDED: New file.
6257         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
6258
6259 2007-04-03  Bruno Haible  <bruno@clisp.org>
6260
6261         * DEPENDENCIES: New file.
6262         Suggested by Simon Josefsson.
6263
6264 2007-04-03  Bruno Haible  <bruno@clisp.org>
6265
6266         * doc/gnulib.texi: Escape @.
6267
6268 2007-04-03  James Youngman  <jay@gnu.org>
6269         and Paul Eggert  <eggert@cs.ucla.edu>
6270
6271         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
6272         birthtime on all systems that have birthtime, not just those which
6273         use st_birthtimensec rather than st_birthtim.  Putting zero in
6274         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
6275         that the birth time is not available for files on an NFS mount.
6276
6277 2007-04-03  Simon Josefsson  <simon@josefsson.org>
6278
6279         * modules/memxor: Move back from crypto/, suggested by Bruno.
6280         * modules/crypto/hmac-sha1: Fix memxor dependency.
6281
6282         * modules/crypto/gc: Moved from ../.
6283
6284 2007-04-02  Eric Blake  <ebb9@byu.net>
6285
6286         * lib/ldexpl.c (includes): Avoid libm.
6287
6288         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
6289
6290 2007-04-02  Bruno Haible  <bruno@clisp.org>
6291
6292         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
6293         on IRIX.
6294
6295 2007-04-02  Bruno Haible  <bruno@clisp.org>
6296
6297         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
6298         x86 or x86_64 platforms running MacOS X.
6299         Reported by Ryan Schmidt <@ryandesign.com>.
6300
6301 2007-04-02  Bruno Haible  <bruno@clisp.org>
6302
6303         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
6304         i386.
6305
6306 2007-04-01  Simon Josefsson  <simon@josefsson.org>
6307
6308         * modules/crypto/arcfour: Moved from ../.
6309         * modules/crypto/arcfour-tests: Moved from ../.
6310         * modules/crypto/arctwo: Moved from ../.
6311         * modules/crypto/arctwo-tests: Moved from ../.
6312         * modules/crypto/des: Moved from ../.
6313         * modules/crypto/des-tests: Moved from ../.
6314         * modules/crypto/gc-arcfour: Moved from ../.
6315         * modules/crypto/gc-arcfour-tests: Moved from ../.
6316         * modules/crypto/gc-arctwo: Moved from ../.
6317         * modules/crypto/gc-arctwo-tests: Moved from ../.
6318         * modules/crypto/gc-des: Moved from ../.
6319         * modules/crypto/gc-des-tests: Moved from ../.
6320         * modules/crypto/gc-hmac-md5: Moved from ../.
6321         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
6322         * modules/crypto/gc-hmac-sha1: Moved from ../.
6323         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
6324         * modules/crypto/gc-md2: Moved from ../.
6325         * modules/crypto/gc-md2-tests: Moved from ../.
6326         * modules/crypto/gc-md4: Moved from ../.
6327         * modules/crypto/gc-md4-tests: Moved from ../.
6328         * modules/crypto/gc-md5: Moved from ../.
6329         * modules/crypto/gc-md5-tests: Moved from ../.
6330         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
6331         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
6332         * modules/crypto/gc-random: Moved from ../.
6333         * modules/crypto/gc-rijndael: Moved from ../.
6334         * modules/crypto/gc-rijndael-tests: Moved from ../.
6335         * modules/crypto/gc-sha1: Moved from ../.
6336         * modules/crypto/gc-sha1-tests: Moved from ../.
6337         * modules/crypto/gc-tests: Moved from ../.
6338         * modules/crypto/hmac-md5: Moved from ../.
6339         * modules/crypto/hmac-md5-tests: Moved from ../.
6340         * modules/crypto/hmac-sha1: Moved from ../.
6341         * modules/crypto/hmac-sha1-tests: Moved from ../.
6342         * modules/crypto/md2: Moved from ../.
6343         * modules/crypto/md2-tests: Moved from ../.
6344         * modules/crypto/md4: Moved from ../.
6345         * modules/crypto/md4-tests: Moved from ../.
6346         * modules/crypto/md5: Moved from ../.
6347         * modules/crypto/md5-tests: Moved from ../.
6348         * modules/crypto/memxor: Moved from ../.
6349         * modules/crypto/rijndael: Moved from ../.
6350         * modules/crypto/rijndael-tests: Moved from ../.
6351         * modules/crypto/sha1: Moved from ../.
6352
6353 2007-03-30  James Youngman  <jay@gnu.org>
6354
6355         * tests/test-stat-time.c (prepare_test): use chmod() rather than
6356         rename() to change the ctime of a file (because ctime is unaffected
6357         by rename on jfs2 on AIX 5.1).
6358         (main): Start by doing cleanup, in case a previous run failed leaving
6359         test files behind.
6360
6361 2007-03-31  Bruno Haible  <bruno@clisp.org>
6362
6363         Support old proprietary implementations of iconv.
6364         * modules/iconv_open: New file.
6365         * lib/iconv_.h: New file.
6366         * m4/iconv_h.m4: New file.
6367         * lib/iconv_open.c: New file.
6368         * lib/iconv_open-aix.gperf: New file.
6369         * lib/iconv_open-hpux.gperf: New file.
6370         * lib/iconv_open-irix.gperf: New file.
6371         * lib/iconv_open-osf.gperf: New file.
6372         * m4/iconv_open.m4: New file.
6373         * modules/linebreak (Depends-on): Add iconv_open.
6374         * modules/striconv (Depends-on): Likewise.
6375         * modules/striconveh (Depends-on): Likewise.
6376         * modules/unicodeio (Depends-on): Likewise.
6377         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
6378         (iconv_t)(-1).
6379         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
6380         conversion if cd is (iconv_t)(-1).
6381         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
6382         is not possible.
6383
6384 2007-03-31  Bruno Haible  <bruno@clisp.org>
6385
6386         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
6387         work on Solaris either. Protect also second use of "autodetect_jp".
6388
6389 2007-03-31  Bruno Haible  <bruno@clisp.org>
6390
6391         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
6392         the function is not present.
6393
6394 2007-03-31  Bruno Haible  <bruno@clisp.org>
6395
6396         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
6397         the function is not present.
6398
6399 2007-03-31  Bruno Haible  <bruno@clisp.org>
6400
6401         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
6402         a bug in HP-UX iconv_open().
6403
6404 2007-03-31  Bruno Haible  <bruno@clisp.org>
6405
6406         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
6407         (Mathematics <math.h>): New section, add fpieee.
6408         (Input/output <stdio.h>): Add fseterr.
6409         (Mathematics <math.h>): New section, add printf-frexp.
6410         (Container data structures): Add sublist.
6411         (Core language properties): Add fpucw, inline.
6412         (Functions for greatest-width integer types <inttypes.h>): Add
6413         imaxabs, imaxdiv, inttypes.
6414         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
6415         isnanl-nolibm, ldexp.
6416         (Mathematics <math.h>): New section, add printf-frexpl.
6417         (Support for systems lacking POSIX:2001): Add fprintf-posix,
6418         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
6419         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
6420         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
6421         (Unicode string functions): Add unistr/u*-mbtoucr.
6422         (Java): Add javacomp-script, javaexec-script.
6423         (C#): Add csharpcomp-script, csharpexec-script.
6424         (Support for building libraries and executables): Add havelib,
6425         relocatable-*.
6426         (Support for maintaining and releasing projects): Renamed from
6427         'Support for maintaining and release projects'. Add announce-gen.
6428
6429 2007-03-31  Bruno Haible  <bruno@clisp.org>
6430
6431         * README: Talk primarily about git.
6432         (git and CVS): Renamed from CVS.
6433         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
6434         gnulib is available through git.
6435         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
6436
6437 2007-03-30  Bruno Haible  <bruno@clisp.org>
6438
6439         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
6440         * lib/poll_.h: Likewise.
6441         * lib/stat_.h: Likewise.
6442         * lib/sys_time_.h: Likewise.
6443         * lib/sysexit_.h: Likewise.
6444         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
6445         * lib/stdbool_.h: Likewise.
6446         * lib/byteswap_.h: Add double-inclusion guard.
6447
6448 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
6449
6450         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
6451
6452 2007-03-30  Karl Berry  <karl@gnu.org>
6453
6454         * config/srclist-update: double space after USA in the license
6455         substitution, since that's how it's usually (?) written.
6456
6457 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
6458
6459         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
6460         reported by Bruno Haible.
6461
6462 2007-03-29  Bruno Haible  <bruno@clisp.org>
6463
6464         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
6465         a bug in AIX iconv().
6466
6467 2007-03-29  Bruno Haible  <bruno@clisp.org>
6468
6469         * modules/ldexpl-tests: New file.
6470         * tests/test-ldexpl.c: New file.
6471
6472 2007-03-29  Bruno Haible  <bruno@clisp.org>
6473
6474         * lib/ldexpl.c: Include fpucw.h.
6475         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
6476         multiplication.
6477         * modules/ldexpl (Depends-on): Add fpucw.
6478
6479 2007-03-29  Bruno Haible  <bruno@clisp.org>
6480
6481         * modules/ldexpl: New file.
6482         * m4/ldexpl.m4: New file.
6483         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
6484         set.
6485         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
6486         REPLACE_LDEXPL.
6487         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
6488         REPLACE_LDEXPL.
6489         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
6490         gl_FUNC_LDEXPL_WORKS.
6491         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
6492         * modules/mathl (Files): Remove lib/ldexpl.c.
6493         (Depends-on): Add ldexpl.
6494
6495 2007-03-29  Bruno Haible  <bruno@clisp.org>
6496
6497         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
6498
6499 2007-03-29  Bruno Haible  <bruno@clisp.org>
6500
6501         * tests/test-striconveh.c (main): Don't assume that a direct conversion
6502         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
6503         and possibly also HP-UX.
6504         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
6505         work on AIX, IRIX, HP-UX, OSF/1.
6506         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
6507         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
6508         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
6509         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
6510         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
6511         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
6512
6513 2007-03-29  Bruno Haible  <bruno@clisp.org>
6514
6515         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
6516
6517 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
6518
6519         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
6520         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
6521
6522 2007-03-29  Eric Blake  <ebb9@byu.net>
6523
6524         * lib/acl-internal.h: Remove redundant include.
6525         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
6526         Cygwin when a file is locked.
6527
6528 2007-03-29  Bruno Haible  <bruno@clisp.org>
6529
6530         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
6531         file.
6532         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
6533
6534 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
6535
6536         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
6537         try to remove a parent directory if the child couldn't be removed
6538         (except for the first rmdir, which could fail because the child
6539         doesn't exist).  Problem reported by Jeff Blaine in
6540         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
6541
6542 2007-03-28  Bruno Haible  <bruno@clisp.org>
6543
6544         * lib/striconveh.c (utf8conv_carefully): New function.
6545         (mem_cd_iconveh_internal): Invoke it.
6546
6547 2007-03-28  Bruno Haible  <bruno@clisp.org>
6548
6549         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
6550         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
6551         input.
6552         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
6553         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
6554         unistr/u8-uctomb.
6555
6556 2007-03-28  Bruno Haible  <bruno@clisp.org>
6557
6558         * modules/unistr/u8-mbtoucr: New file.
6559         * lib/unistr/u8-mbtoucr.c: New file.
6560         * modules/unistr/u16-mbtoucr: New file.
6561         * lib/unistr/u16-mbtoucr.c: New file.
6562         * modules/unistr/u16-mbtoucr: New file.
6563         * lib/unistr/u16-mbtoucr.c: New file.
6564         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
6565
6566 2007-03-27  Simon Josefsson  <simon@josefsson.org>
6567             Bruno Haible  <bruno@clisp.org>
6568
6569         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
6570         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
6571         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
6572
6573         * m4/stdio_h.m4: Add stubs for vasprintf too.
6574
6575         * modules/stdio: Support vasprintf in sed command.
6576
6577         * modules/vasprintf: Depend on stdio for prototypes.  Remove
6578         vasprintf.h.  Add stdio module indicator.
6579
6580         * lib/stdio_.h: Declare asprintf and vasprintf, based on
6581         vasprintf.h.
6582
6583         * lib/vasprintf.h: File removed.
6584
6585         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
6586         * lib/vasprintf.c: Ditto.
6587         * lib/xvasprintf.c: Ditto.
6588         * tests/test-vasprintf-posix.c: Ditto.
6589         * tests/test-vasprintf.c: Ditto.
6590
6591 2007-03-27  Bruno Haible  <bruno@clisp.org>
6592
6593         Make vasnprintf multithread-safe.
6594         * lib/vasnprintf.c (decimal_point_char): New function.
6595         (VASNPRINTF): Use it.
6596         Suggested by Simon Josefsson.
6597
6598 2007-03-27  Eric Blake  <ebb9@byu.net>
6599
6600         Support sub-second birthtime on cygwin.
6601         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
6602         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
6603         (get_stat_birthtime): Also work with st_birthtim.
6604
6605 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
6606
6607         * lib/stat-time.h (USE_BIRTHTIME): Remove.
6608         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
6609         (get_stat_birthtime_ns): Do not try to use "spare" fields.
6610         (get_stat_birthtime_ns): Simplify compile-time tests.
6611         (get_stat_birthtime): Change the API to look like
6612         get_stat_mtime etc., except return a negative tv_nsec on error.
6613         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
6614         Don't check for "spare" fields.
6615         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
6616         or for struct stat.st_birthtime, as these tests aren't used.
6617         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
6618
6619 2007-03-27  Bruno Haible  <bruno@clisp.org>
6620
6621         * lib/stat-time.h: Include <sys/stat.h>.
6622
6623 2007-03-27  James Youngman  <jay@gnu.org>
6624
6625         * lib/stat-time.h (get_stat_birthtime): New function for
6626           retrieving st_birthtime as provided by UFS2 (hence *BSD).
6627         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
6628           and its variants.
6629         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
6630         * modules/stat-time-test: New file.
6631         * tests/test-stat-time.c: New test, devised by Bruno Haible.
6632
6633 2007-03-26  Bruno Haible  <bruno@clisp.org>
6634
6635         Better support of signalling NaNs.
6636         * lib/atanl.c: Include isnanl.h.
6637         (atanl): Perform test for NaN at the beginning of the function and
6638         through a call to isnanl.
6639         * lib/cosl.c: Include isnanl.h.
6640         (cosl): Perform test for NaN at the beginning of the function and
6641         through a call to isnanl.
6642         * lib/ldexpl.c: Include isnanl.h.
6643         (ldexpl): Perform test for NaN through a call to isnanl.
6644         * lib/logl.c: Include isnanl.h.
6645         (logl): Perform test for NaN at the beginning of the function and
6646         through a call to isnanl.
6647         * lib/sinl.c: Include isnanl.h.
6648         (sinl): Perform test for NaN at the beginning of the function and
6649         through a call to isnanl.
6650         * lib/sqrtl.c: Include isnanl.h.
6651         (sqrtl): Perform test for NaN at the beginning of the function and
6652         through a call to isnanl.
6653         * lib/tanl.c: Include isnanl.h.
6654         (tanl): Perform test for NaN at the beginning of the function and
6655         through a call to isnanl.
6656         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
6657         * modules/mathl (Depends-on): Add isnanl.
6658
6659 2007-03-26  Eric Blake  <ebb9@byu.net>
6660
6661         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
6662         regression in logic sense of previous patch.
6663
6664 2007-03-26  Bruno Haible  <bruno@clisp.org>
6665
6666         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
6667         unportable shell command "if ! ...".
6668         Reported by Ralf Wildenhues.
6669
6670 2007-03-25  Bruno Haible  <bruno@clisp.org>
6671
6672         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
6673         <sysexits.h> file, and only add EX_CONFIG.
6674         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
6675         absolute file name and whether it is sufficient. Substitute also
6676         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
6677         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
6678         ABSOLUTE_SYSEXITS_H into sysexits.h.
6679
6680 2007-03-25  Bruno Haible  <bruno@clisp.org>
6681
6682         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
6683         hints is NULL.
6684
6685 2007-03-25  Bruno Haible  <bruno@clisp.org>
6686
6687         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
6688         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
6689
6690 2007-03-25  Bruno Haible  <bruno@clisp.org>
6691
6692         * lib/vasnprintf.c: Include langinfo.h.
6693         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
6694         multithread-safe.
6695         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
6696         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
6697         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6698         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6699         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6700         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6701         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6702         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
6703         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6704         Reported by Simon Josefsson.
6705
6706 2007-03-25  Bruno Haible  <bruno@clisp.org>
6707
6708         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
6709         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
6710         * modules/vasnprintf (Depends-on): Add stdint.
6711
6712 2007-03-25  Bruno Haible  <bruno@clisp.org>
6713
6714         * modules/fpieee: New file.
6715         * m4/fpieee.m4: New file.
6716         * modules/isnan-nolibm (Depends-on): Add fpieee.
6717         * modules/isnanl-nolibm (Depends-on): Add fpieee.
6718         * modules/isnanl (Depends-on): Add fpieee.
6719
6720 2007-03-25  Bruno Haible  <bruno@clisp.org>
6721
6722         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
6723
6724 2007-03-25  Bruno Haible  <bruno@clisp.org>
6725
6726         Avoid test failures on IRIX 6.5.
6727         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
6728         (main): Use it.
6729         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
6730         macros.
6731         (main): Use them.
6732
6733 2007-03-25  Bruno Haible  <bruno@clisp.org>
6734
6735         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
6736         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
6737         exists but doesn't work.
6738         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
6739         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
6740         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
6741         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
6742
6743 2007-03-25  Bruno Haible  <bruno@clisp.org>
6744
6745         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
6746         returns inf. Needed on IRIX 6.5.
6747
6748 2007-03-25  Bruno Haible  <bruno@clisp.org>
6749
6750         * tests/test-frexpl.c: Include isnanl-nolibm.h.
6751         (main): Use isnanl instead of x != x idiom.
6752         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
6753
6754         * tests/test-frexp.c: Include isnan.h.
6755         (main): Use isnan instead of x != x idiom.
6756         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
6757
6758 2007-03-25  Bruno Haible  <bruno@clisp.org>
6759
6760         * tests/test-frexp.c (NaN): New function/macro.
6761         (main): Use it instead of 0.0 / 0.0.
6762         * tests/test-isnan.c (NaN): New function/macro.
6763         (main): Use it instead of 0.0 / 0.0.
6764         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
6765         (test_function): Use it instead of 0.0 / 0.0.
6766         * tests/test-vasprintf-posix.c (NaN): New function/macro.
6767         (test_function): Use it instead of 0.0 / 0.0.
6768         * tests/test-snprintf-posix.h (NaN): New function/macro.
6769         (test_function): Use it instead of 0.0 / 0.0.
6770         * tests/test-sprintf-posix.h (NaN): New function/macro.
6771         (test_function): Use it instead of 0.0 / 0.0.
6772         * tests/test-fprintf-posix.h (NaN): New function/macro.
6773         (test_function): Use it instead of 0.0 / 0.0.
6774         * tests/test-printf-posix.h (NaN): New function/macro.
6775         (test_function): Use it instead of 0.0 / 0.0.
6776
6777         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
6778
6779 2007-03-25  Bruno Haible  <bruno@clisp.org>
6780
6781         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
6782
6783 2007-03-25  Bruno Haible  <bruno@clisp.org>
6784
6785         * lib/regexec.c (merge_state_with_log): Make static.
6786
6787 2007-03-25  Bruno Haible  <bruno@clisp.org>
6788
6789         * lib/trigl.c (kernel_rem_pio2): Make static.
6790
6791 2007-03-25  Bruno Haible  <bruno@clisp.org>
6792
6793         * lib/sincosl.c (sincosl_table): Make static.
6794
6795 2007-03-25  Bruno Haible  <bruno@clisp.org>
6796
6797         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
6798         if the compiler does not support C99.
6799
6800 2007-03-25  Bruno Haible  <bruno@clisp.org>
6801
6802         * modules/time (Makefile.am): Ensure all rule action lines start with a
6803         tab.
6804
6805 2007-03-24  Bruno Haible  <bruno@clisp.org>
6806
6807         * modules/tsearch-tests: New file.
6808         * tests/test-tsearch.sh: New file.
6809         * tests/test-tsearch.c: New file, mostly copied from glibc.
6810
6811         * modules/search-tests: New file.
6812         * tests/test-search.c: New file.
6813
6814         * modules/search: New file.
6815         * lib/search_.h: New file, incorporating lib/tsearch.h.
6816         * m4/search_h.m4: New file.
6817         * lib/tsearch.h: Remove file.
6818         * lib/tsearch.c: Include search.h instead of tsearch.h.
6819         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
6820         HAVE_TSEARCH.
6821         * modules/tsearch (Files): Remove lib/tsearch.h.
6822         (Depends-on): Add search.
6823         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
6824         (Include): Change tsearch.h into search.h.
6825
6826 2007-03-24  Bruno Haible  <bruno@clisp.org>
6827
6828         * modules/fpucw: New file.
6829         * lib/fpucw.h: New file.
6830         * lib/frexp.c: Include fpucw.h.
6831         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
6832         (FUNC): Use them.
6833         * lib/printf-frexp.c: Include fpucw.h.
6834         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
6835         (FUNC): Use them.
6836         * lib/vasnprintf.c: Include fpucw.h.
6837         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
6838         'long double' calculations.
6839         * tests/test-frexpl.c: Include fpucw.h.
6840         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
6841         * tests/test-printf-frexpl.c: Include fpucw.h.
6842         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
6843         * modules/frexpl (Depends-on): Add fpucw.
6844         * modules/printf-frexpl (Depends-on): Likewise.
6845         * modules/fprintf-posix (Depends-on): Likewise.
6846         * modules/snprintf-posix (Depends-on): Likewise.
6847         * modules/sprintf-posix (Depends-on): Likewise.
6848         * modules/vasnprintf-posix (Depends-on): Likewise.
6849         * modules/vasprintf-posix (Depends-on): Likewise.
6850         * modules/vfprintf-posix (Depends-on): Likewise.
6851         * modules/vsnprintf-posix (Depends-on): Likewise.
6852         * modules/vsprintf-posix (Depends-on): Likewise.
6853         * modules/frexpl-tests (Depends-on): Likewise.
6854         * modules/printf-frexpl-tests (Depends-on): Likewise.
6855
6856 2007-03-24  Bruno Haible  <bruno@clisp.org>
6857
6858         * lib/float+.h: New file.
6859         * lib/isnan.c: Include float+.h.
6860         (SIZE): New macro.
6861         (FUNC): Compare only SIZE bytes of the value.
6862         * lib/vasnprintf.c: Include float+.h.
6863         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
6864         SIZEOF_LDBL or SIZEOF_DBL bytes.
6865         * modules/isnan-nolibm (Files): Add lib/float+.h.
6866         * modules/isnanl-nolibm (Files): Add lib/float+.h.
6867         * modules/isnanl (Files): Add lib/float+.h.
6868         * modules/vasnprintf (Files): Add lib/float+.h.
6869
6870 2007-03-24  Bruno Haible  <bruno@clisp.org>
6871
6872         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
6873         include isnanl-nolibm.h.
6874
6875 2007-03-24  Bruno Haible  <bruno@clisp.org>
6876
6877         * tests/test-read-file.c (main): Don't produce spurious output for
6878         expected situations. Make the test fail if it encountered unexpected
6879         results.
6880
6881 2007-03-24  Bruno Haible  <bruno@clisp.org>
6882
6883         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
6884         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
6885
6886 2007-03-24  Bruno Haible  <bruno@clisp.org>
6887
6888         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
6889
6890 2007-03-24  Bruno Haible  <bruno@clisp.org>
6891
6892         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
6893         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
6894
6895         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
6896         * modules/utf8-ucs4: Turn into a symbolic link to module
6897         unistr/u8-mbtouc.
6898
6899         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
6900         utf8-ucs4-unsafe.
6901         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
6902         unistr/u8-mbtouc-unsafe.
6903
6904         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
6905         * modules/utf16-ucs4: Turn into a symbolic link to module
6906         unistr/u16-mbtouc.
6907
6908         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
6909         utf16-ucs4-unsafe.
6910         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
6911         unistr/u16-mbtouc-unsafe.
6912
6913         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
6914         * modules/ucs4-utf8: Turn into a symbolic link to module
6915         unistr/u8-ubtomb.
6916
6917         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
6918         * modules/ucs4-utf16: Turn into a symbolic link to module
6919         unistr/u16-ubtomb.
6920
6921 2007-03-24  Bruno Haible  <bruno@clisp.org>
6922
6923         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
6924         Enable the function only if HAVE_INLINE.
6925         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
6926         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6927         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
6928         Enable the function only if HAVE_INLINE.
6929         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
6930         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6931         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
6932         Enable the function only if HAVE_INLINE.
6933         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
6934         Enable the function only if HAVE_INLINE.
6935         * modules/utf8-ucs4: Update.
6936         * modules/utf8-ucs4-unsafe: Update.
6937         * modules/utf16-ucs4: Update.
6938         * modules/utf16-ucs4-unsafe: Update.
6939         * modules/ucs4-utf8: Update.
6940         * modules/ucs4-utf16: Update.
6941
6942 2007-03-24  Bruno Haible  <bruno@clisp.org>
6943
6944         * lib/utf8-ucs4.h: Remove file.
6945         * lib/utf8-ucs4-unsafe.h: Remove file.
6946         * lib/utf16-ucs4.h: Remove file.
6947         * lib/utf16-ucs4-unsafe.h: Remove file.
6948         * lib/ucs4-utf8.h: Remove file.
6949         * lib/ucs4-utf16.h: Remove file.
6950         * lib/unistr.h: Include their previous contents.
6951         * m4/utf-ucs4.m4: Remove file.
6952         * m4/ucs4-utf.m4: Remove file.
6953         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
6954         (Depends-on): Add unistr/base.
6955         (configure.ac): Remove gl_UTF_UCS4.
6956         (Makefile.am): Update.
6957         (Include): Change to unistr.h.
6958         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
6959         (Depends-on): Add unistr/base.
6960         (configure.ac): Remove gl_UTF_UCS4.
6961         (Makefile.am): Update.
6962         (Include): Change to unistr.h.
6963         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
6964         (Depends-on): Add unistr/base.
6965         (configure.ac): Remove gl_UTF_UCS4.
6966         (Makefile.am): Update.
6967         (Include): Change to unistr.h.
6968         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
6969         (Depends-on): Add unistr/base.
6970         (configure.ac): Remove gl_UTF_UCS4.
6971         (Makefile.am): Update.
6972         (Include): Change to unistr.h.
6973         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
6974         (Depends-on): Add unistr/base.
6975         (configure.ac): Remove gl_UCS4_UTF.
6976         (Makefile.am): Update.
6977         (Include): Change to unistr.h.
6978         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
6979         (Depends-on): Add unistr/base.
6980         (configure.ac): Remove gl_UCS4_UTF.
6981         (Makefile.am): Update.
6982         (Include): Change to unistr.h.
6983         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
6984         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
6985         utf8-ucs4-unsafe.h.
6986         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
6987         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
6988         utf16-ucs4-unsafe.h.
6989         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
6990         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
6991         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
6992         * lib/unistr/u8-strchr.c: Likewise.
6993         * lib/unistr/u8-strrchr.c: Likewise.
6994         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
6995         * lib/unistr/u16-strchr.c: Likewise.
6996         * lib/unistr/u16-strrchr.c: Likewise.
6997         * lib/striconveh.c: Update.
6998         * lib/linebreak.c: Update.
6999
7000 2007-03-24  Bruno Haible  <bruno@clisp.org>
7001
7002         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
7003         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
7004
7005 2007-03-22  Bruno Haible  <bruno@clisp.org>
7006
7007         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
7008
7009 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
7010
7011         * MODULES.html.sh (File system functions): New module write-any-file.
7012         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
7013         * m4/write-any-file.m4: New files.
7014
7015 2007-03-23  Eric Blake  <ebb9@byu.net>
7016
7017         * gnulib-tool: Rearrange space-tab sequences, since some editors
7018         like to eat them.
7019
7020 2007-03-23  Eric Blake  <ebb9@byu.net>
7021
7022         * lib/version-etc.c (version_etc_va): Update license wording to
7023         be more concise.  Recommended by Richard Stallman.
7024
7025 2007-03-22  Bruno Haible  <bruno@clisp.org>
7026
7027         * lib/poll.c (MSG_PEEK): New fallback definition.
7028
7029 2007-03-22  Bruno Haible  <bruno@clisp.org>
7030
7031         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
7032         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
7033         (main): Update.
7034         Fixes a compilation error on BeOS.
7035
7036 2007-03-22  Bruno Haible  <bruno@clisp.org>
7037
7038         * modules/frexpl-tests: New file.
7039         * tests/test-frexpl.c: New file.
7040
7041         * modules/frexpl: New file.
7042         * m4/frexpl.m4: New file.
7043         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
7044         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
7045         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
7046         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
7047         (Depends-on): Add frexpl. Remove isnanl-nolibm.
7048         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
7049
7050 2007-03-22  Bruno Haible  <bruno@clisp.org>
7051
7052         * lib/frexpl.c: Share code with lib/frexp.c.
7053         * modules/mathl (Files): Add lib/frexp.c.
7054         (Depends-on): Add isnanl-nolibm.
7055
7056 2007-03-22  Bruno Haible  <bruno@clisp.org>
7057
7058         * modules/printf-frexp (Files): Add m4/frexp.m4.
7059         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
7060         only if the found frexp function actually works.
7061
7062 2007-03-22  Bruno Haible  <bruno@clisp.org>
7063
7064         * lib/frexp.c: Remove older implementation that uses divisions.
7065
7066 2007-03-21  Bruno Haible  <bruno@clisp.org>
7067
7068         * modules/frexp-tests: New file.
7069         * tests/test-frexp.c: New file.
7070
7071         * modules/frexp: New file.
7072         * lib/frexp.c: New file.
7073         * m4/frexp.m4: New file.
7074         * lib/math_.h (frexp): New declaration.
7075         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
7076         REPLACE_FREXP.
7077         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
7078
7079 2007-03-21  Bruno Haible  <bruno@clisp.org>
7080
7081         * modules/isnanl-tests: New file.
7082         * tests/test-isnanl.c: New file.
7083
7084         * modules/isnanl: New file.
7085         * lib/isnanl.h: New file.
7086         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
7087         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
7088         gl_FUNC_ISNANL_WORKS.
7089         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
7090         New macros.
7091
7092 2007-03-21  Bruno Haible  <bruno@clisp.org>
7093
7094         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
7095         lib/isnanl.h.
7096         (Include): Update.
7097         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
7098         * lib/vasnprintf.c: Update.
7099         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
7100         tests/test-isnanl.h, remove tests/test-isnanl.c.
7101         (Makefile.am): Update.
7102         * tests/test-isnanl-nolibm.c: New file.
7103         * tests/test-isnanl.h: New file.
7104         * tests/test-isnanl.c: Remove file.
7105
7106 2007-03-21  Jim Meyering  <jim@meyering.net>
7107
7108         When trying to open ".", treat ESTALE like EACCES.
7109         * lib/savewd.c (savewd_save): Resort to forking not just upon
7110         failure with EACCES, but also when errno is ESTALE.
7111
7112 2007-03-20  Bruno Haible  <bruno@clisp.org>
7113
7114         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
7115         Needed on AIX 5.1. Reported by Matthew Woehlke.
7116
7117 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
7118
7119         Suggestions by Bruno Haible:
7120         * lib/acl-internal.h: Include "gettext.h" rather than rolling
7121         our own.
7122         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
7123         * modules/acl (Depends-on): Add gettext.
7124
7125 2007-03-19  Bruno Haible  <bruno@clisp.org>
7126
7127         * modules/iconvme: Remove file.
7128         * lib/iconvme.h: Remove file.
7129         * lib/iconvme.c: Remove file.
7130         * m4/iconvme.m4: Remove file.
7131
7132 2007-03-19  Bruno Haible  <bruno@clisp.org>
7133
7134         * doc/relocatable-maint.texi: Break long shell script line.
7135         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
7136
7137 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
7138
7139         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
7140         handle file_has_acl.
7141         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
7142         * lib/acl.c: Move header inclusions and related macro defns into
7143         lib/acl-internal.h.
7144         (S_ISLNK): Remove defn, since that's now done for us.
7145         (file_has_acl): Move to lib/file-has-acl.c.
7146         Call acl_trivial if available.  This is the crucial part of the fix.
7147         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
7148         shared within the library.  Rewrite a bit, partly to make it compatible
7149         with the GNU coding style.
7150         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
7151         Remove unnecessary double-quotes.
7152         Don't test for acl_to_text; the build will catch that.
7153         Replace acl_entries if it doesn't exist and it is needed.
7154         Check for -lsec and acl_trivial (as used on Solaris 10).
7155         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
7156         lib/file-has-acl.c.
7157         (Depends-on): Add sys_stat, for S_ISLNK.
7158
7159 2007-03-19  Ben Pfaff  <blp@gnu.org>
7160
7161         * doc/gnulib.texi: Fix typos.
7162         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
7163
7164 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
7165
7166         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
7167         If size is zero here, buf must be zero.
7168
7169 2007-03-19  Simon Josefsson  <simon@josefsson.org>
7170
7171         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
7172         <bruno@clisp.org>.
7173
7174 2007-03-18  Bruno Haible  <bruno@clisp.org>
7175
7176         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
7177         Suggested by Eric Blake.
7178
7179 2007-03-18  Ben Pfaff  <blp@gnu.org>
7180
7181         * doc/relocatable.texi: Recommend using as prefix a directory
7182         that does not exist and will never be created.  Based on
7183         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
7184         and others.
7185
7186 2007-03-17  Bruno Haible  <bruno@clisp.org>
7187
7188         * lib/fchownat.c: Include lchown.h.
7189
7190 2007-03-17  Bruno Haible  <bruno@clisp.org>
7191
7192         Fix endless loop when the given allocated size was > INT_MAX.
7193         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
7194         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
7195         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
7196         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
7197         * lib/sprintf.c (sprintf): Likewise.
7198
7199 2007-03-17  Bruno Haible  <bruno@clisp.org>
7200
7201         * tests/test-argp-2.sh (func_compare): Output a context diff.
7202
7203 2007-03-17  Bruno Haible  <bruno@clisp.org>
7204
7205         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
7206         locale's decimal-point character.
7207
7208 2007-03-17  Bruno Haible  <bruno@clisp.org>
7209
7210         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
7211         before comparing it. Needed because on some platforms (e.g. x86) a
7212         'long double' occupies less bytes than sizeof (long double).
7213
7214 2007-03-17  Bruno Haible  <bruno@clisp.org>
7215
7216         * tests/test-crc.c (main): Make printf statements 64-bit clean.
7217         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
7218         * tests/test-getaddrinfo.c (simple): Likewise.
7219         * tests/test-read-file.c (main): Likewise.
7220
7221 2007-03-17  Bruno Haible  <bruno@clisp.org>
7222
7223         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
7224
7225 2007-03-17  Bruno Haible  <bruno@clisp.org>
7226
7227         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
7228         unused variable.
7229
7230 2007-03-17  Bruno Haible  <bruno@clisp.org>
7231
7232         * tests/test-c-strcasecmp.c: Include c-strcase.h.
7233         * tests/test-c-strncasecmp.c: Likewise.
7234
7235 2007-03-17  Bruno Haible  <bruno@clisp.org>
7236
7237         * modules/stdlib (Depends-on): Add unistd.
7238         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
7239         Needed for MacOS X 10.3.
7240
7241 2007-03-17  Bruno Haible  <bruno@clisp.org>
7242
7243         * lib/unistr/u-strdup.h: Include <stdlib.h>.
7244
7245 2007-03-17  Bruno Haible  <bruno@clisp.org>
7246
7247         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
7248
7249 2007-03-17  Bruno Haible  <bruno@clisp.org>
7250
7251         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
7252         to reflect files copied from gnulib (with or without modifications).
7253         Suggested by Jim Meyering.
7254
7255 2007-03-17  Eric Blake  <ebb9@byu.net>
7256
7257         * NEWS: Document stdlib change from 2007-02-18.
7258
7259 2007-03-17  Jim Meyering  <jim@meyering.net>
7260
7261         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
7262         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
7263         someone uses a name containing shell meta-characters.
7264         Reported by Alfred M. Szmidt.
7265
7266         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
7267
7268 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
7269
7270         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
7271         and copy gettext configuration files only if configure.ac contains
7272         a use of AM_GNU_GETTEXT_VERSION.
7273
7274 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
7275
7276         * build-aux/bootstrap (gnulib_name): New variable.
7277         (gnulib_tool_options): Use it.
7278
7279 2007-03-13  Simon Josefsson  <simon@josefsson.org>
7280
7281         * tests/test-des.c: Use new namespace.
7282
7283 2007-03-15  Bruno Haible  <bruno@clisp.org>
7284
7285         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
7286         Reported by James Youngman <jay@gnu.org>.
7287
7288 2007-03-15  Bruno Haible  <bruno@clisp.org>
7289
7290         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
7291         declared prototype. Needed with cc on OSF/1 5.1.
7292
7293 2007-03-15  Bruno Haible  <bruno@clisp.org>
7294
7295         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
7296         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
7297         (struct gl_list_implementation): Add dispose_fn argument to the
7298         'create_empty', 'create' methods.
7299         (struct gl_list_impl_base): Add field 'dispose_fn'.
7300         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
7301         argument.
7302         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
7303         dispose_fn argument.
7304         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
7305         dispose_fn on the dropped values.
7306         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
7307         dispose_fn argument.
7308         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
7309         dropped values.
7310         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
7311         (gl_tree_remove_node): Call dispose_fn on the dropped value.
7312         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
7313         (gl_tree_remove_node): Call dispose_fn on the dropped value.
7314         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
7315         argument.
7316         (gl_tree_list_free): Call dispose_fn on the dropped values.
7317         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
7318         the dropped values.
7319         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
7320         Add dispose_fn argument.
7321         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
7322         Call dispose_fn on the dropped values.
7323         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
7324         Add dispose_fn argument.
7325         (gl_sublist_create): Initialize the 'dispose_fn' field.
7326         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
7327         * tests/test-array_list.c (main): Update.
7328         * tests/test-carray_list.c (main): Update.
7329         * tests/test-avltree_list.c (main): Update.
7330         * tests/test-rbtree_list.c (main): Update.
7331         * tests/test-avltreehash_list.c (main): Update.
7332         * tests/test-rbtreehash_list.c (main): Update.
7333         * tests/test-linked_list.c (main): Update.
7334         * tests/test-linkedhash_list.c (main): Update.
7335         * tests/test-array_oset.c (main): Update.
7336
7337 2007-03-15  Bruno Haible  <bruno@clisp.org>
7338
7339         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
7340         (gl_oset_create_empty): Add dispose_fn argument.
7341         (struct gl_oset_implementation): Add dispose_fn argument to
7342         'create_empty' method.
7343         (struct gl_oset_impl_base): Add dispose_fn field.
7344         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
7345         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
7346         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
7347         values.
7348         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
7349         (gl_tree_oset_free): Call dispose_fn on the dropped values.
7350         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
7351         dropped value.
7352         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
7353         dropped value.
7354         * tests/test-array_oset.c (main): Update.
7355         * tests/test-avltree_oset.c (main): Update.
7356         * tests/test-rbtree_oset.c (main): Update.
7357         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
7358
7359 2007-03-13  Bruno Haible  <bruno@clisp.org>
7360
7361         * tests/test-stdbool.c (i): Update after last patch.
7362
7363 2007-03-12  Bruno Haible  <bruno@clisp.org>
7364
7365         * lib/quotearg.c: Include <wctype.h> early, before the definition of
7366         the iswprint macro. Needed on Solaris 2.5.1.
7367
7368 2007-03-12  Bruno Haible  <bruno@clisp.org>
7369
7370         * tests/test-printf-frexp.c (main): Declare x as volatile.
7371
7372 2007-03-12  Simon Josefsson  <simon@josefsson.org>
7373
7374         * doc/gnulib.texi (Build robot for gnulib): New section.
7375
7376 2007-03-12  Jim Meyering  <jim@meyering.net>
7377
7378         * build-aux/bootstrap: New file.
7379         * build-aux/bootstrap.conf: New file, from coreutils.
7380
7381 2007-03-11  Bruno Haible  <bruno@clisp.org>
7382
7383         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
7384
7385 2007-03-12  Simon Josefsson  <simon@josefsson.org>
7386
7387         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
7388         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
7389         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
7390
7391 2007-03-11  Bruno Haible  <bruno@clisp.org>
7392
7393         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
7394         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
7395
7396 2007-03-11  Bruno Haible  <bruno@clisp.org>
7397
7398         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
7399         formula. Needed for SunPRO C 5.0.
7400
7401 2007-03-11  Bruno Haible  <bruno@clisp.org>
7402
7403         * modules/long-options (Depends-on): Add getopt.
7404
7405 2007-03-11  Bruno Haible  <bruno@clisp.org>
7406
7407         * modules/modechange (Depends-on): Add stdbool.
7408
7409 2007-03-11  Bruno Haible  <bruno@clisp.org>
7410
7411         * modules/i-ring (Depends-on): Add stdbool.
7412
7413 2007-03-11  Bruno Haible  <bruno@clisp.org>
7414
7415         * modules/gc-des (Depends-on): Add stdbool.
7416
7417 2007-03-11  Bruno Haible  <bruno@clisp.org>
7418
7419         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
7420
7421 2007-03-11  Bruno Haible  <bruno@clisp.org>
7422
7423         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
7424
7425 2007-03-11  Bruno Haible  <bruno@clisp.org>
7426
7427         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
7428
7429 2007-03-11  Bruno Haible  <bruno@clisp.org>
7430
7431         * lib/vasnprintf.c (sprintf): Undefine.
7432
7433 2007-03-11  Bruno Haible  <bruno@clisp.org>
7434
7435         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
7436         initializers in SunPRO C and Compaq C compilers.
7437
7438 2007-03-11  Bruno Haible  <bruno@clisp.org>
7439
7440         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
7441         decrementing code ANSI C compliant.
7442
7443 2007-03-11  Bruno Haible  <bruno@clisp.org>
7444
7445         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
7446         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
7447
7448 2007-03-11  Bruno Haible  <bruno@clisp.org>
7449
7450         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
7451         <stdbool.h> substitute doesn't pass.
7452
7453 2007-03-11  Bruno Haible  <bruno@clisp.org>
7454
7455         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
7456
7457 2007-03-11  Bruno Haible  <bruno@clisp.org>
7458
7459         * gnulib-tool (func_create_megatestdir): Create also an autobuild
7460         script, for submission to autobuild.josefsson.org.
7461
7462 2007-03-10  Bruno Haible  <bruno@clisp.org>
7463
7464         * modules/canonicalize-lgpl-tests: New file.
7465         * tests/test-canonicalize-lgpl.sh: New file.
7466         * tests/test-canonicalize-lgpl.c: New file.
7467
7468         * modules/c-strcase-tests: New file.
7469         * tests/test-c-strcase.sh: New file.
7470         * tests/test-c-strcasecmp.c: New file.
7471         * tests/test-c-strncasecmp.c: New file.
7472
7473         * modules/atexit-tests: New file.
7474         * tests/test-atexit.sh: New file.
7475         * tests/test-atexit.c: New file.
7476
7477 2007-03-10  Bruno Haible  <bruno@clisp.org>
7478
7479         * tests/test-binary-io.sh: Use temporary filenames that are not so
7480         likely to clash with those of other tests (in a parallel make).
7481         * tests/test-binary-io.c: Likewise.
7482
7483 2007-03-10  Bruno Haible  <bruno@clisp.org>
7484
7485         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
7486         fallback; use #error instead.
7487         Suggested by Simon Josefsson.
7488
7489 2007-03-10  Bruno Haible  <bruno@clisp.org>
7490
7491         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
7492         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
7493         first and the last.
7494
7495 2007-03-10  Bruno Haible  <bruno@clisp.org>
7496
7497         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
7498
7499 2007-03-10  Bruno Haible  <bruno@clisp.org>
7500
7501         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
7502         "make distcheck".
7503         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
7504         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
7505         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
7506
7507 2007-03-10  Bruno Haible  <bruno@clisp.org>
7508
7509         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
7510         variable.
7511         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
7512         variable.
7513
7514 2007-03-09  Eric Blake  <ebb9@byu.net>
7515         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
7516
7517         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
7518         types are not being provided by gnulib.
7519         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
7520         types are supported.
7521
7522 2007-03-10  Bruno Haible  <bruno@clisp.org>
7523
7524         * lib/stdio_.h (__attribute__): New macro.
7525         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
7526         vsprintf): Specify __attribute__ __format__ for GCC.
7527         Suggested by Eric Blake.
7528
7529 2007-03-09  Bruno Haible  <bruno@clisp.org>
7530
7531         * modules/printf-posix-tests: New file.
7532         * tests/test-printf-posix.sh: New file.
7533         * tests/test-printf-posix.c: New file.
7534
7535         * modules/printf-posix: New file.
7536         * lib/printf.c: New file.
7537         * m4/printf-posix-rpl.m4: New file.
7538         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
7539         REPLACE_PRINTF.
7540         * lib/stdio_.h (printf): New declaration.
7541         (format, __format__, ____printf____, ____scanf____, ____strftime____,
7542         ____strfmon____): New macros.
7543         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
7544         REPLACE_PRINTF.
7545
7546 2007-03-09  Bruno Haible  <bruno@clisp.org>
7547
7548         * tests/test-vasnprintf-posix2.sh: New file.
7549         * tests/test-vasnprintf-posix2.c: New file.
7550         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
7551         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
7552         (Makefile.am): Activate test-vasnprintf-posix2.sh.
7553
7554         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
7555         a locale dependent decimal point, rather than always '.'.
7556
7557 2007-03-09  Eric Blake  <ebb9@byu.net>
7558
7559         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
7560         spite of platforms like Tandem/NSK that define it to -1.
7561
7562 2007-03-08  Bruno Haible  <bruno@clisp.org>
7563
7564         * modules/vprintf-posix-tests: New file.
7565         * tests/test-vprintf-posix.sh: New file.
7566         * tests/test-vprintf-posix.c: New file.
7567         * tests/test-printf-posix.h: New file.
7568
7569         * modules/vprintf-posix: New file.
7570         * lib/vprintf.c: New file.
7571         * m4/vprintf-posix.m4: New file.
7572         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
7573         REPLACE_VPRINTF.
7574         * lib/stdio_.h (vprintf): New declaration.
7575         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
7576         REPLACE_VPRINTF.
7577
7578 2007-03-08  Bruno Haible  <bruno@clisp.org>
7579
7580         * modules/fprintf-posix-tests: New file.
7581         * tests/test-fprintf-posix.sh: New file.
7582         * tests/test-fprintf-posix.c: New file.
7583
7584         * modules/fprintf-posix: New file.
7585         * lib/fprintf.c: New file.
7586         * m4/fprintf-posix.m4: New file.
7587         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
7588         REPLACE_FPRINTF.
7589         * lib/stdio_.h (fprintf): New declaration.
7590         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
7591         REPLACE_FPRINTF.
7592
7593 2007-03-08  Bruno Haible  <bruno@clisp.org>
7594
7595         * modules/vfprintf-posix-tests: New file.
7596         * tests/test-vfprintf-posix.sh: New file.
7597         * tests/test-vfprintf-posix.c: New file.
7598         * tests/test-fprintf-posix.h: New file.
7599         * tests/test-fprintf-posix.out: New file.
7600
7601         * modules/vfprintf-posix: New file.
7602         * lib/vfprintf.c: New file.
7603         * m4/vfprintf-posix.m4: New file.
7604         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
7605         REPLACE_VFPRINTF.
7606         * lib/stdio_.h (vfprintf): New declaration.
7607         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
7608         REPLACE_VFPRINTF.
7609
7610 2007-03-08  Bruno Haible  <bruno@clisp.org>
7611
7612         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
7613
7614 2007-03-08  Bruno Haible  <bruno@clisp.org>
7615
7616         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
7617         instead of 'expr' invocations.
7618         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7619         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7620         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7621         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7622         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7623         Suggested by Paul Eggert.
7624
7625 2007-03-08  Bruno Haible  <bruno@clisp.org>
7626
7627         * modules/fseterr-tests: New file.
7628         * tests/test-fseterr.c: New file.
7629
7630         * modules/fseterr: New file.
7631         * lib/fseterr.h: New file.
7632         * lib/fseterr.c: New file.
7633
7634 2007-03-08  Bruno Haible  <bruno@clisp.org>
7635
7636         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
7637         * lib/getopt_.h: Likewise.
7638         * lib/mbswidth.h: Likewise.
7639         * lib/setenv.h: Likewise.
7640         * lib/vasnprintf.h: Likewise.
7641         * lib/vasprintf.h: Likewise.
7642         * lib/verror.h: Likewise.
7643         * lib/xsetenv.h: Likewise.
7644         * lib/xvasprintf.h: Likewise.
7645
7646 2007-03-08  Jim Meyering  <jim@meyering.net>
7647
7648         * users.txt: Add parted.
7649
7650         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
7651
7652 2007-03-07  Bruno Haible  <bruno@clisp.org>
7653
7654         * m4/printf.m4: Make the shell script snippets copy&pastable.
7655
7656 2007-03-02  Bruno Haible  <bruno@clisp.org>
7657
7658         * lib/netinet_in_.h: New file.
7659         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
7660         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
7661         * modules/netinet_in (Files): Add lib/netinet_in_.h.
7662         (Depends-on): Add absolute-header.
7663         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
7664         into netinet/in.h.
7665
7666 2007-03-03  Bruno Haible  <bruno@clisp.org>
7667
7668         * lib/sys_select_.h: New file.
7669         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
7670         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
7671         * modules/sys_select (Files): Add lib/sys_select_.h.
7672         (Depends-on): Add absolute-header.
7673         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
7674         into sys/select.h.
7675
7676 2007-03-02  Bruno Haible  <bruno@clisp.org>
7677
7678         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
7679         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
7680         values.
7681         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
7682         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
7683         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
7684         * modules/sys_socket (Depends-on): Add absolute-header.
7685         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
7686         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
7687         (Include): Remove requirement of inclusion of <sys/types.h>.
7688
7689 2007-03-02  Bruno Haible  <bruno@clisp.org>
7690
7691         * lib/byteswap_.h (bswap_32): Fix formula.
7692
7693 2007-03-06  Bruno Haible  <bruno@clisp.org>
7694
7695         * modules/sprintf-posix-tests: New file.
7696         * tests/test-sprintf-posix.c: New file.
7697
7698         * modules/sprintf-posix: New file.
7699         * lib/sprintf.c: New file.
7700         * m4/sprintf-posix.m4: New file.
7701         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
7702         REPLACE_SPRINTF.
7703         * lib/stdio_.h (sprintf): New declaration.
7704         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
7705         REPLACE_SPRINTF.
7706
7707 2007-03-06  Bruno Haible  <bruno@clisp.org>
7708
7709         * modules/vsprintf-posix-tests: New file.
7710         * tests/test-vsprintf-posix.c: New file.
7711         * tests/test-sprintf-posix.h: New file.
7712
7713         * modules/vsprintf-posix: New file.
7714         * lib/vsprintf.c: New file.
7715         * m4/vsprintf-posix.m4: New file.
7716         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
7717         REPLACE_VSPRINTF.
7718         * lib/stdio_.h (vsprintf): New declaration.
7719         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
7720         REPLACE_VSPRINTF.
7721
7722 2007-03-06  Bruno Haible  <bruno@clisp.org>
7723
7724         * modules/vsnprintf (Depend-on): Remove minmax.
7725
7726 2007-03-06  Bruno Haible  <bruno@clisp.org>
7727
7728         * modules/snprintf-posix-tests: New file.
7729         * tests/test-snprintf-posix.c: New file.
7730
7731         * modules/snprintf-posix: New file.
7732         * m4/snprintf-posix.m4: New file.
7733         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
7734         gl_FUNC_SNPRINTF.
7735         (gl_FUNC_SNPRINTF): Invoke it.
7736         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
7737         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
7738         is set.
7739         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
7740
7741 2007-03-06  Bruno Haible  <bruno@clisp.org>
7742
7743         * modules/vsnprintf-posix-tests: New file.
7744         * tests/test-vsnprintf-posix.c: New file.
7745         * tests/test-snprintf-posix.h: New file.
7746
7747         * modules/vsnprintf-posix: New file.
7748         * m4/vsnprintf-posix.m4: New file.
7749         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
7750         gl_FUNC_VSNPRINTF.
7751         (gl_FUNC_VSNPRINTF): Invoke it.
7752         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
7753         * lib/stdio_.h (vsnprintf): Define as a replacement if
7754         REPLACE_VSNPRINTF is set.
7755         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
7756
7757 2007-03-06  Bruno Haible  <bruno@clisp.org>
7758
7759         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
7760         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
7761
7762 2007-03-06  Bruno Haible  <bruno@clisp.org>
7763
7764         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
7765         (asinl): Declare also if HAVE_DECL_ASINL is set.
7766         (atanl): Declare also if HAVE_DECL_ATANL is set.
7767         (ceill): Declare also if HAVE_DECL_CEILL is set.
7768         (cosl): Declare also if HAVE_DECL_COSL is set.
7769         (expl): Declare also if HAVE_DECL_EXPL is set.
7770         (floorl): Declare also if HAVE_DECL_FLOORL is set.
7771         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
7772         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
7773         (logl): Declare also if HAVE_DECL_LOGL is set.
7774         (sinl): Declare also if HAVE_DECL_SINL is set.
7775         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
7776         (tanl): Declare also if HAVE_DECL_TANL is set.
7777         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
7778         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
7779         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
7780         declaration of frexpl, ldexpl.
7781         * modules/printf-frexpl (Depends-on): Add math.
7782         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
7783
7784 2007-03-05  Bruno Haible  <bruno@clisp.org>
7785
7786         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
7787         frexpl and ldexpl are declared.
7788         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
7789
7790 2007-03-05  Bruno Haible  <bruno@clisp.org>
7791
7792         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
7793         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
7794
7795 2007-03-05  Bruno Haible  <bruno@clisp.org>
7796
7797         * lib/stdio_.h: Include <stddef.h>.
7798
7799 2007-03-05  Bruno Haible  <bruno@clisp.org>
7800
7801         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
7802
7803 2007-03-05  Bruno Haible  <bruno@clisp.org>
7804
7805         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
7806         NetBSD 4, from Ralf Wildenhues.
7807
7808 2007-03-04  Bruno Haible  <bruno@clisp.org>
7809
7810         * lib/vasprintf.h: Update #if logic for the case when the functions
7811         exist but are overridden.
7812
7813 2007-03-04  Bruno Haible  <bruno@clisp.org>
7814
7815         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
7816         implementations: glibc-2.4 and MacOS X 10.3.
7817         * tests/test-vasnprintf-posix.c (test_function): Test also the case
7818         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
7819         * tests/test-vasprintf-posix.c (test_function): Likewise.
7820
7821 2007-03-04  Bruno Haible  <bruno@clisp.org>
7822
7823         * modules/vasprintf-posix-tests: New file.
7824         * tests/test-vasprintf-posix.c: New file.
7825
7826         * modules/vasprintf-posix: New file.
7827         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
7828         defined.
7829         * m4/vasprintf-posix.m4: New file.
7830         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
7831         gl_FUNC_VASPRINTF.
7832         (gl_FUNC_VASPRINTF): Invoke it.
7833         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
7834         here.
7835         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
7836
7837 2007-03-04  Bruno Haible  <bruno@clisp.org>
7838
7839         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
7840         REPLACE_GETTIMEOFDAY.
7841         * modules/sys_time (Makefile.am): Likewise.
7842         * m4/sys_time_h.m4: Likewise.
7843         * m4/gettimeofday.m4: Likewise.
7844
7845 2007-03-04  Bruno Haible  <bruno@clisp.org>
7846
7847         * modules/vasnprintf-posix-tests: New file.
7848         * tests/test-vasnprintf-posix.c: New file.
7849
7850         * modules/vasnprintf-posix: New file.
7851         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
7852         printf-frexpl.h.
7853         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
7854         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
7855         REPLACE_VASNPRINTF is defined.
7856         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
7857         gl_FUNC_VASNPRINTF.
7858         (gl_FUNC_VASNPRINTF): Invoke it.
7859         * m4/vasnprintf-posix.m4: New file.
7860         * m4/printf.m4: New file.
7861
7862 2007-03-04  Bruno Haible  <bruno@clisp.org>
7863
7864         Compile progreloc.c only if --enable-relocatable is specified.
7865         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
7866         if --enable-relocatable was specified.
7867         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
7868         lib_SOURCES.
7869
7870 2007-03-04  Jim Meyering  <jim@meyering.net>
7871
7872         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
7873         Use it consistently, rather than enumerating errno constants.
7874
7875 2007-03-04  Bruno Haible  <bruno@clisp.org>
7876
7877         * modules/xvasprintf-tests: New file.
7878         * tests/test-xvasprintf.c: New file.
7879
7880         * modules/vasprintf-tests: New file.
7881         * tests/test-vasprintf.c: New file.
7882
7883         * modules/vasnprintf-tests: New file.
7884         * tests/test-vasnprintf.c: New file.
7885
7886         * modules/vsnprintf-tests: New file.
7887         * tests/test-vsnprintf.c: New file.
7888
7889         * modules/snprintf-tests: New file.
7890         * tests/test-snprintf.c: New file.
7891
7892 2007-03-04  Bruno Haible  <bruno@clisp.org>
7893
7894         Compile relocatable.c only if --enable-relocatable is specified.
7895         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
7896         gl_RELOCATABLE_LIBRARY.
7897         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
7898         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
7899         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
7900         gl_RELOCATABLE_LIBRARY.
7901         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
7902         (Makefile.am): Remove lib_SOURCES.
7903         * modules/relocatable-lib-lgpl (configure.ac): Invoke
7904         gl_RELOCATABLE_LIBRARY.
7905         (Makefile.am): Remove lib_SOURCES.
7906         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
7907         always.
7908         * modules/relocatable-prog-wrapper (configure.ac): Invoke
7909         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
7910
7911 2007-03-04  Bruno Haible  <bruno@clisp.org>
7912
7913         * modules/argmatch-tests: New file.
7914         * tests/test-argmatch.c: New file.
7915
7916         * tests/test-allocsa.c (main): Halve the number of loop runs.
7917
7918         * modules/alloca-opt-tests: New file.
7919         * tests/test-alloca-opt.c: New file.
7920
7921 2007-03-04  Jim Meyering  <jim@meyering.net>
7922
7923         Work around difference between Linux ACLs and Solaris 10 ZFS.
7924         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
7925         for EINVAL.
7926
7927 2007-03-03  Bruno Haible  <bruno@clisp.org>
7928
7929         * modules/relocatable-prog (Depends-on): Add back progreloc's
7930         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
7931
7932 2007-03-03  Bruno Haible  <bruno@clisp.org>
7933
7934         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
7935         * modules/relocatable-lib: New file.
7936
7937 2007-03-03  Bruno Haible  <bruno@clisp.org>
7938
7939         * modules/relocatable-prog: Renamed from modules/relocatable.
7940         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
7941
7942 2007-03-03  Bruno Haible  <bruno@clisp.org>
7943
7944         * modules/relocatable-script (Files): Add doc/relocatable.texi,
7945         m4/relocatable-lib.m4.
7946         (Depends-on): Remove 'relocatable'.
7947         (configure.ac): Add gl_RELOCATABLE_NOP.
7948
7949 2007-03-03  Bruno Haible  <bruno@clisp.org>
7950
7951         * modules/relocatable-prog-wrapper: New file.
7952         * modules/relocatable (Depends-on): Add it. Remove all other
7953         dependencies except progname.
7954         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
7955
7956         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
7957         (gl_FUNC_STRERROR): Nop.
7958         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
7959
7960         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
7961         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
7962
7963         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
7964         (gl_FUNC_READLINK): Update.
7965
7966         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
7967
7968 2007-03-03  Bruno Haible  <bruno@clisp.org>
7969
7970         * lib/xreadlink.c: Include <unistd.h> unconditionally.
7971         * modules/xreadlink (Depends-on): Add unistd.
7972         * modules/xreadlink-with-size (Depends-on): Likewise.
7973
7974 2007-03-03  Bruno Haible  <bruno@clisp.org>
7975
7976         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
7977         extracted from gt_FUNC_SETENV.
7978         (gt_FUNC_SETENV): Remove macro.
7979         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
7980         remove gt_FUNC_SETENV.
7981
7982 2007-03-03  Bruno Haible  <bruno@clisp.org>
7983
7984         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
7985         ENABLE_RELOCATABLE here.
7986         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
7987
7988 2007-03-03  Bruno Haible  <bruno@clisp.org>
7989
7990         * modules/rbtreehash-list-tests (Depends-on): Add progname.
7991         * tests/test-rbtreehash_list.c: Include progname.h.
7992         (main): Call set_program_name.
7993
7994         * modules/rbtree-oset-tests (Depends-on): Add progname.
7995         * tests/test-rbtree_oset.c: Include progname.h.
7996         (main): Call set_program_name.
7997
7998         * modules/rbtree-list-tests (Depends-on): Add progname.
7999         * tests/test-rbtree_list.c: Include progname.h.
8000         (main): Call set_program_name.
8001
8002         * modules/linked-list-tests (Depends-on): Add progname.
8003         * tests/test-linked_list.c: Include progname.h.
8004         (main): Call set_program_name.
8005
8006 2007-03-03  Bruno Haible  <bruno@clisp.org>
8007
8008         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
8009         All uses of __restrict changed to _Restrict_.
8010         * lib/glob_.h (__restrict): Remove macro.
8011
8012 2007-03-02  Bruno Haible  <bruno@clisp.org>
8013
8014         * modules/gettext (configure.ac): Require gettext infrastructure
8015         from version 0.16.1.
8016
8017 2007-03-02  Bruno Haible  <bruno@clisp.org>
8018
8019         * modules/linkedhash-list-tests (Depends-on): Add progname.
8020         * tests/test-linkedhash_list.c: Include progname.h.
8021         (main): Call set_program_name.
8022
8023         * modules/carray-list-tests (Depends-on): Add progname.
8024         * tests/test-carray_list.c: Include progname.h.
8025         (main): Call set_program_name.
8026
8027         * modules/avltreehash-list-tests (Depends-on): Add progname.
8028         * tests/test-avltreehash_list.c: Include progname.h.
8029         (main): Call set_program_name.
8030
8031         * modules/avltree-oset-tests (Depends-on): Add progname.
8032         * tests/test-avltree_oset.c: Include progname.h.
8033         (main): Call set_program_name.
8034
8035         * modules/avltree-list-tests (Depends-on): Add progname.
8036         * tests/test-avltree_list.c: Include progname.h.
8037         (main): Call set_program_name.
8038
8039         * modules/array-oset-tests (Depends-on): Add progname.
8040         * tests/test-array_oset.c: Include progname.h.
8041         (main): Call set_program_name.
8042
8043         * modules/array-list-tests (Depends-on): Add progname.
8044         * tests/test-array_list.c: Include progname.h.
8045         (main): Call set_program_name.
8046
8047         * modules/argp-tests (Depends-on): Add progname.
8048         * tests/test-argp.c: Include argp.h first. Include progname.h.
8049         (main): Call set_program_name.
8050
8051 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
8052
8053         * doc/gnulib-tool.texi (Initial import): Reword description of
8054         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
8055         limited effect even if defined after the first system include.
8056
8057 2007-03-01  Bruno Haible  <bruno@clisp.org>
8058
8059         * build-aux/config.libpath: Update to libtool-1.5.22.
8060         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
8061
8062 2007-03-01  Bruno Haible  <bruno@clisp.org>
8063
8064         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
8065         foo_CFLAGS.
8066         Reported by Ralf Wildenhues.
8067
8068 2007-03-01  Bruno Haible  <bruno@clisp.org>
8069
8070         * build-aux/install-reloc: Remove object files left over by some
8071         compilers.
8072         Reported by Ralf Wildenhues.
8073
8074 2007-03-01  Bruno Haible  <bruno@clisp.org>
8075
8076         * build-aux/install-reloc: Break long lines.
8077
8078 2007-03-01  Bruno Haible  <bruno@clisp.org>
8079
8080         * doc/relocatable.texi: Document that it may not work on OpenBSD.
8081         Reported by Ralf Wildenhues.
8082
8083 2007-03-01  Bruno Haible  <bruno@clisp.org>
8084
8085         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
8086         include ordering constraints.
8087
8088 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
8089
8090         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
8091         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
8092         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
8093         as another example.
8094         * lib/time_.h: Fix misspelling.
8095         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
8096         Require gl_HEADER_TIME_H_DEFAULTS.
8097         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
8098         * m4/time_r.m4 (gl_TIME_R): Likewise.
8099         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
8100
8101 2007-03-01  Bruno Haible  <bruno@clisp.org>
8102
8103         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
8104         * m4/utimens.m4 (gl_UTIMENS): Likewise.
8105
8106 2007-03-01  Jim Meyering  <jim@meyering.net>
8107
8108         * modules/xreadlink (Maintainer): Add my name.
8109         * modules/xreadlink-with-size (Depends-on): Alphabetize.
8110
8111 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
8112             Bruno Haible  <bruno@clisp.org>
8113
8114         * build-aux/install-reloc: Compile also c-ctype.c.
8115         * build-aux/relocatable.sh.in: New file.
8116         * doc/relocatable.texi: New file.
8117         * doc/relocatable-maint.texi: New file.
8118         * doc/gnulib.texi: Include relocatable-maint.texi.
8119         * lib/progreloc.c: Include unistd.h unconditionally.
8120         * lib/relocwrapper.c: Include unistd.h unconditionally.
8121         Include c-ctype.h.
8122         (add_dotbin): Use c_tolower.
8123         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
8124         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
8125         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
8126         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
8127         to m4/relocatable-lib.m4.
8128         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
8129         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
8130         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
8131         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
8132         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
8133         * modules/relocatable: New file.
8134         * modules/relocatable-lib: New file.
8135         * modules/relocatable-script: New file.
8136
8137 2007-02-28  Bruno Haible  <bruno@clisp.org>
8138
8139         Import --enable-relocatable infrastructure.
8140         * build-aux/config.libpath: New file, from GNU gettext.
8141         * build-aux/install-reloc: New file, from GNU gettext.
8142         * build-aux/reloc-ldflags: New file, from GNU gettext.
8143         * lib/relocatable.h: New file, from GNU gettext.
8144         * lib/relocatable.c: New file, from GNU gettext.
8145         * lib/relocwrapper.c: New file, from GNU gettext.
8146         * m4/relocatable.m4: New file, from GNU gettext.
8147
8148 2007-02-28  Bruno Haible  <bruno@clisp.org>
8149
8150         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
8151
8152         * modules/xreadlink: New file, from GNU gettext with modifications.
8153         * lib/xreadlink.c: New file, from GNU gettext.
8154         * lib/xreadlink.h: Add comments.
8155         (xreadlink): New declaration.
8156
8157         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
8158         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
8159         lib/xreadlink-with-size.c.
8160         (configure.ac): Remove gl_XREADLINK invocation.
8161         (Makefile.am): Augment lib_SOURCES.
8162         * m4/xreadlink.m4: Remove file.
8163         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
8164         (xreadlink_with_size): Renamed from xreadink.
8165         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
8166         * modules/canonicalize (Depends-on): Replace xreadlink with
8167         xreadlink-with-size.
8168         * lib/canonicalize.c (canonicalize_filename_mode): Update.
8169
8170 2007-02-25  Jim Meyering  <jim@meyering.net>
8171
8172         * build-aux/announce-gen: When complaining about excess arguments,
8173         list them.
8174
8175 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
8176
8177         * README: Document signed integer overflow situation more
8178         accurately.
8179
8180 2007-02-25  Bruno Haible  <bruno@clisp.org>
8181
8182         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
8183         'a' or 'A' conversion.
8184
8185 2007-02-25  Bruno Haible  <bruno@clisp.org>
8186
8187         * modules/filename: Renamed from modules/pathname.
8188         (Files): Replace lib/pathname.h with lib/filename.h. Replace
8189         lib/concatpath.c with lib/concat-filename.c.
8190         (Makefile.am): Update.
8191         (Include): Replace pathname.h with filename.h.
8192         * lib/filename.h: Renamed from lib/pathname.h.
8193         (concatenated_filename): Renamed from concatenated_pathname.
8194         * lib/concat-filename.c: Renamed from lib/concatpath.c.
8195         (concatenated_filename): Renamed from concatenated_pathname.
8196         * lib/findprog.c: Include filename.h instead of pathname.h.
8197         (find_in_path): Update.
8198         * lib/javacomp.c: Include filename.h instead of pathname.h.
8199         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
8200         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
8201         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
8202         is_oldgcj_14_13_usable, is_javac_usable): Update.
8203         * lib/javaexec.c: Include filename.h instead of pathname.h.
8204         (execute_java_class): Update.
8205         * modules/findprog: Update.
8206         * modules/javacomp: Update.
8207         * modules/javaexec: Update.
8208         * MODULES.html.sh (File system functions): Add 'filename', remove
8209         'pathname'.
8210
8211 2007-02-25  Bruno Haible  <bruno@clisp.org>
8212
8213         * modules/printf-frexpl-tests: New file.
8214         * tests/test-printf-frexpl.c: New file.
8215
8216         * modules/printf-frexpl: New file.
8217         * lib/printf-frexpl.h: New file.
8218         * lib/printf-frexpl.c: New file.
8219         * m4/printf-frexpl.m4: New file.
8220
8221 2007-02-25  Bruno Haible  <bruno@clisp.org>
8222
8223         * modules/printf-frexp-tests: New file.
8224         * tests/test-printf-frexp.c: New file.
8225
8226         * modules/printf-frexp: New file.
8227         * lib/printf-frexp.h: New file.
8228         * lib/printf-frexp.c: New file.
8229         * m4/printf-frexp.m4: New file.
8230
8231 2007-02-25  Bruno Haible  <bruno@clisp.org>
8232
8233         Assume automake >= 1.10 for the tests.
8234         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
8235         * modules/arctwo-tests: Likewise.
8236         * modules/argp-tests: Likewise.
8237         * modules/avltree-list-tests: Likewise.
8238         * modules/avltree-oset-tests: Likewise.
8239         * modules/avltreehash-list-tests: Likewise.
8240         * modules/carray-list-tests: Likewise.
8241         * modules/crc-tests: Likewise.
8242         * modules/des-tests: Likewise.
8243         * modules/gc-arcfour-tests: Likewise.
8244         * modules/gc-arctwo-tests: Likewise.
8245         * modules/gc-des-tests: Likewise.
8246         * modules/gc-hmac-md5-tests: Likewise.
8247         * modules/gc-hmac-sha1-tests: Likewise.
8248         * modules/gc-md2-tests: Likewise.
8249         * modules/gc-md4-tests: Likewise.
8250         * modules/gc-md5-tests: Likewise.
8251         * modules/gc-pbkdf2-sha1-tests: Likewise.
8252         * modules/gc-rijndael-tests: Likewise.
8253         * modules/gc-sha1-tests: Likewise.
8254         * modules/gc-tests: Likewise.
8255         * modules/getaddrinfo-tests: Likewise.
8256         * modules/hmac-md5-tests: Likewise.
8257         * modules/hmac-sha1-tests: Likewise.
8258         * modules/linked-list-tests: Likewise.
8259         * modules/linkedhash-list-tests: Likewise.
8260         * modules/lock-tests: Likewise.
8261         * modules/md2-tests: Likewise.
8262         * modules/md4-tests: Likewise.
8263         * modules/md5-tests: Likewise.
8264         * modules/rbtree-list-tests: Likewise.
8265         * modules/rbtree-oset-tests: Likewise.
8266         * modules/rbtreehash-list-tests: Likewise.
8267         * modules/read-file-tests: Likewise.
8268         * modules/rijndael-tests: Likewise.
8269         * modules/stdint-tests: Likewise.
8270         * modules/tls-tests: Likewise.
8271
8272 2007-02-24  Bruno Haible  <bruno@clisp.org>
8273
8274         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
8275         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
8276         function; instead check whether isnan with a double argument links.
8277         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
8278         function; instead check whether isnan with a 'long double' argument
8279         links.
8280         Reported by Eric Blake <ebb9@byu.net>.
8281
8282 2007-02-24  Bruno Haible  <bruno@clisp.org>
8283
8284         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
8285         defined.
8286         * lib/isnanl.c: Remove all code. Just include isnan.c.
8287         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
8288
8289 2007-02-25  Jim Meyering  <jim@meyering.net>
8290
8291         Avoid conflicting types for 'unsetenv' on FreeBSD.
8292         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
8293         conflicting with FreeBSD's (5.0 and 6.1) function declaration
8294         in stdlib.h.
8295
8296 2007-02-24  Bruno Haible  <bruno@clisp.org>
8297
8298         * modules/isnanl-nolibm-tests: New file.
8299         * tests/test-isnanl.c: New file.
8300
8301         * modules/isnanl-nolibm: New file.
8302         * lib/isnanl.h: New file.
8303         * lib/isnanl.c: New file.
8304         * m4/isnanl.m4: New file.
8305
8306 2007-02-24  Bruno Haible  <bruno@clisp.org>
8307
8308         * modules/isnan-nolibm-tests: New file.
8309         * tests/test-isnan.c: New file.
8310
8311         * modules/isnan-nolibm: New file.
8312         * lib/isnan.h: New file.
8313         * lib/isnan.c: New file.
8314         * m4/isnan.m4: New file.
8315
8316 2007-02-24  Bruno Haible  <bruno@clisp.org>
8317
8318         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
8319         assume that an exponent fits in 20 bits.
8320
8321 2007-02-24  Jim Meyering  <jim@meyering.net>
8322
8323         * m4/regex.m4: Update the description of the configure-time option,
8324         --without-included-regex, to state accurately what the defaults are,
8325         and perhaps to give people an idea why using this option is risky.
8326
8327 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
8328
8329         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
8330         loops on small arguments.  This attempts to avoid the problem
8331         Bruno Haible reported for AIX 4.3.2 in
8332         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
8333
8334 2007-02-23  Bruno Haible  <bruno@clisp.org>
8335
8336         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
8337         Needed for help2man.
8338
8339 2007-02-23  Karl Berry  <karl@gnu.org>
8340
8341         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
8342         exists, foo.h should be cvs-ignored, not committed.
8343
8344 2007-02-23  Eric Blake  <ebb9@byu.net>
8345
8346         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
8347         * lib/stat-time.h (includes): Likewise.
8348         * lib/utimecmp.c (includes): Likewise.
8349         * lib/utimens.h (includes): Likewise.
8350         * lib/getdate.y (includes): Also include "timespec.h" for use
8351         internal to the module.
8352         * modules/utimens (Depends-on): Revert yesterday's patch.
8353         * modules/nanosleep (Depends-on): Add missing dependency.
8354
8355 2007-02-22  Bruno Haible  <bruno@clisp.org>
8356
8357         * lib/glob.c: Don't include getlogin_r.h.
8358
8359 2007-02-22  Jim Meyering  <jim@meyering.net>
8360
8361         * modules/utimens (Depends-on): Add timespec, required for
8362         utimens.h's inclusion of timespec.h.
8363
8364 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
8365
8366         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
8367         long unreadable paths in GNU/Linux.  Problem reported by Andreas
8368         Schwab in
8369         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
8370         I'll try to think of a better way to fix the Solaris problem.
8371
8372         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
8373         like glibc; on Solaris 10, it fails with errno == EINVAL.
8374         POSIX says the behavior is unspecified if the first argument is NULL,
8375         so play it safe and never pass NULL to the system getcwd.
8376
8377 2007-02-21  Jim Meyering  <jim@meyering.net>
8378
8379         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
8380         of gettimeofday.  It would conflict with the one now always
8381         provided via sys_time_.h.  Reported by Matthew Woehlke, as
8382         an IRIX 6.5 build failure.
8383
8384 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
8385
8386         Minor fixups to port to Solaris 10 with Sun C 5.8.
8387         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
8388         * modules/getcwd (Depends-on): Add dirfd.
8389         * lib/putenv.c (putenv): #undef it.
8390         (rpl_putenv): New decl.
8391         (malloc, free): Include <stdlib.h> rather than prototyping separately.
8392
8393 2007-02-20  Bruno Haible  <bruno@clisp.org>
8394
8395         * modules/stdio-tests: New file.
8396         * tests/test-stdio.c: New file.
8397
8398         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
8399         (Depends-on): Add stdio.
8400         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
8401         (Include): Use <stdio.h> instead of vsnprintf.h.
8402         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
8403         HAVE_DECL_VSNPRINTF.
8404         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
8405
8406         * modules/snprintf (Files): Remove lib/snprintf.h.
8407         (Depends-on): Add stdio.
8408         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
8409         (Include): Use <stdio.h> instead of snprintf.h.
8410         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
8411         HAVE_DECL_SNPRINTF.
8412         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
8413         * lib/getaddrinfo.c: Likewise.
8414
8415         * modules/stdio: New file.
8416         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
8417         * lib/snprintf.h: Remove file.
8418         * lib/vsnprintf.h: Remove file.
8419         * lib/.cppi-disable: Remove snprintf.h.
8420         * m4/stdio_h.m4: New file.
8421         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
8422
8423 2007-02-20  Jim Meyering  <jim@meyering.net>
8424
8425         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
8426         used by e.g., mingw.  From Bruno Haible.
8427
8428 2007-02-19  Bruno Haible  <bruno@clisp.org>
8429
8430         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
8431         warnings.
8432         Reported by Ben Pfaff <blp@cs.stanford.edu>.
8433
8434 2007-02-19  Bruno Haible  <bruno@clisp.org>
8435
8436         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
8437         from mingw users.
8438
8439 2007-02-19  Bruno Haible  <bruno@clisp.org>
8440
8441         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
8442         warnings.
8443         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
8444
8445 2007-02-19  Jim Meyering  <jim@meyering.net>
8446
8447         Don't use FD after a successful "fdopendir (fd)".
8448         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
8449         Reset it by calling dirfd on the just-obtained DIR*.
8450
8451         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
8452         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
8453
8454 2007-02-18  Bruno Haible  <bruno@clisp.org>
8455
8456         * lib/readlink.c: Include <unistd.h>.
8457         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
8458         HAVE_READLINK.
8459         * modules/readlink (Depends-on): Add unistd.
8460         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8461         (Include): Add <unistd.h>.
8462
8463         * lib/getlogin_r.h: Remove file.
8464         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
8465         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
8466         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
8467         HAVE_DECL_GETLOGIN_R.
8468         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
8469         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8470         (Include): Use <unistd.h> instead of getlogin_r.h.
8471
8472         * lib/getcwd.h: Remove file.
8473         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
8474         * lib/xgetcwd.c: Likewise.
8475         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
8476         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
8477         * modules/getcwd (Files): Remove lib/getcwd.h.
8478         (Depends-on): Add unistd.
8479         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8480         (Include): Use <unistd.h> instad of getcwd.h.
8481
8482         * lib/ftruncate.c: Include <unistd.h> first.
8483         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
8484         Set HAVE_FTRUNCATE.
8485         * modules/ftruncate (Depends-on): Add unistd.
8486         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8487
8488         * lib/fchdir.c: Include <unistd.h> first.
8489         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
8490         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
8491         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
8492         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8493         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
8494
8495         * lib/dup2.c: Include <unistd.h> first.
8496         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
8497         HAVE_DUP2.
8498         * modules/dup2 (Depends-on): Add unistd.
8499         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8500
8501         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
8502         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
8503         REPLACE_CHOWN. Don't define chown as a macro here.
8504         * modules/chown (Depends-on): Add unistd.
8505         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8506
8507         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
8508         Add definition for GL_LINK_WARNING.
8509         (chown, dup2): New declarations.
8510         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
8511         link warning.
8512         (ftruncate): New declaration.
8513         (getcwd): New declaration, taken from old getcwd.h.
8514         (getlogin_r): New declaration, taken from old getlogin_r.h.
8515         (readlink): New declaration.
8516         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
8517         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
8518         (gl_PREREQ_UNISTD): Remove macro.
8519         (gl_UNISTD_MODULE_INDICATOR): New macro.
8520         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
8521         many new variables. Don't set UNISTD_H.
8522         * modules/unistd (Description): Change.
8523         (Depends-on): Add link-warning.
8524         (configure.ac): Update.
8525         (Makefile.am): Create unistd.h always. Substitute many new variables
8526         into it.
8527
8528 2007-02-18  Bruno Haible  <bruno@clisp.org>
8529
8530         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
8531         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
8532         HAVE_GETSUBOPT.
8533         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
8534         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
8535         * lib/getsubopt.h: Remove file.
8536         * modules/getsubopt (Files): Remove lib/getsubopt.h.
8537         (Depends-on): Add stdlib.
8538         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8539         (Includes): Use <stdlib.h> instead of getsubopt.h.
8540         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
8541         Set HAVE_GETSUBOPT.
8542         * lib/getsubopt.c: Don't include getsubopt.h.
8543
8544 2007-02-18  Bruno Haible  <bruno@clisp.org>
8545
8546         * modules/fchdir (Depends-on): Add dup2.
8547
8548 2007-02-18  Bruno Haible  <bruno@clisp.org>
8549
8550         * lib/stdlib_.h: Handle glibc's special invocation convention
8551         specially.
8552
8553 2007-02-18  Bruno Haible  <bruno@clisp.org>
8554
8555         * modules/stdlib-tests: New file.
8556         * tests/test-stdlib.c: New file.
8557
8558         * modules/mkstemp (Files): Remove lib/mkstemp.h.
8559         (Depends-on): Add stdlib.
8560         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8561         (Includes): Use <stdlib.h> instead of mkstemp.h.
8562         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
8563         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
8564         * lib/mkstemp.c: Don't include mkstemp.h.
8565         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
8566         * lib/stdlib--.h: Don't include mkstemp.h.
8567
8568         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
8569         (Depends-on): Add stdlib.
8570         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8571         (Includes): Use <stdlib.h> instead of mkdtemp.h.
8572         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
8573         HAVE_MKDTEMP.
8574         * lib/mkdtemp.c: Don't include mkdtemp.h.
8575         * lib/clean-temp.c: Don't include mkdtemp.h.
8576
8577         * modules/exit (Files): Remove lib/exit.h.
8578         (Depends-on): Add stdlib.
8579         (Makefile.am): Remove lib_SOURCES.
8580         (Include): Use <stdlib.h> instead of exit.h.
8581         * lib/argmatch.c: Don't include exit.h.
8582         * lib/execute.c: Likewise.
8583         * lib/pagealign_alloc.c: Likewise.
8584         * lib/pipe.c: Likewise.
8585         * lib/wait-process.c: Likewise.
8586         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
8587         * lib/exitfail.c: Likewise.
8588         * lib/savewd.c: Likewise.
8589         * lib/xsetenv.c: Likewise.
8590
8591         * modules/stdlib: New file.
8592         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
8593         and extra comments about mkstemp().
8594         * lib/exit.h: Remove file.
8595         * lib/mkdtemp.h: Remove file.
8596         * lib/mkstemp.h: Remove file.
8597         * m4/stdlib_h.m4: New file.
8598         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
8599
8600 2007-02-18  Bruno Haible  <bruno@clisp.org>
8601
8602         * modules/math-tests: New file.
8603         * tests/test-math.c: New file.
8604
8605         * modules/math: New file.
8606         * modules/mathl (Files): Remove lib/mathl.h.
8607         (Depends-on): Add math.
8608         (Makefile.am): Don't mention mathl.h.
8609         (Include): Use <math.h> instead of mathl.h.
8610         * lib/math_.h: New file.
8611         * lib/mathl.h: Remove file.
8612         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
8613         mathl.h.
8614         * lib/asinl.c: Likewise.
8615         * lib/atanl.c: Likewise.
8616         * lib/ceill.c: Likewise.
8617         * lib/cosl.c: Likewise.
8618         * lib/expl.c: Likewise.
8619         * lib/floorl.c: Likewise.
8620         * lib/frexpl.c: Likewise.
8621         * lib/ldexpl.c: Likewise.
8622         * lib/logl.c: Likewise.
8623         * lib/sincosl.c: Likewise.
8624         * lib/sinl.c: Likewise.
8625         * lib/sqrtl.c: Likewise.
8626         * lib/tanl.c: Likewise.
8627         * lib/trigl.c: Likewise.
8628         * m4/math_h.m4: New file.
8629         * MODULES.html.sh (Mathematics): Add math.
8630
8631 2007-02-17  Bruno Haible  <bruno@clisp.org>
8632
8633         * modules/wctype-tests: New file.
8634         * tests/test-wctype.c: New file.
8635
8636         * modules/wchar-tests: New file.
8637         * tests/test-wchar.c: New file.
8638
8639         * modules/unistd-tests: New file.
8640         * tests/test-unistd.c: New file.
8641
8642         * modules/time-tests: New file.
8643         * tests/test-time.c: New file.
8644
8645         * modules/sysexits-tests: New file.
8646         * tests/test-sysexits.c: New file.
8647
8648         * modules/sys_time-tests: New file.
8649         * tests/test-sys_time.c: New file.
8650
8651         * modules/sys_stat-tests: New file.
8652         * tests/test-sys_stat.c: New file.
8653
8654         * modules/sys_socket-tests: New file.
8655         * tests/test-sys_socket.c: New file.
8656
8657         * modules/sys_select-tests: New file.
8658         * tests/test-sys_select.c: New file.
8659
8660         * modules/string-tests: New file.
8661         * tests/test-string.c: New file.
8662
8663         * modules/stdbool-tests: New file.
8664         * tests/test-stdbool.c: New file.
8665
8666         * modules/netinet_in-tests: New file.
8667         * tests/test-netinet_in.c: New file.
8668
8669         * modules/inttypes-tests: New file.
8670         * tests/test-inttypes.c: New file.
8671
8672         * modules/fcntl-tests: New file.
8673         * tests/test-fcntl.c: New file.
8674
8675         * modules/byteswap-tests: New file.
8676         * tests/test-byteswap.c: New file.
8677
8678         * modules/arpa_inet-tests: New file.
8679         * tests/test-arpa_inet.c: New file.
8680
8681 2007-02-17  Bruno Haible  <bruno@clisp.org>
8682
8683         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
8684         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
8685         if the corresponding module is not enabled. Emit link warnings if
8686         the function is used nevertheless.
8687         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
8688         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
8689         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
8690         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
8691         * modules/inttypes (Depends-on): Add link-warning.
8692         (Makefile.am): Copy the contents of build-aux/link-warning.h into
8693         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
8694         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
8695         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
8696         * modules/imaxdiv (configure.ac): Likewise.
8697         * modules/strtoimax (configure.ac): Likewise.
8698         * modules/strtoumax (configure.ac): Likewise.
8699
8700 2007-02-17  Bruno Haible  <bruno@clisp.org>
8701
8702         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
8703         gl_STRING_MODULE_INDICATOR_DEFAULTS.
8704         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
8705         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
8706
8707 2007-02-17  Bruno Haible  <bruno@clisp.org>
8708
8709         * modules/link-warning: New file.
8710         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
8711         * lib/string_.h (GL_LINK_WARNING): Remove definition.
8712         * modules/string (Depends-on): Add link-warning.
8713         (Makefile.am): Copy the contents of build-aux/link-warning.h into
8714         string.h.
8715         * MODULES.html.sh (Support for building libraries and executables): Add
8716         link-warning.
8717
8718 2007-02-17  Bruno Haible  <bruno@clisp.org>
8719
8720         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
8721         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
8722         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
8723         long lines.
8724
8725 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
8726             Bruno Haible  <bruno@clisp.org>
8727
8728         * modules/tmpfile: New file.
8729         * lib/tmpfile.c: New file.
8730         * m4/tmpfile.m4: New file.
8731         * MODULES.html.sh (func_all_modules): New section "Input/output".
8732
8733 2007-02-15  Bruno Haible  <bruno@clisp.org>
8734
8735         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
8736         (supports_delete_on_close): New function.
8737         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
8738
8739 2007-02-14  Bruno Haible  <bruno@clisp.org>
8740
8741         * modules/mbspcasecmp-tests: New file.
8742         * tests/test-mbspcasecmp.sh: New file.
8743         * tests/test-mbspcasecmp.c: New file.
8744
8745         New module mbspcasecmp.
8746         * modules/mbspcasecmp: New file.
8747         * lib/mbspcasecmp.c: New file.
8748         * lib/string_.h (strncasecmp): Change warning message.
8749         (mbspcasecmp): New declaration.
8750         * m4/mbspcasecmp.m4: New file.
8751         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8752         GNULIB_MBSPCASECMP.
8753         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
8754         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
8755
8756 2007-02-14  Bruno Haible  <bruno@clisp.org>
8757
8758         * modules/mbsncasecmp-tests: New file.
8759         * tests/test-mbsncasecmp.sh: New file.
8760         * tests/test-mbsncasecmp.c: New file.
8761
8762         New module mbsncasecmp.
8763         * modules/mbsncasecmp: New file.
8764         * lib/mbsncasecmp.c: New file.
8765         * lib/string_.h (mbsncasecmp): New declaration.
8766         * m4/mbsncasecmp.m4: New file.
8767         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8768         GNULIB_MBSNCASECMP.
8769         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
8770         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
8771
8772 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8773
8774         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
8775         Verify that it doesn't overlap with our flags.
8776         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
8777         do not have the desired effect in multibyte locales; instead, use
8778         mbscasecmp.
8779         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
8780         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
8781         we don't require GNU fnmatch ourselves (if our users require it, they
8782         should do so explicitly).
8783
8784         Fix regex code so it doesn't rely on strcasecmp.
8785         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
8786         Otherwise, include gnulib's langinfo.h.
8787         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
8788         undesirable behavior in non-C locales.  Instead, rely on localecharset.
8789         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
8790         * modules/regex (FILES): Remove m4/codeset.m4.
8791         (Depends-on): Add localcharset.  Remove strcase.
8792
8793 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8794
8795         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
8796         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
8797
8798 2007-02-13  Bruno Haible  <bruno@clisp.org>
8799
8800         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
8801         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8802
8803 2007-02-12  Bruno Haible  <bruno@clisp.org>
8804
8805         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
8806         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
8807         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
8808         time warning rather than a link error.
8809
8810 2007-02-12  Bruno Haible  <bruno@clisp.org>
8811
8812         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
8813         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
8814         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8815
8816 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
8817
8818         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
8819         args, not 2.
8820
8821 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
8822
8823         New module 'time', so that apps can include <time.h> as per
8824         POSIX and GNU instead of separate include files like time_r.h
8825         and timegm.h.  This implementation tries out a simpler approach
8826         for replacing decls in standard include files (as compared to
8827         the string module), somewhat as an experiment.
8828
8829         * config/srclist.txt: Comment out mktime.c for now.
8830         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
8831         since it doesn't apply any more.  Use generic wording instead.
8832         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
8833         'time'.
8834         * lib/time_.h, m4/time_h.m4, modules/time: New files.
8835         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
8836         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
8837         Don't include <sys/types.h>; no longer needed since we assume C89.
8838         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
8839         * lib/strftime.c: Likewise.
8840         * lib/time_r.c: Likewise.
8841         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
8842         * lib/nanosleep.c: Include <time.h> first, to check interface.
8843         * lib/strptime.c: Likewise.
8844         * lib/time_r.c: Likewise.
8845         * lib/timegm.c: Likewise.
8846         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
8847         needed.
8848         * lib/timegm.c: Don't include timegm.h; no longer needed.
8849         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
8850         time.h now handles any problems in that area.
8851         (struct timespec, nanosleep): Remove; time.h now arranges for these.
8852         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
8853         that time.h defines struct timespec.
8854         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
8855         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
8856         handles that.
8857         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
8858         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
8859         needed.  Set REPLACE_LOCALTIME.
8860         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
8861         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
8862         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
8863         nanosleep; time_h.m4 now does that.  Don't require
8864         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
8865         module handles this now.
8866         * modules/getdate (Depends-on): Remove timespec.  Add time.
8867         * modules/nanosleep (Depends-on): Likewise.
8868         * modules/stat-time (Depends-on): Likewise.
8869         * modules/nanosleep (Include): Include time.h, not timespec.h.
8870         * modules/strptime (Files): Remove lib/strptime.h.
8871         (Depends-on): Add extensions, time.
8872         (Include): Include time.h, not strptime.h.
8873         * modules/time_r (Files): Remove lib/time_r.h.
8874         (Depends-on): Add time.
8875         (Include): Include time.h, not time_r.h.
8876         * modules/timegm: Likewise.
8877         * modules/timespec (Description): Now does timespec-related decls
8878         of our own, instead of struct timespec itself.
8879         (Depends-on): Add time; remove extensions.
8880         (Maintainer): Add self.
8881         * modules/utimecmp (Depends-on): Add time; remove timespec.
8882         * modules/utimens (Depends-on): Likewise.
8883         * modules/xnanosleep (Depends-on): Likewise.
8884
8885 2007-02-11  Bruno Haible  <bruno@clisp.org>
8886
8887         * lib/c-strstr.c: Include allocsa.h.
8888         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8889         * lib/c-strcasestr.c: Include allocsa.h.
8890         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8891         * lib/strcasestr.c: Include allocsa.h.
8892         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8893         * lib/mbsstr.c: Include allocsa.h.
8894         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8895         allocsa/freesa instead of malloc/free.
8896         * lib/mbscasestr.c: Include allocsa.h.
8897         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8898         allocsa/freesa instead of malloc/free.
8899         * modules/c-strstr (Depends-on): Add allocsa.
8900         * modules/c-strcasestr (Depends-on): Likewise.
8901         * modules/strcasestr (Depends-on): Likewise.
8902         * modules/mbsstr (Depends-on): Likewise.
8903         * modules/mbscasestr (Depends-on): Likewise.
8904
8905 2007-02-11  Bruno Haible  <bruno@clisp.org>
8906
8907         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
8908
8909         * modules/mbsspn-tests: New file.
8910         * tests/test-mbsspn.sh: New file.
8911         * tests/test-mbsspn.c: New file.
8912
8913 2007-02-11  Bruno Haible  <bruno@clisp.org>
8914
8915         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
8916
8917         * modules/mbspbrk-tests: New file.
8918         * tests/test-mbspbrk.sh: New file.
8919         * tests/test-mbspbrk.c: New file.
8920
8921 2007-02-11  Bruno Haible  <bruno@clisp.org>
8922
8923         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
8924         unneeded cast.
8925
8926         * modules/mbscspn-tests: New file.
8927         * tests/test-mbscspn.sh: New file.
8928         * tests/test-mbscspn.c: New file.
8929
8930 2007-02-11  Bruno Haible  <bruno@clisp.org>
8931
8932         * modules/mbscasecmp-tests: New file.
8933         * tests/test-mbscasecmp.sh: New file.
8934         * tests/test-mbscasecmp.c: New file.
8935
8936 2007-02-11  Bruno Haible  <bruno@clisp.org>
8937
8938         Ensure O(n) worst-case complexity of mbscasestr.
8939         * lib/mbscasestr.c: Include stdbool.h.
8940         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8941         functions.
8942         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
8943         the bookkeeping indicates that it's worth it.
8944         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
8945
8946         * modules/mbscasestr-tests: New file.
8947         * tests/test-mbscasestr1.c: New file.
8948         * tests/test-mbscasestr2.sh: New file.
8949         * tests/test-mbscasestr2.c: New file.
8950         * tests/test-mbscasestr3.sh: New file.
8951         * tests/test-mbscasestr3.c: New file.
8952         * tests/test-mbscasestr4.sh: New file.
8953         * tests/test-mbscasestr4.c: New file.
8954         * m4/locale-tr.m4: New file.
8955
8956 2007-02-11  Bruno Haible  <bruno@clisp.org>
8957
8958         Ensure O(n) worst-case complexity of mbsstr.
8959         * lib/mbsstr.c: Include stdbool.h.
8960         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8961         functions.
8962         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
8963         bookkeeping indicates that it's worth it.
8964         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
8965
8966         * modules/mbsstr-tests: New file.
8967         * tests/test-mbsstr1.c: New file.
8968         * tests/test-mbsstr2.sh: New file.
8969         * tests/test-mbsstr2.c: New file.
8970         * tests/test-mbsstr3.sh: New file.
8971         * tests/test-mbsstr3.c: New file.
8972         * m4/locale-fr.m4: New file.
8973
8974 2007-02-11  Bruno Haible  <bruno@clisp.org>
8975
8976         * lib/mbsrchr.c (mbsrchr): Fix bug.
8977
8978         * modules/mbsrchr-tests: New file.
8979         * tests/test-mbsrchr.sh: New file.
8980         * tests/test-mbsrchr.c: New file.
8981
8982 2007-02-11  Bruno Haible  <bruno@clisp.org>
8983
8984         * lib/mbschr.c (mbschr): Fix bug.
8985
8986         * modules/mbschr-tests: New file.
8987         * tests/test-mbschr.sh: New file.
8988         * tests/test-mbschr.c: New file.
8989         * m4/locale-zh.m4: New file.
8990
8991 2007-02-11  Bruno Haible  <bruno@clisp.org>
8992
8993         Support for copying multibyte string iterators.
8994         * lib/mbiter.h: Include <string.h>.
8995         (mbiter_multi_copy): New function.
8996         (mbi_copy): New macro.
8997         * lib/mbuiter.h: Include <string.h>.
8998         (mbuiter_multi_copy): New function.
8999         (mbui_copy): New macro.
9000
9001 2007-02-11  Bruno Haible  <bruno@clisp.org>
9002
9003         New module mbslen.
9004         * modules/mbslen: New file.
9005         * lib/mbslen.c: New file.
9006         * lib/string_.h (mbslen): New declaration.
9007         * m4/mbslen.m4: New file.
9008         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9009         GNULIB_MBSLEN.
9010         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
9011         * MODULES.html.sh (Internationalization functions): Add mbslen.
9012
9013 2007-02-11  Bruno Haible  <bruno@clisp.org>
9014
9015         Ensure O(n) worst-case complexity of strcasestr substitute.
9016         * lib/strcasestr.c: Include stdbool.h.
9017         (knuth_morris_pratt): New function.
9018         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
9019         bookkeeping indicates that it's worth it.
9020         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
9021
9022         * modules/strcasestr-tests: New file.
9023         * tests/test-strcasestr.c: New file.
9024
9025 2007-02-11  Bruno Haible  <bruno@clisp.org>
9026
9027         Ensure O(n) worst-case complexity of c_strcasestr.
9028         * lib/c-strcasestr.c: Include stdbool.h, string.h.
9029         (knuth_morris_pratt): New function.
9030         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
9031         the bookkeeping indicates that it's worth it.
9032         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
9033
9034         * modules/c-strcasestr-tests: New file.
9035         * tests/test-c-strcasestr.c: New file.
9036
9037 2007-02-11  Bruno Haible  <bruno@clisp.org>
9038
9039         Ensure O(n) worst-case complexity of c_strstr.
9040         * lib/c-strstr.c: Include stdbool.h, string.h.
9041         (knuth_morris_pratt): New function.
9042         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
9043         bookkeeping indicates that it's worth it.
9044         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
9045
9046         * lib/c-strstr.c: Complete rewrite for maintainability.
9047
9048         * modules/c-strstr-tests: New file.
9049         * tests/test-c-strstr.c: New file.
9050
9051 2007-02-11  Bruno Haible  <bruno@clisp.org>
9052
9053         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
9054         5.2.1 and earlier, whereby \055 was treated just like the range
9055         delimiter '-'.
9056         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
9057
9058 2007-02-08  Bruno Haible  <bruno@clisp.org>
9059
9060         * modules/regex (Depends-on): Add stdbool.
9061         Reported by Dalibor Topic <robilad@kaffe.org>.
9062
9063 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
9064
9065         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
9066         Prefer returning from main to exiting from it.
9067         Remove unnecessary parens after sizeof.
9068
9069 2007-02-05  Bruno Haible  <bruno@clisp.org>
9070
9071         New module mbssep.
9072         * modules/mbssep: New file.
9073         * lib/mbssep.c: New file.
9074         * lib/string_.h (strsep): Add a conditional link warning.
9075         (mbssep): New declaration.
9076         * m4/mbssep.m4: New file.
9077         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9078         GNULIB_MBSSEP.
9079         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
9080         * MODULES.html.sh (Internationalization functions): Add mbssep.
9081
9082 2007-02-05  Bruno Haible  <bruno@clisp.org>
9083
9084         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
9085         Optimize search in case of 1 delimiter.
9086
9087 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
9088
9089         * lib/acl.h: Include sys/types.h before sys/acl.h.
9090
9091 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
9092
9093         Merge upstream fix for glibc bugzilla #3957:
9094
9095         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
9096
9097         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
9098         bit for RE_HAT_LISTS_NOT_NEWLINE.
9099         (build_charclass_op): Remove bogus comment.
9100
9101 2007-02-05  Simon Josefsson  <simon@josefsson.org>
9102
9103         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
9104
9105 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
9106
9107         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
9108         * lib/memmem.c [!defined _LIBC]: Include config.h.
9109
9110 2007-02-04  Bruno Haible  <bruno@clisp.org>
9111
9112         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
9113         warning message.
9114
9115 2007-02-04  Bruno Haible  <bruno@clisp.org>
9116
9117         New module mbstok_r.
9118         * modules/mbstok_r: New file.
9119         * lib/mbstok_r.c: New file.
9120         * lib/string_.h (strtok_r): Change argument names to match the
9121         comments. Add a conditional link warning.
9122         (mbstok_r): New declaration.
9123         * m4/mbstok_r.m4: New file.
9124         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9125         GNULIB_MBSTOK_R.
9126         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
9127         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
9128
9129 2007-02-04  Bruno Haible  <bruno@clisp.org>
9130
9131         New module mbsspn.
9132         * modules/mbsspn: New file.
9133         * lib/mbsspn.c: New file.
9134         * lib/string_.h (strspn): Add a conditional link warning.
9135         (mbsspn): New declaration.
9136         * m4/mbsspn.m4: New file.
9137         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9138         GNULIB_MBSSPN.
9139         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
9140         * MODULES.html.sh (Internationalization functions): Add mbsspn.
9141
9142 2007-02-04  Bruno Haible  <bruno@clisp.org>
9143
9144         New module mbspbrk.
9145         * modules/mbspbrk: New file.
9146         * lib/mbspbrk.c: New file.
9147         * lib/string_.h (strpbrk): Add a conditional link warning.
9148         (mbspbrk): New declaration.
9149         * m4/mbspbrk.m4: New file.
9150         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9151         GNULIB_MBSPBRK.
9152         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
9153         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
9154
9155 2007-02-04  Bruno Haible  <bruno@clisp.org>
9156
9157         New module mbscspn.
9158         * modules/mbscspn: New file.
9159         * lib/mbscspn.c: New file.
9160         * lib/string_.h (strcspn): Add a conditional link warning.
9161         (mbscspn): New declaration.
9162         * m4/mbscspn.m4: New file.
9163         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9164         GNULIB_MBSCSPN.
9165         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
9166         * MODULES.html.sh (Internationalization functions): Add mbscspn.
9167
9168 2007-02-04  Bruno Haible  <bruno@clisp.org>
9169
9170         New module mbscasestr, reduced goal of strcasestr.
9171         * modules/mbscasestr: New file.
9172         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
9173         (mbscasestr): Renamed from strcasestr.
9174         * lib/strcasestr.c: Don't include mbuiter.h.
9175         (strcasestr): Remove support for multibyte locales.
9176         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
9177         Change the conditional link warning.
9178         (mbscasestr): New declaration.
9179         * m4/mbscasestr.m4: New file.
9180         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
9181         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
9182         REPLACE_STRCASESTR.
9183         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
9184         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
9185         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
9186         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
9187         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
9188         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
9189         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
9190         (Depends-on): Remove mbuiter.
9191         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
9192
9193 2007-02-04  Bruno Haible  <bruno@clisp.org>
9194
9195         Simplify handling of strncasecmp.
9196         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
9197         the conditional link warning.
9198         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
9199         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
9200         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
9201         * modules/strcase (configure.ac): Don't invoke
9202         gl_STRING_MODULE_INDICATOR.
9203         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
9204
9205 2007-02-04  Bruno Haible  <bruno@clisp.org>
9206
9207         New module mbscasecmp, reduced goal of strcasecmp.
9208         * modules/mbscasecmp: New file.
9209         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
9210         (mbscasecmp): Renamed from strcasecmp.
9211         * lib/strcasecmp.c: Don't include mbuiter.h.
9212         (strcasecmp): Remove support for multibyte locales.
9213         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
9214         Change the conditional link warning.
9215         (mbscasecmp): New declaration.
9216         * m4/mbscasecmp.m4: New file.
9217         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
9218         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
9219         REPLACE_STRCASECMP.
9220         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
9221         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9222         GNULIB_MBSCASECMP.
9223         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
9224         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
9225         * modules/strcase (Files): Remove m4/mbrtowc.m4.
9226         (Depends-on): Remove mbuiter.
9227         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
9228
9229 2007-02-04  Bruno Haible  <bruno@clisp.org>
9230
9231         New module mbsstr. Remove module strstr.
9232         * modules/mbsstr: New file.
9233         * modules/strstr: Remove file.
9234         * lib/mbsstr.c: Renamed from lib/strstr.c.
9235         (mbsstr): Renamed from strstr.
9236         * lib/string_.h (strstr): Remove declaration. Change the conditional
9237         link warning.
9238         (mbsstr): New declaration.
9239         * m4/mbsstr.m4: New file.
9240         * m4/strstr.m4: Remove file.
9241         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
9242         REPLACE_STRSTR.
9243         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
9244         Don't initialize GNULIB_STRSTR.
9245         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
9246         substitute GNULIB_STRSTR and REPLACE_STRSTR.
9247         * MODULES.html.sh (Internationalization functions): Add mbsstr.
9248         (Support for systems lacking ANSI C 89): Remove strstr.
9249
9250 2007-02-04  Bruno Haible  <bruno@clisp.org>
9251
9252         New module mbsrchr.
9253         * modules/mbsrchr: New file.
9254         * lib/mbsrchr.c: New file.
9255         * lib/string_.h (strrchr): Add a conditional link warning.
9256         (mbsrchr): New declaration.
9257         * m4/mbsrchr.m4: New file.
9258         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9259         GNULIB_MBSRCHR.
9260         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
9261         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
9262
9263 2007-02-04  Bruno Haible  <bruno@clisp.org>
9264
9265         New module mbschr.
9266         * modules/mbschr: New file.
9267         * lib/mbschr.c: New file.
9268         * lib/string_.h (strchr): Add a conditional link warning.
9269         (mbschr): New declaration.
9270         * m4/mbschr.m4: New file.
9271         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9272         GNULIB_MBSCHR.
9273         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
9274         * MODULES.html.sh (Internationalization functions): Add mbschr.
9275
9276 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
9277
9278         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
9279
9280         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
9281
9282 2007-02-04  Bruno Haible  <bruno@clisp.org>
9283
9284         New module description section 'configure.ac-early'.
9285         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
9286         (func_get_autoconf_early_snippet): New function.
9287         (func_import, func_create_testdir): Use it. Remove special cases for
9288         modules 'extensions' and 'lock'.
9289         * modules/extensions (configure.ac-early): Require
9290         gl_USE_SYSTEM_EXTENSIONS.
9291         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
9292
9293 2007-02-04  Bruno Haible  <bruno@clisp.org>
9294
9295         Make use of gcj-4.3's -fsource and -ftarget option.
9296         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
9297         and if so try the options -fsource and -ftarget.
9298         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
9299         source_version, ftarget_option, target_version arguments.
9300         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
9301         (is_envjavac_oldgcj_14_14_usable): Renamed from
9302         is_envjavac_gcj_14_14_usable.
9303         (is_envjavac_oldgcj_14_13_usable): Renamed from
9304         is_envjavac_gcj_14_13_usable.
9305         (is_gcj_present): Update.
9306         (is_gcj_43, is_gcj43_usable): New functions.
9307         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
9308         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
9309         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
9310         try the options -fsource and -ftarget.
9311
9312 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
9313
9314         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
9315         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
9316         larger value.
9317
9318 2007-02-03  Jim Meyering  <jim@meyering.net>
9319
9320         Give tools a better chance to allocate space for very large buffers.
9321         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
9322
9323         Make pwd and readlink work also when run with an unreadable parent dir
9324         on systems with openat support.
9325         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
9326         provided getcwd function, even when we have openat support.
9327         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
9328
9329 2007-02-02  Bruno Haible  <bruno@clisp.org>
9330
9331         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
9332         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
9333         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
9334         portability problems if one of these functions is only used on specific
9335         platforms.
9336         Reported by Paul Eggert.
9337
9338 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
9339
9340         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
9341         is causing more trouble than it's curing.
9342         * lib/regex_internal.h (__mempcpy): Remove.
9343         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
9344         (and make the code a tad smaller to boot).
9345         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
9346
9347 2007-02-02  Jim Meyering  <jim@meyering.net>
9348
9349         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
9350         section, not in the Makefile.am: one.
9351
9352 2007-02-02  Eric Blake  <ebb9@byu.net>
9353
9354         * lib/strchrnul.c: Always include config.h first.
9355
9356         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
9357         gnulib strstr is not necessary here.
9358
9359 2007-02-02  Simon Josefsson  <simon@josefsson.org>
9360
9361         * m4/socklen.m4: Fix typo.
9362
9363 2007-02-02  Eric Blake  <ebb9@byu.net>
9364
9365         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
9366         * modules/netinet_in (Makefile.am): Likewise.
9367
9368 2007-02-01  Bruno Haible  <bruno@clisp.org>
9369
9370         * lib/string_.h (GL_LINK_WARNING): New macro.
9371         (strcasecmp, strstr, strcasestr): If provided by the system,
9372         conditionally define as a macro that leads to a warning instead of to
9373         an error.
9374         (strncasecmp): Conditionally define as a macro that leads to a warning.
9375
9376 2007-02-01  Karl Berry  <karl@gnu.org>
9377
9378         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
9379
9380 2007-02-01  Bruno Haible  <bruno@clisp.org>
9381
9382         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
9383         renamings.
9384
9385 2007-02-01  Eric Blake  <ebb9@byu.net>
9386
9387         * modules/regex (Depends-on): Revert dependence on mempcpy.
9388         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
9389         module's definition of mempcpy.
9390         Reported by Paul Eggert.
9391
9392 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
9393
9394         * lib/string_.h: If the gnulib module XYZ is not present, undefine
9395         the symbol XYZ before redefining it.  This fixes a problem with
9396         programs that don't use XYZ, when compiled on systems that define
9397         XYZ to something else.
9398
9399 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9400
9401         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
9402         occurs when "mkdir -m foo" creates a setgid directory that is (1)
9403         writeable to group or other and (2) is intended to have a special
9404         mode bit that is set or cleared.  In such a case, the directory
9405         should be neither group- nor other-writeable until the special
9406         mode bits are right.
9407
9408 2007-01-31  Eric Blake  <ebb9@byu.net>
9409
9410         * modules/mountlist (Depends-on): Add strstr.
9411
9412         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
9413         bug.
9414         * modules/string (Makefile.am): Remove redundant replacement.
9415         * modules/regex (Depends-on): Add mempcpy.
9416
9417 2007-01-31  Bruno Haible  <bruno@clisp.org>
9418
9419         New module description field 'Link'.
9420         * gnulib-tool (func_usage): Document --extract-link-directive.
9421         (sed_extract_prog): Recognize 'Link' directive.
9422         (func_get_link_directive): New function.
9423         (func_import): Show summary of link directives.
9424         Handle --extract-link-directive option.
9425         * modules/acl (Link): New section.
9426         * modules/clock-time (Link): New section.
9427         * modules/euidaccess (Link): New section.
9428         * modules/gettext (Link): New section.
9429         * modules/iconv (Link): New section.
9430         * modules/lock (Link): New section.
9431         * modules/nanosleep (Link): New section.
9432         * modules/readline (Link): New section.
9433
9434 2007-01-27  Bruno Haible  <bruno@clisp.org>
9435
9436         Enforce the use of gnulib modules for unportable <string.h> functions.
9437         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
9438         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
9439         (gl_HEADER_STRING_H_BODY): Require it.
9440         * lib/string_.h: If the gnulib module XYZ is not present, redefine
9441         the symbol XYZ to one that gives a link error.
9442         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
9443         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
9444         * modules/mempcpy (configure.ac): Likewise.
9445         * modules/memrchr (configure.ac): Likewise.
9446         * modules/stpcpy (configure.ac): Likewise.
9447         * modules/stpncpy (configure.ac): Likewise.
9448         * modules/strcase (configure.ac): Likewise.
9449         * modules/strcasestr (configure.ac): Likewise.
9450         * modules/strchrnul (configure.ac): Likewise.
9451         * modules/strdup (configure.ac): Likewise.
9452         * modules/strndup (configure.ac): Likewise.
9453         * modules/strnlen (configure.ac): Likewise.
9454         * modules/strpbrk (configure.ac): Likewise.
9455         * modules/strsep (configure.ac): Likewise.
9456         * modules/strstr (configure.ac): Likewise.
9457         * modules/strtok_r (configure.ac): Likewise.
9458
9459 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
9460
9461         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
9462
9463 2007-01-30  Jim Meyering  <jim@meyering.net>
9464
9465         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
9466
9467 2007-01-29  Bruno Haible  <bruno@clisp.org>
9468
9469         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
9470         * lib/execute.c: Likewise.
9471         * lib/pipe.c: Likewise.
9472         * lib/printf-args.h: Likewise.
9473         * lib/printf-args.c: Likewise.
9474         * lib/printf-parse.c: Likewise.
9475         * lib/vasnprintf.c: Likewise.
9476
9477 2007-01-29  Eric Blake  <ebb9@byu.net>
9478
9479         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
9480         declaration.
9481
9482 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
9483
9484         * lib/strptime.h (strptime): Use 'restrict' for args where
9485         POSIX requires this.
9486         * lib/strptime.c (strptime): Likewise.
9487         Change license notice from LGPL to GPL, since gnulib-tool will
9488         change this as needed.
9489         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
9490         defined.
9491         Include "strptime.h" first, to check interface.
9492         Do not #undef _LIBC and _NL_CURRENT.
9493         Do not include <stdlib.h>; no longer needed.
9494         Include "time_r.h" and declare ptime_locale_status
9495         only if _LIBC is not defined.
9496         (__P): Remove unused macro.
9497         (match_string): Bring back glibc version, but use it only if _LIBC
9498         is defined.
9499         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
9500         Remove unnecessary assertion and abort() call.
9501         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
9502         * m4/strptime.m4: Fix serial number comment.
9503         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
9504         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
9505         (Depends-on): Add time_r.
9506
9507 2007-01-29  Bruno Haible  <bruno@clisp.org>
9508
9509         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9510         strptime.
9511         * modules/strptime (Depends-on): Add stdbool.
9512         * lib/strptime.h: Include <time.h> always. Add comments.
9513
9514 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
9515
9516         * modules/strptime: New file.
9517         * lib/strptime.h: New file.
9518         * lib/strptime.c: New file.
9519         * m4/strptime.m4: New file.
9520
9521 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
9522
9523         * MODULES.html.sh: New module mpsort.
9524         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
9525
9526         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
9527         a circularity problem with HP-UX ia64 reported by Bob Proulx in
9528         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
9529         All uses changed.
9530         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
9531         All uses changed.
9532         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
9533         to _Restrict_.
9534         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
9535         the parameter matches the prototype.
9536
9537 2007-01-28  Jim Meyering  <jim@meyering.net>
9538
9539         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
9540         sys/time.h here, reverting that part of the previous patch:
9541         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
9542
9543 2007-01-28  Bruno Haible  <bruno@clisp.org>
9544
9545         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
9546         value of $(SYS_TIME_H).
9547         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
9548         remove it conditionally, too. [added by Jim Meyering]
9549         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
9550         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
9551         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
9552         GETTIMEOFDAY_REPLACEMENT to 1.
9553
9554 2007-01-28  Bruno Haible  <bruno@clisp.org>
9555
9556         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
9557         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
9558         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
9559         Set UNISTD_H instead of UNISTD_H2.
9560         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
9561
9562 2007-01-28  Bruno Haible  <bruno@clisp.org>
9563
9564         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
9565         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
9566
9567 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9568
9569         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
9570         (func_create_testdir): Ensure C locale for `grep' and `tr'
9571         character ranges.
9572         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
9573         ACLOCAL_AMFLAGS parsing state machine.
9574
9575 2007-01-27  Bruno Haible  <bruno@clisp.org>
9576
9577         * modules/unistr/base: Update.
9578
9579 2007-01-27  Bruno Haible  <bruno@clisp.org>
9580
9581         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
9582         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
9583         * modules/unistr/u32-mbtouc-unsafe: Renamed from
9584         modules/unistr/u32-mbtouc.
9585         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
9586         * lib/unistr.h: Update.
9587         * lib/linebreak.c: Update.
9588         * modules/unistr/u32-mbtouc: Renamed from
9589         modules/unistr/u32-mbtouc-safe.
9590         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
9591         * lib/unistr.h: Update.
9592         * lib/unistr/u32-to-u8.c: Update.
9593         * lib/unistr/u32-to-u16.c: Update.
9594
9595 2007-01-27  Bruno Haible  <bruno@clisp.org>
9596
9597         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
9598         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
9599         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
9600         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
9601         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
9602         * modules/unistr/u16-mbtouc-unsafe: Renamed from
9603         modules/unistr/u16-mbtouc.
9604         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
9605         * lib/unistr.h: Update.
9606         * lib/linebreak.c: Update.
9607         * modules/linebreak: Update.
9608         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
9609         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
9610         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
9611         * modules/unistr/u16-mbtouc: Renamed from
9612         modules/unistr/u16-mbtouc-safe.
9613         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
9614         * lib/unistr.h: Update.
9615         * lib/unistr/u16-to-u8.c: Update.
9616         * modules/unistr/u16-to-u8: Update.
9617         * lib/unistr/u16-to-u32.c: Update.
9618         * modules/unistr/u16-to-u32: Update.
9619
9620 2007-01-27  Bruno Haible  <bruno@clisp.org>
9621
9622         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
9623         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
9624         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
9625         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
9626         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
9627         * modules/unistr/u8-mbtouc-unsafe: Renamed from
9628         modules/unistr/u8-mbtouc.
9629         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
9630         * lib/unistr.h: Update.
9631         * lib/striconveh.c: Update.
9632         * modules/striconveh: Update.
9633         * lib/linebreak.c: Update.
9634         * modules/linebreak: Update.
9635         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
9636         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
9637         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
9638         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
9639         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
9640         * lib/unistr.h: Update.
9641         * lib/striconveh.c: Update.
9642         * modules/striconveh: Update.
9643         * lib/unistr/u8-to-u16.c: Update.
9644         * modules/unistr/u8-to-u16: Update.
9645         * lib/unistr/u8-to-u32.c: Update.
9646         * modules/unistr/u8-to-u32: Update.
9647
9648 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9649
9650         Sync from Libtool.
9651         * lib/argz.c: Do not include strings.h nor memory.h, include
9652         string.h unconditionally.  Patch by Simon Josefsson.
9653
9654 2007-01-27  Bruno Haible  <bruno@clisp.org>
9655
9656         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
9657         from gl_HEADER_STRING_H_BODY.
9658         (gl_HEADER_STRING_H_BODY): Require it.
9659         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
9660         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
9661         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
9662         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
9663         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
9664         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
9665         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
9666         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
9667         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
9668         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
9669         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
9670         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
9671         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
9672         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
9673         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
9674
9675 2007-01-27  Bruno Haible  <bruno@clisp.org>
9676
9677         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
9678         check_PROGRAMS into noinst_PROGRAMS.
9679         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
9680         check_PROGRAMS in this case.
9681         (func_import): Set for_test to false.
9682         (func_create_testdir): Set for_test to true.
9683
9684 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9685             Bruno Haible  <bruno@clisp.org>
9686
9687         * modules/strcasestr (Files): Remove lib/strcasestr.h.
9688         (Depends-on): Add string.
9689         (Includes): Use <string.h> instead of strcasestr.h.
9690         * modules/string (Makefile.am): Also substitute the value of
9691         REPLACE_STRCASESTR.
9692         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
9693         assume strcasestr is declared in <string.h> not <strings.h>. Also
9694         set REPLACE_STRCASESTR.
9695         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
9696         REPLACE_STRCASESTR.
9697         * lib/strcasestr.h: Remove file.
9698         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
9699         * lib/string_.h (strcasestr): New declaration.
9700
9701 2007-01-27  Bruno Haible  <bruno@clisp.org>
9702
9703         * lib/string_.h: Use 'extern'.
9704
9705 2007-01-27  Jim Meyering  <jim@meyering.net>
9706
9707         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
9708         of set-but-not-used local, "q".
9709
9710         * lib/mempcpy.c: Include <config.h> before <string.h>.
9711         This fixes a compilation error on HP-UX, due to the system's
9712         "restrict"-using mempcpy prototype.
9713
9714 2007-01-26  Bruno Haible  <bruno@clisp.org>
9715
9716         Small optimization.
9717         * lib/javacomp.c: Include c-strstr.h.
9718          (is_envjavac_gcj): Use c_strstr instead of strstr.
9719         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
9720
9721 2007-01-26  Bruno Haible  <bruno@clisp.org>
9722
9723         * MODULES.html.sh (Unicode string functions): Add the new modules.
9724
9725         * modules/uniconv/u32-strconv-to-locale: New file.
9726         * lib/uniconv/u32-strconv-to-locale.c: New file.
9727
9728         * modules/uniconv/u16-strconv-to-locale: New file.
9729         * lib/uniconv/u16-strconv-to-locale.c: New file.
9730
9731         * modules/uniconv/u8-strconv-to-locale: New file.
9732         * lib/uniconv/u8-strconv-to-locale.c: New file.
9733
9734         * modules/uniconv/u32-strconv-from-locale: New file.
9735         * lib/uniconv/u32-strconv-from-locale.c: New file.
9736
9737         * modules/uniconv/u16-strconv-from-locale: New file.
9738         * lib/uniconv/u16-strconv-from-locale.c: New file.
9739
9740         * modules/uniconv/u8-strconv-from-locale: New file.
9741         * lib/uniconv/u8-strconv-from-locale.c: New file.
9742
9743         * modules/uniconv/u32-strconv-to-enc: New file.
9744         * lib/uniconv/u32-strconv-to-enc.c: New file.
9745         * modules/uniconv/u32-strconv-to-enc-tests: New file.
9746         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
9747
9748         * modules/uniconv/u16-strconv-to-enc: New file.
9749         * lib/uniconv/u16-strconv-to-enc.c: New file.
9750         * lib/uniconv/u-strconv-to-enc.h: New file.
9751         * modules/uniconv/u16-strconv-to-enc-tests: New file.
9752         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
9753
9754         * modules/uniconv/u8-strconv-to-enc: New file.
9755         * lib/uniconv/u8-strconv-to-enc.c: New file.
9756         * modules/uniconv/u8-strconv-to-enc-tests: New file.
9757         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
9758
9759         * modules/uniconv/u32-strconv-from-enc: New file.
9760         * lib/uniconv/u32-strconv-from-enc.c: New file.
9761         * modules/uniconv/u32-strconv-from-enc-tests: New file.
9762         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
9763
9764         * modules/uniconv/u16-strconv-from-enc: New file.
9765         * lib/uniconv/u16-strconv-from-enc.c: New file.
9766         * modules/uniconv/u16-strconv-from-enc-tests: New file.
9767         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
9768
9769         * modules/uniconv/u8-strconv-from-enc: New file.
9770         * lib/uniconv/u8-strconv-from-enc.c: New file.
9771         * lib/uniconv/u-strconv-from-enc.h: New file.
9772         * modules/uniconv/u8-strconv-from-enc-tests: New file.
9773         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
9774
9775         * modules/uniconv/u32-conv-from-enc: New file.
9776         * lib/uniconv/u32-conv-from-enc.c: New file.
9777         * modules/uniconv/u32-conv-from-enc-tests: New file.
9778         * tests/uniconv/test-u32-conv-from-enc.c: New file.
9779
9780         * modules/uniconv/u16-conv-from-enc: New file.
9781         * lib/uniconv/u16-conv-from-enc.c: New file.
9782         * lib/uniconv/u-conv-from-enc.h: New file.
9783         * modules/uniconv/u16-conv-from-enc-tests: New file.
9784         * tests/uniconv/test-u16-conv-from-enc.c: New file.
9785
9786         * modules/uniconv/u8-conv-from-enc: New file.
9787         * lib/uniconv/u8-conv-from-enc.c: New file.
9788         * modules/uniconv/u8-conv-from-enc-tests: New file.
9789         * tests/uniconv/test-u8-conv-from-enc.c: New file.
9790
9791         * modules/uniconv/base: New file.
9792         * lib/uniconv.h: New file.
9793
9794 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9795
9796         * doc/gnulib-tool.texi (Initial import): Update to match current
9797         behavior with strdup module.
9798         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
9799         * lib/memmem.h: Remove; all uses removed.  This is now done
9800         by <string.h>.
9801         * lib/mempcpy.h: Likewise.
9802         * lib/memrchr.h: Likewise.
9803         * lib/stpcpy.h: Likewise.
9804         * lib/stpncpy.h: Likewise.
9805         * lib/strcase.h: Likewise.
9806         * lib/strchrnul.h: Likewise.
9807         * lib/strdup.h: Likewise.
9808         * lib/strndup.h: Likewise.
9809         * lib/strnlen.h: Likewise.
9810         * lib/strpbrk.h: Likewise.
9811         * lib/strsep.h: Likewise.
9812         * lib/strstr.h: Likewise.
9813         * lib/strtok_r.h: Likewise.
9814         * lib/string_.h: New file.
9815         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
9816         Rely on <string.h> instead.
9817         * lib/canon-host.c: Likewise.
9818         * lib/chdir-long.c: Likewise.
9819         * lib/concatpath.c: Likewise.
9820         * lib/exclude.c: Likewise.
9821         * lib/fchdir.c: Likewise.
9822         * lib/getaddrinfo.c: Likewise.
9823         * lib/getcwd.c: Likewise.
9824         * lib/getsubopt.c: Likewise.
9825         * lib/glob.c: Likewise.
9826         * lib/hard-locale.c: Likewise.
9827         * lib/iconvme.c: Likewise.
9828         * lib/javacomp.c: Likewise.
9829         * lib/mempcpy.c: Likewise.
9830         * lib/memrchr.c: Likewise.
9831         * lib/regex_internal.h: Likewise.
9832         * lib/stpncpy.c: Likewise.
9833         * lib/strcasecmp.c: Likewise.
9834         * lib/strchrnul.c: Likewise.
9835         * lib/strdup.c: Likewise.
9836         * lib/striconv.c: Likewise.
9837         * lib/striconveh.c: Likewise.
9838         * lib/striconveha.c: Likewise.
9839         * lib/strncasecmp.c: Likewise.
9840         * lib/strndup.c: Likewise.
9841         * lib/strnlen.c: Likewise.
9842         * lib/strsep.c: Likewise.
9843         * lib/strstr.c: Likewise.
9844         * lib/strtok_r.c: Likewise.
9845         * lib/userspec.c: Likewise.
9846         * lib/w32spawn.h: Likewise.
9847         * lib/xstrndup.c: Likewise.
9848         * lib/mountlist.c (strstr): Remove decl.
9849         * m4/string_h.m4: New file.
9850         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
9851         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
9852         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
9853         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
9854         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
9855         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
9856         Set REPLACE_STRCASECMP if necessary.
9857         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
9858         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
9859         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
9860         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
9861         HAVE_DECL_STRDUP if necessary.
9862         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
9863         since gl_FUNC_STRNDUP does that now.
9864         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
9865         Check for decl here...
9866         (gl_PREREQ_STRNLEN): ... not here.
9867         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
9868         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
9869         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
9870         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
9871         necessary.
9872         * modules/string: New file.
9873         * modules/memmem (Files): Remove special-purpose include file.
9874         (Depends-on): Add string.
9875         (Include): Include <string.h>, not the removed file.
9876         * modules/mempcpy: Likewise.
9877         * modules/memrchr: Likewise.
9878         * modules/stpcpy: Likewise.
9879         * modules/stpncpy: Likewise.
9880         * modules/strcase: Likewise.
9881         * modules/strchrnul: Likewise.
9882         * modules/strdup: Likewise.
9883         * modules/strndup: Likewise.
9884         * modules/strnlen: Likewise.
9885         * modules/strpbrk: Likewise.
9886         * modules/strsep: Likewise.
9887         * modules/strstr: Likewise.
9888         * modules/strtok_r: Likewise.
9889         * tests/test-dirname.c: Don't include "strdup.h", since
9890         <string.h> now suffices.
9891         * tests/test-memmem.c: Don't include "memmem.h", since
9892         <string.h> now suffices.
9893
9894 2007-01-25  Bruno Haible  <bruno@clisp.org>
9895
9896         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
9897         *resultp is 0.
9898
9899         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
9900         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
9901         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
9902         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
9903
9904         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
9905         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
9906         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
9907         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
9908         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
9909         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
9910
9911 2007-01-24  Bruno Haible  <bruno@clisp.org>
9912
9913         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
9914         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
9915         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
9916         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
9917         gl_FUNC_FTS_CORE.
9918         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
9919         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
9920         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
9921         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
9922         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
9923         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
9924         gl_FUNC_FCHOWNAT.
9925         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
9926         gl_FUNC_STRFTIME.
9927         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
9928         Reported by Ralf Wildenhues.
9929
9930 2007-01-24  Bruno Haible  <bruno@clisp.org>
9931
9932         Drop AC_REQUIRE calls that are redundant with the module dependencies.
9933         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
9934         gl_GETADDRINFO.
9935         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
9936         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
9937         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
9938
9939 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9940
9941         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
9942         Don't use 'exit'; just return from 'main'.
9943         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
9944
9945         * lib/fnmatch_.h: Readjust white space and comments to match
9946         glibc, to avoid spurious diffs.
9947
9948 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9949
9950         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
9951         2004-12-01 change by Jakub Jelinek, since this code won't compile
9952         if !LIBC.  Problem reported by Bob Proulx.
9953
9954 2007-01-23  Bruno Haible  <bruno@clisp.org>
9955
9956         * lib/striconveh.c: Include c-strcaseeq.h.
9957         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
9958         * modules/striconveh (Depends-on): Add c-strcaseeq.
9959
9960 2007-01-23  Bruno Haible  <bruno@clisp.org>
9961
9962         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
9963
9964         * modules/c-strcaseeq: New file.
9965         * lib/c-strcaseeq.h: New file.
9966
9967         * modules/streq: New file.
9968         * lib/streq.h: New file.
9969
9970 2007-01-23  Bruno Haible  <bruno@clisp.org>
9971
9972         * modules/striconveha-tests: New file.
9973         * tests/test-striconveha.c: New file.
9974
9975         * lib/striconveha.h: Include <stdbool.h>.
9976         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
9977         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
9978         (mem_iconveha_notranslit): Renamed from mem_iconveha.
9979         (mem_iconveha): New function.
9980         (str_iconveha_notranslit): Renamed from str_iconveha.
9981         (str_iconveha): New function.
9982         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
9983         c-strcase.
9984
9985 2007-01-23  Bruno Haible  <bruno@clisp.org>
9986
9987         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
9988         encodings without forgiving before trying any encoding with handler.
9989         (str_iconveha): Try all encodings without forgiving before trying any
9990         encoding with handler.
9991
9992 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9993
9994         Import the following changes from libc.
9995
9996         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
9997
9998         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
9999
10000         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
10001
10002         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
10003         normal_bracket label.
10004
10005         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
10006
10007         [BZ #361]
10008         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
10009         to normal_bracket after fetching the next character.
10010
10011 2007-01-22  Bruno Haible  <bruno@clisp.org>
10012
10013         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
10014         argument.
10015         * lib/striconveh.c (iconv_carefully_1): New function.
10016         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
10017         argument.
10018         (str_cd_iconveh): Update.
10019         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
10020         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
10021         * tests/test-striconveh.c (MAGIC): New macro.
10022         (new_offsets): New function.
10023         (main): Test call with and without offsets.
10024
10025 2007-01-22  Bruno Haible  <bruno@clisp.org>
10026
10027         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
10028         * modules/sys_select (Makefile.am): Likewise.
10029         * modules/sys_socket (Makefile.am): Likewise.
10030         * modules/sys_time (Makefile.am): Likewise.
10031
10032 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
10033
10034         * modules/gettimeofday (License): Change from GPL to LGPL, since
10035         gettimeofday is a library function.
10036
10037 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10038
10039         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
10040
10041 2007-01-21  Bruno Haible  <bruno@clisp.org>
10042
10043         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
10044
10045 2007-01-21  Bruno Haible  <bruno@clisp.org>
10046
10047         * modules/striconveha: New file.
10048         * lib/striconveha.h: New file.
10049         * lib/striconveha.c: New file.
10050         * MODULES.html.sh (Internationalization functions): Add striconveha.
10051         * lib/striconv.c (str_iconv): Optimize the case of an empty input
10052         string.
10053         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
10054
10055 2007-01-21  Bruno Haible  <bruno@clisp.org>
10056
10057         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
10058         * lib/striconveh.c (str_iconveh): Likewise.
10059
10060 2007-01-21  Bruno Haible  <bruno@clisp.org>
10061
10062         * lib/striconveh.h (mem_iconveh): New declaration.
10063         * lib/striconveh.c (mem_iconveh): New function.
10064         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
10065
10066 2007-01-21  Bruno Haible  <bruno@clisp.org>
10067
10068         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
10069
10070         * lib/striconveh.h (mem_cd_iconveh): Change specification.
10071         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
10072         original result buffer.
10073         (str_cd_iconveh): Update.
10074         * tests/test-striconveh.c (main): Update.
10075
10076         * lib/striconv.h (mem_cd_iconv): Change specification.
10077         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
10078         result buffer.
10079         (str_cd_iconv): Update.
10080         * tests/test-striconv.c (main): Update.
10081
10082 2007-01-21  Bruno Haible  <bruno@clisp.org>
10083
10084         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
10085
10086 2007-01-20  Jim Meyering  <jim@meyering.net>
10087
10088         * lib/userspec.c (parse_with_separator): If a user or group string
10089         starts with "+", skip the corresponding name-to-ID look-up, since
10090         such a look-up must fail: user and group names may not include "+".
10091
10092 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10093
10094         * lib/poll.c: Include sys/time.h and time.h unconditionally,
10095         since we now assume the sys_time module.
10096         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
10097         check for sys/time.h; no longer needed.
10098         * modules/poll (Depends-on): Depend on sys_time.
10099
10100 2007-01-18  Bruno Haible  <bruno@clisp.org>
10101
10102         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
10103         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
10104
10105         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
10106         gettimeofday.
10107
10108         * tests/test-gettimeofday.c: Include <time.h>.
10109         (dummy): Remove variable.
10110
10111         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
10112         gl_HEADER_SYS_TIME_H.
10113         (gl_HEADER_SYS_TIME_H): New macro.
10114
10115         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
10116         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10117         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
10118         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
10119         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10120         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
10121         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
10122         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10123         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
10124         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
10125         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10126
10127         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
10128         last change; it caused a compilation error when cross-compiling to
10129         Cygwin.
10130
10131 2007-01-18  Jim Meyering  <jim@meyering.net>
10132
10133         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
10134         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
10135         than the race-prone "test -d sys || mkdir sys".
10136         (configure.ac): Use AC_PROG_MKDIR_P.
10137         * modules/sys_select: Likewise.
10138         * modules/sys_socket: Likewise.
10139         * modules/sys_time: Likewise.
10140
10141 2007-01-18  Eric Blake  <ebb9@byu.net>
10142
10143         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
10144         replace gettimeofday.
10145         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
10146         name, to avoid infinite recursion.
10147
10148 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10149
10150         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
10151         module sys_time.
10152         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
10153         assume timespec.h defines struct timeval.
10154         * lib/settime.c: Likewise.
10155         * lib/utimens.c: Likewise.
10156         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
10157         since we now assume the gettimeofday module.
10158         * lib/tempname.c (__gen_tempname): Likewise.
10159         * lib/gettimeofday.h: Remove.
10160         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
10161         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
10162         Include <time.h>, for 'time()'.
10163         (localtime_buffer_addr): Also use this workaround if
10164         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
10165         to simplify the uses.  All uses changed.
10166         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
10167         that #undef is inside {}, and 'const' follows type name consistently.
10168         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
10169         (gettimeofday): Do not use the maximum possible value for
10170         tv->tv_usec, since that might break usages other than ls.c.
10171         Instead, we'll leave ls.c alone.  This undoes today's patch
10172         by Bruno.  Add a compile-time warning for 1s-clock resolution;
10173         we've never observed the problem but might as well keep the
10174         canary.
10175         * lib/nanosleep.c: Include timespec.h first, for interface check.
10176         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
10177         now assume the sys_time module.
10178         * lib/tempname.c: Likewise.
10179         * lib/timespec.h: Likewise.
10180         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
10181         needed.
10182         * lib/strftime.c: Likewise.
10183         * lib/timespec.h: Likewise.
10184         * lib/posixtm.c: Include posixtm.h first, for interface check.
10185         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
10186         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
10187         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
10188         * lib/sys_time_.h: New file.
10189         * lib/timespec.h (struct timespec): Use long int, not long.
10190         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
10191         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
10192         Remove obsolescent call to AC_HEADER_TIME.
10193         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
10194         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
10195         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
10196         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
10197         Likewise.
10198         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
10199         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
10200         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
10201         into the sys_time module.  Check for gettimeofday just once.
10202         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
10203         for gettimeofday signature to just check the signature.  Merely
10204         compile it, since linking doesn't test signature.  Improve test for
10205         whether gettimeofday.o is actually needed.
10206         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
10207         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
10208         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
10209         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10210         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
10211         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
10212         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
10213         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
10214         than worrying about sys/time.h.
10215         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
10216         Don't bother worrying about TIME_WITH_SYS_TIME.
10217         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
10218         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
10219         * m4/sys_time_h.m4: New file.
10220         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
10221         Don't include sys/time.h.  Return from main rather than exiting.
10222         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
10223         all uses changed.
10224         * modules/gethrxtime (Depends-on): Add sys_time.
10225         * modules/gettime (Depends-on): Likewise.
10226         * modules/gettimeofday (Depends-on): Likewise.
10227         * modules/nanosleep (Depends-on): Likewise.
10228         * modules/settime (Depends-on): Likewise.
10229         * modules/tempname (Depends-on): Likewise.
10230         * modules/utimens (Depends-on): Likewise.
10231         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
10232         (Include:) Change back to <sys/time.h>.
10233         (Maintainer:) Add self.
10234         * modules/sys_time: New file.
10235         * modules/tempname (Depends-on): Add gettimeofday.
10236         * tests/test-gettimeofday.c: Include <sys/time.h>
10237         rather than gettimeofday.h.
10238
10239 2007-01-17  Bruno Haible  <bruno@clisp.org>
10240
10241         * gnulib-tool (func_get_license): Revert last patch. Instead, let
10242         the license default to GPL.
10243         (func_create_testdir): Don't complain if a module is LGPL and its
10244         tests module depends on GPLed modules.
10245
10246 2007-01-17  Bruno Haible  <bruno@clisp.org>
10247
10248         * lib/gettimeofday.c (gettimeofday): Add code for the case
10249         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
10250         maximum possible value for tv->tv_usec, rather than the minimum one.
10251
10252 2005-10-08  Martin Lambers  <marlam@marlam.de>
10253 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
10254 2007-01-16  Bruno Haible  <bruno@clisp.org>
10255
10256         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
10257         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
10258         gl_FUNC_GETTIMEOFDAY.
10259         (Include): Add gettimeofday.h.
10260         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
10261         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
10262         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
10263         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
10264         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
10265         * lib/gettimeofday.h: New file.
10266         * lib/gettimeofday.c: Include <sys/timeb.h>.
10267         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
10268         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10269         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
10270         fall back on time().
10271
10272         * tests/test-gettimeofday.c: New file.
10273         * modules/gettimeofday-tests: New file.
10274
10275 2007-01-16  Eric Blake  <ebb9@byu.net>
10276
10277         * modules/fnmatch (Depends-on): Depend on wchar.
10278         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
10279         * m4/fnmatch.m4: Likewise.
10280         * modules/mbchar (Makefile.am): Assume <wchar.h>.
10281         * m4/mbchar.m4: Likewise.
10282         * modules/mbswidth (Depends-on): Depend on wchar.
10283         * lib/mbswidth.c: Assume <wchar.h>.
10284         * m4/mbswidth.m4: Likewise.
10285         * modules/quotearg (Depends-on): Depend on wchar.
10286         * lib/quotearg.c: Assume <wchar.h>.
10287         * m4/quotearg.m4: Likewise.
10288         * modules/regex (Depends-on): Depend on wchar.
10289         * lib/regex_internal.h: Assume <wchar.h>.
10290         * m4/regex.m4: Likewise.
10291         * modules/stdint (Depends-on): Depend on wchar.
10292         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
10293         * m4/stdint.m4: Likewise.
10294         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
10295         * modules/strftime (Depends-on): Depend on wchar.
10296         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
10297         * modules/strtol (Depends-on): Depend on wchar.
10298         * lib/strtol.c: Assume <wchar.h>.
10299         * modules/wcwidth (Depends-on): Depend on wchar.
10300         * lib/wcwidth.h: Assume <wchar.h>.
10301         * m4/wcwidth.m4: Likewise.
10302
10303 2007-01-16  Bruno Haible  <bruno@clisp.org>
10304
10305         * modules/csharpexec-script: New, created from...
10306         * modules/csharpexec: ... this.
10307
10308 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
10309
10310         * modules/javaexec-script: New, created from...
10311         * modules/javaexec: ... this.
10312
10313 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10314
10315         * modules/poll (Dependencies): Add sys_select.
10316
10317 2007-01-15  Jim Meyering  <jim@meyering.net>
10318
10319         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
10320         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
10321         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
10322         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
10323
10324 2007-01-15  Bruno Haible  <bruno@clisp.org>
10325
10326         * modules/striconveh: New file.
10327         * lib/striconveh.h: New file.
10328         * lib/striconveh.c: New file.
10329         * MODULES.html.sh (Internationalization functions): Add striconveh.
10330
10331         * modules/striconveh-tests: New file.
10332         * tests/test-striconveh.c: New file.
10333
10334 2007-01-15  Bruno Haible  <bruno@clisp.org>
10335
10336         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
10337         not from GNU libiconv or GNU libc.
10338
10339 2007-01-15  Bruno Haible  <bruno@clisp.org>
10340
10341         * doc/gnulib-intro.texi (Copyright): Explain the different license
10342         terms for module descriptions, autoconf macros, tests, documentation.
10343
10344 2007-01-14  Bruno Haible  <bruno@clisp.org>
10345
10346         * modules/striconv-tests: New file.
10347         * tests/test-striconv.c: New file.
10348
10349 2007-01-14  Bruno Haible  <bruno@clisp.org>
10350
10351         * modules/iconv-tests: New file.
10352         * tests/test-iconv.c: New file.
10353
10354 2007-01-14  Bruno Haible  <bruno@clisp.org>
10355
10356         * gnulib-tool (func_get_license): For test modules, use the license of
10357         the main module.
10358
10359 2007-01-14  Bruno Haible  <bruno@clisp.org>
10360
10361         * modules/iconv (Include): Clarify that <iconv.h> can only be included
10362         if iconv is found to exist.
10363
10364 2007-01-14  Bruno Haible  <bruno@clisp.org>
10365
10366         * modules/c-ctype-tests: New file.
10367         * tests/test-c-ctype.c: New file.
10368
10369 2007-01-14  Bruno Haible  <bruno@clisp.org>
10370
10371         * modules/binary-io-tests: New file.
10372         * tests/test-binary-io.sh: New file.
10373         * tests/test-binary-io.c: New file.
10374
10375 2007-01-14  Bruno Haible  <bruno@clisp.org>
10376
10377         * modules/array-oset-tests: New file.
10378         * tests/test-array_oset.c: New file.
10379
10380 2007-01-14  Bruno Haible  <bruno@clisp.org>
10381
10382         * modules/array-list-tests: New file.
10383         * tests/test-array_list.c: New file.
10384
10385 2007-01-14  Bruno Haible  <bruno@clisp.org>
10386
10387         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
10388         and make.
10389         Reported by Simon Josefsson in
10390         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
10391
10392 2007-01-14  Bruno Haible  <bruno@clisp.org>
10393
10394         * modules/allocsa-tests: New file.
10395         * tests/test-allocsa.c: New file.
10396
10397 2007-01-14  Bruno Haible  <bruno@clisp.org>
10398
10399         * modules/fchdir (Depends-on): Add absolute-header.
10400         * modules/unistd (Depends-on): Likewise.
10401
10402 2006-12-30  Bruno Haible  <bruno@clisp.org>
10403
10404         * modules/fchdir: New file.
10405         * modules/unistd (Files): Add lib/unistd_.h.
10406         (Makefile.am): Generate unistd.h from unistd_.h.
10407         * lib/fchdir.c: New file.
10408         * lib/dirent_.h: New file.
10409         * lib/unistd_.h: New file.
10410         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
10411         * m4/fchdir.m4: New file.
10412         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
10413         (gl_HEADER_UNISTD): Invoke it.
10414         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
10415         function.
10416         * lib/backupfile.c (opendir, closedir): Undefine.
10417         * lib/chown.c (open, close): Undefine.
10418         * lib/clean-temp.c (open, close): Undefine.
10419         * lib/copy-file.c (open, close): Undefine.
10420         * lib/execute.c (open, close): Undefine.
10421         * lib/fsusage.c (open, close): Undefine.
10422         * lib/gc-gnulib.c (open, close): Undefine.
10423         * lib/getcwd.c (opendir, closedir): Undefine.
10424         * lib/glob.c (opendir, closedir): Undefine.
10425         * lib/javacomp.c (open, close): Undefine.
10426         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
10427         * lib/openat-proc.c (open, close): Undefine.
10428         * lib/pagealign_alloc.c (open, close): Undefine.
10429         * lib/pipe.c (open, close): Undefine.
10430         * lib/progreloc.c (open, close): Undefine.
10431         * lib/savedir.c (opendir, closedir): Undefine.
10432         * lib/utime.c (open, close): Undefine.
10433         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
10434
10435 2007-01-10  Bruno Haible  <bruno@clisp.org>
10436
10437         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
10438
10439 2007-01-12  Eric Blake  <ebb9@byu.net>
10440
10441         Provide a robust <wchar.h>.  Further simplifications are now
10442         possible in other modules, but not included here.
10443         * modules/wchar: New module.
10444         * m4/wchar.m4: New file.
10445         * lib/wchar_.h: Likewise.
10446         * modules/mbchar (Depends-on): Depend on wchar, as the first use
10447         of the new module.
10448         * MODULES.html.sh (Extended multibyte and wide character utilities):
10449         New section.
10450
10451 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10452
10453         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
10454         to a reasonable default for memory allocation.
10455         (xreadlink): Don't allocate a huge buffer, to work around a buggy
10456         file system that reports garbage st_size values for symlinks.
10457         Problem reported by Liyang Hu.
10458
10459 2007-01-11  Simon Josefsson  <simon@josefsson.org>
10460
10461         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
10462         Emacs .#* auto-save files).
10463
10464 2007-01-11  Bruno Haible  <bruno@clisp.org>
10465
10466         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
10467         directory.
10468
10469 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
10470
10471         Use @...@ consistently in lib/wctype_.h.
10472         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
10473         on it being set to 1 or 0.
10474         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
10475         go back to AC_SUBSTing it.
10476         * modules/wctype (Makefile.am): Undo previous change.
10477
10478 2007-01-10  Eric Blake  <ebb9@byu.net>
10479
10480         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
10481         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
10482         * modules/wctype (Makefile.am): Likewise.
10483         Reported by Chris McGuire.
10484
10485 2007-01-10  Jim Meyering  <jim@meyering.net>
10486
10487         fts.c: a small readability/maintainability improvement
10488         * lib/fts.c (fts_read): Make this code slightly more readable and
10489         maintainable by hoisting the "sp->fts_cur = p" assignments to
10490         immediately follow the statements that set P.  Derived from
10491         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
10492
10493 2007-01-10  Eric Blake  <ebb9@byu.net>
10494
10495         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
10496         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
10497         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10498         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
10499         Reported by Chris McGuire.
10500
10501 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10502
10503         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
10504         in sed script.
10505
10506 2007-01-09  Bruno Haible  <bruno@clisp.org>
10507
10508         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
10509         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
10510         variables.
10511         (func_module): Use them.
10512
10513 2007-01-09  Bruno Haible  <bruno@clisp.org>
10514
10515         * modules/unistr/base: New file.
10516         * lib/unistr.h: New file.
10517
10518         * modules/unistr/u8-to-u16: New file.
10519         * lib/unistr/u8-to-u16.c: New file.
10520
10521         * modules/unistr/u8-to-u32: New file.
10522         * lib/unistr/u8-to-u32.c: New file.
10523
10524         * modules/unistr/u16-to-u8: New file.
10525         * lib/unistr/u16-to-u8.c: New file.
10526
10527         * modules/unistr/u16-to-u32: New file.
10528         * lib/unistr/u16-to-u32.c: New file.
10529
10530         * modules/unistr/u32-to-u8: New file.
10531         * lib/unistr/u32-to-u8.c: New file.
10532
10533         * modules/unistr/u32-to-u16: New file.
10534         * lib/unistr/u32-to-u16.c: New file.
10535
10536         * modules/unistr/u8-check: New file.
10537         * modules/unistr/u16-check: New file.
10538         * modules/unistr/u32-check: New file.
10539         * lib/unistr/u8-check.c: New file.
10540         * lib/unistr/u16-check.c: New file.
10541         * lib/unistr/u32-check.c: New file.
10542
10543         * modules/unistr/u8-chr: New file.
10544         * modules/unistr/u16-chr: New file.
10545         * modules/unistr/u32-chr: New file.
10546         * lib/unistr/u8-chr.c: New file.
10547         * lib/unistr/u16-chr.c: New file.
10548         * lib/unistr/u32-chr.c: New file.
10549
10550         * modules/unistr/u8-cmp: New file.
10551         * modules/unistr/u16-cmp: New file.
10552         * modules/unistr/u32-cmp: New file.
10553         * lib/unistr/u8-cmp.c: New file.
10554         * lib/unistr/u16-cmp.c: New file.
10555         * lib/unistr/u32-cmp.c: New file.
10556
10557         * modules/unistr/u8-cpy: New file.
10558         * modules/unistr/u16-cpy: New file.
10559         * modules/unistr/u32-cpy: New file.
10560         * lib/unistr/u8-cpy.c: New file.
10561         * lib/unistr/u16-cpy.c: New file.
10562         * lib/unistr/u32-cpy.c: New file.
10563         * lib/unistr/u-cpy.h: New file.
10564
10565         * modules/unistr/u8-cpy-alloc: New file.
10566         * modules/unistr/u16-cpy-alloc: New file.
10567         * modules/unistr/u32-cpy-alloc: New file.
10568         * lib/unistr/u8-cpy-alloc.c: New file.
10569         * lib/unistr/u16-cpy-alloc.c: New file.
10570         * lib/unistr/u32-cpy-alloc.c: New file.
10571         * lib/unistr/u-cpy-alloc.h: New file.
10572
10573         * modules/unistr/u8-endswith: New file.
10574         * modules/unistr/u16-endswith: New file.
10575         * modules/unistr/u32-endswith: New file.
10576         * lib/unistr/u8-endswith.c: New file.
10577         * lib/unistr/u16-endswith.c: New file.
10578         * lib/unistr/u32-endswith.c: New file.
10579         * lib/unistr/u-endswith.h: New file.
10580
10581         * modules/unistr/u8-mblen: New file.
10582         * modules/unistr/u16-mblen: New file.
10583         * modules/unistr/u32-mblen: New file.
10584         * lib/unistr/u8-mblen.c: New file.
10585         * lib/unistr/u16-mblen.c: New file.
10586         * lib/unistr/u32-mblen.c: New file.
10587
10588         * modules/unistr/u8-mbtouc: New file.
10589         * modules/unistr/u16-mbtouc: New file.
10590         * modules/unistr/u32-mbtouc: New file.
10591         * lib/unistr/u8-mbtouc.c: New file.
10592         * lib/unistr/u16-mbtouc.c: New file.
10593         * lib/unistr/u32-mbtouc.c: New file.
10594
10595         * modules/unistr/u8-mbtouc-safe: New file.
10596         * modules/unistr/u16-mbtouc-safe: New file.
10597         * modules/unistr/u32-mbtouc-safe: New file.
10598         * lib/unistr/u8-mbtouc-safe.c: New file.
10599         * lib/unistr/u16-mbtouc-safe.c: New file.
10600         * lib/unistr/u32-mbtouc-safe.c: New file.
10601
10602         * modules/unistr/u8-move: New file.
10603         * modules/unistr/u16-move: New file.
10604         * modules/unistr/u32-move: New file.
10605         * lib/unistr/u8-move.c: New file.
10606         * lib/unistr/u16-move.c: New file.
10607         * lib/unistr/u32-move.c: New file.
10608         * lib/unistr/u-move.h: New file.
10609
10610         * modules/unistr/u8-next: New file.
10611         * modules/unistr/u16-next: New file.
10612         * modules/unistr/u32-next: New file.
10613         * lib/unistr/u8-next.c: New file.
10614         * lib/unistr/u16-next.c: New file.
10615         * lib/unistr/u32-next.c: New file.
10616
10617         * modules/unistr/u8-prev: New file.
10618         * modules/unistr/u16-prev: New file.
10619         * modules/unistr/u32-prev: New file.
10620         * lib/unistr/u8-prev.c: New file.
10621         * lib/unistr/u16-prev.c: New file.
10622         * lib/unistr/u32-prev.c: New file.
10623
10624         * modules/unistr/u8-set: New file.
10625         * modules/unistr/u16-set: New file.
10626         * modules/unistr/u32-set: New file.
10627         * lib/unistr/u8-set.c: New file.
10628         * lib/unistr/u16-set.c: New file.
10629         * lib/unistr/u32-set.c: New file.
10630         * lib/unistr/u-set.h: New file.
10631
10632         * modules/unistr/u8-startswith: New file.
10633         * modules/unistr/u16-startswith: New file.
10634         * modules/unistr/u32-startswith: New file.
10635         * lib/unistr/u8-startswith.c: New file.
10636         * lib/unistr/u16-startswith.c: New file.
10637         * lib/unistr/u32-startswith.c: New file.
10638         * lib/unistr/u-startswith.h: New file.
10639
10640         * modules/unistr/u8-stpcpy: New file.
10641         * modules/unistr/u16-stpcpy: New file.
10642         * modules/unistr/u32-stpcpy: New file.
10643         * lib/unistr/u8-stpcpy.c: New file.
10644         * lib/unistr/u16-stpcpy.c: New file.
10645         * lib/unistr/u32-stpcpy.c: New file.
10646         * lib/unistr/u-stpcpy.h: New file.
10647
10648         * modules/unistr/u8-stpncpy: New file.
10649         * modules/unistr/u16-stpncpy: New file.
10650         * modules/unistr/u32-stpncpy: New file.
10651         * lib/unistr/u8-stpncpy.c: New file.
10652         * lib/unistr/u16-stpncpy.c: New file.
10653         * lib/unistr/u32-stpncpy.c: New file.
10654         * lib/unistr/u-stpncpy.h: New file.
10655
10656         * modules/unistr/u8-strcat: New file.
10657         * modules/unistr/u16-strcat: New file.
10658         * modules/unistr/u32-strcat: New file.
10659         * lib/unistr/u8-strcat.c: New file.
10660         * lib/unistr/u16-strcat.c: New file.
10661         * lib/unistr/u32-strcat.c: New file.
10662         * lib/unistr/u-strcat.h: New file.
10663
10664         * modules/unistr/u8-strchr: New file.
10665         * modules/unistr/u16-strchr: New file.
10666         * modules/unistr/u32-strchr: New file.
10667         * lib/unistr/u8-strchr.c: New file.
10668         * lib/unistr/u16-strchr.c: New file.
10669         * lib/unistr/u32-strchr.c: New file.
10670
10671         * modules/unistr/u8-strcmp: New file.
10672         * modules/unistr/u16-strcmp: New file.
10673         * modules/unistr/u32-strcmp: New file.
10674         * lib/unistr/u8-strcmp.c: New file.
10675         * lib/unistr/u16-strcmp.c: New file.
10676         * lib/unistr/u32-strcmp.c: New file.
10677
10678         * modules/unistr/u8-strcpy: New file.
10679         * modules/unistr/u16-strcpy: New file.
10680         * modules/unistr/u32-strcpy: New file.
10681         * lib/unistr/u8-strcpy.c: New file.
10682         * lib/unistr/u16-strcpy.c: New file.
10683         * lib/unistr/u32-strcpy.c: New file.
10684         * lib/unistr/u-strcpy.h: New file.
10685
10686         * modules/unistr/u8-strcspn: New file.
10687         * modules/unistr/u16-strcspn: New file.
10688         * modules/unistr/u32-strcspn: New file.
10689         * lib/unistr/u8-strcspn.c: New file.
10690         * lib/unistr/u16-strcspn.c: New file.
10691         * lib/unistr/u32-strcspn.c: New file.
10692         * lib/unistr/u-strcspn.h: New file.
10693
10694         * modules/unistr/u8-strdup: New file.
10695         * modules/unistr/u16-strdup: New file.
10696         * modules/unistr/u32-strdup: New file.
10697         * lib/unistr/u8-strdup.c: New file.
10698         * lib/unistr/u16-strdup.c: New file.
10699         * lib/unistr/u32-strdup.c: New file.
10700         * lib/unistr/u-strdup.h: New file.
10701
10702         * modules/unistr/u8-strlen: New file.
10703         * modules/unistr/u16-strlen: New file.
10704         * modules/unistr/u32-strlen: New file.
10705         * lib/unistr/u8-strlen.c: New file.
10706         * lib/unistr/u16-strlen.c: New file.
10707         * lib/unistr/u32-strlen.c: New file.
10708         * lib/unistr/u-strlen.h: New file.
10709
10710         * modules/unistr/u8-strmblen: New file.
10711         * modules/unistr/u16-strmblen: New file.
10712         * modules/unistr/u32-strmblen: New file.
10713         * lib/unistr/u8-strmblen.c: New file.
10714         * lib/unistr/u16-strmblen.c: New file.
10715         * lib/unistr/u32-strmblen.c: New file.
10716
10717         * modules/unistr/u8-strmbtouc: New file.
10718         * modules/unistr/u16-strmbtouc: New file.
10719         * modules/unistr/u32-strmbtouc: New file.
10720         * lib/unistr/u8-strmbtouc.c: New file.
10721         * lib/unistr/u16-strmbtouc.c: New file.
10722         * lib/unistr/u32-strmbtouc.c: New file.
10723
10724         * modules/unistr/u8-strncat: New file.
10725         * modules/unistr/u16-strncat: New file.
10726         * modules/unistr/u32-strncat: New file.
10727         * lib/unistr/u8-strncat.c: New file.
10728         * lib/unistr/u16-strncat.c: New file.
10729         * lib/unistr/u32-strncat.c: New file.
10730         * lib/unistr/u-strncat.h: New file.
10731
10732         * modules/unistr/u8-strncmp: New file.
10733         * modules/unistr/u16-strncmp: New file.
10734         * modules/unistr/u32-strncmp: New file.
10735         * lib/unistr/u8-strncmp.c: New file.
10736         * lib/unistr/u16-strncmp.c: New file.
10737         * lib/unistr/u32-strncmp.c: New file.
10738
10739         * modules/unistr/u8-strncpy: New file.
10740         * modules/unistr/u16-strncpy: New file.
10741         * modules/unistr/u32-strncpy: New file.
10742         * lib/unistr/u8-strncpy.c: New file.
10743         * lib/unistr/u16-strncpy.c: New file.
10744         * lib/unistr/u32-strncpy.c: New file.
10745         * lib/unistr/u-strncpy.h: New file.
10746
10747         * modules/unistr/u8-strnlen: New file.
10748         * modules/unistr/u16-strnlen: New file.
10749         * modules/unistr/u32-strnlen: New file.
10750         * lib/unistr/u8-strnlen.c: New file.
10751         * lib/unistr/u16-strnlen.c: New file.
10752         * lib/unistr/u32-strnlen.c: New file.
10753         * lib/unistr/u-strnlen.h: New file.
10754
10755         * modules/unistr/u8-strpbrk: New file.
10756         * modules/unistr/u16-strpbrk: New file.
10757         * modules/unistr/u32-strpbrk: New file.
10758         * lib/unistr/u8-strpbrk.c: New file.
10759         * lib/unistr/u16-strpbrk.c: New file.
10760         * lib/unistr/u32-strpbrk.c: New file.
10761         * lib/unistr/u-strpbrk.h: New file.
10762
10763         * modules/unistr/u8-strrchr: New file.
10764         * modules/unistr/u16-strrchr: New file.
10765         * modules/unistr/u32-strrchr: New file.
10766         * lib/unistr/u8-strrchr.c: New file.
10767         * lib/unistr/u16-strrchr.c: New file.
10768         * lib/unistr/u32-strrchr.c: New file.
10769
10770         * modules/unistr/u8-strspn: New file.
10771         * modules/unistr/u16-strspn: New file.
10772         * modules/unistr/u32-strspn: New file.
10773         * lib/unistr/u8-strspn.c: New file.
10774         * lib/unistr/u16-strspn.c: New file.
10775         * lib/unistr/u32-strspn.c: New file.
10776         * lib/unistr/u-strspn.h: New file.
10777
10778         * modules/unistr/u8-strstr: New file.
10779         * modules/unistr/u16-strstr: New file.
10780         * modules/unistr/u32-strstr: New file.
10781         * lib/unistr/u8-strstr.c: New file.
10782         * lib/unistr/u16-strstr.c: New file.
10783         * lib/unistr/u32-strstr.c: New file.
10784         * lib/unistr/u-strstr.h: New file.
10785
10786         * modules/unistr/u8-strtok: New file.
10787         * modules/unistr/u16-strtok: New file.
10788         * modules/unistr/u32-strtok: New file.
10789         * lib/unistr/u8-strtok.c: New file.
10790         * lib/unistr/u16-strtok.c: New file.
10791         * lib/unistr/u32-strtok.c: New file.
10792         * lib/unistr/u-strtok.h: New file.
10793
10794         * modules/unistr/u8-uctomb: New file.
10795         * modules/unistr/u16-uctomb: New file.
10796         * modules/unistr/u32-uctomb: New file.
10797         * lib/unistr/u8-uctomb.c: New file.
10798         * lib/unistr/u16-uctomb.c: New file.
10799         * lib/unistr/u32-uctomb.c: New file.
10800
10801         * MODULES.html.sh (Unicode string functions): Add the new modules.
10802
10803 2007-01-08  Bruno Haible  <bruno@clisp.org>
10804
10805         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
10806         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
10807         subdirectories.
10808
10809 2007-01-08  Karl Berry  <karl@gnu.org>
10810
10811         * doc/error.texi: mention that main() fns must set program_name
10812         when progname is used.
10813
10814 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
10815
10816         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
10817         WCTYPE_H is empty, for the benefit of builds from non-distclean
10818         directories.  Problem reported by Eric Blake in
10819         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
10820
10821 2007-01-08  Bruno Haible  <bruno@clisp.org>
10822
10823         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
10824         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
10825         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
10826         PROVIDE_CANONICALIZE_FILENAME_MODE.
10827         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
10828
10829 2007-01-08  Bruno Haible  <bruno@clisp.org>
10830
10831         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
10832         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
10833         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
10834         * lib/fts.c: Likewise.
10835         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
10836
10837 2006-12-25  Bruno Haible  <bruno@clisp.org>
10838
10839         * modules/utf8-ucs4-safe: New file.
10840         * lib/utf8-ucs4-safe.h: New file.
10841         * lib/unistr/utf8-ucs4-safe.c: New file.
10842
10843         * modules/utf16-ucs4-safe: New file.
10844         * lib/utf16-ucs4-safe.h: New file.
10845         * lib/unistr/utf16-ucs4-safe.c: New file.
10846
10847         * MODULES.html.sh (Unicode string functions): Add the new modules.
10848
10849 2007-01-08  Bruno Haible  <bruno@clisp.org>
10850
10851         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
10852         (Depends-on): Add unitypes.
10853         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
10854         (u8_mbtouc_aux): Move out to separate file.
10855         (u8_mbtouc): Use ucs4_t, uint8_t types.
10856         * lib/unistr/utf8-ucs4.c: New file.
10857
10858         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
10859         (Depends-on): Add unitypes.
10860         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
10861         (u16_mbtouc_aux): Move out to separate file.
10862         (u16_mbtouc): Use ucs4_t, uint16_t types.
10863         * lib/unistr/utf16-ucs4.c: New file.
10864
10865         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
10866         (Depends-on): Add unitypes.
10867         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
10868         (u8_uctomb_aux): Move out to separate file.
10869         (u8_uctomb): Use ucs4_t, uint8_t types.
10870         * lib/unistr/ucs4-utf8.c: New file.
10871
10872         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
10873         (Depends-on): Add unitypes.
10874         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
10875         (u16_uctomb_aux): Move out to separate file.
10876         (u16_uctomb): Use ucs4_t, uint16_t types.
10877         * lib/unistr/ucs4-utf16.c: New file.
10878
10879 2006-12-25  Bruno Haible  <bruno@clisp.org>
10880
10881         * modules/unitypes: New file.
10882         * lib/unitypes.h: New file.
10883         * MODULES.html.sh (func_all_modules): New section "Unicode string
10884         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
10885         this section. Add unitypes.
10886
10887 2007-01-08  Bruno Haible  <bruno@clisp.org>
10888
10889         Avoid variable names that conflict with those from libtool.
10890         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
10891         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
10892         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
10893         library_names_spec to acl_library_names_spec, hardcode_* to
10894         acl_hardcode_*.
10895         Reported by Ralf Wildenhues.
10896
10897 2007-01-08  Bruno Haible  <bruno@clisp.org>
10898
10899         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
10900         definition.
10901         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
10902         definition.
10903         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
10904         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
10905         definition.
10906         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
10907         definition.
10908         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
10909         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
10910         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
10911         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
10912         definition.
10913         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
10914         definition.
10915         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
10916         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
10917         GC_USE_<algorithm>.
10918         * lib/gc-libgcrypt.c: Likewise.
10919         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
10920         * modules/gc-arctwo (configure.ac): Likewise.
10921         * modules/gc-des (configure.ac): Likewise.
10922         * modules/gc-hmac-md5 (configure.ac): Likewise.
10923         * modules/gc-hmac-sha1 (configure.ac): Likewise.
10924         * modules/gc-md2 (configure.ac): Likewise.
10925         * modules/gc-md4 (configure.ac): Likewise.
10926         * modules/gc-md5 (configure.ac): Likewise.
10927         * modules/gc-random (configure.ac): Likewise.
10928         * modules/gc-rijndael (configure.ac): Likewise.
10929         * modules/gc-sha1 (configure.ac): Likewise.
10930
10931 2007-01-08  Bruno Haible  <bruno@clisp.org>
10932
10933         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
10934         macro definition.
10935         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
10936         definition.
10937         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
10938         definition.
10939         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
10940         * modules/fcntl-safer (configure.ac): Likewise.
10941         * modules/fopen-safer (configure.ac): Likewise.
10942         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
10943         GNULIB_FWRITEERROR macro definition.
10944
10945 2007-01-08  Bruno Haible  <bruno@clisp.org>
10946
10947         * m4/gnulib-common.m4: New file.
10948         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
10949         (func_get_filelist): Add m4/gnulib-common.m4.
10950
10951 2007-01-08  Bruno Haible  <bruno@clisp.org>
10952
10953         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
10954         command.
10955
10956 2007-01-08  Jim Meyering  <jim@meyering.net>
10957
10958         Use a more robust test for a "can't happen" condition.
10959         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
10960         narrowed the st_size value.  Presuming the "can't happen" condition
10961         is true, that narrowing could conceivably convert an invalid st_size
10962         value into a valid one.  Instead, use a change based on Matthew
10963         Woehlke's original patch.
10964
10965         Slight readability improvement: use an assert-like macro
10966         in place of literal "abort ()" uses.
10967         * lib/fts.c (fts_assert): Define.
10968         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
10969         Use this macro instead of a bare 'abort'.
10970
10971 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
10972
10973         Don't worry about using IRIX 5.3's wctype.h broken definitions;
10974         simply work around them.
10975         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
10976         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
10977         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
10978         declaring.
10979         Don't bother to define as macros, since the standard doesn't require it.
10980         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
10981         longer worry about IRIX 5.3.
10982         (HAVE_WCTYPE_CTMP_BUG): Remove.
10983
10984 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
10985
10986         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
10987         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
10988         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
10989         Problems reported by Georg Schwarz for IRIX 5.3.
10990
10991         * gnulib-tool (autoconf_minversion): Take the maximum version number
10992         found, not the minimum.  Problem reported by James Youngman.
10993
10994 2007-01-03  Karl Berry  <karl@gnu.org>
10995
10996         * doc/error.texi: new file, explaining interaction with progname.
10997         * doc/gnulib.texi: include it.  Update copyright.
10998
10999 2007-01-03  Simon Josefsson  <simon@josefsson.org>
11000
11001         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
11002         AC_CANONICAL_HOST, to improve autobuild outputs.
11003
11004 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
11005             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
11006
11007         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
11008         sockets, server sockets, and other file descriptors.  Count errors
11009         to compute the return value.  Reorder the code a bit to be easier
11010         to follow.  Don't set event bits that were not requested (except
11011         POLLERR and POLLHUP).
11012
11013 2007-01-01  Bruno Haible  <bruno@clisp.org>
11014
11015         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
11016
11017 2007-01-03  Jim Meyering  <jim@meyering.net>
11018
11019         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
11020
11021 2007-01-02  Bruno Haible  <bruno@clisp.org>
11022
11023         * modules/settime (Include): Require timespec.h.
11024         * modules/nanosleep (Include): Likewise.
11025
11026 2007-01-01  Bruno Haible  <bruno@clisp.org>
11027
11028         * gnulib-tool (func_emit_copyright_notice): Bump year.
11029         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
11030
11031 2007-01-01  Bruno Haible  <bruno@clisp.org>
11032
11033         Improve support for OpenBSD.
11034         * build-aux/config.rpath (libname_spec): Export.
11035         (library_names_spec): New variable. Export.
11036         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
11037         library_names_spec from the config.rpath output. Locate shared library
11038         through the name pattern in library_names_spec.
11039
11040 2007-01-01  Eric Blake  <ebb9@byu.net>
11041
11042         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
11043
11044 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
11045
11046         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
11047         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
11048         assume the C locale, and avoid an "eval" that could cause trouble.
11049         Problem with SORT reported by Bob Proulx.
11050
11051         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
11052         Define.  Trivial patch from Henning Nielsen Lund, originally
11053         sent to bug-grep@gnu.org today.
11054
11055 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
11056
11057         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
11058         struct stat.  Problem reported by Henning Nielsen Lund.
11059         * lib/acl.c: Include acl.h first, to check interface.  Don't
11060         bother to include sys/types.h and sys/stat.h again.
11061
11062 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
11063
11064         Import the following change from libc; problem reported by
11065         Sven Verdoolaege.
11066
11067         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
11068
11069         [BZ #1373]
11070         * lib/argp.h: Remove __NTH for __argp_usage inline function.
11071
11072 2006-12-28  Jim Meyering  <jim@meyering.net>
11073
11074         * build-aux/announce-gen: Do not assume that the package
11075         builds any of tar.gz, tar.bz2, and .xdelta files.
11076         Suggestion from Simon Josefsson.
11077
11078 2006-12-28  Simon Josefsson  <simon@josefsson.org>
11079
11080         * modules/announce-gen: New file.
11081
11082 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
11083
11084         * lib/mbchar.h: Just include <wctype.h>; the wctype module
11085         handles its gotchas now.
11086         * lib/mbswidth.c: Likewise.
11087         * lib/wcwidth.h: Likewise.
11088         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
11089         and iswcntrl; the wctype module does this stuff now.
11090         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
11091         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
11092         * modules/mbchar (Depends-on): Add wctype.
11093         * modules/mbswidth (Depends-on): Likewise.
11094         * modules/wcwidth (Depends-on): Likewise.
11095
11096 2006-12-27  Eric Blake  <ebb9@byu.net>
11097
11098         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
11099         module uses more than what <wctype.h> is required to provide.
11100
11101 2006-12-26  Eric Blake  <ebb9@byu.net>
11102
11103         * gnulib-tool (sed_extract_prog): Avoid space-tab.
11104
11105 2006-12-26  Eric Blake  <ebb9@byu.net>
11106
11107         * modules/absolute-header: New module.
11108         * modules/fcntl (Depends-on): Depend on it.
11109         * modules/inttypes (Depends-on): Likewise.
11110         * modules/stdint (Depends-on): Likewise.
11111         * modules/sys_stat (Depends-on): Likewise.
11112         * modules/wctype (Depends-on): Likewise.
11113         * MODULES.html.sh (Support for building libraries and
11114         executables): Document it.
11115
11116 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
11117
11118         * gnulib-tool (SED): Remove, undoing previous change.
11119         The problem was that it broke coreutils on Solaris, because
11120         "sed --posix" leaked into a makefile.
11121         (sed): New alias, if 'alias' and GNU sed.
11122
11123 2006-12-24  Jim Meyering  <jim@meyering.net>
11124
11125         Work around an fchownat bug in glibc-2.4:
11126         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
11127         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
11128         in spite of the -P option.
11129         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
11130         New macros.
11131         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
11132         * modules/openat (Files): Add lib/fchownat.c.
11133         * lib/openat.c (fchownat): Don't define here.  Move to...
11134         * lib/fchownat.c: ...this new file.
11135
11136 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
11137
11138         Fix bug reported by Bruno Haible in
11139         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
11140         where quotearg.c didn't compile on Mac OS X 10.2 because it
11141         lacks <wchar.h> and wint_t.
11142         * lib/wctype_.h (__wctype_wint_t): New type.
11143         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
11144         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
11145         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
11146         Arg is now of type __wctype_wint_t, not wint_t.
11147         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
11148         substitute HAVE_WINT_T.
11149         * modules/wctype (Files): Add m4/wint_t.m4.
11150         (wctype.h): Substitute HAVE_WINT_T.
11151
11152 2006-12-23  Bruno Haible  <bruno@clisp.org>
11153
11154         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
11155
11156 2006-12-23  Bruno Haible  <bruno@clisp.org>
11157
11158         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
11159         S_ISLNK.
11160         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
11161         mingw.
11162
11163 2006-12-22  Bruno Haible  <bruno@clisp.org>
11164
11165         * lib/copy-file.c: Include acl.h.
11166         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
11167         Close the file descriptors only after being done with copy_acl.
11168         * modules/copy-file (Depends-on): Add acl.
11169
11170 2006-12-22  Bruno Haible  <bruno@clisp.org>
11171
11172         * gnulib-tool (SED): New variable.
11173         Use $SED instead of sed everywhere.
11174
11175 2006-12-22  Bruno Haible  <bruno@clisp.org>
11176
11177         * modules/no-c++: New file.
11178         * m4/no-c++.m4: New file.
11179         * MODULES.html.sh (Support for building libraries and executables):
11180         Add no-c++.
11181
11182 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
11183
11184         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
11185         Include <limits.h>, and use its INT_MAX to rewrite the
11186         j loop so that it does not overflow 'int'.  Problem reported by
11187         Ralf Wildenhues in
11188         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
11189         Play it safe by shifting left by 1 rather than multiplying by 2,
11190         as GCC is less likely to optimize this away when the value
11191         is signed (when it assumes overflow leads to undefined behavior).
11192         Also, don't assume time_t uses two's complement.
11193
11194 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
11195
11196         * MODULES.html.sh: New module wctype.
11197         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
11198         * lib/fnmatch.c: Don't bother to include <wchar.h> before
11199         <wctype.h>, since the new wctype module should fix this.
11200         * lib/quotearg.c: Include <wctype.h> unconditionally, since
11201         the wctype module should arrange for it.
11202         * lib/regex_internal.h: Likewise.
11203         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
11204         since the wctype module should handle this now.
11205         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
11206         * modules/fnmatch (Depends-on): Add wctype.
11207         * modules/quotearg (Depends-on): Likewise.
11208         * modules/regex (Depends-on): Likewise.
11209
11210 2006-12-19  Bruno Haible  <bruno@clisp.org>
11211
11212         * lib/strdup.h [C++]: Wrap definitions in extern "C".
11213         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
11214
11215 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11216
11217         * modules/savewd (Depends-on): Fix dependency on fcntl.
11218
11219 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
11220
11221         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
11222         conforms to C99, rather than relying on the user's environment
11223         setting of STDINT_H.
11224
11225 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
11226         and Eric Blake  <ebb9@byu.net>
11227
11228         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
11229         This is more consistent with the other defines here.
11230         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
11231         Port to z/OS.  Problem reported by Paul Gilmartin.
11232         Change local vars to use gl_ prefix rather than ac_.
11233         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
11234         with other defines.
11235         * modules/double-slash-root: New module.
11236         * modules/dirname (Files): Remove m4/double-slash-root.m4.
11237         (Depends-on): Add double-slash-root.
11238         * MODULES.html.sh (File system functions): Mention new module.
11239
11240 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
11241
11242         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
11243         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
11244         This is for the benefit of gzip, which doesn't do i18n.
11245
11246 2006-12-12  Jim Meyering  <jim@meyering.net>
11247
11248         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
11249         Reported by Andreas Schwab <schwab@suse.de>.
11250
11251 2006-12-12  Bruno Haible  <bruno@clisp.org>
11252
11253         Merge these changes.
11254         2006-09-05  Bruno Haible  <bruno@clisp.org>
11255         * lib/iconvme.c (iconv_string): No need to save and restore errno when
11256         iconv_alloc succeeded.
11257         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
11258         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
11259         test for " && dest " at the end - dest is always != NULL there. Call
11260         iconv with 4xNULL arguments initially, to reset the state. Call iconv
11261         with 2xNULL arguments, also to flush the state storage. Handle the
11262         IRIX iconv behaviour. Realloc the final result, to throw away unused
11263         memory.
11264
11265 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
11266
11267         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
11268         and fchmodat unconditionally, since glibc 2.4 has them.
11269         Problem reported by Arkadiusz Miskiewicz.
11270
11271 2006-12-10  Bruno Haible  <bruno@clisp.org>
11272
11273         * gnulib-tool (func_import): Show the include files only for those
11274         modules that are copied and specified.
11275         Reported by Karl Berry.
11276
11277 2006-12-08  Jim Meyering  <jim@meyering.net>
11278
11279         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
11280         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
11281
11282         * build-aux/announce-gen: Add two new options, both optional:
11283         --bootstrap-tools=TOOL_LIST
11284               a comma-separated list of tools, e.g.,
11285               autoconf,automake,bison,gnulib
11286         --gnulib-snapshot-date=DATE
11287               if gnulib is in the bootstrap tool list,
11288               then report this as the snapshot date.
11289               If not specified, use the current date/time.
11290               If you specify a date here, be sure it's UTC.
11291
11292 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11293
11294         * tests/test-argp-2.sh: Fix test to match actual output.
11295         (func_compare): Fix sed script to be portable.
11296
11297 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
11298
11299         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
11300         workaround for this case.  It is not autoconfigured now; offhand
11301         it's hard to see how to autoconfigure it.
11302
11303 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
11304
11305         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
11306         a directory that is about to be chowned.  Such a directory's
11307         initial file permissions should permit the owner only and this
11308         should not be changed until after the chown, since the group and
11309         other bits would be incorrect if they granted permission before
11310         the chown.
11311
11312         Fix porting problem for iswctype reported by Georg Schwarz in:
11313         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
11314         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
11315         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
11316         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
11317         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
11318
11319 2006-12-03  Jim Meyering  <jim@meyering.net>
11320
11321         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
11322         p->fts_statp may not yet be defined.
11323         (fts_read): Instead, set it in the caller, once p->fts_statp is
11324         sure to be defined, and corresponds to a top-level directory.
11325         This bug made du -x fail.  Here's the coreutils test case:
11326         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
11327         Reported by Mike Frysinger.
11328
11329 2006-12-01  Jim Meyering  <jim@meyering.net>
11330
11331         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
11332         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
11333         Reported by Simon Josefsson.
11334
11335 2006-11-30  Jim Meyering  <jim@meyering.net>
11336
11337         * m4/warning.m4: Use the all-permissive copyright notice
11338         recommended by RMS (rather than LGPL).
11339         * m4/vararrays.m4: Likewise.
11340         * m4/flexmember.m4: Likewise.
11341
11342 2006-11-29  Bruno Haible  <bruno@clisp.org>
11343
11344         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
11345         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
11346         using +=.
11347         Reported by Simon Josefsson <simon@josefsson.org>.
11348
11349 2006-11-28  James Youngman <jay@gnu.org>
11350
11351         * README: Advise users that they might find the bug-gnulib@gnu.org
11352         and autotools-announce@gnu.org mailing lists useful.
11353
11354 2006-11-28  Bruno Haible  <bruno@clisp.org>
11355
11356         * m4/ptrdiff_max.m4: Remove file.
11357
11358 2006-11-21  Bruno Haible  <bruno@clisp.org>
11359
11360         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
11361         _AC_COMPUTE_INT.
11362         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
11363         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
11364         _AC_COMPUTE_INT.
11365         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
11366         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
11367         _AC_COMPUTE_INT.
11368         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
11369
11370 2006-11-28  Jim Meyering  <jim@meyering.net>
11371
11372         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
11373         warning from "gcc -Wshadow" about shadowing the builtin.
11374
11375 2006-11-27  Bruno Haible  <bruno@clisp.org>
11376
11377         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
11378         _AC_COMPUTE_INT.
11379         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
11380
11381 2006-11-27  Bruno Haible  <bruno@clisp.org>
11382             Paul Eggert  <eggert@cs.ucla.edu>
11383
11384         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
11385
11386 2006-11-26  Bruno Haible  <bruno@clisp.org>
11387
11388         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
11389         noinst_LTLIBRARIES.
11390
11391 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
11392             Bruno Haible  <bruno@clisp.org>
11393
11394         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
11395         if compiling with "gcc -ansi".
11396
11397 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
11398
11399         Fix some incompatibilities with gcc -ansi -pedantic.
11400         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
11401         if compiling pedantically with GCC, unless it's C99 or later.
11402         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
11403         it mishandles gcc -ansi -pedantic as well.
11404         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
11405         if gcc -pedantic.
11406         * lib/regexec.c (check_node_accept_bytes): Don't use auto
11407         initializers for struct if -pedantic, unless it's C99 or later.
11408
11409 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
11410
11411         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
11412         Don't close an fd more than once. Identical atimes indicate
11413         success, not failure.
11414
11415 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
11416
11417         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
11418
11419 2006-11-23  Jim Meyering  <jim@meyering.net>
11420
11421         * build-aux/announce-gen: New file.  From coreutils.
11422
11423 2006-11-22  Jim Meyering  <jim@meyering.net>
11424
11425         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
11426         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
11427         (fts_read): Use a temporary to narrow the overused st_size member
11428         before using it in a switch statement.  Reported by Matthew Woehlke.
11429
11430         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
11431         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
11432
11433 2006-11-20  Bruno Haible  <bruno@clisp.org>
11434
11435         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
11436         changequote instead of pairs of brackets.
11437         Reported by Andreas Schwab <schwab@suse.de>.
11438
11439 2006-11-21  Jim Meyering  <jim@meyering.net>
11440
11441         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
11442         so as to remain compatible with older compilers.
11443         Patch from Michael Deutschmann.
11444
11445 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11446
11447         * MODULES.html.sh (File system functions): Add openat.
11448
11449         * lib/openat.h (rpl_fstatat): New macro, if
11450         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
11451         (fstatat): Define to rpl_fstatat under the same conditions,
11452         unless COMPILING_FSTATAT.
11453         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
11454         seems to have the bug.
11455         * lib/fstatat.c: New file.
11456         * modules/openat (Files): Add it.
11457
11458 2006-11-20  Bruno Haible  <bruno@clisp.org>
11459
11460         * Makefile: New file.
11461
11462 2006-11-20  Jim Meyering  <jim@meyering.net>
11463
11464         The beginnings of syntax-related checks for gnulib.
11465         * lib/Makefile: New file.
11466         * lib/t-idcache: New script.  Ensure that the two halves of
11467         idcache.c stay in sync.
11468
11469         * lib/idcache.c: Adjust comments in user- and group- portions to
11470         be more accurate, and to be consistent with one another.
11471
11472 2006-11-20  Jim Meyering  <jim@meyering.net>
11473
11474         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
11475         continue using the flexible array member (thus, this module performs
11476         half as many malloc calls), with the addition that...
11477         (getgroup, getuser): Consistently record a non-match via an empty
11478         "name" string, and map an empty string match to a NULL return value.
11479         * modules/idcache (Depends-on): Re-add flexmember.
11480
11481         * lib/idcache.c (getuser): Remove all uses of the register keyword.
11482         (getuidbyname, getgroup, getgidbyname): Likewise.
11483
11484         Use cleaner syntax: NULL rather than 0.
11485         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
11486
11487 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11488
11489         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
11490         It mishandled the case where the group was missing.
11491         Problem reported by Greg Schafer.
11492         * modules/idcache: Likewise.
11493
11494 2006-11-18  Jim Meyering  <jim@meyering.net>
11495
11496         * check-module (%exempt_header): Add exception for some
11497         conditionally-included headers.
11498
11499         * modules/i-ring (Depends-on): Add verify.
11500         (License): Change to LGPL.
11501
11502 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11503
11504         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
11505         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
11506         and inttostr.h.  Use snprintf rather than uinttostr, so that
11507         LGPLed code doesn't depend on GPLed.
11508
11509 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11510
11511         * modules/inline (License): Change from GPL to LGPL.
11512
11513 2006-11-17  Jim Meyering  <jim@meyering.net>
11514
11515         * modules/d-type (License): Switch to LGPL.
11516
11517 2006-11-15  Bruno Haible  <bruno@clisp.org>
11518
11519         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
11520
11521 2006-11-15  Eric Blake  <ebb9@byu.net>
11522
11523         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
11524         the module dependency.
11525
11526 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11527             Bruno Haible  <bruno@clisp.org>
11528
11529         * gnulib-tool (func_create_testdir): Add license consistency check.
11530
11531 2006-11-15  Eric Blake  <ebb9@byu.net>
11532
11533         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
11534         random "(cached)" in configure output.
11535
11536 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11537
11538         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
11539         test for conforming inttypes.h is both announced and cached.
11540
11541         * MODULES.html.sh (seen_modules, seen_files): New variables.
11542         (func_module): Rewrite to use a few less gnulib-tool and sed
11543         invocations.  Avoid a couple of quadratic algorithms for ...
11544         (missed_modules, missed_files): ... these, with ...
11545         (func_append, func_tmpdir): ... these new functions, from
11546         gnulib-tool.  Analogously, install traps for cleanup.
11547
11548         * tests/test-gc.c (main): Remove unused variables.
11549         * tests/test-read-file.c: Include stdlib.h, for 'free'.
11550
11551 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
11552
11553         * modules/inttostr (License): Change to LGPL.
11554
11555 2006-11-14  Eric Blake  <ebb9@byu.net>
11556
11557         * modules/tempname (License): Change to LGPL.
11558
11559 2006-11-14  Eric Blake  <ebb9@byu.net>
11560
11561         * doc/functions.texi (Function Portability): *printf functions on
11562         Cygwin now understand all POSIX size specifiers.
11563
11564 2006-11-14  Bruno Haible  <bruno@clisp.org>
11565
11566         * modules/c-ctype (License): Change to LGPL.
11567
11568 2006-11-12  Bruno Haible  <bruno@clisp.org>
11569
11570         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
11571         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
11572         for GNOME libraries, for which the include files are installed in
11573         subdirectories of $prefix/include.
11574
11575 2006-11-12  Bruno Haible  <bruno@clisp.org>
11576
11577         * m4/lib-link.m4: Require at least autoconf-2.54.
11578         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
11579         name to underscores for the --with option.
11580
11581 2006-11-13  Bruno Haible  <bruno@clisp.org>
11582
11583         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
11584         the tests directory.
11585         Reported by Ralf Wildenhues.
11586
11587 2006-11-13  Bruno Haible  <bruno@clisp.org>
11588
11589         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
11590         (func_emit_initmacro_end): Undo the override here.
11591         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
11592         Works around the famous automake error in coreutils.
11593
11594 2006-11-13  Eric Blake  <ebb9@byu.net>
11595
11596         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
11597         element, not its node.
11598
11599 2006-11-12  Bruno Haible  <bruno@clisp.org>
11600
11601         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
11602         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
11603
11604 2006-11-12  Bruno Haible  <bruno@clisp.org>
11605
11606         * gnulib-tool: New option --local-symlink.
11607         (func_usage): Document it.
11608         (lsymbolic): New variable.
11609         (func_import, func_create_testdir): If --symlink was not specified,
11610         test whether --local-symlink was specified and the file comes from
11611         the local_gnulib_dir.
11612
11613 2006-11-12  Bruno Haible  <bruno@clisp.org>
11614
11615         * gnulib-tool (func_ln): New function.
11616         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
11617
11618 2006-11-12  Bruno Haible  <bruno@clisp.org>
11619
11620         Finish support for source files in subdirectories.
11621         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
11622         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
11623         AUTOMAKE_OPTIONS.
11624         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
11625
11626 2006-11-12  Bruno Haible  <bruno@clisp.org>
11627
11628         * gnulib-tool (func_get_automake_snippet): Synthesize also an
11629         EXTRA_lib_SOURCES augmentation.
11630         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
11631
11632 2006-11-12  Jim Meyering  <jim@meyering.net>
11633
11634         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
11635         file descriptors.  This also averts a failure on systems with
11636         native openat support when a traversed directory lacks "x" access.
11637         * lib/fts_.h: Include "i-ring.h"
11638         (struct FTS) [fts_fd_ring]: New member.
11639         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
11640         (FCHDIR): Add parentheses.
11641         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
11642         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
11643         When descending, rather than simply closing the previous
11644         fts_cwd_fd value, push that file descriptor onto the ring.
11645         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
11646         (fts_open): Initialize the new fd_ring member.
11647         (fts_close): Clear the ring.
11648         (fts_safe_changedir): When possible, use our new fd_ring to skip
11649         the diropen and fstat and dev/ino comparison that would normally
11650         accompany a virtual `chdir ("..")'.
11651
11652         * modules/fts (Depends-on): Add i-ring.
11653         * modules/i-ring: New module.
11654         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
11655         * m4/i-ring.m4: New file.
11656
11657 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11658
11659         * gnulib-tool (func_create_testdir): Fix replacement of
11660         `build-aux' in configure.ac.  Run autotools in gltests
11661         subdirectory.
11662         (func_create_testdir, func_create_megatestdir, test): There is
11663         no need for '--force' in most autotool invocations in a new
11664         tree.  Actually fail the whole test if any of the tools, or the
11665         configure or make stages fail.
11666
11667         Sync from Automake.
11668         * build-aux/gnupload: Revert last change.  Add pointer to upload
11669         instructions of the GNU Maintenance Instructions.
11670         Suggestion by Karl Berry.
11671
11672 2006-11-10  Jim Meyering  <jim@meyering.net>
11673
11674         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
11675
11676 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11677
11678         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
11679         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
11680         (bind_textdomain_codeset) [! ENABLE_NLS]:
11681         Evaluate all the arguments.  That way, callers get compatible behavior
11682         if the arguments have side effects.  Also, it avoids some GCC
11683         diagnostics in some cases; Joel E. Denny reported problems when Bison
11684         was configured with --enable-gcc-warnigs.
11685
11686 2006-11-10  Jim Meyering  <jim@meyering.net>
11687
11688         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
11689         relevant options in CFLAGS (like -O, -fno-inline) are taken into
11690         account.
11691
11692 2006-11-10  Jim Meyering  <jim@meyering.net>
11693
11694         * modules/inline: New file/module.
11695         * modules/xalloc (Files): Remove m4/inline.m4.
11696         (Depends-on): Add inline, instead.
11697         * modules/oset: Likewise.
11698         * modules/list: Likewise.
11699
11700 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11701
11702         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
11703         Problem reported by Matthew Woehlke.
11704
11705 2006-11-09  Bruno Haible  <bruno@clisp.org>
11706
11707         * lib/tempname.c (gen_tempname): Remove variant that invokes
11708         __gen_tempname.
11709         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
11710         __gen_tempname.
11711
11712 2006-11-08  Bruno Haible  <bruno@clisp.org>
11713
11714         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
11715         to 'yes' instead of 'cross-compiling'.
11716
11717 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
11718
11719         * lib/quotearg.h (quotearg_free): New decl.
11720         * lib/quotearg.c (quotearg_free): New function.
11721         (slot0, nslots, slotvec0, slotvec):
11722         Now file-scope so that quotearg_free can get at them.
11723
11724 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11725
11726         Sync from Automake.
11727         * build-aux/gnupload: Add missing 'gnu' to example URL.
11728         Report by Karl Berry.
11729
11730 2006-11-08  Bruno Haible  <bruno@clisp.org>
11731
11732         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
11733         Suggested by Paul Eggert.
11734
11735 2006-11-08  Jim Meyering  <jim@meyering.net>
11736
11737         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
11738         It's already included if !_LIBC.
11739         (fts_safe_changedir): Add a comment.
11740
11741 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
11742
11743         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
11744         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
11745         Matthew Woehlke.
11746
11747         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
11748         definitions up, to avoid colliding with change below.
11749         (static_inline) [HAVE_INLINE]: New macro.
11750         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
11751         Provide extern decls when !HAVE_INLINE.  Do not define unless
11752         static_inline is defined, either by us or by xmalloc.c.  Use
11753         static_inline rather than static inline.
11754         (XCALLOC): Optimize sizeof(T) = 1 case.
11755         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
11756
11757 2006-11-07  Bruno Haible  <bruno@clisp.org>
11758
11759         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
11760         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
11761         AC_C_INLINE.
11762         * modules/xalloc (Files): Add m4/inline.m4.
11763
11764 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11765
11766         * README: Fix typo.
11767         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
11768         (Miscellanous Notes): ...from this.
11769
11770 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
11771
11772         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
11773         Mention that offsetof should be used instead of sizeof.
11774         From Bruno Haible.
11775
11776 2006-11-07  Bruno Haible  <bruno@clisp.org>
11777
11778         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
11779
11780 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
11781
11782         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
11783         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
11784         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
11785         (gl_tree_add_before, gl_tree_add_after):
11786         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
11787         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
11788         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
11789         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
11790         (gl_linked_add_after, gl_linked_add_at): Likewise.
11791         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
11792         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
11793         (gl_tree_add_before, gl_tree_add_after): Likewise.
11794         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
11795         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
11796         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
11797
11798 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11799
11800         * lib/gl_oset.h: Use C comment style, not C++ comment style.
11801
11802 2006-11-06  Bruno Haible  <bruno@clisp.org>
11803
11804         * m4/inline.m4: New file.
11805         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
11806         * modules/list (Files): Add m4/inline.m4.
11807         * modules/oset (Files): Likewise.
11808
11809 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
11810
11811         * lib/idcache.c: Include <stddef.h>, for offsetof.
11812         (struct userid.name): Change from char * to a flexible array member.
11813         All uses changed.
11814         * modules/idcache (Depends-on): Add flexmember.
11815
11816         * MODULES.html.sh (Core language properties): New module flexmember.
11817         * modules/flexmember, m4/flexmember.m4: New files.
11818
11819         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
11820         inline functions that are identical with the old xnmalloc_inline,
11821         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
11822         that we can avoid some unnecessary integer multiplications and
11823         divisions in the common case where the element size is known at
11824         compile time.
11825         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
11826         needed.
11827         (xnboundedmalloc): Remove.
11828         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
11829         arguments, for consistency with rest of this header.
11830         (xcharalloc): Rewrite using XNMALLOC.
11831         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
11832         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
11833         versions have been moved to lib/xalloc.h and renamed to be the
11834         non-*_inline versions.
11835         (xmalloc, xrealloc): Implement without reference to the xnmalloc
11836         and xnrealloc functions, since those functions are now inline and
11837         now call us.
11838         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
11839         renaming described above.
11840         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
11841         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
11842         captures the dependency in AC_C_INLINE.
11843
11844         New module canonicalize-lgpl, proposed by Charles Wilson in
11845         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
11846         with a few small changes afterwards.
11847         * MODULES.html.sh (File system functions): New module
11848         canonicalize-lgpl.
11849         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
11850         and canonicalize_file_name.
11851         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
11852         * modules/canonicalize-lgpl: New files.
11853
11854 2006-11-05  Bruno Haible  <bruno@clisp.org>
11855
11856         * gnulib-tool (func_import, func_create_testdir): Create directories
11857         also for files in subdirectories of lib/.
11858
11859 2006-11-05  Bruno Haible  <bruno@clisp.org>
11860
11861         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
11862         ANSI C compliant.
11863
11864 2006-11-03  Bruno Haible  <bruno@clisp.org>
11865
11866         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
11867         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
11868         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
11869         (xnboundedmalloc): New inline function.
11870         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
11871         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
11872         xmalloc.
11873         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
11874         xmalloc.
11875         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
11876         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
11877         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
11878         xmalloc.
11879         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11880         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
11881         xmalloc.
11882         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
11883         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11884         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
11885         xmalloc.
11886         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11887         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
11888         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11889         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
11890         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
11891         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
11892         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
11893
11894 2006-11-03  Bruno Haible  <bruno@clisp.org>
11895
11896         * lib/c-ctype.h [C++]: Define functions without name mangling.
11897         * lib/fwriteerror.h [C++]: Likewise.
11898         * lib/gcd.h [C++]: Likewise.
11899         * lib/linebreak.h [C++]: Likewise.
11900
11901 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
11902
11903         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
11904         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
11905         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
11906         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
11907         Check for functions and headers just once.
11908         Check for declaration of canonicalize_file_name.
11909         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
11910
11911 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11912
11913         * gnulib-tool (func_import): Fix typo in actioncmd.
11914
11915 2006-11-02  Bruno Haible  <bruno@clisp.org>
11916
11917         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
11918         newline sequence in the Makefile.am snippet as a space, like "make"
11919         does.
11920         Reported by Roger Persson <perrog@gmail.com>.
11921
11922 2006-11-01  Bruno Haible  <bruno@clisp.org>
11923
11924         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
11925         already declared in <string.h>.
11926         * lib/strcase.h (strncasecmp): Don't declare it if yes.
11927
11928 2006-11-01  Bruno Haible  <bruno@clisp.org>
11929
11930         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
11931         * lib/strcase.h: Include <string.h>.
11932         (strcasecmp): Define to rpl_strcasecmp here.
11933
11934 2006-11-01  Bruno Haible  <bruno@clisp.org>
11935
11936         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
11937
11938 2006-11-01  Eric Blake  <ebb9@byu.net>
11939
11940         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
11941
11942         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
11943
11944 2006-10-29  Bruno Haible  <bruno@clisp.org>
11945
11946         Make it compile in C++ mode.
11947         * lib/full-write.c (full_rw): Add a cast.
11948
11949 2006-11-01  Bruno Haible  <bruno@clisp.org>
11950
11951         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
11952         be POSIX compliant.
11953         Reported by Roger Persson <perrog@gmail.com>.
11954
11955 2006-11-01  Eric Blake  <ebb9@byu.net>
11956
11957         * lib/getopt_.h: Fix comments.
11958
11959 2006-10-31  Eric Blake  <ebb9@byu.net>
11960
11961         * modules/tmpdir (Depends-on): Add sys_stat.
11962         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
11963         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
11964         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
11965         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
11966         tempname.
11967
11968 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
11969
11970         Avoid some C++ diagnostics reported by Bruno Haible.
11971         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
11972         xmalloc.
11973         (quotearg_alloc): Use xcharalloc rather than xmalloc.
11974         (struct slotvec): Move to top level.
11975         (quotearg_n_options): Rewrite to avoid xmalloc.
11976         * lib/xalloc.h (xcharalloc): New function.
11977         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
11978         [defined __cplusplus]: Add function template that provides result
11979         type propagation.  This part of the change is from Bruno Haible.
11980
11981 2006-10-29  Bruno Haible  <bruno@clisp.org>
11982
11983         Make it compile in C++ mode.
11984         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
11985         * lib/strnlen1.c (strnlen1): Cast memchr result.
11986         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
11987         * lib/clean-temp.c (string_equals, string_hash): Add casts.
11988         (create_temp_dir): Rename local variable 'template'.
11989         (compile_csharp_using_sscli): Add cast.
11990         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
11991         * lib/findprog.c (find_in_path): Likewise.
11992         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
11993         * lib/wait-process.c (register_slave_subprocess): Likewise.
11994
11995 2006-10-22  Bruno Haible  <bruno@clisp.org>
11996
11997         * modules/tsearch: New file.
11998         * lib/tsearch.h: New file.
11999         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
12000         * m4/tsearch.m4: New file.
12001         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
12002
12003 2006-10-29  Eric Blake  <ebb9@byu.net>
12004
12005         * lib/arcfour.c: Assume config.h.
12006         * lib/arctwo.c: Likewise.
12007         * lib/base64.c: Likewise.
12008         * lib/check-version.c: Likewise.
12009         * lib/crc.c: Likewise.
12010         * lib/des.c: Likewise.
12011         * lib/gc-gnulib.c: Likewise.
12012         * lib/gc-libgcrypt.c: Likewise.
12013         * lib/gc-pbkdf2-sha1.c: Likewise.
12014         * lib/getaddrinfo.c: Likewise.
12015         * lib/getdelim.c: Likewise.
12016         * lib/getline.c: Likewise.
12017         * lib/hmac-md5.c: Likewise.
12018         * lib/hmac-sha1.c: Likewise.
12019         * lib/iconvme.c: Likewise.
12020         * lib/md2.c: Likewise.
12021         * lib/md4.c: Likewise.
12022         * lib/memxor.c: Likewise.
12023         * lib/read-file.c: Likewise.
12024         * lib/readline.c: Likewise.
12025         * lib/rijndael-alg-fst.c: Likewise.
12026         * lib/rijndael-api-fst.c: Likewise.
12027         * lib/xgetdomainname.c: Likewise.
12028
12029 2006-10-28  Eric Blake  <ebb9@byu.net>
12030
12031         * lib/xstrndup.c: Assume config.h.
12032
12033 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
12034
12035         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
12036         stat-macros.h is now for our own macros, whereas stat_h is for
12037         macros in the <sys/stat.h> name space.
12038         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
12039         (STAT_MACROS_H): Remove.
12040         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
12041         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
12042         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
12043         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
12044         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
12045         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
12046         Move these macros to ...
12047         * lib/stat_.h: here.  Don't include stat-macros.h.
12048         * lib/canonicalize.c: Don't include stat-macros.h.
12049         * lib/chown.c: Likewise.
12050         * lib/euidaccess.c: Likewise.
12051         * lib/file-type.c: Likewise.
12052         * lib/filemode.c: Likewise.
12053         * lib/glob.c: Likewise.
12054         * lib/isapipe.c: Likewise.
12055         * lib/lchown.c: Likewise.
12056         * lib/lstat.c: Likewise.
12057         * lib/mkdir-p.c: Likewise.
12058         * lib/rmdir.c: Likewise.
12059         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
12060         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
12061         unless mkdir isn't declared, to speed up 'configure'.
12062         Always create sys/stat.h, since it's unlikely any real sys/stat.h
12063         would define all the S_* symbols.
12064         * modules/canonicalize (Depends-on):
12065         Depend on sys_stat, not stat-macros.
12066         * modules/chown: Likewise.
12067         * modules/euidaccess: Likewise.
12068         * modules/filemode: Likewise.
12069         * modules/file-type: Likewise.
12070         * modules/glob: Likewise.
12071         * modules/isapipe: Likewise.
12072         * modules/lchown: Likewise.
12073         * modules/lstat: Likewise.
12074         * modules/mkancesdirs: Likewise.
12075         * modules/rmdir: Likewise.
12076         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
12077         * modules/modechange: Likewise.
12078         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
12079         (configure.ac): Remove gl_STAT_MACROS.
12080         * modules/sys_stat (Depends-on): Remove stat-macros.
12081
12082 2006-10-27  Bruno Haible  <bruno@clisp.org>
12083
12084         * m4/signed.m4: Remove file.
12085         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
12086         invocation.
12087         * modules/vasnprintf (Files): Remove m4/signed.m4.
12088
12089 2006-10-27  Bruno Haible  <bruno@clisp.org>
12090
12091         Update to GNU gettext 0.16.
12092         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
12093         m4/inttypes-h.m4, m4/signed.m4.
12094         * m4/gettext.m4: Update to GNU gettext 0.16.
12095         * m4/intl.m4: New file, from GNU gettext.
12096         * m4/intldir.m4: New file, from GNU gettext.
12097         * config/srclist.txt: Update
12098
12099 2006-10-27  Eric Blake  <ebb9@byu.net>
12100
12101         * MODULES.html.sh: Document tempname.
12102         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
12103         dependencies.
12104         (Files): Move lib/tempname.c...
12105         * modules/tempname: ...to this new module.
12106         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
12107         (gl_PREREQ_TEMPNAME): Move...
12108         * m4/tempname.m4: ...to this new file.
12109         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
12110         * modules/sys_stat (Depends-on): Add stat-macros.
12111         * lib/stat_.h (includes): Pick up stat macros.
12112         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
12113         if stat macros are broken.
12114         * lib/tempname.c (includes): No need to include "stat-macros.h".
12115         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
12116         (direxists, __path_search) [!_LIBC]: Don't compile these in
12117         gnulib; the tmpdir module covers that.
12118         * lib/tempname.h: New file.
12119
12120 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
12121
12122         * COPYING: Explain how gnulib-tool converts licence headers.
12123         Almost all wording by Eric Blake.
12124
12125 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
12126
12127         * lib/mbchar.h (is_basic_table): Make read-only.
12128         * lib/mbchar.c (is_basic_table): Likewise.
12129         Reported by John Darrington.
12130
12131 2006-10-25  Bruno Haible  <bruno@clisp.org>
12132
12133         * lib/progname.h (set_program_name): Undefine before defining.
12134
12135 2006-10-25  Bruno Haible  <bruno@clisp.org>
12136
12137         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
12138         false for non-gcc C++ compilers.
12139         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
12140
12141 2006-10-24  Bruno Haible  <bruno@clisp.org>
12142
12143         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
12144         iconv implementations like Irix iconv.
12145
12146 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12147
12148         * modules/vararrays: New file.
12149         * m4/vararrays.m4: New file, taken from diffutils.
12150         * MODULES.html.sh: New module vararrays.
12151
12152 2006-10-24  Karl Berry  <karl@gnu.org>
12153
12154         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
12155         Don't call GNU Unix.
12156
12157 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12158
12159         * users.txt: Add Libtool.
12160
12161         Sync from Libtool:
12162
12163         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12164
12165         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
12166         to gnulib's policy of including config.h unconditionally.
12167
12168 2006-10-24  Bruno Haible  <bruno@clisp.org>
12169
12170         * modules/wcwidth (Files): Add m4/wint_t.m4.
12171         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
12172         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
12173
12174 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12175
12176         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
12177         to pacify GCC with some -W flags enabled.  Problem reported by
12178         Bruno Haible.
12179
12180 2006-10-24  Jim Meyering  <jim@meyering.net>
12181
12182         * MODULES.html.sh: Remove uinttostr.  It's not a module.
12183         Reported by Karl Berry.
12184
12185 2006-10-23  Bruno Haible  <bruno@clisp.org>
12186
12187         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
12188
12189 2006-10-24  Bruno Haible  <bruno@clisp.org>
12190
12191         * lib/gl_list.h: Use C comment style, not C++ comment style.
12192
12193 2006-10-23  Eric Blake  <ebb9@byu.net>
12194
12195         * lib/getaddrinfo.c (includes): Add missing include.
12196
12197 2006-10-23  Bruno Haible  <bruno@clisp.org>
12198             Paul Eggert  <eggert@cs.ucla.edu>
12199
12200         Ability to rename obstack_free.
12201         * lib/obstack.h (__obstack_free): New macro. Declare instead of
12202         obstack_free.
12203         (obstack_free): Invoke the __obstack_free macro.
12204         * lib/obstack.c (obstack_free): Use __obstack_free macro.
12205
12206 2006-10-23  Bruno Haible  <bruno@clisp.org>
12207             Paul Eggert  <eggert@cs.ucla.edu>
12208
12209         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
12210         __argc, __argv from the declaration. (They are defined as macros on
12211         mingw.)
12212
12213 2006-10-22  Bruno Haible  <bruno@clisp.org>
12214
12215         * doc/gnulib-intro.texi: New file.
12216         * doc/gnulib.texi: Include it.
12217
12218 2006-10-21  Bruno Haible  <bruno@clisp.org>
12219
12220         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
12221         "Introduction", "Miscellanous Notes", "Particular Modules".
12222
12223 2006-10-21  Bruno Haible  <bruno@clisp.org>
12224
12225         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
12226         Change mostlyclean-local rule to avoid sh syntax error from bash
12227         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
12228
12229 2006-10-23  Jim Meyering  <jim@meyering.net>
12230
12231         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
12232         in place of snprintf.
12233
12234         * modules/inttostr (Files): Add lib/uinttostr.c.
12235         * lib/uinttostr.c (inttostr): New file/function.
12236         * lib/inttostr.h (uinttostr): Declare.
12237         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
12238         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
12239         Add uinttostr.
12240         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
12241
12242 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
12243
12244         * lib/canonicalize.c (ELOOP): Define if not already defined.
12245         Problem reported by Bruno Haible in
12246         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
12247
12248 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
12249
12250         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
12251         Problem reported by Perry Smith and Ville Laurikari.
12252
12253         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
12254         uses.
12255
12256 2006-10-19  Bruno Haible  <bruno@clisp.org>
12257
12258         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
12259         for mingw.
12260
12261 2006-10-19  Bruno Haible  <bruno@clisp.org>
12262
12263         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
12264         Needed for mingw.
12265
12266 2006-10-19  Bruno Haible  <bruno@clisp.org>
12267
12268         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
12269
12270 2006-10-19  Bruno Haible  <bruno@clisp.org>
12271
12272         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
12273         it.
12274
12275 2006-10-19  Bruno Haible  <bruno@clisp.org>
12276
12277         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
12278         invocation.
12279
12280 2006-10-19  Bruno Haible  <bruno@clisp.org>
12281
12282         * gnulib-tool (func_create_testdir): Don't include ftruncate and
12283         mountlist by default.
12284
12285 2006-10-16  Bruno Haible  <bruno@clisp.org>
12286
12287         * lib/c-strstr.c: Include c-strstr.h.
12288
12289 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
12290
12291         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
12292         in a slash.
12293
12294 2006-10-18  Bruno Haible  <bruno@clisp.org>
12295
12296         * lib/lock.h [C++]: Wrap definitions in extern "C".
12297
12298 2006-10-18  Bruno Haible  <bruno@clisp.org>
12299
12300         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
12301         gl_LIBOBJS list.
12302
12303 2006-10-18  Bruno Haible  <bruno@clisp.org>
12304
12305         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
12306
12307 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
12308
12309         * lib/xstrtol.h: Include gettext.h.
12310         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
12311         Problem reported by Eric Blake.
12312         * modules/xstrtol (Depends-on): Add gettext-h.
12313
12314 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
12315
12316         * lib/strftime.c (advance): New macro.
12317         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
12318         incomplete type, so you can't add 0 to it.  Problem and patch
12319         reported by Eelco Dolstra for dietlibc.
12320
12321 2006-10-18  Jim Meyering  <jim@meyering.net>
12322
12323         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
12324         type for a local, and rename it: s/up/user_proc/.
12325
12326 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
12327
12328         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
12329         READ_UTMP_USER_PROCESS.
12330         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
12331
12332 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
12333
12334         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
12335         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
12336
12337 2006-10-17  Eric Blake  <ebb9@byu.net>
12338
12339         * lib/sigprocmask.c (sigprocmask): Fix typo.
12340
12341         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
12342
12343         * modules/clean-temp (Makefile.am): Don't add to make output...
12344         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
12345         config.h.
12346
12347 2006-10-17  Bruno Haible  <bruno@clisp.org>
12348
12349         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
12350         differently if DEFAULT_TEXT_DOMAIN is set.
12351
12352 2006-10-16  Bruno Haible  <bruno@clisp.org>
12353
12354         * lib/clean-temp.c: Include fwriteerror.h.
12355
12356 2006-10-16  Bruno Haible  <bruno@clisp.org>
12357
12358         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
12359
12360 2006-10-16  Bruno Haible  <bruno@clisp.org>
12361
12362         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
12363         * lib/sigprocmask.h: Include <sys/types.h>.
12364         (sigset_t): Use the system's definition if present.
12365
12366 2006-10-17  Eric Blake  <ebb9@byu.net>
12367
12368         * lib/xvasprintf.c (includes): Assume config.h.
12369         * lib/xasprintf.c (includes): Likewise.
12370
12371 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
12372
12373         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
12374         at least as wide as intmax_t.
12375
12376 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
12377
12378         (Imported from Automake.)
12379         * build-aux/gnupload: Update to version 1.1 of directive file.
12380
12381 2006-10-16  Eric Blake  <ebb9@byu.net>
12382
12383         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
12384         match Automake 1.10a.
12385
12386 2006-10-14  Bruno Haible  <bruno@clisp.org>
12387
12388         * modules/sigprocmask: New file.
12389         * lib/sigprocmask.h: New file.
12390         * lib/sigprocmask.c: New file.
12391         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
12392         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
12393         request sigprocmask.o.
12394         (gl_PREREQ_SIGPROCMASK): New macro.
12395         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
12396         (Depends-on): Add sigprocmask.
12397         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
12398         gt_SIGNALBLOCKING. Test for 'raise' only once.
12399         * lib/fatal-signal.c: Include sigprocmask.h.
12400         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
12401         unblock_fatal_signals): Define always.
12402         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12403         sigprocmask.
12404
12405 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
12406
12407         Sync from Automake.
12408         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
12409         which incorrectly sets the mode of an existing destination
12410         directory.  In some cases the unpatched install-sh could do the
12411         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
12412         system.  We hope this is rare in practice, but it's clearly worth
12413         fixing.  Problem reported by Alex Unleashed in
12414         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
12415         Also, don't bother to check for -m bugs unless we're using -m;
12416         suggested by Stepan Kasal.
12417
12418 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12419
12420         Sync from Automake.
12421         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
12422         `-c' flag, so they appear at the same position as in %FASTDEP%
12423         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
12424         which ignores unknown options only after the first non-option.
12425         Bug report against M4 by Nelson H. F. Beebe.
12426
12427 2006-10-13  Jim Meyering  <jim@meyering.net>
12428
12429         Fix a bug in yesterday's change.
12430         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
12431         p->fts_statp->st_dev would be used uninitialized.
12432         Ensures that we always call fts_stat on the very first entry.
12433         Miklos Szeredi reported that find -xdev stopped working.
12434
12435 2006-10-12  Bruno Haible  <bruno@clisp.org>
12436
12437         * gnulib-tool (func_get_automake_snippet): Append an automatically
12438         computed EXTRA_DIST augmentation.
12439         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
12440         * modules/alloca-opt (Makefile.am): Likewise.
12441         * modules/allocsa (Makefile.am): Likewise.
12442         * modules/arcfour (Makefile.am): Likewise.
12443         * modules/arctwo (Makefile.am): Likewise.
12444         * modules/argmatch (Makefile.am): Likewise.
12445         * modules/argz (Makefile.am): Likewise.
12446         * modules/atexit (Makefile.am): Likewise.
12447         * modules/backupfile (Makefile.am): Likewise.
12448         * modules/byteswap (Makefile.am): Likewise.
12449         * modules/c-strtod (Makefile.am): Likewise.
12450         * modules/c-strtold (Makefile.am): Likewise.
12451         * modules/calloc (Makefile.am): Likewise.
12452         * modules/canon-host (Makefile.am): Likewise.
12453         * modules/canonicalize (Makefile.am): Likewise.
12454         * modules/chdir-long (Makefile.am): Likewise.
12455         * modules/chdir-safer (Makefile.am): Likewise.
12456         * modules/check-version (Makefile.am): Likewise.
12457         * modules/chown (Makefile.am): Likewise.
12458         * modules/cloexec (Makefile.am): Likewise.
12459         * modules/close-stream (Makefile.am): Likewise.
12460         * modules/closeout (Makefile.am): Likewise.
12461         * modules/crc (Makefile.am): Likewise.
12462         * modules/csharpexec (Makefile.am): Likewise.
12463         * modules/cycle-check (Makefile.am): Likewise.
12464         * modules/des (Makefile.am): Likewise.
12465         * modules/dev-ino (Makefile.am): Likewise.
12466         * modules/dirfd (Makefile.am): Likewise.
12467         * modules/dirname (Makefile.am): Likewise.
12468         * modules/dup2 (Makefile.am): Likewise.
12469         * modules/eealloc (Makefile.am): Likewise.
12470         * modules/error (Makefile.am): Likewise.
12471         * modules/euidaccess (Makefile.am): Likewise.
12472         * modules/exclude (Makefile.am): Likewise.
12473         * modules/exitfail (Makefile.am): Likewise.
12474         * modules/fcntl-safer (Makefile.am): Likewise.
12475         * modules/fcntl (Makefile.am): Likewise.
12476         * modules/file-type (Makefile.am): Likewise.
12477         * modules/fileblocks (Makefile.am): Likewise.
12478         * modules/filemode (Makefile.am): Likewise.
12479         * modules/filenamecat (Makefile.am): Likewise.
12480         * modules/fnmatch (Makefile.am): Likewise.
12481         * modules/fopen-safer (Makefile.am): Likewise.
12482         * modules/fpending (Makefile.am): Likewise.
12483         * modules/fprintftime (Makefile.am): Likewise.
12484         * modules/free (Makefile.am): Likewise.
12485         * modules/fsusage (Makefile.am): Likewise.
12486         * modules/ftruncate (Makefile.am): Likewise.
12487         * modules/fts (Makefile.am): Likewise.
12488         * modules/gc-arcfour (Makefile.am): Likewise.
12489         * modules/gc-des (Makefile.am): Likewise.
12490         * modules/gc-hmac-md5 (Makefile.am): Likewise.
12491         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
12492         * modules/gc-md4 (Makefile.am): Likewise.
12493         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
12494         * modules/gc-sha1 (Makefile.am): Likewise.
12495         * modules/gc (Makefile.am): Likewise.
12496         * modules/getaddrinfo (Makefile.am): Likewise.
12497         * modules/getcwd (Makefile.am): Likewise.
12498         * modules/getdelim (Makefile.am): Likewise.
12499         * modules/getdomainname (Makefile.am): Likewise.
12500         * modules/getgroups (Makefile.am): Likewise.
12501         * modules/gethostname (Makefile.am): Likewise.
12502         * modules/gethrxtime (Makefile.am): Likewise.
12503         * modules/getline (Makefile.am): Likewise.
12504         * modules/getloadavg (Makefile.am): Likewise.
12505         * modules/getlogin_r (Makefile.am): Likewise.
12506         * modules/getndelim2 (Makefile.am): Likewise.
12507         * modules/getopt (Makefile.am): Likewise.
12508         * modules/getpagesize (Makefile.am): Likewise.
12509         * modules/getpass-gnu (Makefile.am): Likewise.
12510         * modules/getpass (Makefile.am): Likewise.
12511         * modules/getsubopt (Makefile.am): Likewise.
12512         * modules/gettime (Makefile.am): Likewise.
12513         * modules/gettimeofday (Makefile.am): Likewise.
12514         * modules/getugroups (Makefile.am): Likewise.
12515         * modules/getusershell (Makefile.am): Likewise.
12516         * modules/glob (Makefile.am): Likewise.
12517         * modules/group-member (Makefile.am): Likewise.
12518         * modules/hard-locale (Makefile.am): Likewise.
12519         * modules/hash (Makefile.am): Likewise.
12520         * modules/hmac-md5 (Makefile.am): Likewise.
12521         * modules/hmac-sha1 (Makefile.am): Likewise.
12522         * modules/human (Makefile.am): Likewise.
12523         * modules/idcache (Makefile.am): Likewise.
12524         * modules/imaxabs (Makefile.am): Likewise.
12525         * modules/imaxdiv (Makefile.am): Likewise.
12526         * modules/inet_ntop (Makefile.am): Likewise.
12527         * modules/inet_pton (Makefile.am): Likewise.
12528         * modules/intprops (Makefile.am): Likewise.
12529         * modules/inttostr (Makefile.am): Likewise.
12530         * modules/inttypes (Makefile.am): Likewise.
12531         * modules/isapipe (Makefile.am): Likewise.
12532         * modules/javaversion (Makefile.am): Likewise.
12533         * modules/lchmod (Makefile.am): Likewise.
12534         * modules/lchown (Makefile.am): Likewise.
12535         * modules/localcharset (Makefile.am): Likewise.
12536         * modules/long-options (Makefile.am): Likewise.
12537         * modules/lstat (Makefile.am): Likewise.
12538         * modules/malloc (Makefile.am): Likewise.
12539         * modules/mathl (Makefile.am): Likewise.
12540         * modules/mbchar (Makefile.am): Likewise.
12541         * modules/md2 (Makefile.am): Likewise.
12542         * modules/md4 (Makefile.am): Likewise.
12543         * modules/md5 (Makefile.am): Likewise.
12544         * modules/memcasecmp (Makefile.am): Likewise.
12545         * modules/memchr (Makefile.am): Likewise.
12546         * modules/memcmp (Makefile.am): Likewise.
12547         * modules/memcoll (Makefile.am): Likewise.
12548         * modules/memcpy (Makefile.am): Likewise.
12549         * modules/memmem (Makefile.am): Likewise.
12550         * modules/memmove (Makefile.am): Likewise.
12551         * modules/mempcpy (Makefile.am): Likewise.
12552         * modules/memrchr (Makefile.am): Likewise.
12553         * modules/memset (Makefile.am): Likewise.
12554         * modules/memxor (Makefile.am): Likewise.
12555         * modules/mkancesdirs (Makefile.am): Likewise.
12556         * modules/mkdir-p (Makefile.am): Likewise.
12557         * modules/mkdir (Makefile.am): Likewise.
12558         * modules/mkdtemp (Makefile.am): Likewise.
12559         * modules/mkstemp (Makefile.am): Likewise.
12560         * modules/mktime (Makefile.am): Likewise.
12561         * modules/modechange (Makefile.am): Likewise.
12562         * modules/mountlist (Makefile.am): Likewise.
12563         * modules/nanosleep (Makefile.am): Likewise.
12564         * modules/obstack (Makefile.am): Likewise.
12565         * modules/openat (Makefile.am): Likewise.
12566         * modules/pagealign_alloc (Makefile.am): Likewise.
12567         * modules/pathmax (Makefile.am): Likewise.
12568         * modules/physmem (Makefile.am): Likewise.
12569         * modules/poll (Makefile.am): Likewise.
12570         * modules/posixtm (Makefile.am): Likewise.
12571         * modules/posixver (Makefile.am): Likewise.
12572         * modules/putenv (Makefile.am): Likewise.
12573         * modules/quote (Makefile.am): Likewise.
12574         * modules/quotearg (Makefile.am): Likewise.
12575         * modules/raise (Makefile.am): Likewise.
12576         * modules/read-file (Makefile.am): Likewise.
12577         * modules/readline (Makefile.am): Likewise.
12578         * modules/readlink (Makefile.am): Likewise.
12579         * modules/readtokens (Makefile.am): Likewise.
12580         * modules/readutmp (Makefile.am): Likewise.
12581         * modules/realloc (Makefile.am): Likewise.
12582         * modules/regex (Makefile.am): Likewise.
12583         * modules/rename-dest-slash (Makefile.am): Likewise.
12584         * modules/rename (Makefile.am): Likewise.
12585         * modules/rijndael (Makefile.am): Likewise.
12586         * modules/rmdir (Makefile.am): Likewise.
12587         * modules/rpmatch (Makefile.am): Likewise.
12588         * modules/safe-read (Makefile.am): Likewise.
12589         * modules/safe-write (Makefile.am): Likewise.
12590         * modules/same-inode (Makefile.am): Likewise.
12591         * modules/same (Makefile.am): Likewise.
12592         * modules/save-cwd (Makefile.am): Likewise.
12593         * modules/savedir (Makefile.am): Likewise.
12594         * modules/setenv (Makefile.am): Likewise.
12595         * modules/settime (Makefile.am): Likewise.
12596         * modules/sha1 (Makefile.am): Likewise.
12597         * modules/sig2str (Makefile.am): Likewise.
12598         * modules/snprintf (Makefile.am): Likewise.
12599         * modules/stat-macros (Makefile.am): Likewise.
12600         * modules/stat-time (Makefile.am): Likewise.
12601         * modules/stdbool (Makefile.am): Likewise.
12602         * modules/stdint (Makefile.am): Likewise.
12603         * modules/stdlib-safer (Makefile.am): Likewise.
12604         * modules/stpcpy (Makefile.am): Likewise.
12605         * modules/stpncpy (Makefile.am): Likewise.
12606         * modules/strcase (Makefile.am): Likewise.
12607         * modules/strcasestr (Makefile.am): Likewise.
12608         * modules/strchrnul (Makefile.am): Likewise.
12609         * modules/strcspn (Makefile.am): Likewise.
12610         * modules/strdup (Makefile.am): Likewise.
12611         * modules/strerror (Makefile.am): Likewise.
12612         * modules/strftime (Makefile.am): Likewise.
12613         * modules/strndup (Makefile.am): Likewise.
12614         * modules/strnlen (Makefile.am): Likewise.
12615         * modules/strpbrk (Makefile.am): Likewise.
12616         * modules/strsep (Makefile.am): Likewise.
12617         * modules/strstr (Makefile.am): Likewise.
12618         * modules/strtod (Makefile.am): Likewise.
12619         * modules/strtoimax (Makefile.am): Likewise.
12620         * modules/strtok_r (Makefile.am): Likewise.
12621         * modules/strtol (Makefile.am): Likewise.
12622         * modules/strtoll (Makefile.am): Likewise.
12623         * modules/strtoul (Makefile.am): Likewise.
12624         * modules/strtoull (Makefile.am): Likewise.
12625         * modules/strtoumax (Makefile.am): Likewise.
12626         * modules/strverscmp (Makefile.am): Likewise.
12627         * modules/sys_socket (Makefile.am): Likewise.
12628         * modules/sys_stat (Makefile.am): Likewise.
12629         * modules/sysexits (Makefile.am): Likewise.
12630         * modules/time_r (Makefile.am): Likewise.
12631         * modules/timegm (Makefile.am): Likewise.
12632         * modules/timespec (Makefile.am): Likewise.
12633         * modules/tmpfile-safer (Makefile.am): Likewise.
12634         * modules/trim (Makefile.am): Likewise.
12635         * modules/unistd-safer (Makefile.am): Likewise.
12636         * modules/unlinkdir (Makefile.am): Likewise.
12637         * modules/unlocked-io (Makefile.am): Likewise.
12638         * modules/userspec (Makefile.am): Likewise.
12639         * modules/utime (Makefile.am): Likewise.
12640         * modules/utimecmp (Makefile.am): Likewise.
12641         * modules/utimens (Makefile.am): Likewise.
12642         * modules/vasnprintf (Makefile.am): Likewise.
12643         * modules/vasprintf (Makefile.am): Likewise.
12644         * modules/vsnprintf (Makefile.am): Likewise.
12645         * modules/xalloc (Makefile.am): Likewise.
12646         * modules/xgetcwd (Makefile.am): Likewise.
12647         * modules/xnanosleep (Makefile.am): Likewise.
12648         * modules/xreadlink (Makefile.am): Likewise.
12649         * modules/xstrtod (Makefile.am): Likewise.
12650         * modules/xstrtol (Makefile.am): Likewise.
12651         * modules/xstrtold (Makefile.am): Likewise.
12652         * modules/yesno (Makefile.am): Likewise.
12653         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
12654
12655 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12656
12657         * modules/error (Makefile.am): Distribute files through
12658         EXTRA_DIST, not lib_SOURCES.
12659
12660 2006-10-12  Eric Blake  <ebb9@byu.net>
12661
12662         * modules/error (Makefile.am): Distribute files in /lib.
12663         * modules/obstack (Makefile.am): Likewise.
12664
12665 2006-10-12  Bruno Haible  <bruno@clisp.org>
12666
12667         * modules/acl (Makefile.am): Distribute all files in lib/ through
12668         EXTRA_DIST.
12669         * modules/arcfour (Makefile.am): Likewise.
12670         * modules/arctwo (Makefile.am): Likewise.
12671         * modules/argmatch (Makefile.am): Likewise.
12672         * modules/argz (Makefile.am): Likewise.
12673         * modules/atexit (Makefile.am): Likewise.
12674         * modules/backupfile (Makefile.am): Likewise.
12675         * modules/c-strtod (Makefile.am): Likewise.
12676         * modules/c-strtold (Makefile.am): Likewise.
12677         * modules/calloc (Makefile.am): Likewise.
12678         * modules/canon-host (Makefile.am): Likewise.
12679         * modules/canonicalize (Makefile.am): Likewise.
12680         * modules/chdir-long (Makefile.am): Likewise.
12681         * modules/chdir-safer (Makefile.am): Likewise.
12682         * modules/check-version (Makefile.am): Likewise.
12683         * modules/chown (Makefile.am): Likewise.
12684         * modules/cloexec (Makefile.am): Likewise.
12685         * modules/close-stream (Makefile.am): Likewise.
12686         * modules/closeout (Makefile.am): Likewise.
12687         * modules/crc (Makefile.am): Likewise.
12688         * modules/cycle-check (Makefile.am): Likewise.
12689         * modules/des (Makefile.am): Likewise.
12690         * modules/dirfd (Makefile.am): Likewise.
12691         * modules/dirname (Makefile.am): Likewise.
12692         * modules/dup2 (Makefile.am): Likewise.
12693         * modules/euidaccess (Makefile.am): Likewise.
12694         * modules/exclude (Makefile.am): Likewise.
12695         * modules/exitfail (Makefile.am): Likewise.
12696         * modules/fcntl-safer (Makefile.am): Likewise.
12697         * modules/file-type (Makefile.am): Likewise.
12698         * modules/fileblocks (Makefile.am): Likewise.
12699         * modules/filemode (Makefile.am): Likewise.
12700         * modules/filenamecat (Makefile.am): Likewise.
12701         * modules/fnmatch (Makefile.am): Likewise.
12702         * modules/fopen-safer (Makefile.am): Likewise.
12703         * modules/fpending (Makefile.am): Likewise.
12704         * modules/fprintftime (Makefile.am): Likewise.
12705         * modules/free (Makefile.am): Likewise.
12706         * modules/fsusage (Makefile.am): Likewise.
12707         * modules/ftruncate (Makefile.am): Likewise.
12708         * modules/fts (Makefile.am): Likewise.
12709         * modules/gc (Makefile.am): Likewise.
12710         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
12711         * modules/getaddrinfo (Makefile.am): Likewise.
12712         * modules/getcwd (Makefile.am): Likewise.
12713         * modules/getdelim (Makefile.am): Likewise.
12714         * modules/getdomainname (Makefile.am): Likewise.
12715         * modules/getgroups (Makefile.am): Likewise.
12716         * modules/gethostname (Makefile.am): Likewise.
12717         * modules/gethrxtime (Makefile.am): Likewise.
12718         * modules/getline (Makefile.am): Likewise.
12719         * modules/getloadavg (Makefile.am): Likewise.
12720         * modules/getlogin_r (Makefile.am): Likewise.
12721         * modules/getopt (Makefile.am): Likewise.
12722         * modules/getpass (Makefile.am): Likewise.
12723         * modules/getpass-gnu (Makefile.am): Likewise.
12724         * modules/getsubopt (Makefile.am): Likewise.
12725         * modules/gettime (Makefile.am): Likewise.
12726         * modules/gettimeofday (Makefile.am): Likewise.
12727         * modules/getugroups (Makefile.am): Likewise.
12728         * modules/getusershell (Makefile.am): Likewise.
12729         * modules/glob (Makefile.am): Likewise.
12730         * modules/group-member (Makefile.am): Likewise.
12731         * modules/hard-locale (Makefile.am): Likewise.
12732         * modules/hash (Makefile.am): Likewise.
12733         * modules/hmac-md5 (Makefile.am): Likewise.
12734         * modules/hmac-sha1 (Makefile.am): Likewise.
12735         * modules/human (Makefile.am): Likewise.
12736         * modules/idcache (Makefile.am): Likewise.
12737         * modules/imaxabs (Makefile.am): Likewise.
12738         * modules/imaxdiv (Makefile.am): Likewise.
12739         * modules/inet_ntop (Makefile.am): Likewise.
12740         * modules/inet_pton (Makefile.am): Likewise.
12741         * modules/inttostr (Makefile.am): Likewise.
12742         * modules/isapipe (Makefile.am): Likewise.
12743         * modules/lchown (Makefile.am): Likewise.
12744         * modules/long-options (Makefile.am): Likewise.
12745         * modules/lstat (Makefile.am): Likewise.
12746         * modules/malloc (Makefile.am): Likewise.
12747         * modules/mathl (Makefile.am): Likewise.
12748         * modules/mbchar (Makefile.am): Likewise.
12749         * modules/md2 (Makefile.am): Likewise.
12750         * modules/md4 (Makefile.am): Likewise.
12751         * modules/md5 (Makefile.am): Likewise.
12752         * modules/memcasecmp (Makefile.am): Likewise.
12753         * modules/memchr (Makefile.am): Likewise.
12754         * modules/memcmp (Makefile.am): Likewise.
12755         * modules/memcoll (Makefile.am): Likewise.
12756         * modules/memcpy (Makefile.am): Likewise.
12757         * modules/memmem (Makefile.am): Likewise.
12758         * modules/memmove (Makefile.am): Likewise.
12759         * modules/mempcpy (Makefile.am): Likewise.
12760         * modules/memrchr (Makefile.am): Likewise.
12761         * modules/memset (Makefile.am): Likewise.
12762         * modules/memxor (Makefile.am): Likewise.
12763         * modules/mkancesdirs (Makefile.am): Likewise.
12764         * modules/mkdir (Makefile.am): Likewise.
12765         * modules/mkdir-p (Makefile.am): Likewise.
12766         * modules/mkdtemp (Makefile.am): Likewise.
12767         * modules/mkstemp (Makefile.am): Likewise.
12768         * modules/mktime (Makefile.am): Likewise.
12769         * modules/modechange (Makefile.am): Likewise.
12770         * modules/mountlist (Makefile.am): Likewise.
12771         * modules/nanosleep (Makefile.am): Likewise.
12772         * modules/openat (Makefile.am): Likewise.
12773         * modules/pagealign_alloc (Makefile.am): Likewise.
12774         * modules/physmem (Makefile.am): Likewise.
12775         * modules/poll (Makefile.am): Likewise.
12776         * modules/posixtm (Makefile.am): Likewise.
12777         * modules/posixver (Makefile.am): Likewise.
12778         * modules/putenv (Makefile.am): Likewise.
12779         * modules/quote (Makefile.am): Likewise.
12780         * modules/quotearg (Makefile.am): Likewise.
12781         * modules/raise (Makefile.am): Likewise.
12782         * modules/read-file (Makefile.am): Likewise.
12783         * modules/readline (Makefile.am): Likewise.
12784         * modules/readlink (Makefile.am): Likewise.
12785         * modules/readtokens (Makefile.am): Likewise.
12786         * modules/readutmp (Makefile.am): Likewise.
12787         * modules/realloc (Makefile.am): Likewise.
12788         * modules/regex (Makefile.am): Likewise.
12789         * modules/rename (Makefile.am): Likewise.
12790         * modules/rename-dest-slash (Makefile.am): Likewise.
12791         * modules/rijndael (Makefile.am): Likewise.
12792         * modules/rmdir (Makefile.am): Likewise.
12793         * modules/rpmatch (Makefile.am): Likewise.
12794         * modules/safe-read (Makefile.am): Likewise.
12795         * modules/safe-write (Makefile.am): Likewise.
12796         * modules/same (Makefile.am): Likewise.
12797         * modules/save-cwd (Makefile.am): Likewise.
12798         * modules/savedir (Makefile.am): Likewise.
12799         * modules/setenv (Makefile.am): Likewise.
12800         * modules/settime (Makefile.am): Likewise.
12801         * modules/sha1 (Makefile.am): Likewise.
12802         * modules/sig2str (Makefile.am): Likewise.
12803         * modules/snprintf (Makefile.am): Likewise.
12804         * modules/stdlib-safer (Makefile.am): Likewise.
12805         * modules/stpcpy (Makefile.am): Likewise.
12806         * modules/stpncpy (Makefile.am): Likewise.
12807         * modules/strcase (Makefile.am): Likewise.
12808         * modules/strcasestr (Makefile.am): Likewise.
12809         * modules/strchrnul (Makefile.am): Likewise.
12810         * modules/strcspn (Makefile.am): Likewise.
12811         * modules/strdup (Makefile.am): Likewise.
12812         * modules/strerror (Makefile.am): Likewise.
12813         * modules/strftime (Makefile.am): Likewise.
12814         * modules/strndup (Makefile.am): Likewise.
12815         * modules/strnlen (Makefile.am): Likewise.
12816         * modules/strpbrk (Makefile.am): Likewise.
12817         * modules/strsep (Makefile.am): Likewise.
12818         * modules/strstr (Makefile.am): Likewise.
12819         * modules/strtod (Makefile.am): Likewise.
12820         * modules/strtoimax (Makefile.am): Likewise.
12821         * modules/strtok_r (Makefile.am): Likewise.
12822         * modules/strtol (Makefile.am): Likewise.
12823         * modules/strtoll (Makefile.am): Likewise.
12824         * modules/strtoul (Makefile.am): Likewise.
12825         * modules/strtoull (Makefile.am): Likewise.
12826         * modules/strtoumax (Makefile.am): Likewise.
12827         * modules/strverscmp (Makefile.am): Likewise.
12828         * modules/time_r (Makefile.am): Likewise.
12829         * modules/timegm (Makefile.am): Likewise.
12830         * modules/tmpfile-safer (Makefile.am): Likewise.
12831         * modules/unistd-safer (Makefile.am): Likewise.
12832         * modules/unlinkdir (Makefile.am): Likewise.
12833         * modules/userspec (Makefile.am): Likewise.
12834         * modules/utime (Makefile.am): Likewise.
12835         * modules/utimecmp (Makefile.am): Likewise.
12836         * modules/utimens (Makefile.am): Likewise.
12837         * modules/vasnprintf (Makefile.am): Likewise.
12838         * modules/vasprintf (Makefile.am): Likewise.
12839         * modules/vsnprintf (Makefile.am): Likewise.
12840         * modules/xalloc (Makefile.am): Likewise.
12841         * modules/xgetcwd (Makefile.am): Likewise.
12842         * modules/xnanosleep (Makefile.am): Likewise.
12843         * modules/xreadlink (Makefile.am): Likewise.
12844         * modules/xstrtod (Makefile.am): Likewise.
12845         * modules/xstrtol (Makefile.am): Likewise.
12846         * modules/xstrtold (Makefile.am): Likewise.
12847         * modules/yesno (Makefile.am): Likewise.
12848
12849 2006-10-12  Jim Meyering  <jim@meyering.net>
12850
12851         * m4/getloadavg.m4: Revert the change below.
12852
12853         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
12854         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
12855         fail with a symlink, which is what coreutils' ./bootstrap now
12856         creates by default.
12857
12858 2006-10-12  Bruno Haible  <bruno@clisp.org>
12859
12860         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
12861         mingw.
12862         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
12863         MSVC and mingw explicitly.
12864
12865 2006-10-11  Simon Josefsson  <jas@extundo.com>
12866             Bruno Haible  <bruno@clisp.org>
12867
12868         Add support for multiple gnulib-tool invocations in the scope of a
12869         single configure.ac file.
12870         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
12871         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
12872         with the same contents as the _LIBADD variable.
12873         (func_emit_initmacro_start, func_emit_initmacro_end,
12874         func_emit_initmacro_done): New functions.
12875         (func_import, func_create_testdir): Invoke them. Allow the identifiers
12876         gl_LIBOBJS and gl_LTLIBOBJS.
12877
12878 2006-10-11  Bruno Haible  <bruno@clisp.org>
12879
12880         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
12881         (func_create_testdir): Don't create po/Makefile.am, don't invoke
12882         autoreconf. Instead, invoke autopoint explicitly but move back the
12883         *.m4 files from gnulib.
12884
12885 2006-10-11  Bruno Haible  <bruno@clisp.org>
12886
12887         * gnulib-tool (func_usage): Make module names after --create-testdir
12888         optional.
12889         (func_create_testdir): If no module was specified, use nearly all
12890         modules.
12891
12892 2006-10-12  Jim Meyering  <jim@meyering.net>
12893
12894         Big performance improvement for fts-based tools that use FTS_NOSTAT.
12895         Avoid spurious inode-mismatch problems on non-POSIX file systems.
12896         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
12897         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
12898         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
12899         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
12900         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
12901         (fts_set_stat_required): New function.
12902         (fts_open): Defer the calls to fts_stat, if possible or requested.
12903         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
12904         into fts_stat itself.
12905         (fts_read): Perform any required (deferred) fts_stat call.
12906         (fts_build): Likewise, for the directory we're about to open and read.
12907         In the readdir loop, carefully decide whether each entry will require
12908         an eventual call to fts_stat, using dirent.d_type info if available.
12909         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
12910         a command line argument into this function.  Update all callers.
12911         Map a return value of FTS_DOT to FTS_D for a command line argument.
12912         * modules/fts (Depends-on): Add d-type.  Alphabetize.
12913         Thanks to Miklos Szeredi for his tenacity and for the initial
12914         bug report about "find" failing on a FUSE-based file system.
12915
12916         * lib/fts.c (fts_open): Use consistent indentation.
12917
12918 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12919
12920         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
12921         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
12922         reported by Jim Meyering.  All uses of cache variables renamed
12923         to match Autoconf's.
12924         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
12925         the other one.
12926
12927         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
12928         Fix misspelling in diagnostic.
12929
12930 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12931
12932         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
12933         defined.  Problem reported by Matthew Woehlke.
12934
12935         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
12936         Add support for Tandem NonStop R series.
12937         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
12938         Use new macro.
12939
12940         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
12941         (has_trailing_slash): Omit size arg; all callers changed.
12942         Omit 'inline', since it doesn't help performance and we'd
12943         need to configure it.
12944         Don't count //, ///, etc. as having a trailing slash.
12945         As a side effect, this removes a C99ism reported by Matthew Woehlke.
12946         (rpl_rename_dest_slash): On failure, use rename's errno rather
12947         than (in some cases) an incorrect or junk errno.
12948         Simplify code by removing need to compute length; this does
12949         cause it to make two passes instead of one over the file name,
12950         but it's worth it.
12951
12952         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
12953         change, since Autoconf's version may no longer be appropriate now
12954         that we are using CVS Autoconf's version.  Add support for Tandem.
12955
12956 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12957             Bruno Haible  <bruno@clisp.org>
12958
12959         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
12960         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
12961         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
12962         gl_AC_TYPE_LONG_LONG.
12963
12964         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
12965         instead of HAVE_LONG_LONG.
12966         * lib/printf-args.c (printf_fetchargs): Likewise.
12967         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
12968         * lib/vasnprintf.c (VASNPRINTF): Likewise.
12969         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
12970         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
12971         gl_AC_TYPE_LONG_LONG.
12972
12973 2006-10-11  Bruno Haible  <bruno@clisp.org>
12974
12975         * m4/longlong.m4: Add comments.
12976         * m4/ulonglong.m4: Likewise.
12977
12978 2006-10-10  Bruno Haible  <bruno@clisp.org>
12979
12980         Make it possible to #define stpcpy, strdup to aliases.
12981         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
12982         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
12983
12984 2006-10-10  Bruno Haible  <bruno@clisp.org>
12985
12986         Make it possible to #define gcd to an alias.
12987         * lib/gcd.c: Include config.h.
12988
12989 2006-10-10  Bruno Haible  <bruno@clisp.org>
12990
12991         Make it possible to #define c_isascii to an alias.
12992         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
12993         defined. Undefine the macros before defining them, to avoid gcc
12994         warnings.
12995         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
12996         define NO_C_CTYPE_MACROS early.
12997
12998 2006-10-10  Bruno Haible  <bruno@clisp.org>
12999
13000         Make it possible to #define set_program_name to an alias.
13001         * lib/progname.c: Don't undefine set_program_name; instead, undefine
13002         ENABLE_RELOCATABLE early.
13003
13004 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13005
13006         Port to Tandem NSK OSS, which has 64-bit signed int but at most
13007         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
13008         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
13009         More generally, don't assume that 64-bit signed int is available
13010         if unsigned int is, and vice versa.
13011         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
13012         unsigned symbols, not on their signed counterparts.
13013         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
13014         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
13015         (UINT64_C, UINTMAX_C):
13016         Likewise.
13017         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
13018         unsigned counterparts.
13019         (Have_long_long, Unsigned): New macros.
13020         (Int): Renamed from INT.
13021         (strtoimax): Use the new macros.
13022         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
13023         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
13024         * modules/inttypes (inttypes.h): Substitute
13025         HAVE_UNSIGNED_LONG_LONG_INT.
13026         * modules/stdint (stdint.h): Likewise.
13027         (Files): Add m4/ulonglong.m4.
13028
13029 2006-10-10  Bruno Haible  <bruno@clisp.org>
13030
13031         Fix a gcc -Wshadow warning.
13032         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
13033         to 'bucket'.
13034         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
13035         gl_linked_indexof_from_to): Likewise.
13036         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
13037         Likewise.
13038         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
13039         Likewise.
13040         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
13041         Reported by Eric Blake.
13042
13043 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
13044
13045         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
13046         for NetBSD.  Problem reported by Bruno Haible.
13047
13048 2006-10-09  Jim Meyering  <jim@meyering.net>
13049
13050         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
13051         Patch from Bruno Haible.
13052
13053 2006-10-09  Jim Meyering  <jim@meyering.net>
13054
13055         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
13056         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
13057         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
13058
13059 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13060
13061         Don't include <config.h> twice; this doesn't work in some cases,
13062         e.g., when config.h has "#define intmax_t long long int" and
13063         we include <config.h>, <inttypes.h>, <config.h> in that order.
13064         Problem reported by Matthew Woehlke in:
13065         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
13066         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
13067         * lib/fts-cycle.c: Don't include config.h.
13068         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
13069         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
13070         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
13071         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
13072         inttypes.h.
13073         * lib/xstrtoumax.c: Likewise.
13074         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
13075         __strtol and the like, so that this module is more like its siblings.
13076         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
13077         Remove; no longer needed now that we assume gnulib inttypes.h.
13078
13079 2006-10-08  Bruno Haible  <bruno@clisp.org>
13080
13081         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
13082         option.
13083
13084 2006-10-07  Jim Meyering  <jim@meyering.net>
13085
13086         * modules/inttypes (inttypes.h): Revert what seems to have been
13087         an inadvertent part of today's change: use "|", not "/" in the
13088         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
13089
13090 2006-10-07  Bruno Haible  <bruno@clisp.org>
13091
13092         * modules/sublist: New file.
13093
13094 2006-10-07  Bruno Haible  <bruno@clisp.org>
13095
13096         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
13097         * modules/argz (argz.h): Likewise.
13098         * modules/arpa_inet (arpa/inet.h): Likewise.
13099         * modules/byteswap (byteswap.h): Likewise.
13100         * modules/configmake (configmake.h): Likewise.
13101         * modules/fcntl (fcntl.h): Likewise.
13102         * modules/fnmatch (fnmatch.h): Likewise.
13103         * modules/getopt (getopt.h): Likewise.
13104         * modules/glob (glob.h): Likewise.
13105         * modules/inttypes (inttypes.h): Likewise.
13106         * modules/netinet_in (netinet/in.h): Likewise.
13107         * modules/poll (poll.h): Likewise.
13108         * modules/stdbool (stdbool.h): Likewise.
13109         * modules/stdint (stdint.h): Likewise.
13110         * modules/sys_select (sys/select.h): Likewise.
13111         * modules/sys_socket (sys/socket.h): Likewise.
13112         * modules/sys_stat (sys/stat.h): Likewise.
13113         * modules/sysexits (sysexits.h): Likewise.
13114         * modules/unistd (unistd.h): Likewise.
13115         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13116         Add a "DO NOT EDIT" comment to the generated file.
13117         (func_import): Likewise for gnulib-comp.m4.
13118
13119 2006-10-07  Bruno Haible  <bruno@clisp.org>
13120
13121         * lib/gl_sublist.h: New file.
13122         * lib/gl_sublist.c: New file.
13123
13124 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
13125
13126         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
13127         name (relative to the original working directory) and the file
13128         name component (relative to the temporary working directory).  All
13129         callers changed.
13130         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
13131         * lib/mkdir-p.c (make_dir_parents): Likewise.
13132         * lib/mkdir-p.h (make_dir_parents): Likewise.
13133
13134 2006-10-06  Eric Blake  <ebb9@byu.net>
13135
13136         Define several macros for use by the clean-temp module.
13137         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
13138         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
13139         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
13140
13141         * lib/clean-temp.h (close_stream_temp): New declaration.
13142         * lib/clean-temp.c (includes): Pull in headers according to what
13143         other modules are in use.
13144         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
13145
13146 2006-10-06  Bruno Haible  <bruno@clisp.org>
13147
13148         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
13149         instead of fopen, fwriteerror.
13150
13151 2006-10-06  Bruno Haible  <bruno@clisp.org>
13152
13153         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
13154         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
13155         int.
13156         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
13157         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
13158         Return an error indicator.
13159         Suggested by Eric Blake.
13160
13161 2006-10-06  Bruno Haible  <bruno@clisp.org>
13162
13163         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
13164         Reported by Eric Blake.
13165
13166 2006-10-06  Bruno Haible  <bruno@clisp.org>
13167
13168         * modules/closeout (Description): Mention stderr too.
13169
13170 2006-10-06  Bruno Haible  <bruno@clisp.org>
13171         and Paul Eggert  <eggert@cs.ucla.edu>
13172
13173         * lib/closeout.c (close_stdout): Also close stderr.
13174         * lib/closeout.h: Update comment.
13175
13176 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
13177
13178         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
13179         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
13180         * lib/dirchownmod.c: Include lchown.h.
13181         * lib/lchown.c: Don't include files that lchown.h now includes.
13182         Don't declare chown, since lchown.h now does that.
13183         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
13184         (lchown): Define to rpl_chown if lchown is declared but
13185         does not exist.  Declare using a prototype if lchown is not
13186         declared.  Add a copyright notice.
13187         * lib/mkstemp.h: Include <unistd.h>.
13188         * lib/openat.c: Include lchown.h.
13189
13190         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
13191         we now test for that separately.
13192         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
13193         rather than O_NOFOLLOW, when testing whether it's possible to
13194         avoid a race condition reliably.
13195         * lib/savewd.c (savewd_chdir): Likewise.
13196
13197         Remove macros that are no longer needed now that stdint.h is
13198         reliable.
13199         * lib/fsusage.c (UINTMAX_MAX): Remove.
13200         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
13201         * lib/utimecmp.c (SIZE_MAX): Remove.
13202
13203         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
13204
13205         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
13206         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
13207         O_NOATIME works.
13208
13209 2006-10-05  Bruno Haible  <bruno@clisp.org>
13210
13211         * lib/gl_list.h (gl_sortedlist_search_from_to,
13212         gl_sortedlist_indexof_from_to): New declarations.
13213         (gl_list_implementation): New fields sortedlist_search_from_to,
13214         sortedlist_indexof_from_to.
13215         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
13216         inline functions.
13217         * lib/gl_list.c (gl_sortedlist_search_from_to,
13218         gl_sortedlist_indexof_from_to): New functions.
13219         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
13220         function.
13221         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
13222         (gl_array_sortedlist_search_from_to): New function.
13223         (gl_array_list_implementation): Update.
13224         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
13225         function.
13226         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
13227         (gl_carray_sortedlist_search_from_to): New function.
13228         (gl_carray_list_implementation): Update.
13229         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
13230         gl_linked_sortedlist_indexof_from_to): New functions.
13231         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
13232         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
13233         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
13234         gl_tree_sortedlist_indexof_from_to): New functions.
13235         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
13236         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
13237         Update.
13238         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
13239         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
13240         Update.
13241
13242 2006-10-05  Bruno Haible  <bruno@clisp.org>
13243
13244         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
13245         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
13246         (struct gl_list_implementation): Add fields search_from_to,
13247         indexof_from_to. Remove fields search, indexof.
13248         (gl_list_search): Use the search_from_to method.
13249         (gl_list_search_from, gl_list_search_from_to): New functions.
13250         (gl_list_indexof): Use the indexof_from_to method.
13251         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
13252         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
13253         (gl_list_search_from, gl_list_search_from_to): New functions.
13254         (gl_list_indexof): Use the indexof_from_to method.
13255         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
13256         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
13257         gl_array_indexof. Add start_index, end_index arguments.
13258         (gl_array_search_from_to): Renamed from gl_array_search. Add
13259         start_index, end_index arguments.
13260         (gl_array_remove, gl_array_list_implementation): Update.
13261         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
13262         gl_carray_indexof. Add start_index, end_index arguments.
13263         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
13264         start_index, end_index arguments.
13265         (gl_carray_remove, gl_carray_list_implementation): Update.
13266         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
13267         gl_linked_search. Add start_index, end_index arguments.
13268         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
13269         start_index, end_index arguments.
13270         (gl_linked_remove): Update.
13271         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
13272         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
13273         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
13274         field to 'size_t'.
13275         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
13276         gl_tree_search. Add start_index, end_index arguments.
13277         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
13278         start_index, end_index arguments.
13279         (gl_tree_remove): Update.
13280         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
13281         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
13282         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
13283         function.
13284         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
13285         gl_tree_search. Add start_index, end_index arguments.
13286         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
13287         start_index, end_index arguments.
13288         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
13289         Update.
13290         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
13291
13292 2006-10-05  Bruno Haible  <bruno@clisp.org>
13293
13294         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
13295
13296         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
13297         fwriteerror_temp): New declarations.
13298         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
13299         (descriptors): New variable.
13300         (cleanup): First, close the descriptors.
13301         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
13302         fclose_temp, fwriteerror_temp): New functions.
13303
13304 2006-10-04  Jim Meyering  <jim@meyering.net>
13305
13306         * lib/fts.c (fts_open): Tiny comment change.
13307
13308 2006-10-04  Bruno Haible  <bruno@clisp.org>
13309
13310         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
13311         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
13312         gl_LOCK_BODY.
13313         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
13314         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
13315         gl_LOCK_EARLY_BODY.
13316         (gl_LOCK): Require gl_LOCK_BODY.
13317
13318 2006-10-04  Bruno Haible  <bruno@clisp.org>
13319
13320         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
13321         (gl_oset_search_atleast): New declaration.
13322         (struct gl_oset_implementation): Add field 'search_atleast'.
13323         (gl_oset_search_atleast): New inline function.
13324         * lib/gl_oset.c (gl_oset_search_atleast): New function.
13325         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
13326         (gl_array_oset_implementation): Update.
13327         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
13328         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
13329         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
13330
13331 2006-10-04  Bruno Haible  <bruno@clisp.org>
13332
13333         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
13334
13335 2006-10-03  Bruno Haible  <bruno@clisp.org>
13336
13337         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
13338         from gl_avltreehash_list_implementation.
13339
13340 2006-10-03  Bruno Haible  <bruno@clisp.org>
13341
13342         * lib/gl_oset.c (gl_oset_add): Fix return type.
13343
13344 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
13345
13346         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
13347
13348 2006-10-02  Eric Blake  <ebb9@byu.net>
13349
13350         * modules/strnlen (Depends-on): Add extensions.
13351
13352 2006-10-02  Eric Blake  <ebb9@byu.net>
13353
13354         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
13355         definition in 2.60+.
13356
13357 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
13358
13359         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
13360         checks.
13361
13362 2006-10-02  Bruno Haible  <bruno@clisp.org>
13363
13364         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
13365         to the AUTOMAKE_OPTIONS.
13366         Reported by Jim Meyering.
13367
13368 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
13369
13370         Work around bug in Solaris 10 /proc file system:
13371         /proc/self/fd/NNN/.. isn't the parent directory of
13372         the directory whose file descriptor is NNN.  This needs to
13373         be worked around at run time, not compile time, since a
13374         program might be built on Solaris 8, where things work, and
13375         run on Solaris 10.
13376         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
13377         to use the following interface instead:
13378         (OPENAT_BUFFER_SIZE): New macro.
13379         (openat_proc_name): New function.
13380         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
13381         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
13382         Likewise.
13383         * lib/openat-proc.c: New file.
13384         * modules/openat (Files): Add lib/openat-proc.c.
13385         (Depends-on): Add same-inode, stdbool.
13386         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
13387
13388 2006-09-29  Bruno Haible  <bruno@clisp.org>
13389
13390         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
13391         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
13392         argument. Set stdout_closed before testing for ferror, not after.
13393         (fwriteerror, fwriteerror_no_ebadf): New functions.
13394
13395 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13396
13397         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
13398
13399 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
13400
13401         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
13402         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
13403
13404 2006-09-28  Jim Meyering  <jim@meyering.net>
13405
13406         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
13407         Include <unistd.h>.
13408
13409 2006-09-28  Bruno Haible  <bruno@clisp.org>
13410
13411         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
13412         * modules/linkedhash-list (Depends-on): Likewise.
13413         * modules/rbtreehash-list (Depends-on): Likewise.
13414
13415 2006-09-28  Bruno Haible  <bruno@clisp.org>
13416
13417         * lib/strndup.h: Simplify the redefinition of strndup.
13418         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
13419         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
13420
13421 2006-09-28  Bruno Haible  <bruno@clisp.org>
13422
13423         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
13424         * lib/gl_linkedhash_list.c: Likewise.
13425         * lib/gl_rbtreehash_list.c: Likewise.
13426
13427 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
13428
13429         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
13430         getaddrinfo.
13431
13432         * lib/__fpending.h: Don't include <stdio_ext.h> unless
13433         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
13434         it causes <stdio_ext.h> to cause a compile-time error.
13435         Problem reported by Nelson H. F. Beebe.
13436         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
13437         of HAVE_DECL___PENDING.
13438
13439         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
13440         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
13441         declaration.
13442
13443 2006-09-27  Jim Meyering  <jim@meyering.net>
13444
13445         This file could end up with a definition for a function
13446         named __strndup, rather than rpl_strndup on a system with
13447         incomplete weak_alias support.
13448         * lib/strndup.c (strndup): Rename from __strndup.
13449         Remove #defines that used to map __strndup to strndup.
13450         Don't use K&R prototypes.
13451         Remove LIBC-related code, since this file is not sync'd with glibc.
13452         * lib/strndup.h: Revamp, accordingly.
13453         * m4/strndup.m4: Modernize.
13454
13455 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
13456
13457         * modules/savewd (Depends-on): Add 'raise'.
13458         * lib/savewd.c: Include <signal.h>, for 'raise'.
13459
13460 2006-09-26  Jim Meyering  <jim@meyering.net>
13461
13462         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
13463         when we detect Darwin 8.7.0's acl_get_file bug.
13464         Rearrange to perform the new (below) run-test while $LIBS
13465         contains any acl-related library.  Set USE_ACL at the end.
13466         (gl_ACL_GET_FILE): New function.
13467
13468 2006-09-26  Eric Blake  <ebb9@byu.net>
13469
13470         * lib/verror.c: Include <config.h> unconditionally.
13471
13472 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
13473
13474         * modules/clock-time (Maintainer): Add self.
13475         * modules/getlogin_r (Depends-on): Add extensions.
13476
13477 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13478
13479         * modules/clock-time: New module.
13480         * modules/nanosleep (Depends-on): Add clock-time.
13481         * modules/gethrxtime (Depends-on): Likewise.
13482         * modules/gettime (Depends-on): Likewise.
13483         * modules/settime (Depends-on): Likewise.
13484
13485         * modules/fts-lgpl: Depend on openat.
13486         * modules/mkancesdirs: Depend on savewd.
13487         * modules/mkdir-p: Likewise.
13488
13489 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13490
13491         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
13492
13493         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
13494         `gl_have_arbitrary_file_name_length_limit' to
13495         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
13496         actually works between configure runs.
13497
13498 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13499             Bruno Haible  <bruno@clisp.org>
13500
13501         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
13502
13503 2006-09-25  Jim Meyering  <jim@meyering.net>
13504
13505         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
13506         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
13507
13508 2006-09-25  Eric Blake  <ebb9@byu.net>
13509
13510         * gnulib-tool (func_import, func_create_testdir): Fix typos in
13511         exec's in 2006-09-18 patch when shuffling fds.
13512
13513 2006-09-25  Bruno Haible  <bruno@clisp.org>
13514
13515         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
13516         Reported by Jim Meyering.
13517
13518 2006-09-24  Jim Meyering  <jim@meyering.net>
13519
13520         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
13521         compare a pointer against a literal "0".  That caused failures with
13522         at least HP-UX's hpcc.
13523
13524 2006-09-22  Simon Josefsson  <jas@extundo.com>
13525
13526         * modules/gc-sha1:
13527         * modules/gc-md4:
13528         * modules/gc-hmac-sha1:
13529         * modules/gc-hmac-md5:
13530         * modules/gc-des:
13531         * modules/gc-arcfour: Distribute more files.
13532
13533 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13534
13535         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
13536         (gl_linked_iterator_from_to): Initialize struct completely.
13537         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
13538         (gl_tree_iterator_from_to): Likewise
13539         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
13540         * lib/gl_array_list.c [lint] (gl_array_iterator)
13541         (gl_array_iterator_from_to): Likewise.
13542         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
13543         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
13544         (gl_carray_iterator_from_to): Likewise.
13545
13546         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
13547         * lib/md4.c (md4_process_block): Remove unused variable.
13548         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
13549         parentheses for clarity.
13550
13551 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13552
13553         * modules/bison-i18n (Depends-on): Add gettext.
13554
13555 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13556
13557         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
13558         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
13559         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
13560         also add missing comma that caused broken test.
13561         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
13562         stdlib.h, for `abort'.
13563         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
13564         variables.
13565         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
13566         include unistd.h if present, for `rmdir'.
13567         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
13568         variables.
13569         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
13570         in the process include standard headers for prototypes.
13571         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
13572         gets declared on GNU/Linux.
13573         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
13574         unistd.h, for `rmdir'.
13575         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
13576
13577         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
13578         always true.
13579         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
13580
13581         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
13582
13583 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13584
13585         * gnulib-tool (func_version): Create output all at once.  This
13586         may help avoid triggering unnecessary SIGPIPEs, and at any
13587         rate it doesn't hurt.
13588
13589 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13590             Bruno Haible  <bruno@clisp.org>
13591
13592         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
13593         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
13594         * m4/signed.m4 (bh_C_SIGNED): Likewise.
13595
13596         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
13597         (gl_FUNC_VASPRINTF): Invoke it.
13598
13599 2006-09-22  Bruno Haible  <bruno@clisp.org>
13600
13601         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
13602         getloadavg.c as first argument.
13603
13604 2006-09-22  Bruno Haible  <bruno@clisp.org>
13605
13606         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
13607         at the beginning of the gl_INIT macro.
13608         * modules/getloadavg (configure.ac): Pass $gl_source_base to
13609         gl_GETLOADAVG.
13610
13611 2006-09-22  Bruno Haible  <bruno@clisp.org>
13612
13613         * gnulib-tool (func_create_megatestdir): Don't include the config-h
13614         module.
13615         Suggested by Ralf Wildenhues.
13616
13617 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
13618
13619         Import this patch from libc:
13620
13621         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
13622
13623         * lib/regex_internal.c (re_string_reconstruct): Handle
13624         offset < pstr->valid_raw_len && pstr->offsets_needed case.
13625         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
13626         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
13627         re_string_context_at.
13628
13629         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
13630         now requires it.
13631         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
13632         gl_REGEX now does it for us.
13633         (gl_REGEX): Add test taken from
13634         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
13635
13636         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
13637         Check that large offsets work.  Modernize Autoconf usages.
13638         Prefer "yes" to mean a good thing rather than a bad.
13639         Don't put "#define mkstemp" in config.h, as this might interfere
13640         with standard system headers that "#define mkstemp mkstemp64".
13641
13642         * modules/mkstemp (Depends-on): Add extensions, so that
13643         mkstemp is visible on some platforms.
13644         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
13645         (Include): Change to "mkstemp.h" from <stdlib.h>.
13646         (Files): Add mkstemp.h.
13647
13648         * lib/mkstemp.h: New file, since some standard headers
13649         #define mkstemp.
13650         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
13651         Include "mkstemp.h".
13652         Make the _LIBC code resemble glibc original more,
13653         e.g., use K&R style.
13654         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
13655         (mkstemp): Remove, since mkstemp.h does this for us.
13656         * lib/stdlib--.h: Include mkstemp.h.
13657
13658         Import this patch from libc:
13659
13660         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
13661
13662         * lib/tempname.c (__gen_tempname): Change attempts_min
13663         into a macro.  Use preprocessor to decide how to initialize
13664         attempts [Coverity CID 67].
13665
13666 2006-09-20  Bruno Haible  <bruno@clisp.org>
13667
13668         * lib/mkdtemp.c: Import from libc.
13669         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
13670                 * sysdeps/posix/tempname.c (__gen_tempname): Change
13671                 attempts_min into a macro.  Use preprocessor to decide how to
13672                 initialize attempts [Coverity CID 67].
13673         2001-11-27  Paul Eggert  <eggert@twinsun.com>
13674                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
13675                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
13676
13677 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13678
13679         * gnulib-tool (func_exit): New function, to allow to pass the
13680         exit status portably through the trap.  Use everywhere.
13681         (--help, --version): Signal a write error.
13682         (trap): catch SIGPIPE, for write errors.
13683         Exit at the end of the trap, with the correct exit status.
13684
13685 2006-09-19  Karl Berry  <karl@gnu.org>
13686
13687         * doc/gnulib.texi: note about the license texinfo files.
13688
13689 2006-09-19  Eric Blake  <ebb9@byu.net>
13690
13691         * gnulib-tool: Avoid space-tab.
13692
13693 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
13694
13695         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
13696         that prevented coreutils 6.1 from building.  Problem reported
13697         by Petter Reinholdtsen.
13698
13699 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
13700
13701         * gnulib-tool (avoidlist): Fix typo that broke options like
13702         --avoid=lock that are used by coreutils bootstrap.
13703
13704 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
13705
13706         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
13707         more systematically.
13708
13709 2006-09-18  Jim Meyering  <jim@meyering.net>
13710
13711         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
13712
13713 2006-09-18  Bruno Haible  <bruno@clisp.org>
13714
13715         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
13716
13717 2006-09-18  Bruno Haible  <bruno@clisp.org>
13718
13719         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
13720         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
13721         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
13722         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
13723         * m4/gettext.m4: Require autoconf >= 2.52.
13724         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
13725         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
13726         of gl_cv_header_inttypes_h.
13727
13728 2006-09-18  Bruno Haible  <bruno@clisp.org>
13729
13730         * lib/javaversion.c: Include configmake.h.
13731
13732 2006-09-18  Bruno Haible  <bruno@clisp.org>
13733
13734         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
13735         avoid that the while loops be executed in a subshell.
13736
13737 2006-09-18  Bruno Haible  <bruno@clisp.org>
13738
13739         * MODULES.html.sh (func_module): Break long lines.
13740         Suggested by Bruce Korb <bkorb@gnu.org>.
13741
13742 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13743
13744         Speed up by a factor of 1.12.
13745         * gnulib-tool (nl): New variable.
13746         (func_import): Rewrite include directive extraction to only read each
13747         directive once.
13748
13749 2006-09-17  Bruno Haible  <bruno@clisp.org>
13750
13751         * modules/javaversion (Makefile.am): Remove DEFS setting.
13752         (Depends-on): Add configmake, for PKGDATADIR definition.
13753
13754 2006-09-17  Bruno Haible  <bruno@clisp.org>
13755
13756         * gnulib-tool (func_create_testdir): Rewrite all files at once.
13757
13758 2006-09-17  Bruno Haible  <bruno@clisp.org>
13759
13760         * gnulib-tool (func_append): New function, stolen from libtool.m4.
13761         (func_modules_transitive_closure, func_modules_add_dummy,
13762         func_modules_to_filelist, func_import, func_create_testdir,
13763         func_create_megatestdir, ...): Use it wherever possible.
13764         Suggested by Ralf Wildenhues.
13765
13766 2006-09-16  Karl Berry  <karl@gnu.org>
13767
13768         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
13769         to avoid sectioning errors.
13770         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
13771         [ifinfo]: blank line after @center-ed titles.
13772         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
13773         Spell FSF address consistently with others.
13774         (These changes approved by rms.)
13775
13776 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13777
13778         Speed up by a factor of 1.61.
13779         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
13780         already checked module names again.
13781
13782 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13783
13784         Speed up by a factor of 1.13.
13785         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
13786         for new_files, and the input to func_add_or_update.
13787
13788 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13789
13790         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
13791         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
13792
13793 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13794
13795         * modules/mkancesdirs (Depends-on): Add fcntl.
13796         * modules/savewd: New file.
13797         * MODULES.html.sh (File system functions): Add savewd.
13798
13799         * modules/configmake (Makefile.am): Add support for the
13800         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
13801
13802 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13803
13804         * m4/savewd.m4: New file.
13805
13806 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13807
13808         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
13809         (dirchownmod): New arg FD.  All callers changed.
13810         Use FD rather than opening the directory ourself, as opening is
13811         now the caller's responsibility.
13812         * lib/dirchownmod.h: Likewise.
13813         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
13814         hosts that require <sys/types.h> before <sys/stat.h>.  Include
13815         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
13816         (test_dir): Remove.
13817         (mkancesdirs): Return length of prefix of FILE that has already
13818         been made, or -2 if there is a child doing the work.  Redo
13819         algorithm so that it is O(N) rather than O(N**2).  Optimize away
13820         ".", and treat ".." specially since it might stray back into
13821         already-created areas.  Use a subprocess if necessary.  New arg
13822         WD; all users changed.  MAKE_DIR function should now return 1
13823         if it creates a directory that is not readable.  Return -2 if
13824         a child process is spun off.
13825         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
13826         Adjust signature to match code.
13827         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
13828         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
13829         all users changed.
13830         * lib/savewd.c, lib/savewd.h: New files.
13831
13832 2006-09-15  Jim Meyering  <jim@meyering.net>
13833
13834         * modules/rename-dest-slash: New module.
13835         * MODULES.html.sh (posix_compat): Add it here.
13836
13837         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
13838
13839 2006-09-15  Jim Meyering  <jim@meyering.net>
13840
13841         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
13842         file.
13843
13844         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
13845
13846 2006-09-15  Jim Meyering  <jim@meyering.net>
13847
13848         * lib/rename-dest-slash.c (has_trailing_slash): Use
13849         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
13850         (rpl_rename_dest_slash): Perform the cheaper trailing slash
13851         test before testing whether SRC is a directory.
13852         Suggestions from Bruno Haible.
13853
13854         Avoid a warning about an unused variable.
13855         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
13856         into the #ifdef block where it's used.
13857
13858         * lib/rename-dest-slash.c: New file.
13859
13860 2006-09-14  Bruno Haible  <bruno@clisp.org>
13861
13862         * lib/allocsa.c: Include <config.h> unconditionally.
13863         * lib/asnprintf.c: Likewise.
13864         * lib/asprintf.c: Likewise.
13865         * lib/c-strcasecmp.c: Likewise.
13866         * lib/c-strcasestr.c: Likewise.
13867         * lib/c-strncasecmp.c: Likewise.
13868         * lib/c-strstr.c: Likewise.
13869         * lib/classpath.c: Likewise.
13870         * lib/clean-temp.c: Likewise.
13871         * lib/concatpath.c: Likewise.
13872         * lib/copy-file.c: Likewise.
13873         * lib/csharpcomp.c: Likewise.
13874         * lib/csharpexec.c: Likewise.
13875         * lib/execute.c: Likewise.
13876         * lib/fatal-signal.c: Likewise.
13877         * lib/findprog.c: Likewise.
13878         * lib/fwriteerror.c: Likewise.
13879         * lib/gl_array_list.c: Likewise.
13880         * lib/gl_array_oset.c: Likewise.
13881         * lib/gl_avltree_list.c: Likewise.
13882         * lib/gl_avltree_oset.c: Likewise.
13883         * lib/gl_avltreehash_list.c: Likewise.
13884         * lib/gl_carray_list.c: Likewise.
13885         * lib/gl_linked_list.c: Likewise.
13886         * lib/gl_linkedhash_list.c: Likewise.
13887         * lib/gl_list.c: Likewise.
13888         * lib/gl_oset.c: Likewise.
13889         * lib/gl_rbtree_list.c: Likewise.
13890         * lib/gl_rbtree_oset.c: Likewise.
13891         * lib/gl_rbtreehash_list.c: Likewise.
13892         * lib/imaxabs.c: Likewise.
13893         * lib/imaxdiv.c: Likewise.
13894         * lib/javacomp.c: Likewise.
13895         * lib/javaexec.c: Likewise.
13896         * lib/javaversion.c: Likewise.
13897         * lib/linebreak.c: Likewise.
13898         * lib/localcharset.c: Likewise.
13899         * lib/lock.c: Likewise.
13900         * lib/mbchar.c: Likewise.
13901         * lib/mbswidth.c: Likewise.
13902         * lib/mkdtemp.c: Likewise.
13903         * lib/pipe.c: Likewise.
13904         * lib/printf-args.c: Likewise.
13905         * lib/printf-parse.c: Likewise.
13906         * lib/progname.c: Likewise.
13907         * lib/progreloc.c: Likewise.
13908         * lib/readlink.c: Likewise.
13909         * lib/sh-quote.c: Likewise.
13910         * lib/stpcpy.c: Likewise.
13911         * lib/stpncpy.c: Likewise.
13912         * lib/strcasecmp.c: Likewise.
13913         * lib/strcasestr.c: Likewise.
13914         * lib/strcspn.c: Likewise.
13915         * lib/striconv.c: Likewise.
13916         * lib/strncasecmp.c: Likewise.
13917         * lib/strnlen1.c: Likewise.
13918         * lib/strstr.c: Likewise.
13919         * lib/strtok_r.c: Likewise.
13920         * lib/tls.c: Likewise.
13921         * lib/tmpdir.c: Likewise.
13922         * lib/unicodeio.c: Likewise.
13923         * lib/unsetenv.c: Likewise.
13924         * lib/vasnprintf.c: Likewise.
13925         * lib/vasprintf.c: Likewise.
13926         * lib/wait-process.c: Likewise.
13927         * lib/xallocsa.c: Likewise.
13928         * lib/xsetenv.c: Likewise.
13929         * lib/xstriconv.c: Likewise.
13930
13931 2006-09-13  Simon Josefsson  <jas@extundo.com>
13932
13933         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
13934         that internally, suggested by Ralf Wildenhues
13935         <Ralf.Wildenhues@gmx.de>.
13936
13937 2006-09-13  Simon Josefsson  <jas@extundo.com>
13938
13939         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
13940         @LIBOBJS@.
13941         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13942
13943 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
13944
13945         * lib/_fpending.c: Include <config.h> unconditionally, since we no
13946         longer worry about uses that don't define HAVE_CONFIG_H.
13947         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
13948         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
13949         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
13950         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
13951         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
13952         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
13953         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
13954         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
13955         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
13956         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
13957         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
13958         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
13959         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
13960         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
13961         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
13962         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
13963         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
13964         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
13965         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
13966         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
13967         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
13968         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
13969         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
13970         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
13971         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
13972         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
13973         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
13974         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
13975         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
13976         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
13977         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
13978         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
13979         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
13980         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
13981         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
13982         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
13983         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
13984         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
13985         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
13986         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
13987         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
13988         Likewise.
13989
13990 2006-09-13  Eric Blake  <ebb9@byu.net>
13991
13992         * lib/getopt.c: Fix typo in last commit.
13993
13994 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
13995
13996         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
13997         dgettext.
13998
13999 2006-09-12  Jim Meyering  <jim@meyering.net>
14000
14001         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
14002         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
14003         Reported by Nelson H. F. Beebe.
14004
14005 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
14006
14007         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
14008         program_invocation_name and program_invocation_short_name are
14009         initialized.
14010         * lib/argp-namefrob.h: Move declarations of program_invocation_name
14011         and program_invocation_short_name to argp.h, so they are visible
14012         to user programs.
14013         * lib/argp.h: Likewise
14014
14015 2006-09-10  Bruno Haible  <bruno@clisp.org>
14016
14017         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
14018         m4/inttypes_h.m4, m4/uintmax_t.m4.
14019
14020 2006-09-10  Bruno Haible  <bruno@clisp.org>
14021
14022         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
14023         gl_AC_TYPE_UINTMAX_T.
14024
14025 2006-09-10  Bruno Haible  <bruno@clisp.org>
14026
14027         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
14028
14029 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
14030
14031         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
14032         convention.  Text proposed by Bruno Haible.
14033         (struct argp_option): Document the use of N_() wrappers.
14034
14035         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
14036         '\v', and translate the two parts separately, instead of feeding
14037         the whole string to gettext.  This allows to exclude
14038         '\v' from the strings visible to the translator by writing doc
14039         strings as N_("..") "\v" N_("..").
14040
14041 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
14042
14043         * config/srclist.txt: Undo latest change; the bug was fixed.
14044
14045 2006-09-09  Bruno Haible  <bruno@clisp.org>
14046
14047         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
14048         assignments if building a library without libtool.
14049         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
14050         in func_emit_lib_Makefile_am.
14051         (func_import): When building a static library libfoo.a, arrange to
14052         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
14053         (func_create_testdir): Likewise.
14054         * modules/gc (configure.ac, Makefile.am): If building statically,
14055         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
14056         * modules/iconvme (configure.ac, Makefile.am): Likewise.
14057         * modules/striconv (configure.ac, Makefile.am): Likewise.
14058         Based on a suggestion by Ralf Wildenhues.
14059
14060 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
14061
14062         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
14063         Check for unistd.h too, since Autoconf doesn't assume POSIX.
14064         Also:
14065
14066         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
14067         Add year_2050_test to catch glibc bug 2821
14068         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
14069
14070         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14071         Prefer #ifdef to #if.
14072
14073         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
14074         Return from 'main' instead of calling 'exit'.
14075
14076 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
14077
14078         * lib/mktime.c (guess_time_tm): Fix bug where mktime
14079         returned the maximum time_t value rather than (time_t) -1.
14080         Problem originally reported by William Bardwell
14081         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
14082
14083         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
14084         Moved to here ...
14085         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
14086         ... from here.
14087
14088 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
14089
14090         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
14091         2821 is fixed.
14092
14093 2006-09-08  Jim Meyering  <jim@meyering.net>
14094
14095         Don't make generated files read-only.  That would bother too many
14096         people.  However, do retain the ability to work when targets are
14097         read-only: remove the destination and temporary files before writing
14098         them (when generated via sed or echo), or by using the -f option for
14099         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
14100         * modules/alloca-opt, modules/argz, modules/arpa_inet:
14101         * modules/byteswap, modules/configmake, modules/fcntl:
14102         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
14103         * modules/localcharset, modules/netinet_in, modules/poll:
14104         * modules/stdbool, modules/stdint, modules/sys_select:
14105         * modules/sys_socket, modules/sys_stat, modules/sysexits:
14106
14107 2006-09-08  Jim Meyering  <jim@meyering.net>
14108
14109         Avoid new build failure on FreeBSD 6.0.
14110         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
14111         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
14112         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
14113
14114 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14115
14116         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
14117
14118 2006-09-07  Jim Meyering  <jim@meyering.net>
14119
14120         Fix global typo in last change: use chmod u-w, not chmod u-x.
14121         Spotted by Paul Eggert and Bruce Korb.
14122         * modules/alloca-opt, modules/argz, modules/arpa_inet:
14123         * modules/byteswap, modules/configmake, modules/fcntl:
14124         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
14125         * modules/localcharset, modules/netinet_in, modules/poll:
14126         * modules/stdbool, modules/stdint, modules/sys_select:
14127         * modules/sys_socket, modules/sys_stat, modules/sysexits:
14128
14129 2006-09-06  Jim Meyering  <jim@meyering.net>
14130
14131         Make generated files be read-only.
14132         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
14133         Ensure that each generated file is now read-only.
14134         * modules/argz: Likewise.
14135         * modules/arpa_inet: Likewise.
14136         * modules/byteswap: Likewise.
14137         * modules/configmake: Likewise.
14138         * modules/fcntl: Likewise.
14139         * modules/fnmatch: Likewise.
14140         * modules/getopt: Likewise.
14141         * modules/glob: Likewise.
14142         * modules/inttypes: Likewise.
14143         * modules/netinet_in: Likewise.
14144         * modules/poll: Likewise.
14145         * modules/stdbool: Likewise.
14146         * modules/stdint: Likewise.
14147         * modules/sys_select: Likewise.
14148         * modules/sys_socket: Likewise.
14149         * modules/sys_stat: Likewise.
14150         * modules/sysexits: Likewise.
14151         * modules/localcharset: Same as above, but continue using temporary
14152         file named "t-$@" (why different?) rather than the "$@-t" used
14153         everywhere else.
14154
14155         * modules/sysexits (Makefile.am): Replace literal occurrences
14156         of "sysexit.h" more readable, and more consistent, "$@".
14157
14158 2006-09-06  Bruno Haible  <bruno@clisp.org>
14159
14160         * modules/striconv: New file.
14161         * modules/xstriconv: New file.
14162         * MODULES.html.sh (Internationalization functions): Add striconv,
14163         xstriconv.
14164
14165 2006-09-06  Bruno Haible  <bruno@clisp.org>
14166
14167         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
14168         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
14169         not using libtool correctly.
14170
14171 2006-09-06  Bruno Haible  <bruno@clisp.org>
14172
14173         * lib/striconv.h: New file.
14174         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
14175         iconvstring.c.
14176         * lib/xstriconv.h: New file.
14177         * lib/xstriconv.c: New file.
14178
14179 2006-09-06  Bruno Haible  <bruno@clisp.org>
14180
14181         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
14182         lib_..._LDFLAGS.
14183
14184 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14185
14186         * lib/argz_.h: Sync from Libtool.
14187
14188         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
14189                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14190
14191         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
14192
14193 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
14194
14195         * modules/trim: New file.
14196
14197 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
14198
14199         * lib/trim.h: New file.
14200         * lib/trim.c: New file.
14201
14202 2006-09-05  Bruno Haible  <bruno@clisp.org>
14203
14204         * MODULES.html.sh (String handling): Add trim.
14205
14206 2006-09-04  Karl Berry  <karl@gnu.org>
14207
14208         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
14209         until next release.
14210
14211 2006-09-03  Bruno Haible  <bruno@clisp.org>
14212
14213         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
14214         correctly.
14215
14216 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
14217
14218         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
14219         not gl_GETLOADAVG.  Omit unneeded semicolons.
14220         Problems reported by Ralf Wildenhues in
14221         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
14222         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
14223         at the end, which is the usual gnulib style.
14224
14225         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
14226         of doing all the work ourselves.
14227         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
14228         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
14229
14230 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
14231
14232         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
14233         Problem reported by Ralf Wildenhues in
14234         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
14235
14236         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
14237         HAVE_STRUCT_STATFS_F_FSTYPENAME.
14238
14239 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
14240
14241         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
14242         yesterday's patch by changing test -n to test -z.
14243
14244 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
14245
14246         * modules/getloadavg (Files): Add m4/getloadavg.m4.
14247         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
14248         the former is now obsolescent.
14249
14250         * modules/chdir-long (Depends-on): Add fcntl.
14251
14252 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
14253
14254         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
14255         obsolescent, and programs should use gnulib instead.
14256         * m4/getloadavg.m4: New file, with contents taken from Autoconf
14257         but with prefixes changed.
14258
14259 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
14260
14261         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
14262         or stdbool.h, because they might not exist while configuring.
14263
14264         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
14265         Don't include unistd.h or limits.h; not needed, since chdir-long.h
14266         does that for us.
14267         (O_DIRECTORY): Remove.
14268
14269 2006-08-31  Eric Blake  <ebb9@byu.net>
14270
14271         * gnulib-tool: Don't let emacs change spaces to TAB.
14272
14273 2006-08-31  Bruno Haible  <bruno@clisp.org>
14274
14275         * gnulib-tool: When calling func_import more than once, do it in a
14276         subshell.
14277         Reported by Eric Blake <ebb9@byu.net>.
14278
14279 2006-08-31  Bruno Haible  <bruno@clisp.org>
14280
14281         * gnulib-tool (nl): Remove variable.
14282         (sed_transform_lib_file): Use more robust test for config-h module.
14283         (func_import): Fix typo in 2006-08-25 patch.
14284
14285 2006-08-31  Bruno Haible  <bruno@clisp.org>
14286
14287         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
14288         specified, augment Makefile.am variables instead of assigning them.
14289
14290 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
14291
14292         Work around a bug in both the Linux and SunOS 64-bit kernels:
14293         nanosleep mishandles sleeps for longer than 2**31 seconds.
14294         Problem reported by Frank v Waveren in
14295         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
14296         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
14297         Check for nanosleep bug.
14298         (LIB_NANOSLEEP): Append clock_gettime library if needed.
14299
14300 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
14301
14302         Work around a bug in both the Linux and SunOS 64-bit kernels:
14303         nanosleep mishandles sleeps for longer than 2**31 seconds.
14304         Problem reported by Frank v Waveren in
14305         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
14306         * lib/nanosleep.c (BILLION): New constant.
14307         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
14308         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
14309         implementation.
14310
14311 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
14312
14313         * modules/nanosleep (Depends-on): Add gettime.
14314
14315 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
14316         and Simon Josefsson  <jas@extundo.com>
14317         and Oskar Liljeblad  <oskar@osk.mine.nu>
14318
14319         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
14320         * gnulib-tool (func_import): New license type 'unmodifiable license
14321         text'.
14322         * modules/fdl: Use it.  Longer description.
14323         * module/gpl, module/lgpl: New files.
14324
14325 2006-08-30  Jim Meyering  <jim@meyering.net>
14326
14327         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
14328         shadowing the parameter.
14329
14330 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14331
14332         Sync from Libtool:
14333
14334         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14335
14336         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
14337         sharing with gnulib.  Report by Eric Blake.
14338
14339 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
14340
14341         * modules/isapipe: New file.
14342         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
14343
14344 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
14345
14346         * modules/configmake (Makefile.am): Add a comment, and omit
14347         the CONFIGMAKE_ prefix from generated macro names.  Suggested
14348         by Bruno Haible.
14349
14350 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
14351
14352         * m4/isapipe.m4: New file.
14353
14354 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
14355
14356         * lib/isapipe.c, lib/isapipe.h: New files.
14357
14358 2006-08-29  Jim Meyering  <jim@meyering.net>
14359
14360         * modules/configmake (Makefile.am): Make configmake.h depend on
14361         Makefile.  Otherwise, a stale configmake.h could hang around.
14362
14363 2006-08-29  Eric Blake  <ebb9@byu.net>
14364
14365         * lib/error.c (error_at_line, print_errno_message): Match libc, after
14366         resolution of upstream bug 3044.
14367
14368 2006-08-29  Bruno Haible  <bruno@clisp.org>
14369
14370         * modules/localcharset (Depends-on): Add configmake.
14371         (Makefile.am): Remove setting of LIBDIR through DEFS.
14372
14373 2006-08-29  Bruno Haible  <bruno@clisp.org>
14374
14375         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
14376         defined.
14377
14378 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
14379
14380         * modules/fcntl: New file.
14381         * modules/chdir-safer (Depends-on): Add fcntl.
14382         * modules/fts: Likewise.
14383         * modules/mkdir-p: Likewise.
14384
14385         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
14386         This undoes the most recent change, since we're now addressing the
14387         problem in a different way.
14388
14389         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
14390         into output, since the output might be called Makefile.am even
14391         if $makefile_name is something different.
14392         (func_import): Use $makefile_am rather than
14393         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
14394         empty.
14395
14396         * modules/inttypes (Files): Add m4/inttypes-h.m4.
14397
14398 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
14399
14400         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
14401         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
14402         recent change to stdint.m4, since we're now addressing the problem in a
14403         different way.
14404
14405 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
14406
14407         * m4/fcntl_h.m4: New file.
14408
14409 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
14410
14411         * lib/fcntl_.h: New file.
14412         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
14413         the fcntl module.
14414         * lib/dirchownmod.c: Likewise.
14415         * lib/fts.c: Likewise.
14416
14417         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
14418         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
14419         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
14420         just before including <inttypes.h>, to avoid circular inclusion.
14421
14422 2006-08-28  Jim Meyering  <jim@meyering.net>
14423
14424         * doc/visibility.texi: Actually read and correct the grammar of the
14425         sentence affected by yesterday's change.
14426
14427 2006-08-28  Eric Blake  <ebb9@byu.net>
14428
14429         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
14430         needs wrapper.
14431
14432 2006-08-28  Eric Blake  <ebb9@byu.net>
14433
14434         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
14435
14436 2006-08-28  Eric Blake  <ebb9@byu.net>
14437
14438         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
14439
14440 2006-08-28  Bruno Haible  <bruno@clisp.org>
14441
14442         * modules/c-strstr: New file, from GNU gettext.
14443         * MODULES.html.sh (String handling): Add c-strstr.
14444
14445 2006-08-28  Bruno Haible  <bruno@clisp.org>
14446
14447         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
14448         macros.
14449         Reported by Eric Blake.
14450
14451 2006-08-28  Bruno Haible  <bruno@clisp.org>
14452
14453         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
14454         (VASNPRINTF): Return a string of length > INT_MAX without failing.
14455         * lib/vasprintf.c: Include errno.h, limits.h.
14456         (EOVERFLOW): New fallback definition.
14457         (vasprintf): Test here whether the string length is > INT_MAX.
14458         * lib/vsnprintf.c: Include errno.h, limits.h.
14459         (EOVERFLOW): New fallback definition.
14460         (vsnprintf): Fix bug when generated string was too long for the buffer.
14461         Test here whether the string length is > INT_MAX.
14462
14463 2006-08-28  Bruno Haible  <bruno@clisp.org>
14464
14465         * lib/inttypes_.h (SCNX*): Remove definitions.
14466         Reported by Eric Blake.
14467
14468 2006-08-28  Bruno Haible  <bruno@clisp.org>
14469
14470         * lib/c-strstr.h: New file, from GNU gettext.
14471         * lib/c-strstr.c: New file, from GNU gettext.
14472
14473 2006-08-28  Bruno Haible  <bruno@clisp.org>
14474
14475         * gnulib-tool: Reorder some statements.
14476
14477 2006-08-28  Bruno Haible  <bruno@clisp.org>
14478
14479         * gnulib-tool: New option --makefile-name.
14480         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
14481         $makefile_name.
14482         (func_import): Write $makefile_name to the cache file, and read it from
14483         there unless explicitly specified. Use $makefile_name as file name
14484         instead of Makefile.am. Adjust the recommendations accordingly.
14485
14486 2006-08-28  Bruno Haible  <bruno@clisp.org>
14487
14488         * gnulib-tool (func_verify_module): Check against misapplying patch.
14489
14490 2006-08-28  Bruno Haible  <bruno@clisp.org>
14491
14492         * gnulib-tool (func_relativize, func_relconcat): New functions.
14493         Give an error if --local-dir is given with --update.
14494         Remove trailing slashes from $local_gnulib_dir.
14495         (func_import): Store the relativized $local_gnulib_dir in
14496         gnulib-cache.m4, and read it from there if not specified explicitly.
14497
14498 2006-08-28  Bruno Haible  <bruno@clisp.org>
14499
14500         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
14501         is the current directory. Respect also $local_gnulib_dir.
14502
14503 2006-08-28  Bruno Haible  <bruno@clisp.org>
14504             Simon Josefsson  <jas@extundo.com>
14505
14506         BeOS portability.
14507         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
14508
14509 2006-08-27  Jim Meyering  <jim@meyering.net>
14510
14511         * doc/visibility.texi: Remove duplicate word: "pointer".
14512
14513 2006-08-26  Bruno Haible  <bruno@clisp.org>
14514
14515         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
14516         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
14517         (Makefile.am): Create inttypes.h from inttypes_.h.
14518         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
14519
14520         * modules/imaxabs: New file.
14521
14522         * modules/imaxdiv: New file.
14523
14524 2006-08-26  Bruno Haible  <bruno@clisp.org>
14525
14526         * m4/inttypes.m4: New file.
14527         * m4/_inttypes_h.m4: Remove file.
14528         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
14529         PRI_MACROS_BROKEN.
14530         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
14531
14532         * m4/imaxabs.m4: New file.
14533
14534         * m4/imaxdiv.m4: New file.
14535
14536 2006-08-26  Bruno Haible  <bruno@clisp.org>
14537
14538         * lib/inttypes_.h: New file.
14539         * lib/inttypes.h: Remove file.
14540         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
14541
14542         * lib/imaxabs.c: New file.
14543
14544         * lib/imaxdiv.c: New file.
14545
14546 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
14547
14548         New config-h module, so that "make" output needn't be cluttered
14549         by -DHAVE_CONFIG_H.
14550         * MODULES.html.sh (Support for building libraries and executables):
14551         Add config-h.
14552         * modules/config-h: New file.
14553         * gnulib-tool (nl, sed_transform_lib_file): New vars.
14554         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
14555         the config-h module is used.
14556
14557         New configmake module, so that "make" output needn't be cluttered
14558         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
14559         * MODULES.html.sh (Support for building libraries and executables):
14560         Add configmake.
14561         * modules/configmake: New file.
14562
14563 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
14564
14565         * m4/config-h.m4: New file.
14566
14567 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
14568
14569         * config/srclist.txt: Add elisp-comp.
14570
14571 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
14572
14573         * MODULES.html.sh (Support for building libraries and executables):
14574         Add elisp-comp.
14575         * build-aux/elisp-comp: New file.
14576         * modules/elisp-comp: New file.
14577
14578 2006-08-24  Bruno Haible  <bruno@clisp.org>
14579
14580         * gnulib-tool (func_create_testdir): Use non-default values of
14581         sourcebase and m4base.
14582
14583 2006-08-24  Bruno Haible  <bruno@clisp.org>
14584
14585         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
14586         HTML structure.
14587
14588 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
14589
14590         * modules/openat (Depends-on): Add lchown.
14591
14592 2006-08-23  Bruno Haible  <bruno@clisp.org>
14593
14594         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
14595         of gl_LOCK_EARLY instead of gl_LOCK.
14596
14597 2006-08-23  Bruno Haible  <bruno@clisp.org>
14598
14599         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
14600         on OSF/1 to no.
14601         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
14602
14603 2006-08-23  Bruno Haible  <bruno@clisp.org>
14604
14605         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
14606         as unusable.
14607
14608         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
14609         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
14610         (gl_LOCK): New macro.
14611
14612 2006-08-22  Simon Josefsson  <jas@extundo.com>
14613
14614         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
14615         to md5 module.
14616
14617 2006-08-22  Simon Josefsson  <jas@extundo.com>
14618
14619         * MODULES.html.sh: Add "Support for maintaining and release
14620         projects".
14621
14622         * build-aux/gnupload: New file, from coreutils.
14623
14624 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14625
14626         Avoid the need for AC_LIBSOURCES in m4 macros.
14627         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
14628         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
14629         * modules/check-version (EXTRA_DIST): Add check-version.h.
14630         * modules/crc (EXTRA_DIST): Add crc.h.
14631         * modules/des (EXTRA_DIST): Add des.h.
14632         * modules/gc (EXTRA_DIST): Add gc.h.
14633         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
14634         * modules/getline (EXTRA_DIST): Add getline.h.
14635         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
14636         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
14637         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
14638         * modules/md2 (EXTRA_DIST): Add md2.h.
14639         * modules/md4 (EXTRA_DIST): Add md4.h.
14640         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
14641         * modules/read-file (EXTRA_DIST): Add read-file.h.
14642         * modules/readline (EXTRA_DIST): Add readline.h.
14643         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
14644         rijndael-api-fst.h.
14645
14646 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14647
14648         * m4/rijndael.m4 (gl_ARCFOUR):
14649         * m4/arctwo.m4 (gl_ARCTWO):
14650         * m4/check-version.m4 (gl_CHECK_VERSION):
14651         * m4/crc.m4 (gl_CRC):
14652         * m4/des.m4 (gl_DES):
14653         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
14654         * m4/gc.m4 (gl_GC):
14655         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
14656         * m4/getline.m4 (gl_FUNC_GETLINE):
14657         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
14658         * m4/hmac-md5.m4 (gl_HMAC_MD5):
14659         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
14660         * m4/md2.m4 (gl_MD2):
14661         * m4/md4.m4 (gl_MD4):
14662         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
14663         * m4/read-file.m4 (gl_FUNC_READ_FILE):
14664         * m4/readline.m4 (gl_FUNC_READLINE):
14665         * m4/rijndael.m4 (gl_RIJNDAEL):
14666         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14667         to get the necessary .h files and whatnot.
14668
14669 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14670
14671         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
14672         gnulib rather than the other way around.
14673         * config/srclistvars.sh (COREUTILS): Remove.
14674
14675 2006-08-22  Jim Meyering  <jim@meyering.net>
14676
14677         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
14678
14679         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
14680
14681 2006-08-22  Eric Blake  <ebb9@byu.net>
14682
14683         * modules/regexprops-generic: New file.
14684         * MODULES.html.sh (Support for building documentation): List it.
14685
14686 2006-08-22  Eric Blake  <ebb9@byu.net>
14687
14688         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
14689         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
14690         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
14691         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
14692
14693 2006-08-22  Bruno Haible  <bruno@clisp.org>
14694
14695         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
14696         and lib_LTLIBRARIES like the other lib_* variables.
14697
14698 2006-08-22  Bruno Haible  <bruno@clisp.org>
14699
14700         * build-aux/x-to-1.in: New file, from GNU gettext.
14701
14702 2006-08-22  Bruno Haible  <bruno@clisp.org>
14703
14704         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
14705         <utmpx.h> exists.
14706
14707 2006-08-22  Bruno Haible  <bruno@clisp.org>
14708
14709         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
14710         <utmpx.h> exists.
14711
14712 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14713
14714         BeOS portability.
14715         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
14716         exist.
14717         Problem reported by Bruno Haible.
14718
14719 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14720
14721         Avoid the need for AC_LIBSOURCES in m4 macros.
14722         * modules/acl (EXTRA_DIST): Add acl.h.
14723         * modules/argmatch (Files): Add m4/argmatch.m4.
14724         (configure.ac): Add gl_ARGMATCH.
14725         (EXTRA_DIST): Renamed from lib_SOURCES, for
14726         consistency with the other modules.  Remove argmatch.c.
14727         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
14728         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
14729         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
14730         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
14731         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
14732         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
14733         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
14734         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
14735         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
14736         * modules/closeout (EXTRA_DIST): Add closeout.h.
14737         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
14738         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
14739         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
14740         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
14741         dirname.h; remove basename.c and stripslash.c.
14742         * modules/exclude (EXTRA_DIST): Add exclude.h.
14743         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
14744         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
14745         * modules/file-type (EXTRA_DIST): Add file-type.h.
14746         * modules/filemode (EXTRA_DIST): Add filemode.h.
14747         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
14748         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
14749         * modules/fpending (EXTRA_DIST): Add __fpending.h.
14750         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
14751         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
14752         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
14753         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
14754         * modules/getdate (EXTRA_DIST): Add getdate.c.
14755         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
14756         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
14757         * modules/getpass (EXTRA_DIST): Add getpass.h.
14758         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
14759         * modules/group-member (EXTRA_DIST): Add group-member.h.
14760         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
14761         * modules/hash (EXTRA_DIST): Add hash.h.
14762         * modules/human (EXTRA_DIST): Add human.h.
14763         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
14764         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
14765         * modules/lchown (EXTRA_DIST): Add lchown.h.
14766         * modules/long-options (EXTRA_DIST): Add long-options.h.
14767         * modules/lstat (EXTRA_DIST): Add lstat.h.
14768         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
14769         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
14770         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
14771         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
14772         * modules/memxor (EXTRA_DIST): Add memxor.h.
14773         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
14774         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
14775         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
14776         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
14777         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
14778         * modules/physmem (EXTRA_DIST): Add physmem.h.
14779         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
14780         * modules/posixver (EXTRA_DIST): Add posixver.h.
14781         * modules/quote (EXTRA_DIST): Add quote.h.
14782         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
14783         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
14784         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
14785         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
14786         regex_internal.h regexec.c.
14787         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
14788         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
14789         * modules/same (EXTRA_DIST): Add same.h.
14790         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
14791         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
14792         * modules/savedir (EXTRA_DIST): Add savedir.h.
14793         * modules/sha1 (EXTRA_DIST): Add sha1.h.
14794         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
14795         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
14796         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
14797         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
14798         * modules/strdup (EXTRA_DIST): Add strdup.h.
14799         * modules/strftime (EXTRA_DIST): Add strftime.h.
14800         * modules/strndup (EXTRA_DIST): Add strndup.h.
14801         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
14802         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
14803         * modules/time_r (EXTRA_DIST): Add time_r.h.
14804         * modules/timespec (EXTRA_DIST): Add timespec.h.
14805         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
14806         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
14807         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
14808         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
14809         * modules/userspec (EXTRA_DIST): Add userspec.h.
14810         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
14811         * modules/utimens (EXTRA_DIST): Add utimens.h.
14812         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
14813         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
14814         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
14815         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
14816         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
14817         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
14818         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
14819         * modules/yesno (EXTRA_DIST): Add yesno.h.
14820
14821 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14822
14823         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
14824
14825         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
14826         * m4/dev-ino.m4, same-inode.m4: Remove.
14827
14828         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
14829         * m4/acl.m4 (AC_FUNC_ACL):
14830         * m4/backupfile.m4 (gl_BACKUPFILE):
14831         * m4/c-strtod.m4 (gl_C99_STRTOLD):
14832         * m4/canon-host.m4 (gl_CANON_HOST):
14833         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
14834         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
14835         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
14836         * m4/cloexec.m4 (gl_CLOEXEC):
14837         * m4/close-stream.m4 (gl_CLOSE_STREAM):
14838         * m4/closeout.m4 (gl_CLOSEOUT):
14839         * m4/dirfd.m4 (gl_FUNC_DIRFD):
14840         * m4/dirname.m4 (gl_DIRNAME):
14841         * m4/exclude.m4 (gl_EXCLUDE):
14842         * m4/exitfail.m4 (gl_EXITFAIL):
14843         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
14844         * m4/file-type.m4 (gl_FILE_TYPE):
14845         * m4/filemode.m4 (gl_FILEMODE):
14846         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
14847         * m4/fpending.m4 (gl_FUNC_FPENDING):
14848         * m4/fprintftime.m4 (gl_FPRINTFTIME):
14849         * m4/fts.m4 (gl_FUNC_FTS):
14850         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
14851         * m4/getdate.m4 (gl_GETDATE):
14852         * m4/gethrxtime.m4 (gl_GETHRXTIME):
14853         * m4/getpagesize.m4 (gl_GETPAGESIZE):
14854         * m4/getpass.m4 (gl_FUNC_GETPASS):
14855         * m4/gettime.m4 (gl_GETTIME):
14856         * m4/getugroups.m4 (gl_GETUGROUPS):
14857         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
14858         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
14859         * m4/hard-locale.m4 (gl_HARD_LOCALE):
14860         * m4/hash.m4 (gl_HASH):
14861         * m4/idcache.m4 (gl_IDCACHE):
14862         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
14863         * m4/lchown.m4 (gl_FUNC_LCHOWN):
14864         * m4/long-options.m4 (gl_LONG_OPTIONS):
14865         * m4/lstat.m4 (gl_FUNC_LSTAT):
14866         * m4/md5.m4 (gl_MD5):
14867         * m4/memcasecmp.m4 (gl_MEMCASECMP):
14868         * m4/memcoll.m4 (gl_MEMCOLL):
14869         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
14870         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
14871         * m4/memxor.m4 (gl_MEMXOR):
14872         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
14873         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
14874         * m4/modechange.m4 (gl_MODECHANGE):
14875         * m4/mountlist.m4 (gl_MOUNTLIST):
14876         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
14877         * m4/openat.m4 (gl_FUNC_OPENAT):
14878         * m4/pathmax.m4 (gl_PATHMAX):
14879         * m4/physmem.m4 (gl_PHYSMEM):
14880         * m4/posixtm.m4 (gl_POSIXTM):
14881         * m4/posixver.m4 (gl_POSIXVER):
14882         * m4/quote.m4 (gl_QUOTE):
14883         * m4/quotearg.m4 (gl_QUOTEARG):
14884         * m4/readtokens.m4 (gl_READTOKENS):
14885         * m4/readutmp.m4 (gl_READUTMP):
14886         * m4/regex.m4 (gl_REGEX):
14887         * m4/safe-read.m4 (gl_SAFE_READ):
14888         * m4/safe-write.m4 (gl_SAFE_WRITE):
14889         * m4/same.m4 (gl_SAME):
14890         * m4/save-cwd.m4 (gl_SAVE_CWD):
14891         * m4/savedir.m4 (gl_SAVEDIR):
14892         * m4/settime.m4 (gl_SETTIME):
14893         * m4/sha1.m4 (gl_SHA1):
14894         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
14895         * m4/stat-macros.m4 (gl_STAT_MACROS):
14896         * m4/stat-time.m4 (gl_STAT_TIME):
14897         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
14898         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
14899         * m4/strdup.m4 (gl_FUNC_STRDUP):
14900         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
14901         * m4/strndup.m4 (gl_FUNC_STRNDUP):
14902         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
14903         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
14904         * m4/time_r.m4 (gl_TIME_R):
14905         * m4/timespec.m4 (gl_TIMESPEC):
14906         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
14907         * m4/unlinkdir.m4 (gl_UNLINKDIR):
14908         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
14909         * m4/userspec.m4 (gl_USERSPEC):
14910         * m4/utimecmp.m4 (gl_UTIMECMP):
14911         * m4/utimens.m4 (gl_UTIMENS):
14912         * m4/xalloc.m4 (gl_XALLOC):
14913         * m4/xgetcwd.m4 (gl_XGETCWD):
14914         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
14915         * m4/xreadlink.m4 (gl_XREADLINK):
14916         * m4/xstrtod.m4 (gl_XSTRTOD):
14917         * m4/yesno.m4 (gl_YESNO):
14918         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14919         to get the necessary .h files and whatnot.
14920
14921 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
14922             Bruno Haible  <bruno@clisp.org>
14923
14924         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
14925         /bin/sh understanding of '!' conditional negation.
14926
14927 2006-08-21  Jim Meyering  <jim@meyering.net>
14928
14929         * modules/openat (Depends-on): Really alphabetize.
14930
14931         * modules/acl (Depends-on): Add error and quote.
14932
14933         * check-module (find_included_lib_files): Add at-func.c to the
14934         ok-to-include-more-than-once white list.
14935
14936         * modules/openat (Depends-on): Add lstat.  Alphabetize.
14937
14938 2006-08-21  Bruno Haible  <bruno@clisp.org>
14939
14940         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14941         Emit a pkgdata_DATA variable only if some snippets add contents to it.
14942         Reported by Martin Lambers <marlam@marlam.de>.
14943
14944 2006-08-21  Bruno Haible  <bruno@clisp.org>
14945
14946         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
14947         specify an installation location, don't emit a noinst_LIBRARIES or
14948         noinst_LTLIBRARIES assignment.
14949
14950 2006-08-21  Bruno Haible  <bruno@clisp.org>
14951
14952         BeOS portability.
14953         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
14954         BeOS has mbrtowc() but no <wctype.h>.
14955
14956 2006-08-21  Bruno Haible  <bruno@clisp.org>
14957
14958         BeOS portability.
14959         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
14960         exist.
14961
14962 2006-08-21  Bruno Haible  <bruno@clisp.org>
14963
14964         BeOS portability.
14965         * lib/mbchar.h: Include <wctype.h> only if it exists.
14966
14967 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14968
14969         Remove files that are no longer needed by their respective modules.
14970         * m4/obstack.m4: Remove.
14971         * m4/strerror_r.m4: Remove.
14972         * m4/uint32_t.m4: Remove.
14973         * m4/uintptr_t.m4: Remove.
14974         * m4/ullong_max.m4: Remove.
14975         * m4/xstrtoimax.m4: Remove.
14976         * m4/xstrtoumax.m4: Remove.
14977
14978         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
14979         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
14980         dependencies now capture this.
14981
14982         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
14983         Do not use AC_LIBSOURCES, since gnulib modules now do this.
14984         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
14985         * m4/human.m4 (gl_HUMAN): Likewise.
14986         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
14987         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
14988
14989         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
14990
14991         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
14992         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
14993         stdint.
14994         * m4/human.m4 (gl_HUMAN): Likewise.
14995         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
14996         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
14997         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14998         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14999         * m4/xstrtol (gl_XSTRTOL): Likewise.
15000
15001         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
15002         AC_TYPE_LONG_LONG_INT.
15003         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
15004         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
15005         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
15006         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
15007
15008         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
15009         on stdbool.
15010
15011         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
15012         (gl_PREREQ_XSTRTOUL): Remove.
15013
15014         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
15015
15016         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
15017         mode.
15018
15019 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
15020
15021         Add and change modules to make it easier for coreutils to use
15022         gnulib-tool.
15023         * modules/backupfile (Files): Remove m4/d-ino.m4.
15024         (Depends-on): Add d-ino.
15025         * modules/cycle-check (Depends-on): Add stdint.
15026         (lib_SOURCES): Add cycle-check.h.
15027         * modules/d-ino: New module.
15028         * modules/d-type: New module.
15029         * modules/error (Files): Remove m4/strerror_r.m4.
15030         * modules/filemode (Files): Add m4/st_dm_mode.m4.
15031         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
15032         m4/inttypes_h.m4, m4/uintmax_t.m4.
15033         (Depends-on): Add stdint.
15034         (lib_SOURCES): Add fsusage.h.
15035         * modules/getcwd (Files): Remove d-ino.m4.
15036         (Depends-on): Add d-ino.
15037         * modules/getndelim2 (Depends-on): Add stdint.
15038         * modules/glob (Files): Remove m4/d-type.m4.
15039         (Depends-on): Add d-type.
15040         * modules/host-os: New module.
15041         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
15042         m4/inttypes_h.m4, m4/uintmax_t.m4.
15043         * Depends-on: Add stdint.
15044         (lib_SOURCES): Add human.h.
15045         * modules/inttostr (Files): Remove m4/intmax_t.m4,
15046         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
15047         m4/uintmax_t.m4, m4/ulonglong.m4.
15048         (Depends-on): Add stdint.
15049         (EXTRA_DIST): Add inttostr.h.
15050         * modules/lchmod: New module.
15051         * modules/link-follow: New module.
15052         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
15053         (Depends-on): Add lchmod.
15054         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
15055         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
15056         (Depends-on): Add stdint.
15057         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
15058         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
15059         (Depends-on): Add stdint.
15060         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
15061         * modules/perl: New module.
15062         * modules/regex (Depends-on): Add stdint.
15063         * modules/rmdir-errno: New module.
15064         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
15065         m4/intmax_t.m4.
15066         (Depends-on): Add stdint.
15067         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
15068         m4/uintmax_t.m4.
15069         (Depends-on): Add stdint.
15070         * modules/unlink-busy: New module.
15071         * modules/utimecmp (Depends-on): Add stdint.
15072         * modules/uptime: New module.
15073         * modules/winsz-ioctl: New module.
15074         * modules/winsz-termios: New module.
15075         * modules/xnanosleep (Depends-on): Add nanosleep.
15076         * modules/ullong_max: Remove.
15077         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
15078         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
15079         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
15080         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
15081         (Depends-on): Add inttypes.
15082         (lib_SOURCES): Add xstrtol.h.
15083         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
15084         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
15085         * MODULES.html.sh: Move 'assert' into the assert section.
15086         Move 'dummy' into the linking section.
15087         Remove ullong_max.
15088         Add section for compatibility checks for POSIX:2001 functions,
15089         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
15090         winsz-ioctl, and winsz-termios into it.
15091         Add lchmod.
15092         Add top-level Misc section and put host-os, perl, and uptime
15093         into it.
15094
15095 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
15096
15097         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
15098         now assume the stdint module.  Do not include inttypes.h.
15099         * lib/fsusage.h: Likewise.
15100         * lib/getndelim2.c: Likewise.
15101         * lib/human.h: Likewise.
15102         * lib/inttostr.h: Likewise.
15103         * lib/obstack.c: Likewise.
15104         * lib/regex_internal.h: Likewise.
15105         * lib/tempname.c: Likewise.
15106         * lib/utimecmp.c: Likewise.
15107         * lib/xstrtol.h: Likewise.
15108
15109         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
15110
15111         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
15112         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
15113         * lib/xtime.h: Likewise.
15114
15115 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
15116
15117         * modules/openat (Files): Add lib/fchmodat.c.
15118         Fixes problem reported by Jay Youngman.
15119
15120 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
15121
15122         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
15123         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
15124
15125 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
15126             Bruno Haible  <bruno@clisp.org>
15127
15128         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
15129         and is a script that invokes bison. Tighten the code. Add comments.
15130
15131 2006-08-18  Jim Meyering  <jim@meyering.net>
15132
15133         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
15134         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
15135         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
15136         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
15137
15138 2006-08-18  Bruno Haible  <bruno@clisp.org>
15139
15140         * modules/bison-i18n: New file.
15141         * MODULES.html.sh (Internationalization functions): Add it.
15142
15143 2006-08-18  Bruno Haible  <bruno@clisp.org>
15144
15145         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
15146         sys/statvfs.h. When getmntinfo was found, check its declaration and
15147         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
15148
15149 2006-08-18  Bruno Haible  <bruno@clisp.org>
15150
15151         * m4/bison-i18n.m4: New file, from bison.
15152
15153 2006-08-18  Bruno Haible  <bruno@clisp.org>
15154
15155         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
15156         (ME_DUMMY): Treat "kernfs" as a dummy.
15157         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
15158
15159 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
15160
15161         Update from coreutils.
15162
15163         2006-08-15  Jim Meyering  <jim@meyering.net>
15164
15165         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
15166
15167         2006-01-17  Jim Meyering  <jim@meyering.net>
15168
15169         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
15170
15171         2006-01-11  Jim Meyering  <jim@meyering.net>
15172
15173         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
15174         Check for the lchmod function.
15175
15176 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
15177
15178         Update from coreutils.
15179
15180         * lib/__fpending.h: Add copyright notice.
15181         * lib/fprintftime.h: Likewise.
15182         * lib/savedir.c: Use (C) in copyright notice.
15183         * lib/savedir.h: Likewise.
15184
15185         2006-08-15  Jim Meyering  <jim@meyering.net>
15186
15187         * lib/at-func.c: New file, with the logic of all emulated at-functions.
15188         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
15189         in support of the EXPECTED_ERRNO macro.
15190         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
15191         definitions.  Instead, define the appropriate symbols and include
15192         "at-func.c".
15193         * lib/mkdirat.c (mkdirat): Likewise.
15194         * lib/fchmodat.c (fchmodat): Likewise.
15195         (ENOSYS): Remove definition.
15196         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
15197         it.  Don't include "unistd--.h" -- it wasn't ever used.
15198
15199         2006-01-17  Jim Meyering  <jim@meyering.net>
15200
15201         Rewrite fts.c not to change the current working directory,
15202         by using openat, fstatat, fdopendir, etc..
15203
15204         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
15205         (HAVE_OPENAT_SUPPORT): Define.
15206         [_LIBC] (fchdir): Don't undef or define; no longer used.
15207         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
15208         Now, this `function' always succeeds, and consumes its file descriptor
15209         parameter -- so callers must not close such FDs.  Update callers.
15210         (diropen_fd, opendirat, cwd_advance_fd): New functions.
15211         (diropen): Add parameter, SP.  Adjust all callers.
15212         Implement using diropen_fd, rather than open.
15213         (fts_open): Initialize new member, fts_cwd_fd.
15214         Remove fts_rft-setting code.
15215         (fts_close): Close fts_cwd_fd, if necessary.
15216         (__opendir2): Define in terms of opendir or opendirat,
15217         depending on whether the FST_NOCHDIR flag is set.
15218         (fts_build): Since fts_safe_changedir consumes its FD, and since
15219         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
15220         and close the dup'd file descriptor upon failure.
15221         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
15222         (fts_safe_changedir): Tweak semantics to reflect that this function
15223         now calls cwd_advance_fd and hence consumes its FD argument.
15224         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
15225         [struct FTS] (fts_rft): Remove now-unused member.
15226         [struct FTS] (fts_cycle.state): Improve comment.
15227
15228         * lib/openat.c (openat_needs_fchdir): New function.
15229         * lib/openat.h (openat_needs_fchdir): Declare it.
15230
15231 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
15232
15233         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
15234         Problem and fix reported by Pádraig Brady in
15235         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
15236
15237 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15238
15239         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
15240
15241 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15242
15243         * lib/memcoll.c (memcoll): Optimize for the common case where the
15244         arguments are bytewise equal.
15245
15246 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15247
15248         * doc/regexprops-generic.texi: Add a copyright notice.
15249
15250 2006-08-15  Bruno Haible  <bruno@clisp.org>
15251
15252         * modules/tmpdir (License): Change to LGPL.
15253
15254 2006-08-15  Bruno Haible  <bruno@clisp.org>
15255
15256         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
15257         module.
15258
15259 2006-08-14  Simon Josefsson  <jas@extundo.com>
15260
15261         * config/srclist.txt: Add gnupload.
15262
15263 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15264
15265         Change copyright notice from LGPL 2 to GPL 2, since that's the
15266         standard form used in the gnulib repository.
15267         * tests/test-lock.c: Likewise.
15268         * tests/test-stdint.c: Likewise.
15269         * tests/test-tls.c: Likewise.
15270
15271         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
15272         prelude-manager.  User shorter URLs for GNU projects, without '?'.
15273         Add copyright notice.
15274
15275         * check-module: Add copyright notice.  Output a copyright
15276         notice if "--version" is specified.
15277         * modules/COPYING: New file.
15278         * tests/test-getaddrinfo.c: Add copyright notice.
15279         * tests/test-verify.c: Likewise.
15280
15281 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15282
15283         Change copyright notice from LGPL 2 to GPL 2, since that's the
15284         standard form used in the gnulib repository.
15285         * lib/lock.c: LGPL -> GPL.
15286         * lib/lock.h: Likewise.
15287         * lib/strnlen1.c: Likewise.
15288         * lib/strnlen1.h: Likewise.
15289         * lib/tls.c: Likewise.
15290         * lib/tls.h: Likewise.
15291         * lib/tmpdir.c: Likewise.
15292
15293         * lib/TODO: Remove; this belongs only in coreutils.
15294
15295 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15296
15297         Add copyright notices to long-enough files that lack them, since
15298         otherwise the files aren't clearly free.  Use the same notice that
15299         getdate.texi already uses.
15300         * doc/alloca-opt.texi: Add copyright notice.
15301         * doc/alloca.texi: Likewise.
15302         * doc/ctime.texi: Likewise.
15303         * doc/functions.texi: Likewise.
15304         * doc/gcd.texi: Likewise.
15305         * doc/gnulib-tool.texi: Likewise.
15306         * doc/inet_ntoa.texi: Likewise.
15307         * doc/visibility.texi: Likewise.
15308
15309         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
15310         * doc/quote.texi: Add copyright notice.
15311
15312         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
15313         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
15314         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
15315         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
15316         is now obsolete, and give a pointer to the Sun list.
15317         Add copyright notice.
15318
15319 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15320
15321         * config/srclistvars.sh: Add copyright notice.
15322
15323 2006-08-14  Eric Blake  <ebb9@byu.net>
15324
15325         Import the following change from libc:
15326
15327         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
15328
15329         Upstream bug 2997.
15330         * lib/misc/error.c: Add space between program name and message if file
15331         name is missing.
15332
15333 2006-08-12  Karl Berry  <karl@gnu.org>
15334
15335         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
15336         remove, these originate in gnulib now.
15337
15338 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15339
15340         * doc/Makefile (standards.info standards.html standards.dvi):
15341         Also depend on make-stds.texi.
15342
15343 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
15344
15345         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
15346         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
15347
15348         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
15349         in wchar_t.  Problem reported by Eric Blake.
15350
15351         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
15352         LEN is smaller than SIZE.  Suggested by Bruno Haible.
15353         Also, help the compiler to keep LEN in a register.
15354
15355 2006-08-11  Eric Blake  <ebb9@byu.net>
15356
15357         * users.txt: Sort.  Add tar.
15358
15359 2006-08-11  Bruno Haible  <bruno@clisp.org>
15360
15361         * users.txt: New file.
15362
15363 2006-08-11  Bruno Haible  <bruno@clisp.org>
15364
15365         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
15366         before <wchar.h>. Needed for OSF/1 and BSD/OS.
15367
15368 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
15369
15370         * modules/snprintf (Depends-on): Remove minmax.
15371         (Maintainer): Add self and Bruno.
15372
15373 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
15374
15375         * lib/.cppi-disable: Add snprintf.h, socket_.h.
15376         * lib/snprintf.c: Include <errno.h> and <limits.h>.
15377         (EOVERFLOW): Define if the system does not.
15378         Do not include "minmax.h"; it wasn't used.
15379         (snprintf): Don't assume size_t promotes to an unsigned type.
15380         Fix bug when generated string was too long for the buffer: the
15381         buffer's contents are supposed to be the initial prefix of the
15382         output.  Don't assume vasnprintf returns EOVERFLOW if the size
15383         exceeds INT_MAX; do the check ourselves.
15384
15385         Import the following changes from libc:
15386
15387         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
15388
15389         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
15390         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
15391         set wc to the byte which couldn't be converted.
15392         (re_string_reconstruct): Don't clear valid_raw_len before calling
15393         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
15394         tip_context using re_string_context_at.
15395
15396         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
15397
15398         * lib/posix/regex.h: g++ still cannot handled [restrict].
15399
15400         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
15401
15402         * lib/posix/regex.h: Remove special handling for VMS.
15403
15404 2006-08-10  Jim Meyering  <jim@meyering.net>
15405
15406         * modules/same-inode: New module.
15407         * modules/dev-ino: New module.
15408         * modules/cycle-check: Depend on these modules, rather than simply
15409         including their .h files.
15410         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
15411         required via m4/cycle-check.m4.
15412         * modules/same: Depend on new same-inode module, rather than
15413         including same-inode.h.
15414         * modules/chdir-safer: New file.
15415
15416         * modules/chown (Depends-on): Add stat-macros.
15417
15418 2006-08-10  Jim Meyering  <jim@meyering.net>
15419
15420         * m4/cycle-check.m4: New file.
15421         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
15422         * m4/dev-ino.m4, m4/same-inode.m4: New files.
15423
15424 2006-08-10  Eric Blake  <ebb9@byu.net>
15425
15426         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
15427         in from original proposal.
15428
15429 2006-08-10  Eric Blake  <ebb9@byu.net>
15430         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15431
15432         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
15433         namespace.
15434
15435 2006-08-10  Bruno Haible  <bruno@clisp.org>
15436
15437         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
15438         as well.
15439
15440 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
15441
15442         Sync from coreutils.
15443
15444         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
15445
15446         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
15447         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
15448
15449 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
15450
15451         * modules/restrict: Remove; no longer needed now that we assume
15452         Autoconf 2.59 or later.
15453         * MODULES.html.sh: Remove 'restrict'.
15454         * modules/argp (Depends-on): Remove 'restrict'.
15455         * modules/base64 (Depends-on): Likewise.
15456         * modules/gc (Depends-on): Likewise.
15457         * modules/getaddrinfo (Depends-on): Likewise.
15458         * modules/glob (Depends-on): Likewise.
15459         * modules/inet_ntop (Depends-on): Likewise.
15460         * modules/inet_pton (Depends-on): Likewise.
15461         * modules/memxor (Depends-on): Likewise.
15462         * modules/regex (Depends-on): Likewise.
15463         * modules/strtok_r (Depends-on): Likewise.
15464         * modules/time_r (Depends-on): Likewise.
15465
15466 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
15467
15468         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
15469         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
15470         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
15471         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
15472         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
15473         * m4/memxor.m4 (gl_MEMXOR): Likewise.
15474         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
15475         gl_C_RESTRICT replaced by AC_C_RESTRICT.
15476
15477         Merge from coreutils.
15478         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
15479         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
15480         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
15481         * m4/time_r.m4 (gl_TIME_R): Likewise.
15482
15483 2006-08-09  Karl Berry  <karl@gnu.org>
15484
15485         * config/srclist.txt: no more gettext-tools, per Bruno.
15486
15487 2006-08-08  Eric Blake  <ebb9@byu.net>
15488
15489         * modules/verror: New module.
15490         * MODULES.html.sh: Document it.
15491
15492 2006-08-08  Eric Blake  <ebb9@byu.net>
15493
15494         * lib/verror.h, lib/verror.c: New files.
15495
15496 2006-08-08  Eric Blake  <ebb9@byu.net>
15497
15498         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
15499         verror_at_line output complies with GNU Coding Standards even when
15500         file is NULL.
15501
15502 2006-08-07  Bruno Haible  <bruno@clisp.org>
15503
15504         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
15505         versions of AIX.
15506         Reported by Ralf Wildenhues.
15507
15508 2006-08-07  Bruno Haible  <bruno@clisp.org>
15509
15510         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
15511         in an AC_DEFUN. Needed so that the autoconf snippets can use
15512         AC_REQUIRE.
15513
15514 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15515
15516         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15517         Initialize pkgdata_DATA.
15518         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
15519         overriding it.
15520
15521 2006-08-06  Eric Blake  <ebb9@byu.net>
15522
15523         * lib/error.h: Fold in some upstream changes from glibc.
15524         * lib/error.c: Likewise.
15525
15526 2006-08-04  Bruno Haible  <bruno@clisp.org>
15527
15528         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15529         Make the mostlyclean-local rule depend on mostlyclean-generic.
15530         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
15531
15532 2006-07-31  Bruno Haible  <bruno@clisp.org>
15533
15534         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
15535         <stdlib.h>, <string.h>.
15536
15537 2006-07-30  Bruno Haible  <bruno@clisp.org>
15538
15539         * modules/readlink (License): Change to LGPL.
15540
15541 2006-07-30  Bruno Haible  <bruno@clisp.org>
15542
15543         * modules/javaversion (Makefile.am): Distribute javaversion.java and
15544         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
15545         set PKGDATADIR to point to it.
15546
15547 2006-07-30  Bruno Haible  <bruno@clisp.org>
15548
15549         * modules/csharpexec (configure.ac): Comment out macro invocation.
15550         * modules/javaexec (configure.ac): Likewise.
15551         * modules/javacomp-script (configure.ac): Likewise.
15552
15553         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
15554
15555 2006-07-30  Bruno Haible  <bruno@clisp.org>
15556
15557         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
15558         linked-list.
15559
15560 2006-07-30  Bruno Haible  <bruno@clisp.org>
15561
15562         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
15563
15564 2006-07-30  Bruno Haible  <bruno@clisp.org>
15565
15566         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15567         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
15568         get removed.
15569
15570 2006-07-29  Bruno Haible  <bruno@clisp.org>
15571
15572         Make it possible for gnulib-tool to work with locally modified or
15573         augmented gnulib repositories.
15574         * gnulib-tool (func_usage): Document --local-dir option.
15575         (local_gnulib_dir): New variable.
15576         Handle --local-dir option.
15577         (func_lookup_file): New function.
15578         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
15579         (func_get_description, func_get_filelist, func_get_description,
15580         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
15581         func_get_automake_snippet, func_get_include_directive,
15582         func_get_license, func_get_maintainer): Use func_lookup_file.
15583         (func_import, func_create_testdir): Use func_lookup_file.
15584
15585 2006-07-29  Bruno Haible  <bruno@clisp.org>
15586
15587         * modules/setenv (Depends-on): Add unistd.
15588
15589 2006-07-29  Bruno Haible  <bruno@clisp.org>
15590
15591         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
15592
15593 2006-07-29  Bruno Haible  <bruno@clisp.org>
15594
15595         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
15596
15597 2006-07-29  Bruno Haible  <bruno@clisp.org>
15598
15599         * gnulib-tool (import, update): If there is no Makefile.am, look at
15600         aclocal.m4, instead of bailing out.
15601
15602 2006-07-29  Bruno Haible  <bruno@clisp.org>
15603
15604         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
15605         Categorize the options by when they are useful.
15606
15607 2006-07-29  Bruno Haible  <bruno@clisp.org>
15608
15609         * gnulib-tool (func_usage): Document option --no-libtool.
15610         Handle option --no-libtool.
15611         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
15612         for changed semantics of $libtool variable.
15613         (func_import): Likewise. If libtool is not used, show this through
15614         an option --no-libtool.
15615         (func_create_testdir): Update.
15616
15617 2006-07-29  Bruno Haible  <bruno@clisp.org>
15618
15619         * gnulib-tool (func_import): Extend error message about missing
15620         --doc-base.
15621
15622 2006-07-29  Bruno Haible  <bruno@clisp.org>
15623
15624         * gnulib-tool (func_import): Don't create the $docbase directory if
15625         there is no file to store there.
15626
15627 2006-07-29  Bruno Haible  <bruno@clisp.org>
15628
15629         * gnulib-tool (autoconf_minversion): If a --dir option is given and
15630         relevant, look for configure.ac there, not in the current directory.
15631         Also use a simple search for AC_PREREQ, not "autoconf --trace".
15632
15633 2006-07-29  Bruno Haible  <bruno@clisp.org>
15634
15635         * gnulib-tool (SORT): New variable.
15636         (func_usage): Undocument --assume-autoconf option.
15637         Remove --assume-autoconf option handling.
15638         (autoconf_minversion): Determine from the contents of configure.ac.
15639         (func_import): Remove autoconf_minversion handling.
15640         Suggested by Eric Blake.
15641
15642 2006-07-29  Bruno Haible  <bruno@clisp.org>
15643
15644         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
15645
15646 2006-07-29  Bruno Haible  <bruno@clisp.org>
15647
15648         * config/srclist.txt (*setenv.[ch]): Remove rules.
15649
15650 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15651
15652         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
15653
15654 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15655
15656         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
15657         arpa/inet.h.
15658
15659 2006-07-28  Simon Josefsson  <jas@extundo.com>
15660
15661         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
15662         * modules/inet_pton (Depends-on): Likewise.
15663
15664 2006-07-28  Simon Josefsson  <jas@extundo.com>
15665
15666         * m4/netinet_in_h.m4: New file.
15667
15668 2006-07-28  Simon Josefsson  <jas@extundo.com>
15669
15670         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
15671         #include's.
15672
15673 2006-07-28  Simon Josefsson  <jas@extundo.com>
15674
15675         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
15676         #include's.
15677
15678 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
15679
15680         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
15681         setgid on directories only if they set these bits.
15682         * lib/modechange.h: Remove obsolete comment about masks.
15683
15684 2006-07-28  Eric Blake  <ebb9@byu.net>
15685
15686         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
15687         macro expansion.
15688
15689 2006-07-28  Bruno Haible  <bruno@clisp.org>
15690
15691         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
15692
15693 2006-07-28  Bruno Haible  <bruno@clisp.org>
15694
15695         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
15696
15697 2006-07-28  Bruno Haible  <bruno@clisp.org>
15698
15699         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
15700         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
15701         Define fallbacks.
15702         Avoids link error on FreeBSD 4.x.
15703         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
15704
15705         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
15706         encoding.
15707         * lib/mbswidth.c (iswcntrl): Likewise.
15708
15709 2006-07-27  Bruno Haible  <bruno@clisp.org>
15710
15711         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
15712         test.
15713
15714 2006-07-27  Bruno Haible  <bruno@clisp.org>
15715
15716         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
15717         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
15718         defined.
15719
15720 2006-07-26  Eric Blake  <ebb9@byu.net>
15721
15722         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
15723
15724 2006-07-26  Eric Blake  <ebb9@byu.net>
15725
15726         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
15727         like mingw that lack mkstemp.
15728         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
15729         avoid compilation warning on mingw.
15730
15731 2006-07-26  Bruno Haible  <bruno@clisp.org>
15732
15733         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
15734         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
15735         INT_FAST*_MIN, INTPTR_MIN.
15736
15737 2006-07-25  Bruno Haible  <bruno@clisp.org>
15738
15739         * modules/version-etc (Depends-on): Add stdarg.
15740
15741 2006-07-25  Bruno Haible  <bruno@clisp.org>
15742
15743         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
15744         complex commands.
15745
15746 2006-07-25  Bruno Haible  <bruno@clisp.org>
15747
15748         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
15749         defined in <stdarg.h> or config.h.
15750
15751 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
15752
15753         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
15754         (gl_STDIO_SAFER): Remove.
15755
15756 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
15757
15758         * MODULES.html.sh (File stream based Input/Output):
15759         Add fopen-safer, tmpfile-safer; remove stdio-safer.
15760         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
15761         * modules/fopen-safer, modules/tmpfile-safer: New files.
15762         * modules/stdio-safer: Remove.
15763
15764 2006-07-24  Bruno Haible  <bruno@clisp.org>
15765
15766         * modules/tmpdir: New file.
15767         * MODULES.html.sh (File system functions): Add it.
15768
15769 2006-07-24  Bruno Haible  <bruno@clisp.org>
15770
15771         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
15772         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
15773
15774 2006-07-24  Bruno Haible  <bruno@clisp.org>
15775
15776         * modules/clean-temp: New file.
15777
15778 2006-07-24  Bruno Haible  <bruno@clisp.org>
15779
15780         * m4/tmpdir.m4: New file, from GNU gettext.
15781
15782 2006-07-24  Bruno Haible  <bruno@clisp.org>
15783
15784         * lib/tmpdir.h: New file, from GNU gettext.
15785         * lib/tmpdir.c: New file, from GNU gettext.
15786
15787 2006-07-24  Bruno Haible  <bruno@clisp.org>
15788
15789         * lib/clean-temp.h: New file, from GNU gettext.
15790         * lib/clean-temp.c: New file, from GNU gettext.
15791
15792 2006-07-23  Eric Blake  <ebb9@byu.net>
15793
15794         * modules/stdio-safer (Files): Add tmpfile-safer.c.
15795         (Depends-on): Add binary-io.
15796
15797 2006-07-23  Eric Blake  <ebb9@byu.net>
15798
15799         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
15800
15801 2006-07-23  Eric Blake  <ebb9@byu.net>
15802
15803         * lib/tmpfile-safer.c: New file.
15804         * lib/stdio-safer.h (fopen_safer): Add prototype.
15805         * lib/stdio--.h (tmpfile): Make safer.
15806
15807 2006-07-23  Bruno Haible  <bruno@clisp.org>
15808
15809         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
15810         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
15811         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
15812         gl_linked_remove_at): Use it.
15813
15814 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15815         and Simon Josefsson <jas@extundo.com>
15816
15817         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
15818
15819         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
15820
15821 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15822
15823         * modules/close-stream: New file.
15824         * modules/closeout (Description): Make it clear that it exits
15825         with a diagnostic on error.
15826         (Depends-on): Add close-stream.  Remove fpending, stdbool.
15827         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
15828
15829 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15830
15831         * m4/close-stream.m4: New file.
15832
15833 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15834
15835         * lib/close-stream.c, lib/close-stream.h: New files.
15836
15837 2006-07-22  Bruno Haible  <bruno@clisp.org>
15838
15839         Merge from GNU gettext 0.15.
15840
15841         2006-05-01  Bruno Haible  <bruno@clisp.org>
15842
15843                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
15844
15845         2006-07-22  Bruno Haible  <bruno@clisp.org>
15846
15847                 * modules/javaversion: New file.
15848                 * MODULES.html.sh (Java): Add javaversion.
15849
15850         2006-03-12  Bruno Haible  <bruno@clisp.org>
15851
15852                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
15853
15854         2005-12-04  Bruno Haible  <bruno@clisp.org>
15855
15856                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
15857                 (untested).
15858
15859         2006-06-21  Bruno Haible  <bruno@clisp.org>
15860
15861                 Avoid warnings from recent versions of mcs.
15862                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
15863                 -o, -L, -r any more. Use options documented since mcs-1.0
15864                 instead. Similarly for -g.
15865
15866         2005-12-04  Bruno Haible  <bruno@clisp.org>
15867
15868                 * build-aux/csharpcomp.sh.in: Suffix for resources is
15869                 .resources, not .resource.
15870
15871         2005-07-09  Bruno Haible  <bruno@clisp.org>
15872
15873                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
15874                 add a .dll suffix.
15875                 Reported by Mark Junker <mjscod@gmx.de>.
15876
15877         2006-07-22  Bruno Haible  <bruno@clisp.org>
15878
15879                 * modules/gettext: Upgrade to gettext-0.15.
15880                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
15881                 m4/visibility.m4.
15882                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
15883
15884 2006-07-22  Bruno Haible  <bruno@clisp.org>
15885
15886         Merge from GNU gettext 0.15.
15887
15888         2006-03-25  Bruno Haible  <bruno@clisp.org>
15889
15890                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
15891
15892         2006-07-21  Bruno Haible  <bruno@clisp.org>
15893
15894                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
15895                 "1.1".
15896
15897         2006-05-09  Bruno Haible  <bruno@clisp.org>
15898
15899                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
15900                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
15901                 for the conftestver execution.
15902
15903         2006-05-01  Bruno Haible  <bruno@clisp.org>
15904
15905                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
15906                 optional target-version argument. Verify that the compiler
15907                 groks source of the specified source-version, or add -source
15908                 option as necessary. Verify that the compiler produces
15909                 bytecode in the specified target-version, or add -target and
15910                 -source options as necessary. Make the result of the test
15911                 available as variable CONF_JAVAC. Also log error output in
15912                 config.log.
15913
15914         2006-03-11  Bruno Haible  <bruno@clisp.org>
15915
15916                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
15917
15918         2006-05-09  Bruno Haible  <bruno@clisp.org>
15919
15920                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
15921                 CLASSPATH_SEPARATOR to a semicolon.
15922
15923         2006-03-12  Bruno Haible  <bruno@clisp.org>
15924
15925                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
15926                 available as variable CONF_JAVA, for subsequent autoconf
15927                 tests. Also log error output in config.log.
15928
15929         2006-07-19  Bruno Haible  <bruno@clisp.org>
15930
15931                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
15932                 that getline works on glibc2 systems. Needed to avoid trouble
15933                 in relocatable.c.
15934                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
15935
15936         2005-12-04  Bruno Haible  <bruno@clisp.org>
15937
15938                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
15939                 launcher (untested).
15940
15941         2005-12-04  Bruno Haible  <bruno@clisp.org>
15942
15943                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
15944
15945         2006-07-22  Bruno Haible  <bruno@clisp.org>
15946
15947                 * gettext.m4: Update from GNU gettext-0.15.
15948                 * nls.m4: Likewise.
15949                 * po.m4: Likewise.
15950                 * inttypes-pri.m4: Likewise.
15951                 * inttypes-h.m4: Renamed from inttypes.m4.
15952                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
15953
15954 2006-07-22  Bruno Haible  <bruno@clisp.org>
15955
15956         Merge from GNU gettext 0.15.
15957
15958         2005-07-05  Bruno Haible  <bruno@clisp.org>
15959
15960                 * printf-args.c (printf_fetchargs): Work around broken
15961                 definition of wint_t on mingw.
15962
15963         2005-02-12  Bruno Haible  <bruno@clisp.org>
15964
15965                 * xallocsa.h: Add extern "C" for C++.
15966
15967         2006-05-17  Bruno Haible  <bruno@clisp.org>
15968
15969                 Cygwin portability.
15970                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
15971
15972         2006-04-30  Bruno Haible  <bruno@clisp.org>
15973
15974                 * progreloc.c: Include <mach-o/dyld.h> if available.
15975                 (find_executable): Use _NSGetExecutablePath when possible.
15976
15977         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15978
15979                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
15980                 function.
15981
15982         2005-12-29  Bruno Haible  <bruno@clisp.org>
15983
15984                 * progreloc.c (set_program_name_and_installdir): Fix
15985                 compilation error.
15986
15987         2005-12-04  Bruno Haible  <bruno@clisp.org>
15988
15989                 Cygwin portability.
15990                 * progreloc.c: Include <windows.h> also on Cygwin.
15991                 (find_executable): Add support for Cygwin.
15992                 (set_program_name_and_installdir): Handle also platforms with
15993                 nonempty EXEEXT.
15994
15995         2006-07-11  Bruno Haible  <bruno@clisp.org>
15996
15997                 * javacomp.c: Fix a comment.
15998                 Reported by Jim Meyering.
15999
16000         2006-04-30  Bruno Haible  <bruno@clisp.org>
16001
16002                 * javacomp.h (compile_java_class): Add source_version,
16003                 target_version arguments.
16004                 * javacomp.c: Rewritten to choose only a compiler that
16005                 respects the specified source_version and target_version.
16006
16007         2006-06-27  Bruno Haible  <bruno@clisp.org>
16008
16009                 Assume correct S_ISDIR macro.
16010                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
16011
16012         2006-07-22  Bruno Haible  <bruno@clisp.org>
16013
16014                 * javaversion.h: New file, from GNU gettext.
16015                 * javaversion.c: New file, from GNU gettext.
16016                 * javaversion.java: New file, from GNU gettext.
16017                 * javaversion.class: New file, from GNU gettext.
16018
16019         2006-05-17  Bruno Haible  <bruno@clisp.org>
16020
16021                 Cygwin portability.
16022                 * javaexec.c (execute_java_class): Test for jview program
16023                 also on Cygwin.
16024
16025         2006-04-09  Bruno Haible  <bruno@clisp.org>
16026
16027                 * fatal-signal.c: Don't include string.h.
16028                 (at_fatal_signal): Use a copying loop instead of memcpy.
16029
16030         2005-12-04  Bruno Haible  <bruno@clisp.org>
16031
16032                 * csharpexec.c: Add support for 'clix' launcher (untested).
16033                 (execute_csharp_using_sscli): New function.
16034                 (execute_csharp_program): Call it.
16035
16036         2006-06-21  Bruno Haible  <bruno@clisp.org>
16037
16038                 Avoid warnings from recent versions of mcs.
16039                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
16040                 -o, -L, -r any more. Use options documented since mcs-1.0
16041                 instead. Similarly for -g.
16042
16043         2005-07-09  Bruno Haible  <bruno@clisp.org>
16044
16045                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
16046                 add a .dll suffix.
16047                 Reported by Mark Junker <mjscod@gmx.de>.
16048
16049         2006-06-17  Bruno Haible  <bruno@clisp.org>
16050
16051                 * config.charset: Update for NetBSD 3.0.
16052
16053         2006-05-17  Bruno Haible  <bruno@clisp.org>
16054
16055                 Cygwin portability.
16056                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
16057
16058         2006-05-16  Bruno Haible  <bruno@clisp.org>
16059
16060                 * localcharset.c [CYGWIN]: Include <windows.h>.
16061                 (get_charset_aliases): For Cygwin, return the same CPxxx
16062                 aliases list as under WIN32.
16063                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
16064                 the environment variables. Fall back to GetACP().
16065
16066         2006-04-05  Bruno Haible  <bruno@clisp.org>
16067
16068                 * config.charset: Update Juan Manuel Guerrero's address.
16069
16070         2005-02-12  Bruno Haible  <bruno@clisp.org>
16071
16072                 * allocsa.h: Add extern "C" for C++.
16073
16074         2005-02-10  Bruno Haible  <bruno@clisp.org>
16075
16076                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
16077                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
16078
16079         2006-07-22  Bruno Haible  <bruno@clisp.org>
16080
16081                 * gettext.h: Update to GNU gettext-0.15.
16082
16083 2006-07-22  Bruno Haible  <bruno@clisp.org>
16084
16085         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
16086         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
16087         lib-prefix.m4, longdouble.m4, ssize_t.m4.
16088
16089 2006-07-21  Eric Blake  <ebb9@byu.net>
16090
16091         * modules/stdlib-safer: New file.
16092         * MODULES.html.sh (File stream based Input/Output): Add
16093         stdlib-safer.
16094
16095 2006-07-21  Eric Blake  <ebb9@byu.net>
16096
16097         * lib/stdlib-safer.h: New file from coreutils, required by
16098         stdlib--.h.
16099
16100 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
16101
16102         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
16103
16104 2006-07-20  Bruno Haible  <bruno@clisp.org>
16105
16106         * gnulib-tool: Recognize new option --assume-autoconf.
16107         (autoconf_minversion): New variable.
16108         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
16109
16110 2006-07-20  Bruno Haible  <bruno@clisp.org>
16111
16112         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
16113
16114 2006-07-19  Derek R. Price  <derek@ximbiot.com>
16115
16116         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
16117         Reindent and repaginate.
16118
16119 2006-07-19  Derek Price  <derek@ximbiot.com>
16120
16121         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
16122         Correct grammar.
16123
16124 2006-07-17  Bruno Haible  <bruno@clisp.org>
16125
16126         * modules/list: New file.
16127         * modules/array-list: New file.
16128         * modules/carray-list, modules/carray-list-tests: New files.
16129         * modules/linked-list, modules/linked-list-tests: New files.
16130         * modules/avltree-list, modules/avltree-list-tests: New files.
16131         * modules/rbtree-list, modules/rbtree-list-tests: New files.
16132         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
16133         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
16134         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
16135         * modules/oset: New file.
16136         * modules/array-oset: New file.
16137         * modules/avltree-oset, modules/avltree-oset-tests: New files.
16138         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
16139         * tests/test-carray_list.c: New file.
16140         * tests/test-linked_list.c: New file.
16141         * tests/test-avltree_list.c: New file.
16142         * tests/test-rbtree_list.c: New file.
16143         * tests/test-linkedhash_list.c: New file.
16144         * tests/test-avltreehash_list.c: New file.
16145         * tests/test-rbtreehash_list.c: New file.
16146         * tests/test-avltree_oset.c: New file.
16147         * tests/test-rbtree_oset.c: New file.
16148         * MODULES.html.sh (Container data structures): New section.
16149
16150 2006-07-17  Bruno Haible  <bruno@clisp.org>
16151
16152         * m4/gl_list.m4: New file.
16153
16154 2006-07-17  Bruno Haible  <bruno@clisp.org>
16155
16156         * lib/gl_list.h: New file.
16157         * lib/gl_list.c: New file.
16158         * lib/gl_array_list.h: New file.
16159         * lib/gl_array_list.c: New file.
16160         * lib/gl_carray_list.h: New file.
16161         * lib/gl_carray_list.c: New file.
16162         * lib/gl_linked_list.h: New file.
16163         * lib/gl_linked_list.c: New file.
16164         * lib/gl_anylinked_list1.h: New file.
16165         * lib/gl_anylinked_list2.h: New file.
16166         * lib/gl_avltree_list.h: New file.
16167         * lib/gl_avltree_list.c: New file.
16168         * lib/gl_anyavltree_list1.h: New file.
16169         * lib/gl_anyavltree_list2.h: New file.
16170         * lib/gl_rbtree_list.h: New file.
16171         * lib/gl_rbtree_list.c: New file.
16172         * lib/gl_anyrbtree_list1.h: New file.
16173         * lib/gl_anyrbtree_list2.h: New file.
16174         * lib/gl_anytree_list1.h: New file.
16175         * lib/gl_anytree_list2.h: New file.
16176         * lib/gl_linkedhash_list.h: New file.
16177         * lib/gl_linkedhash_list.c: New file.
16178         * lib/gl_anyhash_list1.h: New file.
16179         * lib/gl_anyhash_list2.h: New file.
16180         * lib/gl_avltreehash_list.h: New file.
16181         * lib/gl_avltreehash_list.c: New file.
16182         * lib/gl_rbtreehash_list.h: New file.
16183         * lib/gl_rbtreehash_list.c: New file.
16184         * lib/gl_anytreehash_list1.h: New file.
16185         * lib/gl_anytreehash_list2.h: New file.
16186
16187         * lib/gl_oset.h: New file.
16188         * lib/gl_oset.c: New file.
16189         * lib/gl_array_oset.h: New file.
16190         * lib/gl_array_oset.c: New file.
16191         * lib/gl_avltree_oset.h: New file.
16192         * lib/gl_avltree_oset.c: New file.
16193         * lib/gl_rbtree_oset.h: New file.
16194         * lib/gl_rbtree_oset.c: New file.
16195         * lib/gl_anytree_oset.h: New file.
16196
16197 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
16198
16199         * m4/mkancesdirs.m4: New file.
16200         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
16201         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
16202         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
16203         it.
16204
16205 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
16206
16207         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
16208         * lib/mkancesdirs.h: New files.
16209         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
16210         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
16211         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
16212         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
16213         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
16214         callers changed.  Revamp internals significantly, by not
16215         attempting to create directories that are temporarily more
16216         permissive than the final results.  Do not attempt to use
16217         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
16218         This removes some race conditions, fixes some bugs, and simplifies
16219         things.  Use new dirchownmod function to do owner and mode changes.
16220         * lib/mkdir-p.h: Likewise.
16221         * lib/modechange.c (octal_to_mode): New function.
16222         (struct mode_change): New member mentioned.
16223         (make_node_op_equals): New arg mentioned.  All callers changed.
16224         (mode_compile): Keep track of which mode bits the user has explicitly
16225         mentioned.
16226         (mode_adjust): New arg DIR, so that we implement the X op correctly.
16227         New arg PMODE_BITS, to keep track of which mode bits the user
16228         mentioned; it treats S_ISUID and S_ISGID speciall.
16229         All callers changed.
16230         * lib/modechange.h: Likewise.
16231
16232 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
16233
16234         * MODULES.html.sh: Add mkancestors.
16235         * modules/mkancesdirs: New module.
16236         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
16237         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
16238         The chdir-safer and afs files are now orphans; I'll remove them
16239         unless someone speaks up.
16240         Add lib/dirchownmod.c, lib/dirchownmod.h.
16241         (Depends-on): Remove alloca, chown, save-cwd, dirname.
16242         Add lchown, mkancesdirs.
16243         (Maintainer): Add self.
16244
16245 2006-07-15  Karl Berry  <karl@gnu.org>
16246
16247         * gnulib-tool: help message wording/arrangement.
16248
16249 2006-07-14  Simon Josefsson  <jas@extundo.com>
16250
16251         * doc/gnulib.texi (Libtool and Windows): New section.
16252
16253 2006-07-12  Simon Josefsson  <jas@extundo.com>
16254
16255         * modules/gendocs (License): Fix license, approved by Karl.
16256
16257 2006-07-12  Eric Blake  <ebb9@byu.net>
16258
16259         * MODULES.html.sh: Add gendocs.
16260
16261 2006-07-11  Eric Blake  <ebb9@byu.net>
16262
16263         * modules/fdl: New module, to install doc/fdl.texi.
16264         * MODULES.html.sh: Add new section for documentation modules.
16265         * gnulib-tool: Avoid space-tab.
16266         (--doc-base): New option, to manage files from doc.
16267
16268 2006-07-11  Eric Blake  <ebb9@byu.net>
16269
16270         * m4/absolute-header.m4: Fix comments to match recent change.
16271
16272 2006-07-11  Eric Blake  <ebb9@byu.net>
16273
16274         * gnulib-tool: List --doc-base before --tests-base.
16275
16276 2006-07-11  Derek R. Price  <derek@ximbiot.com>
16277
16278         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
16279
16280 2006-07-11  Bruno Haible  <bruno@clisp.org>
16281
16282         * README: Mention where to put documentation.
16283
16284 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16285
16286         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
16287
16288 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
16289
16290         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
16291         to stdint.m4.
16292
16293 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
16294
16295         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
16296         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
16297         "no/such/file/stdint.h" when there is no such file, so that
16298         the resulting C code can be parsed by dodgy compilers.
16299         Problems reported by Bob Proulx.
16300
16301 2006-07-10  Derek R. Price  <derek@ximbiot.com>
16302
16303         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
16304         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
16305         macros into the GNU _D_EXACT_NAMLEN.
16306         * lib/savedir.c:  Likewise.
16307         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
16308
16309 2006-07-10  Derek R. Price  <derek@ximbiot.com>
16310         and Paul Eggert  <eggert@cs.ucla.edu>
16311
16312         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
16313         * m4/savedir.m4:
16314         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
16315         macros into the GNU _D_EXACT_NAMLEN.
16316
16317 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
16318
16319         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
16320         around the absolute name, to work around a problem with the HP-UX
16321         11.23 native C compiler, reported by Bob Proulx.
16322
16323 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
16324
16325         * doc/maintain.texi, make-stds.texi: Sync from
16326         <http://savannah.gnu.org/projects/gnustandards>.
16327
16328 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
16329
16330         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
16331
16332 2006-07-09  Jim Meyering  <jim@meyering.net>
16333
16334         * m4/glob.m4: Remove a doubled word in a comment.
16335
16336 2006-07-09  Jim Meyering  <jim@meyering.net>
16337
16338         * lib/argp-pv.c: Remove a doubled word in a comment.
16339         * lib/check-version.c (check_version): Likewise.
16340         * lib/javacomp.c (compile_java_class): Likewise.
16341
16342 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
16343
16344         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
16345         for the benefit of people using Autoconf 2.60.  If you want to
16346         support older Autoconf versions you can copy m4/onceonly_2_57.m4
16347         (or m4/onceonly.m4, if pre-2.57) manually.
16348
16349 2006-07-08  Jim Meyering  <jim@meyering.net>
16350
16351         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
16352         comment.
16353         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
16354         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
16355         comment.
16356
16357 2006-07-08  Jim Meyering  <jim@meyering.net>
16358
16359         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
16360
16361 2006-07-07  Simon Josefsson  <jas@extundo.com>
16362
16363         * tests/test-crc.c: Change expected crc value, the test vector
16364         were probably computed using the old broken crc.c?
16365
16366 2006-07-06  Simon Josefsson  <jas@extundo.com>
16367
16368         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
16369         now the canonical place for the M4 file).
16370
16371         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
16372         from the sys_socket dependency now.
16373
16374         * modules/inet_pton (Files): Ditto.
16375
16376         * modules/inet_ntop (Files): Ditto.
16377
16378 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16379
16380         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
16381         not gl_PREREQ_GETUSERSHELL.
16382
16383 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16384
16385         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
16386         with only one argument, for Autoconf 2.60.
16387         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
16388         expand to nothing, so add a shell command to avoid syntax error.
16389         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
16390
16391 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16392
16393         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
16394
16395 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
16396
16397         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
16398         no longer needed.  Check for isblank decl.
16399         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
16400         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
16401         of existence.
16402
16403 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
16404
16405         * lib/getloadavg.c: Use __VMS, not VMS.
16406         * lib/getopt.c: Likewise.
16407         * lib/getpagesize.h: Likewise.
16408         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
16409         and probably does not work.
16410
16411 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
16412
16413         * lib/.cppi-disable: Add wcwidth.
16414         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
16415         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
16416         (ISGRAPH): Remove.  All uses changed to isgraph.
16417         (FOLD) [!defined _LIBC]: Remove special case.
16418         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
16419         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
16420         HAVE_ISBLANK.
16421         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
16422         case.
16423
16424 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
16425
16426         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
16427         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
16428         brackets.  Other minor changes to suppress some compiler
16429         warnings.
16430
16431 2006-07-06  Derek R. Price  <derek@ximbiot.com>
16432         and Paul Eggert  <eggert@cs.ucla.edu>
16433
16434         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
16435         of invoking obsolescent AC_HEADER_DIRENT macro.
16436         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
16437         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
16438         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
16439         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
16440         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
16441         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
16442         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
16443         * m4/readdir.m4: Remove; no longer needed.
16444
16445 2006-07-06  Derek R. Price  <derek@ximbiot.com>
16446         and Paul Eggert  <eggert@cs.ucla.edu>
16447
16448         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
16449         Don't worry about this obsolete case any more.
16450         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
16451         directories.
16452         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
16453         worry about this obsolete case any more.
16454         * lib/fts.c: Likewise.
16455         * lib/getcwd.c: Likewise.
16456         * lib/glob.h: Likewise.
16457         * lib/savedir.c: Likewise.
16458
16459 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
16460
16461         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
16462         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
16463         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
16464         needed.
16465         All uses removed.
16466         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
16467         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
16468         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
16469         needed.
16470         * m4/getdate.m4 (gl_GETDATE): Likewise.
16471         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
16472         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
16473         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
16474         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
16475         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
16476         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
16477         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
16478         needed.
16479
16480 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
16481
16482         * lib/memcasecmp.c: Include <limits.h>.
16483         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
16484         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
16485         Don't assume isdigit succeeds only on '0' through '9'.
16486
16487 2006-07-05  Eric Blake  <ebb9@byu.net>
16488
16489         * modules/getaddrinfo (Depends-on): Add snprintf.
16490
16491 2006-07-05  Eric Blake  <ebb9@byu.net>
16492
16493         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
16494         to avoid 'header present but could not be compiled' on cygwin.
16495
16496 2006-07-05  Eric Blake  <ebb9@byu.net>
16497
16498         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
16499         missing from netdb.h.
16500         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
16501
16502 2006-07-05  Derek R. Price  <derek@ximbiot.com>
16503
16504         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
16505         no longer needed.
16506         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
16507         * m4/getdate.m4 (gl_GETDATE): Likewise.
16508         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
16509         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
16510         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
16511         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
16512         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
16513
16514 2006-07-05  Derek R. Price  <derek@ximbiot.com>
16515
16516         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
16517         All uses of is_space replaced by isspace.
16518         * lib/exit.h: Don't talk about STDC_HEADERS.
16519         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
16520         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
16521         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
16522         replaced by isprint etc.
16523         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
16524         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
16525         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
16526         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
16527         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
16528         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
16529
16530 2006-07-05  Bruno Haible  <bruno@clisp.org>
16531
16532         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
16533         the function exists, before testing against AIX.
16534         Reported by Martin Lambers <marlam@marlam.de>.
16535
16536 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
16537
16538         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
16539         From Mark D. Baushke.
16540
16541 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
16542
16543         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
16544         to the absolute name, not just one, to bypass Sun C 5.8's
16545         "warning: #include of /usr/include/... may be non-portable".
16546
16547 2006-07-04  Eric Blake  <ebb9@byu.net>
16548
16549         * modules/dirname-tests: New test module.
16550         * tests/test-dirname.c: New file, replacing dirname.c
16551         TEST_DIRNAME section that was recently deleted.
16552
16553 2006-07-04  Bruno Haible  <bruno@clisp.org>
16554
16555         Assume ANSI C header files and <ctype.h> functions.
16556         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
16557         (mbsnwidth): Use isprint, iscntrl instead.
16558
16559 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16560
16561         Merge from coreutils.
16562         * MODULES.html.sh: Add xstrtold.
16563         * modules/xstrtold: New file.
16564         * modules/cycle-check (Files): Add lib/same-inode.h.
16565         * modules/dirname (Files): Add m4/double-slash-root.m4.
16566         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
16567         * modules/mkdir-p (Files): Add lib/same-inode.h.
16568         * modules/same (Files): Add lib/same-inode.h.
16569
16570 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16571
16572         * m4/absolute-header.m4: Renamed from full-header-path.m4.
16573         This is to keep the terminology clean; POSIX talks about
16574         "absolute pathnames", not "full pathnames", but the GNU
16575         Coding Standards say to use "path" for something else;
16576         so use "absolute" to keep both sides happy.
16577         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
16578         Set gl_absolute_header, not gl_full_header_path.
16579         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
16580         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
16581         All uses changed.
16582
16583         Merge from coreutils.
16584
16585         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
16586
16587         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
16588         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
16589         want to require the building of c-strtod.o.
16590         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
16591         needs -lm directly.
16592         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
16593
16594         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
16595
16596         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
16597         --as-needed option if available.  Problem reported by Albert Chin in
16598         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
16599         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
16600         cc merely issues a bunch of annoying warnings for --as-needed
16601         (this problem was reported by Bob Proulx).  Also, try linking with
16602         -lm to detect a bug in binutils 2.16 (this problem was reported
16603         by Ralf Wildenhues).
16604
16605         2006-06-18  Jim Meyering  <jim@meyering.net>
16606
16607         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
16608         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
16609         macro.
16610         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
16611         also check for glibc-2.4's abort-inducing bug.
16612
16613         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
16614         Low-probability clean-up should be to use rmdir to get rid of
16615         the just-created directory, not unlink.
16616
16617         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
16618         configure fail, and request a bug report to inform us about it.
16619         Add a comment that, barring reports to the contrary, in 2007 we'll
16620         assume ftruncate is universally available.
16621
16622         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
16623
16624         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
16625
16626         2006-03-12  Jim Meyering  <jim@meyering.net>
16627
16628         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
16629         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
16630         * m4/same.m4 (gl_SAME): Likewise.
16631         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
16632
16633         2006-03-11  Eric Blake  <ebb9@byu.net>
16634
16635         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
16636         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
16637         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
16638         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
16639
16640 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16641
16642         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
16643         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
16644         reported by Mark D. Baushke, one in
16645         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
16646
16647         Merge from coreutils.
16648
16649         * lib/.cppi-disable: Add stdint_.h.
16650         * lib/.cvsignore: Add stdint.h.
16651
16652         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
16653
16654         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
16655         both double and long double versions.
16656         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
16657         * lib/xstrtold.c: New file.
16658         * lib/xstrtod.h (xstrtold): New decl.
16659
16660         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
16661
16662         * lib/filemode.c (setst): Remove.
16663         (strmode): Rewrite to avoid setst.  This makes the code shorter,
16664         (arguably) clearer, and the generated code is a bit smaller on my
16665         Debian GNU/Linux stable x86 host.
16666
16667         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
16668
16669         * lib/filemode.c: Include "filemode.h" first, to test the interface.
16670         Assume that filemode.h includes sys/types.h and sys/stat.h.
16671         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
16672         (ftypelet): Reorder to put common cases first, for efficiency.
16673         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
16674         to do 'M'.
16675         (strmode): Renamed from mode_string, and now stores 12 bytes instead
16676         of 10, for compatibility with FreeBSD.  All callers changed.
16677         (filemodestring): Now stores 12 bytes instead of 10, and sets file
16678         types that can't be deduced solely from st_mode.  First arg is now a
16679         const pointer.
16680         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
16681         (strmode): Renamed from mode_string.
16682         (filemodestring): New decl.
16683         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
16684         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
16685         needed.
16686         (S_ISPORT, S_ISWHT): New macros, if not already defined.
16687
16688         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
16689
16690         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
16691         fsusage.h now does that.  Include fsusage.h first, to test interface.
16692         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
16693         at most one method (the old code could have generated decls that
16694         didn't conform to C89, not that this was ever exercised).
16695         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
16696
16697         2006-03-19  Jim Meyering  <jim@meyering.net>
16698
16699         Work even in a chroot where d_ino values for entries in "/"
16700         don't match the stat.st_ino values for the same names.
16701         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
16702         number, iterate through all entries again, using lstat instead.
16703         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
16704         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
16705
16706         * lib/getcwd.c (__getcwd): Clarify a comment.
16707         Use memcpy in place of a call to strcpy.
16708
16709         2006-03-12  Jim Meyering  <jim@meyering.net>
16710
16711         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
16712         matches that of the current directory (which we're about to chdir ".."
16713         out of), then save the dev-ino of the parent, instead.
16714
16715         * lib/same-inode.h (SAME_INODE): New file/macro.
16716         * lib/chdir-safer.c (SAME_INODE): Remove definition.
16717         Include "same-inode.h", instead.
16718         * lib/same.c: Likewise.
16719         * lib/cycle-check.h: Include "same-inode.h".
16720         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
16721         * lib/cycle-check.c (SAME_INODE): Remove definition.
16722         * lib/root-dev-ino.h: Include "same-inode.h".
16723
16724         2006-03-11  Eric Blake  <ebb9@byu.net>
16725
16726         * lib/same.c (same_name): s/base_name/last_component/
16727         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
16728         * lib/filenamecat.c (file_name_concat): Likewise.
16729
16730         2006-03-11  Eric Blake  <ebb9@byu.net>,
16731                     Paul Eggert  <eggert@cs.ucla.edu>
16732
16733         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
16734         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
16735         drive prefix.
16736         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
16737         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
16738         (last_component): New method.
16739         * lib/dirname.c (dir_len): Determine when drive letters need a
16740         subsequent slash.  Preserve // when it is special.
16741         (dir_name): Don't append dot when drive letter is absolute.
16742         [TEST_DIRNAME]: Move into a full-blown gnulib test.
16743         * lib/basename.c (base_name): New semantics - malloc the result.
16744         Preserve // when it is special.  Preserve relative files that look
16745         like drive letters.
16746         (base_len): Preserve // when it is special.
16747         (last_component): New method, similar to old base_name semantics.
16748         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
16749         base_name.  Strip redundant slashes from ///.
16750
16751 2006-07-03  Jim Meyering  <jim@meyering.net>
16752
16753         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
16754         macro is used before the first cycle_check call.
16755
16756 2006-07-03  Eric Blake  <ebb9@byu.net>
16757
16758         * modules/dirname (Depends-on): Add xstrndup.
16759
16760 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
16761
16762         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
16763         test cases, so that config.log is a bit easier to follow.
16764
16765 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
16766
16767         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
16768         both are 64 bits, since this seems to be the tradition, and this
16769         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
16770         we ever run into a host that prefers long long to long in this
16771         case, we'll need another configure-time test.  Problem reported by
16772         Jim Meyering.
16773
16774 2006-07-02  Eric Blake  <ebb9@byu.net>
16775
16776         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
16777
16778 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16779
16780         * modules/inttypes (Depends-on): No longer depends on stdint.
16781         * modules/stdint (Description): Say more about assumptions.
16782         Say that the fast types might differ.  Say macros are used.
16783         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
16784         (Makefile.am): Revise list of substituted symbols to match
16785         new stdint.m4.
16786         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
16787         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
16788         * tests/test-stdint.c (verify_same_types)
16789         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
16790         the code conforms to C99/C89.
16791         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
16792         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
16793
16794 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16795
16796         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
16797         but fix a bug, by requiring at least 64 bits.
16798         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
16799         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
16800         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
16801         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
16802
16803         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
16804         changes.  Make 2.59 a prerequisite.  Check and substitute for
16805         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
16806         inttypes.h.  Do not use special include files; just use the
16807         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
16808         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
16809         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
16810         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
16811         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
16812         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
16813         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
16814         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
16815         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
16816         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
16817         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
16818         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
16819         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
16820         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
16821         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
16822         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
16823         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
16824         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
16825         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
16826         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
16827         WINT_MAX.  Check for C99 conformance more strictly, by detecting
16828         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
16829         not check for things that C99 does not require, e.g., int8_t.  If
16830         a test isn't needed unless <stdint.h> isn't working, and is
16831         unlikely to be needed for any other reason, then don't do it
16832         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
16833         size_t, since we assume C89 freestanding at least.  Do not check
16834         for sig_atomic_t, wchar_t, or wint_t, since the code now does
16835         the right thing even if the types are not defined.  Instead use:
16836         (gl_STDINT_TYPE_PROPERTIES): New macro.
16837         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
16838         testing whether <sys/types.h> clashes, as Autoconf does this for
16839         us now.  All uses removed.
16840         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
16841         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
16842         (gl_CHECK_TYPE_SAME):
16843         Remove; no longer needed.
16844         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
16845         exists, since we'll return 0 anyway in that case.
16846         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
16847
16848 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16849
16850         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
16851         possible collision with system files.
16852         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
16853         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
16854         WCHAR_MIN and WCHAR_MAX in this case.
16855         (<stddef.h>): Do not include; no longer needed.
16856         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
16857         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
16858         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
16859         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
16860         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
16861         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
16862         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
16863         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
16864         !defined(__c99))]: Include in this case too, since it's harmless
16865         now.
16866         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
16867         dangerous to do so.
16868         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
16869         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
16870         (_STDINT_MIN, _STDINT_MAX): New macros.
16871         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
16872         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
16873         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
16874         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
16875         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
16876         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
16877         macros, not typedefs; this simplifies things quite a bit.
16878         Use long int for all types narrower than int64_t.
16879         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
16880         Define in terms of long long int or int64_t or long int,
16881         not int64_t or int32_t.  This saves some compile-time testing.
16882         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
16883         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
16884         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
16885         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
16886         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
16887         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
16888         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
16889         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
16890         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
16891         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
16892         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16893         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16894         undef any previous version and define our own version, for
16895         simplicity and consistency with the new macros for types.
16896         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16897         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16898         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
16899         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
16900         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
16901         @WINT_T_SUFFIX@ to keep things simple here.
16902         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
16903         Simplify by assuming typical 8/16/32/64 host, since we're
16904         already doing that elsewhere anyway.
16905         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
16906         and assume long long int is 64 bits if available.  This
16907         speeds up 'configure'.
16908
16909 2006-07-01  Eric Blake  <ebb9@byu.net>
16910
16911         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
16912         Reported by Andreas Buening.
16913
16914 2006-07-01  Eric Blake  <ebb9@byu.net>
16915
16916         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
16917
16918 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
16919
16920         * lib/getaddrinfo.c: fixed typo
16921
16922 2006-06-29  Jim Meyering  <jim@meyering.net>
16923
16924         * modules/strftime (Maintainer): Add my name, since with the
16925         FPRINTFTIME changes strftime.c has forked from glibc.
16926
16927 2006-06-29  Eric Blake  <ebb9@byu.net>
16928
16929         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
16930
16931 2006-06-29  Eric Blake  <ebb9@byu.net>
16932
16933         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
16934
16935 2006-06-29  Eric Blake  <ebb9@byu.net>
16936
16937         * lib/stat_.h: New file.
16938
16939 2006-06-29  Eric Blake  <ebb9@byu.net>
16940
16941         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
16942         unused static function.
16943
16944 2006-06-29  Eric Blake  <ebb9@byu.net>
16945
16946         * doc/functions.texi (Function Portability): Document missing lstat
16947         on mingw.
16948
16949 2006-06-29  Eric Blake  <ebb9@byu.net>
16950
16951         * MODULES.html.sh: Add sys_stat.
16952         * modules/sys_stat: New module.
16953         * modules/mkstemp (Depends-on): Add sys_stat.
16954
16955 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16956
16957         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
16958
16959 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16960
16961         * m4/c-bs-a.m4: Removed.
16962
16963 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16964
16965         * lib/strftime.c: Assume strftime() exists.
16966
16967 2006-06-29  Derek Price  <derek@ximbiot.com>
16968
16969         * modules/c-bs-a: Removed - \a is C89.
16970         * MODULES.html.sh: Remove c-bs-a.
16971
16972 2006-06-29  Bruno Haible  <bruno@clisp.org>
16973
16974         * modules/wcwidth (License): Change to LGPL.
16975
16976 2006-06-28  Simon Josefsson  <jas@extundo.com>
16977
16978         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
16979         on _WIN32.
16980
16981         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
16982         getnameinfo.
16983
16984 2006-06-28  Simon Josefsson  <jas@extundo.com>
16985
16986         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
16987
16988 2006-06-28  Simon Josefsson  <jas@extundo.com>
16989
16990         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
16991         functions there.  It will succeed on Windows XP, but on Windows
16992         2000 and (presumably) earlier, it will fail, and use the internal
16993         re-implementation.
16994         (use_win32_p): New function.
16995         (getaddrinfo): Use strtoul on servname, to support numeric ports.
16996         Support AI_NUMERICSERV to disable getservbyname.
16997         (getnameinfo): New function, only supports
16998         NI_NUMERICHOST|NI_NUMERICSERV for now.
16999
17000         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
17001         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
17002         getnameinfo.
17003
17004 2006-06-28  Eric Blake  <ebb9@byu.net>
17005
17006         * modules/wcwidth: New file.
17007         * modules/mbchar (Depends-on): Add wcwidth.
17008         * modules/mbswidth (Depends-on): Add wcwidth.
17009         * MODULES.html.sh: Add wcwidth.
17010
17011 2006-06-28  Eric Blake  <ebb9@byu.net>
17012
17013         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
17014         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
17015
17016 2006-06-28  Eric Blake  <ebb9@byu.net>
17017
17018         * lib/xvasprintf.h: Fix comments.
17019
17020 2006-06-28  Eric Blake  <ebb9@byu.net>
17021
17022         * lib/mbchar.h (wcwidth): Include wcwidth.h.
17023         * lib/mbswidth.c (wcwidth): Move from here...
17024         * lib/wcwidth.h: ...to this new file.
17025
17026 2006-06-28  Derek R. Price  <derek@ximbiot.com>
17027
17028         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
17029
17030         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
17031         it's obsolete.
17032         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
17033
17034 2006-06-28  Derek R. Price  <derek@ximbiot.com>
17035
17036         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
17037         Autoconf 2.60 says this stuff was obsolete.
17038
17039 2006-06-28  Bruno Haible  <bruno@clisp.org>
17040
17041         * modules/wcwidth (Files): Add m4/wchar_t.m4.
17042
17043 2006-06-28  Bruno Haible  <bruno@clisp.org>
17044
17045         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
17046         gt_TYPE_WCHAR_T.
17047
17048 2006-06-28  Bruno Haible  <bruno@clisp.org>
17049
17050         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
17051         declaration for wcwidth.
17052         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
17053
17054 2006-06-28  Bruno Haible  <bruno@clisp.org>
17055
17056         * lib/mkdtemp.c [MINGW]: Include <io.h>.
17057         (mkdir): Define using _mkdir.
17058
17059 2006-06-28  Bruno Haible  <bruno@clisp.org>
17060
17061         * lib/getaddrinfo.h: Fix POSIX URL.
17062         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
17063         _WIN32.
17064         (use_win32_p): Make static.
17065         (getaddrinfo): Reject service name if it is empty or does not consist
17066         solely of decimal digits, or if its value is > 65535.
17067         (getnameinfo): Remove useless casts.
17068
17069 2006-06-27  Simon Josefsson  <jas@extundo.com>
17070
17071         * modules/sys_select: New file, suggested by Bruno Haible, Paul
17072         Eggert and Martin Lambers.
17073
17074 2006-06-27  Simon Josefsson  <jas@extundo.com>
17075
17076         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
17077         Eggert and Martin Lambers.
17078
17079 2006-06-27  Bruno Haible  <bruno@clisp.org>
17080
17081         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
17082         result to 0, not to empty.
17083         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
17084
17085 2006-06-27  Bruno Haible  <bruno@clisp.org>
17086
17087         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
17088
17089 2006-06-26  Simon Josefsson  <jas@extundo.com>
17090
17091         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
17092         present.
17093
17094 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
17095
17096         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
17097         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
17098         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
17099
17100 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
17101
17102         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
17103
17104 2006-06-26  Bruno Haible  <bruno@clisp.org>
17105
17106         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
17107
17108 2006-06-26  Bruno Haible  <bruno@clisp.org>
17109
17110         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
17111
17112 2006-06-26  Bruno Haible  <bruno@clisp.org>
17113
17114         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
17115         SGI C compiler in pre-C99 mode.
17116         Suggested by Mark D. Baushke and Larry Jones.
17117
17118 2006-06-26  Bruno Haible  <bruno@clisp.org>
17119
17120         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
17121         WCHAR_MAX.
17122         Reported by Mark D. Baushke and Larry Jones.
17123
17124 2006-06-26  Bruno Haible  <bruno@clisp.org>
17125
17126         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
17127         in pre-C99 mode.
17128         Suggested by Mark D. Baushke and Larry Jones.
17129
17130 2006-06-23  Simon Josefsson  <jas@extundo.com>
17131             Bruno Haible  <bruno@clisp.org>
17132
17133         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
17134         Emit mostlyclean-local rule.
17135         (func_emit_tests_Makefile_am): Likewise.
17136         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
17137
17138 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
17139
17140         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
17141
17142 2006-06-23  Bruno Haible  <bruno@clisp.org>
17143
17144         * tests/test-stdint.c: Update to match ISO C 99 Technical
17145         Corrigendum 1.
17146
17147 2006-06-23  Bruno Haible  <bruno@clisp.org>
17148
17149         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
17150
17151 2006-06-23  Bruno Haible  <bruno@clisp.org>
17152
17153         * lib/stdint_.h: Treat IRIX like OpenBSD.
17154
17155 2006-06-23  Bruno Haible  <bruno@clisp.org>
17156
17157         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
17158         ISO C 99 Technical Corrigendum 1.
17159
17160 2006-06-22  Simon Josefsson  <jas@extundo.com>
17161
17162         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
17163         MinGW.
17164
17165 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
17166
17167         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
17168         needed.  Some compiler complained about some of them.  Problem reported
17169         by Larry Jones in
17170         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
17171
17172 2006-06-21  Simon Josefsson  <jas@extundo.com>
17173
17174         * tests/test-getaddrinfo.c: New file.
17175
17176         * modules/getaddrinfo-tests: New file.
17177
17178         * MODULES.html.sh: Add inet_pton.
17179
17180         * modules/inet_pton: New file.
17181
17182 2006-06-21  Simon Josefsson  <jas@extundo.com>
17183
17184         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
17185         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
17186         of using the (limited) gnulib implementation on Windows XP.
17187
17188         * m4/inet_pton.m4: New file.
17189
17190 2006-06-21  Simon Josefsson  <jas@extundo.com>
17191
17192         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
17193         variable.
17194
17195         * lib/socket_.h: Don't define WINVER.
17196
17197         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
17198         slightly modified to work in gnulib.
17199
17200 2006-06-21  Simon Josefsson  <jas@extundo.com>
17201
17202         * doc/gnulib.texi (Windows sockets): Add.
17203
17204 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
17205
17206         * lib/read-file.c (fread_file): Start with buffer allocation of
17207         0 bytes rather than 1 byte; this simplifies the code.
17208         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
17209         code to free buffer and save/restore errno.
17210         (internal_read_file): Remove unused local.
17211
17212 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
17213
17214         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
17215         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
17216         Problem reported by Denis Excoffier in
17217         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
17218
17219 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17220
17221         * modules/sys_socket, modules/socklen: Include sys/types since
17222         FreeBSD 4.x's sys/socket.h needs it.
17223
17224 2006-06-19  Simon Josefsson  <jas@extundo.com>
17225
17226         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
17227
17228 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
17229
17230         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
17231
17232 2006-06-19  Bruno Haible  <bruno@clisp.org>
17233
17234         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
17235         and FULL_PATH_INTTYPES_H in angle brackets.
17236         Reported by Mark D. Baushke <mdb@gnu.org>.
17237
17238 2006-06-17  Eric Blake  <ebb9@byu.net>
17239
17240         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
17241         errno.
17242
17243 2006-06-17  Bruno Haible  <bruno@clisp.org>
17244
17245         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
17246         <sys/inttypes.h>.
17247
17248 2006-06-17  Bruno Haible  <bruno@clisp.org>
17249
17250         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
17251         whether errno is declared. Assume <errno.h> declares errno.
17252
17253 2006-06-17  Bruno Haible  <bruno@clisp.org>
17254
17255         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
17256
17257 2006-06-17  Bruno Haible  <bruno@clisp.org>
17258
17259         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
17260         problem on Solaris 2.5.1.
17261
17262 2006-06-16  Eric Blake  <ebb9@byu.net>
17263
17264         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
17265         * lib/unicodeio.c [!defined errno]: Likewise.
17266         * lib/strtol.c [!defined errno]: Likewise.
17267         * lib/strtod.c [!defined errno]: Likewise.
17268
17269 2006-06-15  Eric Blake  <ebb9@byu.net>
17270
17271         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
17272
17273 2006-06-15  Eric Blake  <ebb9@byu.net>
17274
17275         * config/srclist.txt (ssize_t.m4): Lose sync.
17276
17277 2006-06-15  Bruno Haible  <bruno@clisp.org>
17278
17279         * modules/stdint (Files): Include m4/full-header-path.m4,
17280         m4/size_max.m4, m4/wchar_t.m4.
17281         (Makefile.am): Many more substitutions.
17282         * modules/stdint-tests: New file.
17283         * tests/test-stdint.c: New file.
17284
17285 2006-06-15  Bruno Haible  <bruno@clisp.org>
17286
17287         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
17288         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
17289         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
17290         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
17291         gl_CHECK_TYPE_SAME): New macros.
17292
17293 2006-06-15  Bruno Haible  <bruno@clisp.org>
17294
17295         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
17296
17297 2006-06-15  Bruno Haible  <bruno@clisp.org>
17298
17299         * lib/stdint_.h: Rewritten to be fully auto-configured.
17300         Fixes bug on HP-UX/IA64.
17301
17302 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
17303
17304         * lib/getdate.y (__attribute__): Don't define if already defined.
17305         Problem reported by Larry Jones.
17306         * lib/utimens.c (__attribute__): Likewise.
17307
17308 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
17309
17310         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
17311         reported by Andreas Schwab.
17312
17313 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17314             Bruno Haible  <bruno@clisp.org>
17315
17316         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
17317         check for the declaration of strnlen and a run test that exposes the
17318         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
17319         rpl_strndup.
17320
17321 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17322             Bruno Haible  <bruno@clisp.org>
17323
17324         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
17325
17326 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17327
17328         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
17329         compile test, for Tru64 4.0D.
17330
17331 2006-05-28  Karl Berry  <karl@gnu.org>
17332
17333         * config/srclist.txt (printf-args.c): lose sync.
17334
17335 2006-05-26  Martin Lambers  <marlam@marlam.de>
17336
17337         * lib/getpass.c: Updates the test for the native W32 API, and adds
17338         missing includes, thus fixing compilation warnings.
17339
17340 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
17341
17342         * lib/exclude.c (exclude_fnmatch): New function.
17343         (excluded_file_name): Call exclude_fnmatch.
17344         * lib/exclude.h (excluded_file_name): New prototype
17345
17346 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
17347
17348         * lib/tempname.c (small_open, large_open): New macros.
17349         (__open, __open64) [!_LIBC]: Remove.
17350         (__gen_tempname): Use small_open and large_open instead of __open
17351         and __open64.  This fixes a portability bug on HP-UX 11.11i
17352         reported by Simon Wing-Tang in
17353         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
17354
17355 2006-05-24  Bruno Haible  <bruno@clisp.org>
17356
17357         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
17358         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
17359         Reported by Thorsten Maerz <torte@netztorte.de> via
17360         Aaron Stone <aaron@serendipity.cx>.
17361
17362 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
17363
17364         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
17365         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
17366         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
17367         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
17368         not really conditional on the cache.
17369         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
17370
17371 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
17372
17373         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
17374         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
17375         (my_usleep): Don't mishandle maximum value.
17376
17377 2006-05-19  Jim Meyering  <jim@meyering.net>
17378
17379         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
17380
17381 2006-05-17  Bruno Haible  <bruno@clisp.org>
17382
17383         Cygwin portability.
17384         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
17385
17386 2006-05-17  Bruno Haible  <bruno@clisp.org>
17387
17388         * lib/stdint_.h: Fix recognition of Cygwin.
17389
17390 2006-05-15  Bruno Haible  <bruno@clisp.org>
17391
17392         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
17393         on libtool patch by Ralf Wildenhues.
17394
17395 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
17396
17397         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
17398         test for C99 conformance; (bool) 0.5 is an integer constant
17399         expression, but (bool) -0.5 is not.  Problem reported by Fedor
17400         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
17401
17402 2006-05-11  Simon Josefsson  <jas@extundo.com>
17403
17404         * m4/xvasprintf.m4: Fix obvious typo.
17405
17406 2006-05-11  Jim Meyering  <jim@meyering.net>
17407
17408         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
17409         James Lemley.
17410
17411 2006-05-10  Simon Josefsson  <jas@extundo.com>
17412
17413         * lib/md4.c: Typo fix, update copyright years.
17414         (K1, K2): Don't use L because it turn computations into 64-bit on
17415         64-bit platforms.
17416
17417 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
17418
17419         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
17420         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
17421         unwanted sign propagation, e.g., on hosts with 64-bit int.
17422         There still are some problems with reeelly weird theoretical hosts
17423         (e.g., 33-bit int) but it's not worth worrying about now.
17424         * lib/sha1.c (rol): Likewise.
17425         (K1, K2, K3, K4): Remove unnecessary L suffix.
17426
17427 2006-05-10  Bruno Haible  <bruno@clisp.org>
17428
17429         * lib/des.c: Cast to avoid warnings.
17430
17431 2006-05-09  Bruno Haible  <bruno@clisp.org>
17432
17433         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
17434         (Depends-on): Depend also on xsize, stdarg.
17435         (configure.ac): Add gl_XVASPRINTF.
17436
17437 2006-05-09  Bruno Haible  <bruno@clisp.org>
17438
17439         * m4/xvasprintf.m4: New file.
17440
17441 2006-05-09  Bruno Haible  <bruno@clisp.org>
17442
17443         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
17444         (EOVERFLOW): Define fallback value.
17445         (xstrcat): New function.
17446         (xvasprintf): Recognize the special case of a string concatenation.
17447
17448 2006-05-08  Eric Blake  <ebb9@byu.net>
17449
17450         * gnulib-tool (func_version): Base copyright year on CVS date.
17451         (func_emit_copyright_notice): New function.
17452         (func_emit_lib_Makefile_am): Use it.
17453         (func_emit_tests_Makefile_am): Likewise.
17454         (func_import): Likewise.
17455
17456 2006-05-08  Bruno Haible  <bruno@clisp.org>
17457
17458         * modules/stdarg: New file.
17459         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
17460
17461 2006-05-08  Bruno Haible  <bruno@clisp.org>
17462
17463         * m4/stdarg.m4: New file, from GNU gettext.
17464
17465 2006-05-08  Bruno Haible  <bruno@clisp.org>
17466
17467         * config/srclist.txt (build-aux/config.rpath): different from latest
17468         release.
17469
17470 2006-05-08  Bruno Haible  <bruno@clisp.org>
17471
17472         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
17473
17474 2006-05-05  Jim Meyering  <jim@meyering.net>
17475
17476         * m4/warning.m4: New file, derived from bison's file by the same name.
17477
17478 2006-05-03  Bruno Haible  <bruno@clisp.org>
17479
17480         * lib/stdint_.h: Shorter URL.
17481         * lib/inttypes.h: Likewise.
17482
17483 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17484
17485         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
17486
17487 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17488
17489         * lib/verify.h: Document the internals better.  Most of this change
17490         was written by Bruno Haible.
17491
17492 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17493
17494         * doc/verify.texi: New file, partly based on a proposal by
17495         Bruno Haible.
17496
17497 2006-05-02  Bruno Haible  <bruno@clisp.org>
17498
17499         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
17500         test from here...
17501         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
17502
17503 2006-04-29  Bruno Haible  <bruno@clisp.org>
17504
17505         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
17506         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
17507
17508 2006-04-29  Bruno Haible  <bruno@clisp.org>
17509
17510         * gnulib-tool: Make --update option actually work.
17511
17512 2006-04-29  Bruno Haible  <bruno@clisp.org>
17513
17514         * doc/gcd.texi: New file.
17515         * doc/gnulib.texi: Include it.
17516
17517 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
17518
17519         * lib/getdate.y (get_date): When adding relative date, start with the
17520         initial time, not with the result of the first mktime call.
17521
17522 2006-04-25  Bruno Haible  <bruno@clisp.org>
17523
17524         * gnulib-tool (func_import): Output the include directives in three
17525         blocks, sorted separately.
17526         Reported by Ben Pfaff <blp@cs.stanford.edu>.
17527
17528 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
17529
17530         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
17531         to define main with arguments, for C++.  Reported by Eric Blake.
17532         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
17533         Prefer 'int main ()' to 'int main (void)', for C++.
17534         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
17535         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
17536         for 'main', for C99 and C++.
17537
17538 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
17539
17540         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
17541         Don't assume that exit status -1 is valid.
17542         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17543         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
17544         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
17545         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
17546         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
17547         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
17548         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
17549         functions can be used without declaring them, or that you can
17550         exit with status -1.
17551         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
17552
17553 2006-04-24  Karl Berry  <karl@gnu.org>
17554
17555         * config/srclist.txt (longdouble.m4): sync lost.
17556
17557 2006-04-24  Eric Blake  <ebb9@byu.net>
17558
17559         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
17560
17561 2006-04-24  Bruno Haible  <bruno@clisp.org>
17562
17563         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
17564         poll() implementation in AIX.
17565         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17566
17567 2006-04-24  Bruno Haible  <bruno@clisp.org>
17568
17569         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
17570         assigned exactly once.
17571
17572 2006-04-23  Claudio Fontana  <claudio@gnu.org>
17573             Bruno Haible  <bruno@clisp.org>
17574
17575         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
17576         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
17577         for AM_CPPFLAGS.
17578
17579 2006-04-23  Bruno Haible  <bruno@clisp.org>
17580
17581         * modules/copy-file: Depend on unistd.
17582         * modules/execute: Likewise.
17583         * modules/fatal-signal: Likewise.
17584         * modules/findprog: Likewise.
17585         * modules/mkdtemp : Likewise.
17586         * modules/pipe: Likewise.
17587         * modules/wait-process: Likewise.
17588
17589 2006-04-23  Bruno Haible  <bruno@clisp.org>
17590
17591         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
17592         condition was already detected.
17593         Reported by Ben Pfaff <blp@cs.stanford.edu>.
17594
17595 2006-04-23  Bruno Haible  <bruno@clisp.org>
17596
17597         * lib/copy-file.c: Include <unistd.h> unconditionally.
17598         * lib/execute.c: Likewise.
17599         * lib/fatal-signal.c: Likewise.
17600         * lib/findprog.c: Likewise.
17601         * lib/mkdtemp.c: Likewise.
17602         * lib/pipe.h: Likewise.
17603         * lib/pipe.c: Likewise.
17604         * lib/wait-process.h: Likewise.
17605
17606 2006-04-23  Bruno Haible  <bruno@clisp.org>
17607
17608         * gnulib-tool (func_usage): Fix --import description. Document
17609         --update.
17610         (func_import): Create temporary file in a temporary directory, if
17611         --dry-run is specified. Silence errors from 'grep' when there are no
17612         m4 files in $m4dir.
17613         (func_create_testdir): Silence errors from 'grep' when there are no
17614         m4 files in $m4dir.
17615         Reported by Karl Berry <karl@freefriends.org>.
17616
17617 2006-04-20  Bruno Haible  <bruno@clisp.org>
17618
17619         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
17620         one argument, so that the code will be portable to Autoconf 2.60.
17621         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
17622         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
17623         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
17624
17625 2006-04-19  Derek Price  <derek@ximbiot.com>
17626             Eric Blake  <ebb9@byu.net>
17627
17628         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
17629         rather than "/full/path.h".  Update comment to match.  Shorten &
17630         generalize m4_translit call via AS_TR_CPP.
17631
17632 2006-04-19  Derek Price  <derek@ximbiot.com>
17633             Eric Blake  <ebb9@byu.net>
17634
17635         * lib/inttypes.h: Correct grammar in comment.
17636
17637 2006-04-18  Derek Price  <derek@ximbiot.com>
17638             Paul Eggert  <eggert@cs.ucla.edu>
17639
17640         * modules/inttypes: New file.
17641         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
17642
17643 2006-04-18  Derek Price  <derek@ximbiot.com>
17644             Paul Eggert  <eggert@cs.ucla.edu>
17645
17646         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
17647         New files.
17648
17649 2006-04-18  Derek Price  <derek@ximbiot.com>
17650             Paul Eggert  <eggert@cs.ucla.edu>
17651
17652         * lib/inttypes.h: New file.
17653         * lib/strtoimax.c: Assume <inttypes.h>.
17654
17655 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
17656
17657         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
17658         isn't mounted.  Problem reported by Kir Kolyshkin.
17659
17660 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
17661
17662         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
17663         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
17664         Derek R. Price.
17665         * lib/regex.h (RE_DUP_MAX): Update comment to match current
17666         implementation.
17667
17668 2006-04-12  Eric Blake  <ebb9@byu.net>
17669
17670         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
17671         is now done automatically by the corresponding Autoconf macro.
17672
17673 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17674
17675         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
17676         time_r.h.
17677
17678 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17679
17680         Merge regex changes from libc, removing some of our
17681         POSIX-conformance changes that were rejected and redoing them in a
17682         less-intrusive way.
17683
17684         * lib/regcomp.c (re_compile_internal, init_dfa):
17685         Length arg is now size_t, not Idx.  All uses changed.
17686         (peek_token): Forward decl now says internal_function.
17687         (__re_error_msgid, __re_error_msgid_idx):
17688         Now static rather than extern with attribute_hidden.
17689         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
17690         For some reason libc prefers K&R style defns for external functions.
17691         (regerror) [!defined _LIBC]: Likewise.
17692         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
17693         (seek_collating_symbol_entry, lookup_collation_sequence_value):
17694         (build_range_exp, build_collating_symbol):
17695         Use K&R-style defn.
17696         (re_compile_fastmap): Use '\0' to memset, not 0.
17697         (utf8_sb_map): Make the calculations more obvious.
17698         (init_dfa, parse_bracket_exp, build_charclass_op):
17699         Call calloc and cast result, as glibc does.
17700         (init_word_char, fetch_token, peek_token, peek_token_bracket):
17701         (build_range_exp, build_collating_symbol):
17702         Now internal functions.
17703
17704         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
17705
17706         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
17707         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
17708         Don't depend on VMS; depend on __VMS instead, for POSIX
17709         namespace cleanness.
17710         (regoff_t): Define to ssize_t, not long int.
17711
17712         Remove the REG_ macros named below.  Instead, make the old names
17713         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
17714         __USE_GNU_REGEX.
17715         (REG_BACKSLASH_ESCAPE_IN_LISTS):
17716         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
17717         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
17718         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
17719         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
17720         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
17721         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
17722         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
17723         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
17724         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
17725         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
17726         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
17727         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
17728         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
17729         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
17730         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
17731         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
17732         (REG_NREGS):
17733         Remove.  All uses replaced by the old RE_* names.
17734         (RE_BACKSLASH_ESCAPE_IN_LISTS):
17735         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
17736         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
17737         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
17738         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
17739         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
17740         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
17741         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
17742         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
17743         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
17744         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
17745         Don't bother having these macros be independent of each others'
17746         values, since they no longer exist in the POSIX name space.
17747
17748         Rename the following member names back to their old names,
17749         unless !__USE_GNU_REGEX.  All uses changed back.
17750         (buffer): Renamed from re_buffer.
17751         (allocated): Renamed from re_allocated.
17752         (used): Renamed from re_used.
17753         (syntax): Renamed from re_syntax.
17754         (fastmap): Renamed from re_fastmap.
17755         (translate): Renamed from re_translate.
17756         (can_be_null): Renamed from re_can_be_null.
17757         (regs_allocated): Renamed from re_regs_allocated.
17758         (fastmap_accurate): Renamed from re_fastmap_accurate.
17759         (no_sub): Renamed from re_no_sub.
17760         (not_bol): Renamed from re_not_bol.
17761         (not_eol): Renamed from re_not_eol.
17762         (newline_anchor): Renamed from re_newline_anchor.
17763         (num_regs): Renamed from rm_num_regs.
17764         (start): Renamed from rm_start.
17765         (end): Renamed from rm_end.
17766
17767         (free_state): Move up a bit.
17768
17769         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
17770         #define to be empty.
17771         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
17772         when that is what is intended.
17773         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
17774         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
17775         (MAX): New macro.
17776         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
17777         All uses changed back to re_malloc, etc.  It's now the caller's
17778         responsibility to check for overflow; all callers changed.
17779         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
17780         (re_x2nrealloc): Remove.
17781         (free_state): Remove decl.
17782
17783         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
17784         (re_set_registers, re_exec):
17785         Use K&R-style defn.
17786
17787         2006-01-31  Roland McGrath  <roland@redhat.com>
17788
17789         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
17790         Reported by Mike Frysinger <vapier@gentoo.org>.
17791
17792         2006-01-15  Andreas Jaeger  <aj@suse.de>
17793
17794         [BZ #1950]
17795         * lib/regex_internal.c (re_string_reconstruct): Adjust for
17796         build_wcs_upper_buffer change.
17797         (build_wcs_upper_buffer): Change return type.
17798
17799         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
17800
17801         * lib/regex_internal.h: Include <stdint.h> if available.
17802
17803         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
17804
17805         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
17806
17807         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
17808
17809         * lib/regcomp.c: Adjust for changed secondary hash function.
17810
17811         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
17812
17813         * lib/regex.h: Pretty printing.
17814         Clean up namespace a bit.
17815
17816         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
17817
17818         * lib/regexec.c (update_cur_sifted_state, check_arrival,
17819         check_arrival_add_next_nodes): Avoid using uninitialized variable.
17820
17821         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
17822                     Ulrich Drepper  <drepper@redhat.com>
17823
17824         [BZ #1302]
17825         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
17826         changed.
17827         (bitset_word_t): Renamed from bitset_word.  All uses changed.
17828
17829         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
17830
17831         [BZ #281]
17832         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
17833         * lib/regcomp.c: Remove unnecessary uses of
17834         unsigned RE_TRANSLATE_TYPE.
17835         * lib/regex_internal.h: Likewise.
17836         * lib/regex_internal.c: Likewise.
17837         * lib/regexec.c: Likewise.
17838         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
17839
17840         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
17841
17842         * lib/regexec.c (find_recover_state): Remove unnecessary
17843         initialization.
17844         (transit_state_bkref): Make DFA a const pointer.
17845         (get_subexp): Likewise.
17846         (check_arrival): Likewise.
17847         (update_cur_sifted_state): Likewise.
17848         (re_search_internal): Likewise.
17849         (prune_impossible_nodes): Likewise.
17850         (acquire_init_state_context): Likewise.
17851         (proceed_next_node): Likewise.
17852         (set_regs): Likewise.
17853         (free_fail_stack_return): Likewise.
17854         (check_arrival_expand_ecl): Mark DFA parameter as const.
17855         (check_arrival_expand_ecl_sub): Likewise.
17856         (check_subexp_limits): Likewise.
17857         (sub_epsilon_src_nodes):  Likewise.
17858         (add_epsilon_src_nodes):  Likewise.
17859         (merge_state_array): Likewise.
17860         (update_regs): Likewise.
17861         (build_trtable): Likewise.
17862         (sift_states_backward): Mark MCTX parameter as const.
17863         (build_sifted_states): Likewise.
17864         (update_cur_sifted_state): Likewise.
17865         (sift_states_mkref): Likewise.
17866         (check_arrival_expand_ecl): Mark eclosure as const.
17867         (check_dst_limits_calc_pos_1): Likewise.
17868         * lib/regex_internal.h (re_match_context_t): Make dfa a const
17869         pointer.
17870
17871         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
17872
17873         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
17874         (transit_state_sb): Likewise.
17875         (transit_state_mb): Likewise.
17876         (sift_states_iter_mb): Likewise.
17877         (check_arrival_add_next_nodes): Likewise.
17878         (check_node_accept_bytes): Change first parameter to pointer-to-const.
17879         [_LIBC] (re_search_2_stub): Use mempcpy.
17880
17881         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
17882         mbrtowc for very simple UTF-8 case.
17883
17884         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
17885         a pointer-to-const.
17886         (re_acquire_state_context): Likewise.
17887         * lib/regex_internal.h: Adjust prototypes.
17888
17889         * lib/regex.c: Prevent using C++ compilers.
17890
17891         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
17892         (re_acquire_state_context): Likewise.
17893
17894 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17895
17896         * modules/regex (Depends-on): Add ssize_t.
17897
17898 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17899
17900         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
17901         translation table.
17902
17903 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17904
17905         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
17906
17907 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
17908             Bruno Haible  <bruno@clisp.org>
17909
17910         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
17911         <sys/types.h> and <inttypes.h>.
17912
17913 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17914
17915         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
17916         `__error_t_defined', so argp.h will not typedef the former.
17917
17918 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
17919
17920         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
17921         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
17922         glibc names.  Even if glibc is changed to conform to POSIX, the
17923         traditional names will be available anyway, since regex depends on
17924         the extensions module.  Also, fix a longstanding typo in the
17925         implementation of Spencer ERE test #75 from grep 2.3.  Problems
17926         reported by Emanuele Giaquinta.  Also, change sense of cached
17927         variable, so that the message makes sense.
17928
17929 2006-03-24  Simon Josefsson  <jas@extundo.com>
17930
17931         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
17932         including some doc fixes.
17933         (base64_encode_alloc): Fix +1 bug on allocation failures.
17934
17935 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17936
17937         * lib/base64.c (base64_encode): Do not read past end of array with
17938         unsanitized input on systems with CHAR_BIT > 8.
17939
17940 2006-03-24  Eric Blake  <ebb9@byu.net>
17941
17942         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
17943
17944 2006-03-22  Karl Berry  <karl@gnu.org>
17945
17946         * config/srclist.txt (*setenv.[ch]): get from coreutils.
17947         * config/srclistvars.sh (COREUTILS): new var.
17948
17949 2006-03-17  Jim Meyering  <jim@meyering.net>
17950
17951         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
17952         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
17953
17954 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17955
17956         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
17957         no longer needs it.  Instead, check that regoff_t is as least
17958         as wide as ptrdiff_t.
17959
17960         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
17961         so that our regex.h stays compatible with the installed regex.
17962         This is helpful for installers who configure --without-included-regex.
17963         Problem reported by Emanuele Giaquinta.
17964
17965 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17966
17967         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
17968         Typedef to long int, not to off_, as POSIX will likely change
17969         in that direction.
17970
17971 2006-03-15  Eric Blake  <ebb9@byu.net>
17972
17973         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
17974
17975 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17976
17977         * lib/argp-help.c (validate_uparams): Fix typo
17978         * lib/argp-parse.c (argp_default_options): Consistently begin help
17979         messages with a lowercase letter.
17980
17981 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
17982
17983         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
17984         overrun buffers and shouldn't be used (much as gets shouldn't be
17985         used).
17986         * lib/time_r.c (asctime_r, ctime_r): Likewise.
17987
17988 2006-03-08  Simon Josefsson  <jas@extundo.com>
17989
17990         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
17991         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17992
17993 2006-03-08  Simon Josefsson  <jas@extundo.com>
17994
17995         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
17996         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17997
17998 2006-03-08  Simon Josefsson  <jas@extundo.com>
17999
18000         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
18001         signal that configure disabled the device.
18002
18003 2006-03-08  Simon Josefsson  <jas@extundo.com>
18004
18005         * build-aux/maint.mk: Fix refresh-po, to handle no translated
18006         languages.
18007
18008 2006-03-07  Simon Josefsson  <jas@extundo.com>
18009
18010         * modules/getopt (Depends-on): Add unistd.
18011
18012         * modules/unistd: New file.
18013
18014 2006-03-07  Simon Josefsson  <jas@extundo.com>
18015
18016         * modules/gc-random: New file.
18017
18018 2006-03-07  Simon Josefsson  <jas@extundo.com>
18019
18020         * m4/unistd_h.m4: New file.
18021
18022 2006-03-07  Simon Josefsson  <jas@extundo.com>
18023
18024         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
18025         test to be side-effect free by storing the result in the cache
18026         variable gl_cv_lib_readline, and moving the assignment of
18027         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
18028         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18029
18030 2006-03-07  Simon Josefsson  <jas@extundo.com>
18031
18032         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
18033         error on missing devices (the functions will return an error).
18034
18035         * m4/gc.m4: Move random stuff to gc-random.m4
18036
18037 2006-03-07  Simon Josefsson  <jas@extundo.com>
18038
18039         * lib/unistd_.h: New file.
18040
18041 2006-03-07  Simon Josefsson  <jas@extundo.com>
18042
18043         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
18044
18045 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
18046
18047         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
18048         Problem reported by Juan Manuel Guerrero.
18049
18050 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
18051
18052         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
18053         the unistd module.
18054         * lib/getlogin_r.c: Likewise.
18055         * lib/getlogin_r.h: Likewise.
18056         * lib/glob.c: Likewise.
18057         * lib/pagealign_alloc.c: Likewise.
18058         * lib/unistd_.h: Remove; no longer needed.
18059
18060 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
18061
18062         * MODULES.html.sh (Support for systems lacking POSIX:2001):
18063         Add unistd.
18064         * modules/c-stack (Depends-on): Add unistd.
18065         * modules/getlogin_r: Likewise.
18066         * modules/glob: Likewise.
18067         * modules/pagealign_alloc: Likewise.
18068         * modules/unistd (Files): Remove lib/unistd_.h.
18069         (EXTRA_DIST): Remove.
18070         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
18071         need unistd_.h.
18072         (MOSTLYCLEANFILES): Remove unistd.h-t.
18073
18074 2006-03-03  Simon Josefsson  <jas@extundo.com>
18075
18076         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
18077
18078 2006-03-03  Simon Josefsson  <jas@extundo.com>
18079
18080         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
18081         libidn and bison.
18082
18083 2006-03-03  Simon Josefsson  <jas@extundo.com>
18084
18085         * build-aux/maint.mk: Add indent target.
18086
18087 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
18088
18089         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
18090         our replacement poll.h in any case, to avoid a differing
18091         declaration from a system header.  Seen on AIX.
18092
18093 2006-03-01  Simon Josefsson  <jas@extundo.com>
18094
18095         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
18096         <kasal@ucw.cz>.
18097
18098 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
18099
18100         * modules/gettime (Depends-on): Add extensions module.
18101         * modules/nanosleep (Depends-on): Likewise.
18102         * modules/settime (Depends-on): Likewise.
18103
18104 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
18105
18106         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
18107         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
18108         pedantically.
18109         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
18110         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
18111
18112         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
18113         not "==".  Reported by Ralf Wildenhues.
18114
18115 2006-03-01  Karl Berry  <karl@gnu.org>
18116
18117         * doc/Copyright/request-*: new files, synced from gnuorg.
18118
18119 2006-03-01  Karl Berry  <karl@gnu.org>
18120
18121         * config/srclist.txt (Copyright/*): new entries.
18122
18123 2006-02-28  Simon Josefsson  <jas@extundo.com>
18124
18125         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
18126
18127 2006-02-27  Simon Josefsson  <jas@extundo.com>
18128
18129         * lib/base64.h: Indent #define's.  From Jim Meyering
18130         <jim@meyering.net>.
18131
18132 2006-02-27  Jim Meyering  <jim@meyering.net>
18133
18134         Revert the change of 2006-02-24, so these files can continue
18135         to be sync'd from gettext.
18136         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
18137         of `config.h'.
18138
18139 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
18140
18141         * modules/intprops: New file.
18142         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
18143         Add intprops.
18144         * modules/getloadavg (Files): Remove lib/intprops.h.
18145         (Depends-on): Add intprops.
18146         * modules/human: Likewise.
18147         * modules/inttostr: Likewise.
18148         * modules/openat: Likewise.
18149         * modules/sig2str: Likewise.
18150         * modules/userspec: Likewise.
18151         * modules/utimecmp: Likewise.
18152         * modules/xnanosleep: Likewise.
18153         * modules/xstrtol: Likewise.
18154
18155 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
18156
18157         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
18158         * modules/lock-tests (TESTS): Use $(EXEEXT).
18159         * modules/tls-tests: Likewise.
18160         * modules/argp-tests: Likewise.
18161         (check_PROGRAMS): New var, replacing...
18162         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
18163
18164 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18165
18166         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
18167         `config.h'.
18168
18169 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
18170
18171         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
18172
18173 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18174
18175         Sync from coreutils.
18176         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
18177         gl_CHDIR_SAFER.
18178
18179 2006-02-22  Jim Meyering  <jim@meyering.net>
18180
18181         Sync from coreutils.
18182         * m4/chdir-safer.m4: New file.
18183
18184 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
18185
18186         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
18187         AT_FDCWD exceeds INT_MAX.
18188         * lib/openat.h (AT_FDCWD): Likewise.
18189
18190 2006-02-17  Eric Blake  <address@hidden>
18191
18192         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
18193
18194 2006-02-16  Simon Josefsson  <jas@extundo.com>
18195
18196         * modules/getaddrinfo (Depends-on): Add sys_socket.
18197
18198 2006-02-15  Simon Josefsson  <jas@extundo.com>
18199
18200         * build-aux/maint.mk: Add dsyntax-check rule.
18201
18202 2006-02-15  Eric Blake  <ebb9@byu.net>
18203
18204         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
18205         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
18206         'present but cannot compile' warnings on cygwin.
18207         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
18208         use ws2tcpip.h if sys/socket.h works.
18209         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
18210         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
18211
18212 2006-02-14  Simon Josefsson  <jas@extundo.com>
18213
18214         * modules/maintainer-makefile (Files): Rename.
18215
18216         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
18217         and (the local) Makefile.cfg to maint-cfg.mk.
18218
18219         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
18220         to the latter.
18221
18222         * modules/maintainer-makefile: New module.
18223
18224         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
18225         severaly stripped to make it possible to build it up from scratch
18226         with reliable tests.
18227
18228         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
18229         fixes to permit overriding the default actions when configure and
18230         makefile are not available.
18231
18232 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
18233
18234         Sync from coreutils.
18235         * modules/lstat (Depends-on): Don't depend on xalloc.
18236         (License): Change from GPL to LGPL, since this is now simply a
18237         replacement for a libc function.
18238
18239 2006-02-14  Jim Meyering  <jim@meyering.net>
18240
18241         Sync from coreutils.
18242
18243         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
18244         failure on deficient systems, and simplify gnulib lgpl dependencies.
18245         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
18246         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
18247
18248         * lib/xalloc-die.c: Remove unused definition of N_.
18249
18250 2006-02-14  Jim Meyering  <jim@meyering.net>
18251
18252         Sync from coreutils.
18253         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
18254         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
18255         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
18256         double-quote uses of that variable, to accommodate the rare case in
18257         which getmntent is available in none of the libraries checked.  This
18258         happens at least on FreeBSD 5.0.
18259
18260 2006-02-13  Simon Josefsson  <jas@extundo.com>
18261
18262         * gnulib-tool (Usage): Fix --import, from
18263         karl@freefriends.org (Karl Berry).
18264
18265 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
18266
18267         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
18268
18269 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
18270
18271         * lib/argp-namefrob.h: Restore changes accidentally lost during the
18272         "autoupdate" on 2005-12-12.
18273
18274 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
18275
18276         * modules/closeout (Depends-on): Remove atexit.
18277
18278 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
18279
18280         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
18281         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
18282
18283 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18284
18285         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
18286         __EXTENSIONS__ if this causes compilation to fail.  Problem
18287         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
18288         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
18289
18290 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
18291
18292         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
18293         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
18294         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
18295         All uses changed.
18296
18297 2006-01-26  Simon Josefsson  <jas@extundo.com>
18298
18299         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
18300         prototype is visible on mingw32.
18301
18302         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
18303         for mingw32.
18304
18305         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
18306         mingw32).
18307
18308 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
18309
18310         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
18311         attempt to open for write; this always fails, at least on POSIX
18312         hosts.  This reinstates the 2006-01-09 change, which was
18313         inadvertently removed.
18314
18315 2006-01-26  Bruno Haible  <bruno@clisp.org>
18316
18317         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
18318         Reported by Paul Eggert.
18319
18320 2006-01-26  Bruno Haible  <bruno@clisp.org>
18321             Paul Eggert  <eggert@cs.ucla.edu>
18322
18323         * lib/stdbool_.h (_Bool)
18324         [(! (defined __cplusplus || defined __BEOS__)
18325           && !defined __GNUC__
18326           && !(defined __HP_cc || defined __xlc__
18327                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
18328                || defined __sgi))]:
18329         #define to signed char in these cases too; this simplifies
18330         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
18331         etc., separately) and makes it more conservative.
18332
18333 2006-01-25  Simon Josefsson  <jas@extundo.com>
18334
18335         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
18336         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
18337         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
18338
18339 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
18340
18341         * lib/argp-namefrob.h: Bugfix. Remove stray #
18342
18343 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
18344
18345         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
18346         so that we test the test.
18347         Check for yet another HP-UX cc bug involving *bool |= bool.
18348
18349 2006-01-25  Karl Berry  <karl@gnu.org>
18350
18351         * config/srclist.txt (vasnprintf.c): sync lost.
18352
18353 2006-01-25  Jim Meyering  <jim@meyering.net>
18354
18355         Sync from the stable (b5) branch of coreutils:
18356
18357         * lib/fts.c (fts_children): Don't let close() clobber errno from
18358         failed fchdir().
18359
18360         * lib/fts.c (fts_stat): When following a symlink-to-directory,
18361         don't necessarily interpret stat-fails+lstat-succeeds as indicating
18362         a dangling symlink.  That can also happen at least for ELOOP.
18363         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
18364         FYI, this bug predates the inclusion of fts.c in coreutils.
18365
18366         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
18367         in their own block, so pre-c99 compilers don't object.
18368
18369         Avoid the double-free (first in fts_read, second in fts_close) that
18370         would occur when an `active' directory is made inaccessible (e.g.,
18371         via chmod a-x) during a traversal.
18372         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
18373         before returning.  Reproduce this failure by
18374         mkdir -p a/b; cd a; chmod a-x . b
18375         Reported by Stavros Passas.
18376
18377 2006-01-25  Jim Meyering  <jim@meyering.net>
18378
18379         * lib/fileblocks.c: Remove more useless parentheses.
18380         * lib/readutmp.h: Likewise.
18381
18382 2006-01-25  Bruno Haible  <bruno@clisp.org>
18383
18384         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
18385         warnings.
18386         Reported by Paul Eggert.
18387
18388 2006-01-25  Bruno Haible  <bruno@clisp.org>
18389
18390         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
18391         rid of a trap command. For Solaris sh.
18392         Reported by Mark D. Baushke <mdb@gnu.org>.
18393
18394 2006-01-24  Simon Josefsson  <jas@extundo.com>
18395
18396         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
18397         Bruno.
18398
18399 2006-01-24  Karl Berry  <karl@gnu.org>
18400
18401         * config/srclist.txt (argp-namefrob.h): sync lost.
18402
18403 2006-01-24  Jim Meyering  <jim@meyering.net>
18404
18405         * modules/openat (Files): Add lib/intprops.h.
18406         From Mark D. Baushke.
18407
18408 2006-01-24  Jim Meyering  <jim@meyering.net>
18409
18410         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
18411         Reported by Mark D. Baushke.
18412
18413 2006-01-24  Jim Meyering  <jim@meyering.net>
18414
18415         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
18416
18417 2006-01-24  Bruno Haible  <bruno@clisp.org>
18418
18419         * modules/strnlen (Maintainer): Change from glibc to all.
18420
18421 2006-01-24  Bruno Haible  <bruno@clisp.org>
18422
18423         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
18424         Patch by Paul Eggert.
18425
18426 2006-01-24  Bruno Haible  <bruno@clisp.org>
18427
18428         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
18429         already has it.
18430         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
18431         2005-11-26.
18432
18433         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
18434         'signed char' to avoid problems with the built-in _Bool type.
18435         Reported by Paul Eggert on 2005-11-26.
18436
18437 2006-01-24  Bruno Haible  <bruno@clisp.org>
18438
18439         * gnulib-tool (func_import): Avoid constructing complicated sed
18440         expressions inside backquote.
18441         Report and solution by Mark D. Baushke <mdb@gnu.org>.
18442
18443 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
18444
18445         These changes imported from libc.
18446         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
18447         test and two separate function calls.
18448         * lib/strndup.c (__strndup): Add libc_hidden_def.
18449
18450 2006-01-23  Simon Josefsson  <jas@extundo.com>
18451
18452         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
18453         Remove the test_*_SOURCES variable: automake infers it by default.
18454         * modules/tls-tests: Likewise.
18455
18456 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
18457
18458         Work around porting bugs reported by Dieter in
18459         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
18460         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
18461         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
18462         Include "getopt.h" first, to check interface.
18463         (getenv): Declare only if defined HAVE_DECL_GETENV &&
18464         !HAVE_DECL_GETENV.
18465         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
18466         (__strndup): Revert to K&R-style function dfns, the glibc style.
18467         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
18468         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
18469         Include strnlen.h first, to get prototype properly.
18470         (strnlen): Renamed from __strnlen.
18471         Remove weak alias.
18472
18473 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
18474
18475         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
18476
18477 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
18478
18479         * config/srclist.txt: Adjust to reflect glibc reorganization.
18480         This affects only comments.
18481
18482 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
18483
18484          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
18485          Reported by Bruce Korb <bkorb@gnu.org>.
18486
18487 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
18488
18489         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
18490         to pacify gcc -Wswitch-default.
18491
18492 2006-01-22  Bruno Haible  <bruno@clisp.org>
18493
18494         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
18495         temporary buffer for sprintf, take into account the precision also
18496         for 'd', 'i', 'u', 'o', 'x', 'X'.
18497
18498 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
18499
18500         * modules/argp-tests: New module
18501         * tests/test-argp.c: New file
18502         * tests/test-argp-2.sh: New file
18503
18504 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
18505
18506         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
18507         (__argp_base_name): Removed
18508         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
18509         typo.
18510         (__argp_base_name): Provide macro definition or extern declaration
18511         depending on the configuration
18512
18513 2006-01-20  Simon Josefsson  <jas@extundo.com>
18514
18515         * modules/inet_ntop (Depends-on): Depend on sys_socket.
18516
18517 2006-01-20  Simon Josefsson  <jas@extundo.com>
18518
18519         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
18520
18521 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
18522
18523         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
18524         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
18525         Suggested by Bruno Haible.
18526
18527 2006-01-20  Karl Berry  <karl@gnu.org>
18528
18529         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
18530         until changes propagate, I guess.
18531
18532 2006-01-19  Simon Josefsson  <jas@extundo.com>
18533
18534         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
18535
18536 2006-01-19  Simon Josefsson  <jas@extundo.com>
18537
18538         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
18539
18540 2006-01-19  Simon Josefsson  <jas@extundo.com>
18541
18542         * gnulib-tool: Set check_PROGRAMS.
18543
18544         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
18545         modules/des-tests, modules/gc-arcfour-tests,
18546         modules/gc-arctwo-tests, modules/gc-des-tests,
18547         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
18548         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
18549         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
18550         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
18551         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
18552         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
18553         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
18554         test_*_SOURCES.
18555
18556 2006-01-18  Simon Josefsson  <jas@extundo.com>
18557
18558         * modules/socklen (Depends-on): Depend on sys_socket.
18559
18560 2006-01-18  Simon Josefsson  <jas@extundo.com>
18561
18562         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
18563         modules/des-tests, modules/gc-arcfour-tests,
18564         modules/gc-arctwo-tests, modules/gc-des-tests,
18565         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
18566         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
18567         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
18568         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
18569         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
18570         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
18571         $(EXEEXT) to automake TESTS variable, for mingw32.
18572
18573 2006-01-17  Simon Josefsson  <jas@extundo.com>
18574
18575         * modules/socklen (Include): Need sys/socket.h.
18576
18577 2006-01-17  Bruno Haible  <bruno@clisp.org>
18578
18579         * modules/ssize_t (Include): Add <sys/types.h>.
18580
18581 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
18582
18583         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
18584         it's not portable and it doesn't work with cross-compiles.
18585         Problem reported by Bruno Haible.  Fix missing-$ typo in
18586         'test "gl_cv_ignore_unused_libraries" ...' that prevented
18587         -zignore from being used with Sun's C compiler.
18588
18589 2006-01-12  Simon Josefsson  <jas@extundo.com>
18590
18591         * lib/base64.c: Fix warning, reported by Bruno Haible
18592         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
18593
18594 2006-01-12  Bruno Haible  <bruno@clisp.org>
18595
18596         * modules/ldd: New file.
18597         * build-aux/ldd.sh.in: New file.
18598         * MODULES.html.sh (Support for building libraries and executables): Add
18599         ldd.
18600
18601 2006-01-12  Bruno Haible  <bruno@clisp.org>
18602
18603         * m4/ldd.m4: New file.
18604
18605 2006-01-12  Bruno Haible  <bruno@clisp.org>
18606
18607         * gnulib-tool (func_import, func_create_testdir): Don't go into an
18608         endless loop while replacing $auxdir with build-aux.
18609
18610 2006-01-11  Simon Josefsson  <jas@extundo.com>
18611
18612         * lib/stdint_.h (SIZE_MAX): Add missing (.
18613
18614 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
18615
18616         Sync from coreutils.
18617         * lib/md5.c: Fix commentary typos.
18618         (alignof, UNALIGNED_P): No need for a GCC-specific version.
18619         * lib/md5.h (__attribute__): Remove; unused.
18620         * lib/sha1.c: Fix commentary to match md5 better.
18621         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
18622         so that we don't need to worry about alignment.  All uses changed.
18623         This merges the 2005-10-28 md5 change into sha1.
18624
18625 2006-01-11  Jim Meyering  <jim@meyering.net>
18626
18627         Sync from coreutils.
18628         * lib/md5.c (OP): Fix spacing.
18629
18630 2006-01-11  Bruno Haible  <bruno@clisp.org>
18631
18632         Ensure automatic ordering between gl_LOCK and gl_ARGP.
18633         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
18634         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
18635
18636 2006-01-11  Bruno Haible  <bruno@clisp.org>
18637
18638         Ensure automatic ordering between gl_LOCK and gl_ARGP.
18639         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
18640         the "early" section as well.
18641
18642 2006-01-11  Bruno Haible  <bruno@clisp.org>
18643
18644         Avoid "ar: no archive members specified" error on MacOS X.
18645         * gnulib-tool (func_modules_add_dummy): New function.
18646         (func_import, func_create_testdir): Invoke it.
18647
18648 2006-01-11  Bruno Haible  <bruno@clisp.org>
18649
18650         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
18651         with $auxdir in AC_CONFIG_FILES statements.
18652
18653 2006-01-11  Bruno Haible  <bruno@clisp.org>
18654
18655         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18656         Initialize also noinst_HEADERS to empty.
18657
18658 2006-01-11  Bruno Haible  <bruno@clisp.org>
18659
18660         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
18661         variables.
18662         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
18663         autoreconf.
18664
18665 2006-01-11  Bruno Haible  <bruno@clisp.org>
18666
18667         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
18668         overridable by the user.
18669         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18670
18671 2006-01-10  Simon Josefsson  <jas@extundo.com>
18672
18673         * modules/sys_socket: New file.
18674
18675 2006-01-10  Simon Josefsson  <jas@extundo.com>
18676
18677         * m4/sys_socket_h.m4: New file.
18678
18679 2006-01-10  Simon Josefsson  <jas@extundo.com>
18680
18681         * lib/socket_.h: New file.
18682
18683 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18684
18685         * modules/readutmp (Maintainer): Add myself.
18686
18687 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18688
18689         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
18690         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
18691         People who are still concerned with buggy memcmp implementations
18692         can invoke gl_FUNC_MEMCMP themselves.
18693
18694 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18695
18696         * lib/regex_internal.h (BITSET_WORD_BITS):
18697         Work around a bug in 64-bit PGC (before version 6.1-2), where the
18698         preprocessor mishandles large unsigned values as if they were signed.
18699         Problem reported by Claudio Fontana in
18700         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
18701
18702 2006-01-10  Jim Meyering  <jim@meyering.net>
18703
18704         Avoid the double-free (first in fts_read, second in fts_close) that
18705         would occur when an `active' directory is made inaccessible (e.g.,
18706         via chmod a-x) during a traversal.
18707         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
18708         before returning.  Reproduce this failure by
18709         mkdir -p a/b; cd a; chmod a-x . b
18710         Reported by Stavros Passas.
18711
18712         Sync from coreutils.
18713         * lib/sha1.c: Tweak grammar in a comment.
18714
18715 2006-01-10  Jim Meyering  <jim@meyering.net>
18716
18717         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
18718         Patch by Joerg Sonnenberger.
18719
18720 2006-01-10  Bruno Haible  <bruno@clisp.org>
18721
18722         * modules/readutmp: Depend on module free.
18723         * modules/strtok_r: Depend on module restrict.
18724
18725 2006-01-10  Bruno Haible  <bruno@clisp.org>
18726
18727         * modules/gettext (configure.ac): Add an invocation of
18728         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
18729
18730 2006-01-10  Bruno Haible  <bruno@clisp.org>
18731
18732         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
18733         Reported by Werner Lemberg <wl@gnu.org>.
18734
18735 2006-01-10  Bruno Haible  <bruno@clisp.org>
18736
18737         * lib/localcharset.c: Update from GNU gettext.
18738
18739 2006-01-10  Bruno Haible  <bruno@clisp.org>
18740
18741         * lib/argp.h (__const): Remove macro. Use const instead.
18742         * lib/argp-fmtstream.h (__const): Likewise.
18743         * lib/glob_.h (__const): Remove macro.
18744         * lib/glob-libc.h: Use const instead of __const.
18745
18746 2006-01-10  Bruno Haible  <bruno@clisp.org>
18747
18748         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
18749         variable.
18750         Needed to avoid an automake error regarding the 'gettext' module.
18751
18752 2006-01-09  Simon Josefsson  <jas@extundo.com>
18753
18754         * modules/inet_ntop (Depends-on): Add restrict.
18755
18756 2006-01-09  Simon Josefsson  <jas@extundo.com>
18757
18758         * modules/gc-rijndael-tests (License): Put under LGPL.
18759
18760         * modules/gc-des-tests (License): Likewise.
18761
18762         * modules/gc-arcfour-tests (License): Likewise.
18763
18764         * modules/gc-arctwo-tests (License): Likewise.
18765
18766         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
18767
18768         * modules/gc-hmac-sha1-tests (Files): Likewise.
18769
18770         * modules/gc-hmac-md5-tests (License): Likewise.
18771
18772         * modules/gc-sha1-tests (License): Likewise.
18773
18774         * modules/gc-md5-tests (License): Likewise.
18775
18776         * modules/gc-md4-tests (License): Likewise.
18777
18778         * modules/gc-md2-tests (License): Likewise.
18779
18780         * modules/gc-tests (License): Likewise.
18781
18782         * modules/des-tests (License): Likewise.
18783
18784         * modules/md4-tests (License): Likewise.
18785
18786         * modules/md2-tests (License): Likewise.
18787
18788 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18789
18790         Sync from coreutils:
18791
18792         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
18793         * modules/lib-ignore: New file.
18794         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
18795         chdir-safer.m4, lchmod.m4.
18796         * modules/openat: Add mkdirat.c, openat-priv.h.
18797
18798 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18799
18800         Sync from coreutils.
18801         * m4/lib-ignore.m4: New file.
18802         * m4/lchmod.m4: New file.
18803
18804 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18805
18806         Sync from coreutils.
18807         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
18808         for write access: POSIX says that must fail.
18809         * lib/fts.c (diropen): Likewise.
18810         * lib/save-cwd.c (save_cwd): Likewise.
18811         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
18812         well, for minor improvements on hosts that lack O_DIRECTORY.
18813         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
18814         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
18815         Fall back on chown if open failed with EACCES.
18816
18817         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
18818         Report an error at compile-time if only a 1-second nominal clock
18819         resolution is found.
18820
18821         * lib/lchmod.h: New file.
18822         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
18823         (make_dir_parents): Use lchown rather than chown, and
18824         lchmod rather than chmod.
18825
18826         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
18827         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
18828         "proc" reported by n0dalus.
18829
18830         * lib/mountlist.c: Include <limits.h>.
18831         (dev_from_mount_options)
18832         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
18833         New function.  It no longer assumes "dev=" has the System V meaning
18834         on Linux (since it doesn't).  It also parses "dev=" more carefully.
18835         (read_file_system_list)
18836         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
18837         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
18838         dev= in that case.
18839
18840         * lib/posixtm.h (PDS_PRE_2000): New macro.
18841         * lib/posixtm.c (year): Arg is now syntax_bits rather than
18842         allow_century.  All usages changed.  Reject dates outside the range
18843         1969-1999 if PDS_PRE_2000 is used.
18844
18845 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18846
18847         Sync from coreutils.
18848         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
18849         (Time of day items): Mention the possibility of leap seconds.
18850         Problem reported by Dr. David Alan Gilbert.
18851
18852 2006-01-09  Jim Meyering  <jim@meyering.net>
18853
18854         Sync from coreutils.
18855
18856         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
18857
18858         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
18859
18860         * lib/modechange.c (mode_compile): Reject an invalid mode string
18861         that starts with an octal digit.  From Andreas Gruenbacher.
18862
18863         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
18864         and dup to open_safer and dup_safer, respectively.
18865         (openat_permissive): Fix typo in comment.
18866
18867         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
18868         "gettext.h"; either no longer needed or are guaranteed by openat.h.
18869         (_): Remove; no longer needed.
18870         (openat): Renamed from rpl_openat; no need for rpl_openat
18871         since openat.h renames openat for us.
18872         Replace most of the body with a call to openat_permissive,
18873         to avoid duplicate code.
18874         Port to (probably hypothetical) environments were mode_t is
18875         wider than int.
18876         (openat_permissive): Require mode arg, so that we can check
18877         types better.  Put it just after flags.  Change cwd failure
18878         indicator from pointer-to-bool to pointer-to-errno-value.
18879         All callers changed.
18880         Invoke openat_save_fail and/or openat_restore_fail if
18881         cwd_errno is null, so that openat can call us.
18882         (openat_permissive, fdopendir, fstatat, unlinkat):
18883         Simplify errno handling to avoid some duplicate code,
18884         as it's OK to set errno on success.
18885         * lib/openat.h: Revamp code so that function macros depend on
18886         __OPENAT_PREFIX only, not also on AT_FDCWD.
18887         (openat_ro): Remove.  Caller changed to use openat_permissive.
18888         (openat_permissive): Now a macro, if not a function.
18889         (openat_restore_fail, openat_save_fail): Now always functions,
18890         since mkdirat needs them even if __OPENAT_PREFIX is defined.
18891
18892         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
18893         and openat.c.
18894         * lib/mkdirat.c: Include openat-priv.h.
18895         Remove definitions of macros defined therein.
18896         * lib/openat.c: Likewise.
18897
18898         * lib/mkdirat.c (mkdirat): New file and function.
18899         * lib/openat.h (mkdirat): Declare.
18900
18901         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
18902
18903         * lib/openat.h (openat_permissive): Declare.
18904         (openat_ro): Define.
18905
18906         * lib/openat.c (EXPECTED_ERRNO): New macro.
18907         (openat_permissive): New function -- used in remove.c rewrite.
18908         (all functions): Set errno just before returning, only if there
18909         was an actual failure.
18910         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
18911
18912         Emulate openat-family functions using Linux's procfs, if possible.
18913         Idea and some code based on Ulrich Drepper's glibc changes.
18914
18915         * lib/openat.c: (BUILD_PROC_NAME): New macro.
18916         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
18917         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
18918         before falling back on save_cwd and restore_cwd.
18919         (fdopendir, fstatat, unlinkat): Likewise.
18920
18921         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
18922         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
18923
18924         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
18925         as second argument to va_arg.  Otherwise, some versions of gcc
18926         warn that `if this code is reached, the program will abort'.
18927
18928 2006-01-09  Jim Meyering  <jim@meyering.net>
18929
18930         Sync from coreutils.
18931         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
18932         Require openat-priv.h.
18933
18934 2006-01-09  Bruno Haible  <bruno@clisp.org>
18935
18936         * modules/strnlen (Include): Use strnlen.h.
18937
18938 2006-01-09  Bruno Haible  <bruno@clisp.org>
18939
18940         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
18941
18942 2006-01-09  Bruno Haible  <bruno@clisp.org>
18943
18944         * lib/sysexit_.h (EX_OK): New macro.
18945         Suggested by Martin Lambers <marlam@marlam.de>.
18946
18947 2006-01-09  Bruno Haible  <bruno@clisp.org>
18948
18949         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
18950         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
18951
18952 2006-01-09  Bruno Haible  <bruno@clisp.org>
18953
18954         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
18955         numbers.
18956
18957 2006-01-09  Bruno Haible  <bruno@clisp.org>
18958
18959         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
18960         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
18961         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
18962         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
18963
18964 2006-01-09  Bruno Haible  <bruno@clisp.org>
18965
18966         * build-aux/javacomp.sh.in: New file, moved from lib/.
18967         * modules/javacomp-script (Files): Update.
18968         (configure.ac): Add AC_CONFIG_FILES invocation.
18969         (EXTRA_DIST): Remove variable.
18970
18971         * build-aux/javaexec.sh.in: New file, moved from lib/.
18972         * modules/javaexec (Files): Update.
18973         (configure.ac): Add AC_CONFIG_FILES invocation.
18974         (EXTRA_DIST): Remove javaexec.sh.in.
18975
18976         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
18977         * modules/csharpcomp-script (Files): Update.
18978         (configure.ac): Add AC_CONFIG_FILES invocation.
18979         (EXTRA_DIST): Remove variable.
18980
18981         * build-aux/csharpexec.sh.in: New file, moved from lib/.
18982         * modules/csharpexec (Files): Update.
18983         (configure.ac): Add AC_CONFIG_FILES invocation.
18984         (EXTRA_DIST): Remove csharpexec.sh.in.
18985
18986 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18987
18988         Sync from coreutils.
18989
18990         Add POSIX ACL support
18991         * lib/acl.h (copy_acl, set_acl): Add declarations.
18992         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
18993         systems other than Linux.
18994         (chmod_or_fchmod): New function: use fchmod when possible,
18995         and chmod otherwise.
18996         (file_has_acl): Add a POSIX ACL implementation, with a
18997         Linux-specific subcase.
18998         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
18999         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
19000         acls are unsupported.
19001         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
19002         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
19003         are unsupported.
19004
19005 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
19006
19007         Sync from coreutils.
19008         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
19009
19010 2006-01-07  Bruno Haible  <bruno@clisp.org>
19011
19012         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
19013         gl_EARLY.
19014
19015 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
19016
19017         * lib/strftime.c (tzname): Don't declare if it is already #defined.
19018         Problem reported for Mingw by Mark Junker.
19019
19020 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
19021
19022         * README: Gnulib normally doesn't generate a tarball.
19023
19024 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
19025
19026         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
19027         long int, not int, for nanosecond counts, so that people who are
19028         used to POSIX struct timespec won't be surprised.  Reported by Jim
19029         Meyering.
19030
19031 2005-12-28  Bruno Haible  <bruno@clisp.org>
19032
19033         * build-aux/config.rpath: Update from GNU gettext.
19034
19035 2005-12-16  Jim Meyering  <jim@meyering.net>
19036
19037         * modules/fprintftime: New module.
19038         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
19039
19040 2005-12-16  Jim Meyering  <jim@meyering.net>
19041
19042         * m4/fprintftime.m4: New file.
19043
19044 2005-12-16  Jim Meyering  <jim@meyering.net>
19045
19046         * lib/fprintftime.c, lib/fprintftime.h: New files.
19047
19048 2005-12-15  Simon Josefsson  <jas@extundo.com>
19049
19050         * modules/socklen (configure.ac): Fix M4 macro name, to align with
19051         new m4/socklen.m4.
19052
19053 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
19054
19055         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
19056         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
19057
19058 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
19059
19060         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
19061         * lib/argp-help.c (fill_in_uparams): Check if the constructed
19062         struct uparams is valid. Fall back to the default values if it is
19063         not.
19064
19065 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19066
19067         * modules/argp (Files): Add argp-pin.c
19068         (Depends-on): dirname
19069         (lib_SOURCES): Add argp-pin.c
19070
19071 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19072
19073         * m4/argp.m4:  Check if program_invocation_name and
19074         program_invocation_short_name are declared and define appropriate
19075         macros if they are not.
19076
19077 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19078
19079         * lib/argp-help.c (__argp_base_name): New function
19080         (__argp_short_program_name): Rewrite using __argp_base_name
19081         * lib/argp-namefrob.h: Define program_invocation_name and
19082         program_invocation_short_name if requested
19083         (__argp_base_name): Add prototype
19084         * lib/argp-parse.c (argp_def): Use gettext wrappers
19085         (argp_default_parser): Use __argp_base_name
19086         * lib/argp-pin.c: New file. Defines program_invocation_name and
19087         program_invocation_short_name on systems that lack them.
19088
19089 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
19090
19091         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
19092         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
19093         porting problem reported by Georg Schwarz in
19094         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
19095
19096 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
19097
19098         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
19099         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
19100         porting problem reported by Georg Schwarz in
19101         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
19102
19103 2005-12-05  Bruno Haible  <bruno@clisp.org>
19104
19105         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
19106         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
19107         Reported by Mark Junker <mjscod@gmx.de>.
19108
19109 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
19110
19111         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
19112         Use implementation from Albert Chin, with some
19113         comments/corrections by Stepan Kasal and myself.
19114
19115 2005-12-02  Bruno Haible  <bruno@clisp.org>
19116
19117         * gnulib-tool (func_import): Accept GPLed build tool modules when
19118         --lgpl is given.
19119         * modules/csharpcomp-script: New file.
19120         * modules/csharpcomp: Depend on it.
19121         * modules/javacomp-script: New file.
19122         * modules/javacomp: Depend on it.
19123         Suggested by Simon Josefsson.
19124
19125 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
19126
19127         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
19128         statement, to work around an HP-UX 10.20 compiler bug reported by
19129         Peter O'Gorman.
19130
19131 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
19132
19133         * modules/savedir (Depends-on): Add openat.
19134
19135 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
19136
19137         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
19138         (uintmax_t) [defined uintmax_t]: Do not declare.
19139         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
19140         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
19141         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
19142         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
19143         sake of portability to weird hosts that C allows (though we don't
19144         know of any practical examples).
19145
19146         * lib/savedir.h (fdsavedir): New decl.
19147         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
19148         contains most of the former guts of savedir.
19149         (savedir): Use savedirstream.
19150         Include "openat.h".
19151
19152 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
19153
19154         * modules/obstack (Files): Add m4/ulonglong.m4.
19155         Problem reported by Davide Angelocola.
19156
19157 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
19158
19159         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
19160         coreutils no longer futzes with rounding modes.
19161
19162 2005-11-14  Jim Meyering  <jim@meyering.net>
19163
19164         * lib/mkstemp-safer.c: Include <config.h>, required for possible
19165         replacement of mkstemp.
19166
19167 2005-11-10  Simon Josefsson  <jas@extundo.com>
19168
19169         * lib/readline.c: Remove EOL.
19170
19171 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19172
19173         * modules/gethrxtime (Depends-on): Add gettime.
19174
19175 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19176
19177         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
19178         or gettimeofday; no longer needed.
19179
19180 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19181
19182         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
19183         time business.
19184         (gethrxtime) [! (HAVE_NANOUPTIME
19185         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
19186         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
19187         our own approximation.
19188
19189 2005-11-08  Eric Blake  <ebb9@byu.net>
19190
19191         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
19192
19193 2005-11-08  Eric Blake  <ebb9@byu.net>
19194
19195         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
19196
19197 2005-11-04  Bruno Haible  <bruno@clisp.org>
19198
19199         * gnulib-tool: Implement --update mode.
19200
19201 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
19202
19203         Fix porting problem reported by Theodoros V. Kalamatianos.
19204         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
19205         Don't assume that futimes failing means we must fail.
19206
19207 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
19208
19209         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
19210         variables to suggest the intended function of the PATH_MAX check.
19211
19212 2005-10-30  Kean Johnston  <jkj@sco.com>
19213
19214         Trivial changes to support SCO systems.
19215         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
19216         as PATH_MAX.
19217         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
19218         where __ptr is null when no I/O is pending.
19219
19220 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
19221
19222         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
19223         leave errno alone.  Problem reported by Dmitry V. Levin.
19224
19225 2005-10-28  Simon Josefsson  <jas@extundo.com>
19226
19227         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
19228         Test more.
19229
19230         * tests/test-gc-md2.c, tests/test-md2.c: New files.
19231
19232         * modules/md2, modules/md2-tests: New files.
19233
19234 2005-10-28  Simon Josefsson  <jas@extundo.com>
19235
19236         * m4/inet_ntop.m4: More tests.
19237
19238         * m4/gc-md2.m4, md2.m4: New file.
19239
19240 2005-10-28  Simon Josefsson  <jas@extundo.com>
19241
19242         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
19243         "restrict" keywords, as per POSIX.  Protect the function
19244         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
19245         Don't use K&R prototypes.  Check the sprintf return values.
19246         Re-define EAFNOSUPPORT if not present.  Indent.
19247
19248         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
19249         suggested by Bruno Haible <bruno@clisp.org>.
19250
19251         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
19252
19253         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
19254
19255         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
19256         libgcrypt).
19257
19258         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
19259
19260         * lib/md2.h, lib/md2.c: New files.
19261
19262 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
19263
19264         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
19265         errno alone.  Problem reported by Frederic Jolliton.
19266
19267 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
19268
19269         * modules/verify (License): Change from GPL to LGPL.  This is a
19270         tiny module and there are apparently near-equivalents that are
19271         under the BSD license.
19272
19273 2005-10-24  Simon Josefsson  <jas@extundo.com>
19274
19275         * modules/sha1: Relicense to LGPL.
19276
19277 2005-10-24  Simon Josefsson  <jas@extundo.com>
19278
19279         * lib/md4.h: Shrink buffer size, now that we changed the type.
19280
19281 2005-10-23  Simon Josefsson  <jas@extundo.com>
19282
19283         * gnulib-tool (func_import): Fix --tests-base.
19284
19285 2005-10-22  Simon Josefsson  <jas@extundo.com>
19286
19287         * modules/arcfour (Depends-on): Need stdint.
19288
19289 2005-10-22  Simon Josefsson  <jas@extundo.com>
19290
19291         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
19292         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
19293
19294 2005-10-22  Simon Josefsson  <jas@extundo.com>
19295
19296         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
19297         suggested by Bruno Haible <bruno@clisp.org>.
19298
19299 2005-10-22  Simon Josefsson  <jas@extundo.com>
19300
19301         * lib/crc.h: Include stddef.h, for size_t.
19302
19303 2005-10-22  Simon Josefsson  <jas@extundo.com>
19304
19305         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
19306         arcfour_context struct (simplify test vector testing in GNU
19307         Shishi).
19308
19309 2005-10-21  Simon Josefsson  <jas@extundo.com>
19310
19311         * modules/des, modules/des-tests: New files.
19312
19313         * modules/gc-des, modules/gc-des-tests: New files.
19314
19315         * tests/test-des.c, tests/test-gc-des.c: New file.
19316
19317 2005-10-21  Simon Josefsson  <jas@extundo.com>
19318
19319         * modules/arctwo, modules/arctwo-tests: New files.
19320
19321         * tests/test-arctwo.c: New file.
19322
19323         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
19324
19325         * tests/test-gc-arctwo.c: New file.
19326
19327 2005-10-21  Simon Josefsson  <jas@extundo.com>
19328
19329         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
19330         Bruno Haible <bruno@clisp.org>.
19331
19332         * m4/gc-des.m4: New file.
19333
19334 2005-10-21  Simon Josefsson  <jas@extundo.com>
19335
19336         * m4/arctwo.m4: New file.
19337
19338         * m4/gc-arctwo.m4: New file.
19339
19340 2005-10-21  Simon Josefsson  <jas@extundo.com>
19341
19342         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
19343         block.
19344
19345 2005-10-21  Simon Josefsson  <jas@extundo.com>
19346
19347         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
19348         <bruno@clisp.org>.
19349
19350         * lib/hmac-sha1.c (hmac_sha1): Likewise.
19351
19352         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
19353         Bruno Haible <bruno@clisp.org>.
19354
19355         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
19356         <bruno@clisp.org>.
19357
19358 2005-10-21  Simon Josefsson  <jas@extundo.com>
19359
19360         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
19361
19362 2005-10-21  Simon Josefsson  <jas@extundo.com>
19363
19364         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
19365
19366 2005-10-21  Simon Josefsson  <jas@extundo.com>
19367
19368         * lib/des.h, lib/des.c: New files.
19369
19370         * lib/gc-gnulib.c: Support DES.c
19371
19372 2005-10-21  Simon Josefsson  <jas@extundo.com>
19373
19374         * lib/arctwo.h, lib/arctwo.c: New files.
19375
19376         * lib/gc-gnulib.c: Support ARCTWO.
19377
19378 2005-10-21  Simon Josefsson  <jas@extundo.com>
19379
19380         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
19381         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19382
19383 2005-10-21  Simon Josefsson  <jas@extundo.com>
19384
19385         * gnulib-tool (func_import, func_create_testdir): Define automake
19386         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
19387         Makefile.am snippet),
19388         suggested by Bruno Haible <bruno@clisp.org>.
19389
19390         * modules/gc (Makefile.am): Use it.
19391
19392 2005-10-21  Bruno Haible  <bruno@clisp.org>
19393
19394         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
19395         patch.
19396
19397 2005-10-19  Simon Josefsson  <jas@extundo.com>
19398
19399         * tests/test-gc-rijndael.c: New file.
19400
19401         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
19402
19403 2005-10-19  Simon Josefsson  <jas@extundo.com>
19404
19405         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
19406         interface too.
19407
19408 2005-10-19  Simon Josefsson  <jas@extundo.com>
19409
19410         * tests/test-gc-arcfour.c: New file.
19411
19412         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
19413
19414 2005-10-19  Simon Josefsson  <jas@extundo.com>
19415
19416         * modules/gc-md4, modules/gc-md4-tests: New file.
19417
19418         * tests/test-gc-md4.c: New file.
19419
19420 2005-10-19  Simon Josefsson  <jas@extundo.com>
19421
19422         * m4/gc-md4.m4: New file.
19423
19424 2005-10-19  Simon Josefsson  <jas@extundo.com>
19425
19426         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
19427         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
19428         <kasal@ucw.cz>.
19429
19430 2005-10-19  Simon Josefsson  <jas@extundo.com>
19431
19432         * m4/gc-arcfour.m4: New file.
19433
19434         * m4/gc-rijndael.m4: New file.
19435
19436 2005-10-19  Simon Josefsson  <jas@extundo.com>
19437
19438         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
19439
19440 2005-10-19  Simon Josefsson  <jas@extundo.com>
19441
19442         * lib/gc-gnulib.c: Support ARCFOUR.
19443
19444 2005-10-19  Simon Josefsson  <jas@extundo.com>
19445
19446         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
19447         support.
19448
19449         * lib/gc.h: Add ECB enum type.
19450
19451         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
19452
19453 2005-10-18  Simon Josefsson  <jas@extundo.com>
19454
19455         * tests/test-md5.c: New file.
19456
19457         * modules/md5-tests: New file.
19458
19459 2005-10-18  Simon Josefsson  <jas@extundo.com>
19460
19461         * tests/test-md4.c: New file.
19462
19463         * modules/md4, modules/md4-tests: New files.
19464
19465 2005-10-18  Simon Josefsson  <jas@extundo.com>
19466
19467         * m4/md4.m4: New file.
19468
19469 2005-10-18  Simon Josefsson  <jas@extundo.com>
19470
19471         * lib/md4.h, lib/md4.c: New files, based on md5.?.
19472
19473 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
19474
19475         * gnulib-tool (func_create_testdir): Omit the second check whether
19476         BUILT_SOURCES in nonempty.
19477
19478 2005-10-17  Simon Josefsson  <jas@extundo.com>
19479
19480         * tests/test-rijndael.c: New file.
19481
19482 2005-10-17  Simon Josefsson  <jas@extundo.com>
19483
19484         * modules/sha1: Depend on stdint instead of md5.
19485
19486         * modules/md5: Depend on stdint, remove uint32_t.
19487
19488 2005-10-17  Simon Josefsson  <jas@extundo.com>
19489
19490         * modules/gc-sha1-tests: New file.
19491
19492         * tests/test-gc-sha1.c: New file.
19493
19494 2005-10-17  Simon Josefsson  <jas@extundo.com>
19495
19496         * m4/md5.m4: Remove call to uint32_t.m4.
19497
19498 2005-10-17  Simon Josefsson  <jas@extundo.com>
19499
19500         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
19501
19502         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
19503         md5.h.
19504
19505         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
19506
19507         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
19508
19509 2005-10-17  Simon Josefsson  <jas@extundo.com>
19510
19511         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
19512
19513 2005-10-17  Simon Josefsson  <jas@extundo.com>
19514
19515         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
19516
19517 2005-10-17  Simon Josefsson  <jas@extundo.com>
19518
19519         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
19520
19521         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
19522
19523 2005-10-17  Bruno Haible  <bruno@clisp.org>
19524
19525         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
19526         that it can also be used in a test.
19527
19528 2005-10-16  Bruno Haible  <bruno@clisp.org>
19529
19530         * gnulib-tool (func_emit_tests_Makefile_am): Also define
19531         TESTS_ENVIRONMENT, so that individual tests can augment it.
19532
19533         * gnulib-tool (func_create_testdir): Use an intermediate target for
19534         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
19535         macros, like $(ALLOCA_H), which cannot be passed through the command
19536         line.
19537
19538 2005-10-15  Simon Josefsson  <jas@extundo.com>
19539
19540         * modules/rijndael-tests: New file.
19541
19542         * modules/rijndael: New file.
19543
19544 2005-10-15  Simon Josefsson  <jas@extundo.com>
19545
19546         * m4/rijndael.m4: New file.
19547
19548 2005-10-15  Simon Josefsson  <jas@extundo.com>
19549
19550         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
19551
19552         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
19553
19554 2005-10-14  Simon Josefsson  <jas@extundo.com>
19555
19556         * tests/test-arcfour.c: New file.
19557
19558         * modules/arcfour, modules/arcfour-tests: New files.
19559
19560 2005-10-14  Simon Josefsson  <jas@extundo.com>
19561
19562         * m4/arcfour.m4: New file.
19563
19564 2005-10-14  Simon Josefsson  <jas@extundo.com>
19565
19566         * lib/arcfour.h, lib/arcfour.c: New files.
19567
19568 2005-10-14  Roland McGrath  <roland@redhat.com>
19569
19570         Import from libc.  [BZ #1331]
19571         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
19572         macro argument.
19573         Reported by Matej Vela <vela@debian.org>.
19574
19575 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19576
19577         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
19578         include <wchar.h>; no longer needed.
19579
19580 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19581
19582         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
19583
19584 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
19585         and  Ulrich Drepper  <drepper@redhat.com>
19586
19587         Import from libc.
19588         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
19589         instead of inline stream orientation test and two separate
19590         function calls.  Pay no attention to USE_IN_LIBIO.
19591
19592 2005-10-13  Simon Josefsson  <jas@extundo.com>
19593
19594         * modules/gc-hmac-md5-tests: New file.
19595
19596         * tests/test-gc-hmac-sha1.c: New file.
19597
19598         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
19599
19600         * modules/gc-hmac-md5-tests: New file.
19601
19602         * tests/test-gc-md5.c: New file.
19603
19604         * modules/gc-md5-tests: New file.
19605
19606 2005-10-13  Simon Josefsson  <jas@extundo.com>
19607
19608         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
19609         Move memory allocation outside of loop.
19610
19611 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
19612
19613         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
19614         intermediate directory is in a read-only file system.  Problem
19615         reported by Eric Blake.
19616
19617 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
19618
19619         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
19620
19621 2005-10-12  Simon Josefsson  <jas@extundo.com>
19622
19623         * tests/test-hmac-sha1.c: New file.
19624
19625         * modules/hmac-sha1-tests: New file.
19626
19627         * modules/hmac-sha1: New file.
19628
19629 2005-10-12  Simon Josefsson  <jas@extundo.com>
19630
19631         * modules/gc-sha1: New file.
19632
19633 2005-10-12  Simon Josefsson  <jas@extundo.com>
19634
19635         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
19636
19637         * tests/test-gc-pbkdf2-sha1.c: New file.
19638
19639 2005-10-12  Simon Josefsson  <jas@extundo.com>
19640
19641         * modules/gc-md5, modules/gc-hmac-md5: New files.
19642
19643         * modules/gc (Files): Remove md5, memxor and hmac files.
19644
19645 2005-10-12  Simon Josefsson  <jas@extundo.com>
19646
19647         * m4/gc-pbkdf2-sha1.m4: New file.
19648
19649         * m4/gc-hmac-sha1.m4: New file.
19650
19651         * m4/gc-sha1: New file.
19652
19653         * m4/hmac-sha1.m4: New file.
19654
19655 2005-10-12  Simon Josefsson  <jas@extundo.com>
19656
19657         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
19658
19659         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
19660
19661 2005-10-12  Simon Josefsson  <jas@extundo.com>
19662
19663         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
19664         suggested by Bruno Haible <bruno@clisp.org>.
19665
19666 2005-10-12  Simon Josefsson  <jas@extundo.com>
19667
19668         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
19669
19670 2005-10-12  Simon Josefsson  <jas@extundo.com>
19671
19672         * lib/gc-pbkdf2-sha1.c: New file.
19673
19674         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
19675
19676 2005-10-12  Simon Josefsson  <jas@extundo.com>
19677
19678         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
19679
19680         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
19681
19682 2005-10-12  Simon Josefsson  <jas@extundo.com>
19683
19684         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
19685         GC_USE_HMAC_MD5, respectively.
19686
19687         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
19688         (gc_md5): Fix typo.
19689
19690         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
19691
19692         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
19693
19694         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
19695
19696 2005-10-12  Bruno Haible  <bruno@clisp.org>
19697
19698         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
19699         Reported by Stepan Kasal <kasal@ucw.cz>.
19700
19701 2005-10-11  Simon Josefsson  <jas@extundo.com>
19702
19703         * tests/test-crc.c: New file.
19704
19705         * modules/crc, modules/crc-tests: New files.
19706
19707 2005-10-11  Simon Josefsson  <jas@extundo.com>
19708
19709         * m4/crc.m4: New file.
19710
19711 2005-10-11  Simon Josefsson  <jas@extundo.com>
19712
19713         * lib/gc.h: Add gc_hash and gc_hash_buffer.
19714
19715         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
19716
19717         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
19718
19719 2005-10-11  Simon Josefsson  <jas@extundo.com>
19720
19721         * lib/crc.h, lib/crc.c: New files.
19722
19723         * lib/gc.h (gc_hash_buffer): Add doc.
19724
19725 2005-10-11  Bruno Haible  <bruno@clisp.org>
19726
19727         * modules/c-strcasestr: New file.
19728         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
19729
19730 2005-10-11  Bruno Haible  <bruno@clisp.org>
19731
19732         * modules/c-strcase: New file.
19733         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
19734
19735 2005-10-11  Bruno Haible  <bruno@clisp.org>
19736
19737         * lib/strcasecmp.c: Include limits.h.
19738         (strcasecmp): Avoid integer overflow on exotic platforms.
19739         * lib/strncasecmp.c: Include limits.h.
19740         (strncasecmp): Avoid integer overflow on exotic platforms.
19741         Reported by Paul Eggert.
19742
19743 2005-10-11  Bruno Haible  <bruno@clisp.org>
19744
19745         * lib/c-strcasestr.h: New file, from GNU gettext.
19746         * lib/c-strcasestr.c: New file, from GNU gettext.
19747
19748 2005-10-11  Bruno Haible  <bruno@clisp.org>
19749
19750         * lib/c-strcase.h: New file, from GNU gettext.
19751         * lib/c-strcasecmp.c: New file, from GNU gettext.
19752         * lib/c-strncasecmp.c: New file, from GNU gettext.
19753
19754 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
19755
19756         * modules/mempcpy (License): GPL -> LGPL.
19757         * modules/strchrnul (License): Likewise.
19758         * modules/sysexits (License): Likewise.
19759
19760 2005-10-08  Simon Josefsson  <jas@extundo.com>
19761
19762         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
19763
19764 2005-10-07  Simon Josefsson  <jas@extundo.com>
19765
19766         * m4/memxor.m4: Remove gl_C_RESTRICT call.
19767
19768 2005-10-06  Simon Josefsson  <jas@extundo.com>
19769
19770         * tests/test-hmac-md5.c: New file.
19771
19772         * modules/hmac-md5-tests: New file.
19773
19774         * modules/hmac-md5: New file.
19775
19776 2005-10-06  Simon Josefsson  <jas@extundo.com>
19777
19778         * m4/hmac-md5.m4: New file.
19779
19780         * m4/memxor.m4: Require gl_C_RESTRICT.
19781
19782 2005-10-06  Simon Josefsson  <jas@extundo.com>
19783
19784         * lib/memxor.c (memxor): Avoid casts and warnings.
19785
19786 2005-10-06  Simon Josefsson  <jas@extundo.com>
19787
19788         * lib/hmac-md5.c: New file.
19789
19790         * lib/hmac.h: New file.
19791
19792 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
19793
19794         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
19795         promotes to int, not unsigned int, to catch the AIX 5.3
19796         compiler bug.
19797
19798 2005-10-05  Simon Josefsson  <jas@extundo.com>
19799
19800         * modules/memxor: New file.
19801
19802         * modules/iconv (Files): Move config.rpath to havelib, it is used
19803         there.
19804
19805         * modules/havelib (Files): Add config.rpath.
19806
19807 2005-10-05  Simon Josefsson  <jas@extundo.com>
19808
19809         * m4/memxor.m4: New file.
19810
19811 2005-10-05  Simon Josefsson  <jas@extundo.com>
19812
19813         * lib/memxor.c (memxor): Fix compiler error.
19814
19815         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
19816         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
19817
19818         * lib/memxor.h, lib/memxor.c: New files.
19819
19820         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
19821         we assume all systems have it, suggested by Jim Meyering
19822         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
19823         any systems lack sys/socket.h; mingw32 is known to lack it, but we
19824         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
19825         same reasons.
19826
19827 2005-10-05  Simon Josefsson  <jas@extundo.com>
19828
19829         * config/srclist.txt: Add glibc bug 1423 for md5.h.
19830
19831 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
19832
19833         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
19834         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
19835         needed, since the source code now assumes these .h files.
19836
19837 2005-10-05  Derek Price  <derek@ximbiot.com>
19838
19839         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
19840
19841 2005-10-05  Bruno Haible  <bruno@clisp.org>
19842
19843         * modules/stdint (License): Change to LGPL.
19844
19845 2005-10-04  Simon Josefsson  <jas@extundo.com>
19846
19847         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
19848         D. Baushke" <mdb@gnu.org>.
19849
19850 2005-10-04  Bruno Haible  <bruno@clisp.org>
19851
19852         * lib/verify.h (verify_true): Provide alternative definition for C++.
19853
19854 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
19855
19856         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
19857         (SSIZE_MAX): New macro, if not already defined.
19858         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
19859         than 2 GiB.
19860
19861 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19862
19863         Sync from coreutils.
19864         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
19865         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
19866         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
19867         ULLONG_MAX doesn't work with 2.7.2.1.
19868
19869 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19870
19871         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
19872         From Ben Pfaff.
19873
19874         * modules/exclude (Depends-on): Depend on verify.
19875         * modules/strtoimax (Depends-on): Likewise.
19876         * modules/utimecmp (Depends-on): Likewise.
19877
19878 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19879
19880         * lib/exclude.c: Include verify.h.
19881         (verify): Remove.  All callers changed to use verify.h's version.
19882         * lib/strtoimax.c: Likewise.
19883         * lib/utimecmp.c: Likewis.e
19884
19885         Sync from coreutils.
19886         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
19887         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
19888         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
19889         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
19890         bother returning ENOSYS if settimeofday or stime fails; just let
19891         them return whatever errno they want to return.
19892         * lib/utimens.c: Include unistd.h, for dup2.
19893         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
19894         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
19895
19896 2005-10-02  Jim Meyering  <jim@meyering.net>
19897
19898         Sync from coreutils.
19899         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
19900         from glibc-2.2.5 that fails for read-only files.
19901
19902 2005-10-02  Jim Meyering  <jim@meyering.net>
19903
19904         Sync from coreutils.
19905         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
19906         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
19907         `#if HAVE_CONFIG_H'.
19908         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
19909         Remove AT_FDCWD test.
19910         Do not consume the fd unless successful.
19911         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
19912         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
19913         block, so that we don't even try to compile it if settimeofday is
19914         available.  This works around a compilation failure on OSF1 V5.1,
19915         due to stime requiring a `long int*' while tv_sec is `int'.
19916
19917 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
19918
19919         Sync from coreutils.
19920         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
19921         against `yes', rather than just testing for nonempty.
19922
19923 2005-10-01  Simon Josefsson  <jas@extundo.com>
19924
19925         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
19926         and Darwin.
19927
19928         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
19929         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
19930         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
19931         freeaddrinfo and gai_strerror are declared by the POSIX headers.
19932         Check if struct addrinfo is declared.
19933
19934 2005-10-01  Simon Josefsson  <jas@extundo.com>
19935
19936         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
19937         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
19938         AI_* and EAI_* definitions.  Protect function declarations.
19939
19940 2005-10-01  Jim Meyering  <jim@meyering.net>
19941
19942         Sync from coreutils.
19943
19944         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
19945         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
19946         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
19947         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19948         in the inet and nsl libraries.  Required on Solaris 5.7.
19949
19950 2005-10-01  Jim Meyering  <jim@meyering.net>
19951
19952         Sync from coreutils.
19953         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19954         in the inet and nsl libraries.  Required on Solaris 5.7.
19955
19956 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
19957
19958         * lib/getdelim.c (getdelim): Remove unused variables.
19959
19960 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
19961
19962         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
19963         so that the code works even with ancient cpp.  Portability problem
19964         with GCC 2.7.2.1 reported by Thomas M.Ott.
19965
19966 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
19967
19968         * modules/regex (Depends-on): Add strcase.
19969
19970         * modules/gethostname (Licence): Change from GPL to LGPL, since
19971         gethostname.c is a trivial implementation of a standard library
19972         function.
19973         * modules/poll (License): Change from GPL to LGPL, since it's
19974         derived from LGPL code.
19975
19976 2005-09-27  Jim Meyering  <jim@meyering.net>
19977
19978         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
19979         HAVE_CONFIG_H.
19980
19981         * lib/intprops.h (signed_type_or_expr__): Define.
19982         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
19983         for unsigned types.
19984
19985 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19986
19987         * lib/verify.h (verify_expr): Remove, replacing with:
19988         (verify_true): New macro that returns true instead of void.
19989         (verify_type__): Remove.
19990         (verify): Use verify_true rather than verify_type__.
19991
19992 2005-09-26  Bruno Haible  <bruno@clisp.org>
19993
19994         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
19995         is necessary.
19996         (lib_SOURCES): Remove mbchar.c.
19997         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
19998         (Files): Add m4/mbrtowc.m4.
19999         * modules/mbiter: Likewise.
20000         * modules/mbuiter: Likewise.
20001
20002 2005-09-26  Bruno Haible  <bruno@clisp.org>
20003
20004         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
20005         compile mbchar.c if they are not both present.
20006         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
20007         * m4/mbiter.m4 (gl_MBITER): Likewise.
20008         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
20009         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
20010         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
20011
20012 2005-09-25  Jim Meyering  <jim@meyering.net>
20013
20014         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
20015         also uses socklen_t.
20016
20017 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
20018
20019         * lib/utimens.c (ENOSYS): Define if not already defined.
20020         (futimens): Support having a null PATH if the file descriptor
20021         is nonnegative.
20022
20023         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
20024         Remove.
20025         (__attribute): Define to empty unless GCC 3.1 or later.
20026         This works around a core dump on OpenBSD 3.4, which has GCC
20027         2.95.3, which dumps core when given __attribute__(()).  It also
20028         simplifies other tests, since we really don't want to bother with
20029         worrying about which ancient version of GCC supported what.
20030         Original problem reported by Yoann Vandoorselaere, with part of
20031         the fix suggested by Derek Price.
20032
20033 2005-09-24  Jim Meyering  <jim@meyering.net>
20034
20035         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
20036         so we can once again use a positive bitfield width of 1 -- now we
20037         don't have to explain why we were using a bitfield width of 2.
20038
20039 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
20040
20041         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
20042         and similarly for the other external symbols.  Problem reported
20043         by James Gallager.
20044
20045         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
20046         bug reported by Jim Meyering.
20047
20048         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
20049         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
20050         not needed, since socklen is a prerequisite module.
20051
20052 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
20053
20054         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
20055         Problem reported by Eric Blake.
20056         (getaddrinfo): Initialize se so that it's not garbage.
20057         Redo internal storage allocation so that it doesn't make unportable
20058         assumptions about alignment.
20059         Fix a memory leak.
20060
20061         * lib/utimens.c (futimens): Use futimesat if available.
20062         Prefer it to futimes since it doesn't have the futimes bug.
20063
20064         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
20065         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
20066         Instead, declare a function that returns a pointer to an array,
20067         and use verify_type__ to declare the size of the array.
20068         Problem and germ of a solution reported by Bruno Haible.
20069         (verify_type__): Use 2, not 1, for bitfield size, to avoid
20070         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
20071
20072 2005-09-23  Jim Meyering  <jim@meyering.net>
20073
20074         Sync from coreutils.
20075         Correct build failure (socklen_t not defined) on at least
20076         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
20077         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
20078
20079 2005-09-23  Jim Meyering  <jim@meyering.net>
20080
20081         * modules/getaddrinfo (Depends-on): Add socklen.
20082
20083 2005-09-23  Bruno Haible  <bruno@clisp.org>
20084
20085         * tests/test-verify.c: New file.
20086
20087 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
20088
20089         Sync from coreutils.
20090
20091         * modules/argmatch (Depends-on): Add verify.
20092         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
20093         unistd-safer.
20094         * modules/save-cwd (Depends-on): Likewise.
20095
20096         * modules/openat (Files): Add lib/openat-die.c.
20097         (Depends-on): Remove error, exitfail.
20098         Add dirname.
20099
20100         * modules/verify: New file.
20101         * MODULES.html.sh (Diagnostics <assert.h>): New section,
20102         with "verify" module.
20103
20104 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
20105
20106         Sync from coreutils.
20107
20108         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
20109         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
20110         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
20111         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
20112         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
20113         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
20114         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
20115         Don't bother checking for string.h, stdlib.h, unistd.h.
20116         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
20117         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
20118         module's job.
20119         * m4/jm-macros.m4 (gl_MACROS): Likewise.
20120         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
20121
20122         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
20123         (gl_GETDATE): Use it.
20124
20125         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
20126
20127 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
20128
20129         Sync from coreutils.
20130
20131         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
20132         stat-time.h.
20133         * lib/argmatch.h: Include verify.h
20134         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
20135         (ARGMATCH_ASSERT): Remove; unused.
20136         * lib/canonicalize.c: Assume STDC_HEADERS.
20137         * lib/exclude.c: Include "strcase.h".
20138         * lib/regex_internal.h [!defined _LIBC]: Likewise.
20139         * lib/getusershell.c: Include stdio--.h rather than stdio.h
20140         and stdio-safer.h.
20141         (getusershell): Call fopen, not fopen_safer.
20142         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
20143         Do not include unistd-safer.h.
20144         (save_cwd): Don't call fd_safer; no longer needed
20145         now that we include fcntl--.h.
20146
20147         * lib/getdate.y (relative_time): New type.
20148         (RELATIVE_TIME_0): New constant.
20149         (parser_control): Use relative_time instead of doing it ourselves.
20150         (%union): Add new relative_time rel member.
20151         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
20152         Now typeless.
20153         (relunit, relunit_snumber): Now of type rel.
20154         (zone, rel, relunit, get_date): Adjust to above changes.
20155
20156         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
20157         Do not include unistd-safer.h.
20158         (getloadavg): Don't call fd_safer; no longer needed
20159         now that we include fcntl--.h.
20160
20161         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
20162         (make_dir_parents): Treat ENOSYS like EEXIST.
20163
20164         Improve quality of diagnostics on restore_cwd failure.
20165         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
20166         (make_dir_parents): Last arg is now int * (for errno), not bool *.
20167         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
20168         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
20169         each time through the loop.  Do not diagnose restore_cwd failure;
20170         that is the caller's job (and perhaps the caller does not care).
20171
20172         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
20173         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
20174         If the file already exists but is not a directory, don't bother
20175         to try to make its parents.
20176         Close potential file descriptor leak if we can't chdir("/") (!).
20177         Don't always return true if chdir($PWD) fails; return true only
20178         if the requested action was done successfully (except for the
20179         chdir($PWD)).
20180         Don't log final directory unless we actually made it.
20181         Refactor to avoid duplicate code to fix up permissions.
20182         Don't attempt to fix up parent permissions if chdir($PWD) fails.
20183
20184         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
20185         to make it a bit faster and (I hope) clearer.
20186         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
20187         Fix bug in formats like %2N.
20188
20189         * lib/verify.h: New file.
20190
20191 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
20192
20193         Sync from coreutils.
20194         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
20195
20196 2005-09-22  Jim Meyering  <jim@meyering.net>
20197
20198         Sync from coreutils.
20199
20200         * m4/lstat.m4 (gl_FUNC_LSTAT):
20201         Use AC_LIBSOURCES to require lstat.c and lstat.h.
20202         Remove obsolete comment.
20203         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
20204         * m4/xstrtod.m4: Likewise.
20205
20206         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
20207
20208 2005-09-22  Jim Meyering  <jim@meyering.net>
20209
20210         Sync from coreutils.
20211
20212         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
20213
20214         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
20215         the .tm_year member, since otherwise gcc-4.0 would now warn about
20216         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
20217
20218         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
20219         order to avoid an unsuppressible warning from gcc on 64-bit systems.
20220
20221         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
20222         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
20223         when run in a time zone for which daylight savings time is in effect
20224         for the starting date.
20225
20226         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
20227         stop us from restricting permissions of just-created absolute-named
20228         directories.
20229         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
20230         to restore initial working directory.
20231         * lib/mkdir-p.c (make_dir_parents): New parameter:
20232         different_working_dir, to tell caller if/when we change the working
20233         directory and are unable to return to the initial one.
20234         * lib/mkdir-p.h (make_dir_parents): Update prototype.
20235         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
20236         `return false'.  This fixes a bug introduced on 2004-07-30.
20237
20238         * lib/openat.c (fdopendir): Be sure to close the supplied
20239         file descriptor before returning.  This makes our replacement
20240         implementation a little closer to Solaris's, where fdopendir
20241         ties the file descriptor to the returned DIR* pointer.
20242         * lib/openat.c (unlinkat): New function.
20243         * lib/openat.h (unlinkat): Add prototype.
20244         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
20245         (openat_restore_fail): Rename from openat_restore_die.
20246         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
20247
20248         Provide an alternative to exiting immediately upon save_cwd or
20249         restore_cwd failure.  Now, an application can arrange e.g.,
20250         to perform a longjump in that case.
20251         * lib/openat.c: Include dirname.h.
20252         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
20253         (rpl_openat, fdopendir, fstatat): Call openat_save_die
20254         and openat_restore_die rather than calling error directly.
20255         Don't include "error.h" or "exitfail.h"; they're no longer needed.
20256
20257         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
20258         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
20259         define.
20260
20261         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
20262         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
20263                             int utc, int nanoseconds);
20264         Background:
20265         date should not have to allocate a megabyte of virtual memory to
20266         handle a format argument like +%1048575T.  When implemented with
20267         strftime, it must allocate such a buffer, use strftime to fill it
20268         in, print it, then free it.
20269         With fprintftime, it simply prints everything and exits.
20270         With no need for memory allocation, that's one fewer way to fail.
20271         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
20272         optional field width, not before, so we accept %9:z, not %:9z.
20273         (my_strftime): Be sure to use L_('x') for literals.
20274
20275         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
20276         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
20277         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
20278         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
20279         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
20280         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
20281         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
20282         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
20283         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
20284         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
20285         * lib/xgethostname.c, lib/xreadlink.c:
20286         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
20287
20288         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
20289         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
20290         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
20291         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
20292         and don't include <sys/file.h>).
20293
20294 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
20295
20296         Sync from coreutils.
20297
20298         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
20299         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
20300         [!LDAV_DONE]: Avoid unused variable warning.
20301
20302 2005-09-21  Bruno Haible  <bruno@clisp.org>
20303
20304         * lib/unicodeio.h (unicode_to_mb): New declaration.
20305
20306 2005-09-20  Derek Price  <derek@ximbiot.com>
20307
20308         * lib/getaddrinfo.c: Don't include <netdb.h> included from
20309         getaddrinfo.h.
20310
20311 2005-09-20  Bruno Haible  <bruno@clisp.org>
20312
20313         * gnulib-tool: Remove trailing slashes from the values specified for
20314         --source-base, --m4-base, --tests-base, --aux-dir.
20315         Suggested by Simon Josefsson <jas@extundo.com>.
20316
20317 2005-09-20  Bruno Haible  <bruno@clisp.org>
20318
20319         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
20320         func_modules_to_filelist, func_import, func_create_testdir): Make all
20321         sorting results locale-independent, so that gnulib-cache.m4 doesn't
20322         change when gnulib-tool is invoked in a different locale.
20323
20324 2005-09-19  Simon Josefsson  <jas@extundo.com>
20325
20326         * m4/socklen.m4: Fix typo.
20327
20328 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20329
20330         Use a consistent style for including <config.h>.
20331         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
20332         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
20333         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
20334         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
20335         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
20336         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
20337         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
20338         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
20339         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
20340         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
20341         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
20342         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
20343         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
20344         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
20345         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
20346         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
20347         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
20348         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
20349         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
20350         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
20351         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
20352         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
20353         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
20354         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
20355         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
20356         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
20357         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
20358         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
20359         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
20360         lib/xstrtoumax.c, lib/yesno.c:
20361         Standardize inclusion of config.h.
20362         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
20363         lib/inttostr.h:  Removed inclusion of config.h from header files.
20364         * lib/inttostr.c:  Adjusted in-tree users.
20365         * lib/timespec.h: Remove superfluous warning to include config.h.
20366         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
20367         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
20368         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
20369         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
20370         config.h with HAVE_CONFIG_H.
20371
20372 2005-09-19  Jim Meyering  <jim@meyering.net>
20373
20374         * modules/pathmax (License): Change to LGPL.
20375
20376 2005-09-19  Derek Price  <derek@ximbiot.com>
20377
20378         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
20379
20380 2005-09-19  Bruno Haible  <bruno@clisp.org>
20381
20382         * gnulib-tool (import): Provide default for --tests-base.
20383
20384 2005-09-19  Bruno Haible  <bruno@clisp.org>
20385
20386         * doc/quote.texi: New file, extracted from gnulib.texi.
20387         * doc/ctime.texi: New file, extracted from gnulib.texi.
20388         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
20389         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
20390         * doc/gnulib.texi: Include them.
20391
20392 2005-09-18  Bruno Haible  <bruno@clisp.org>
20393
20394         Portability fix.
20395         * gnulib-tool (func_readlink): New function.
20396         (func_ln_if_changed): Use it.
20397
20398 2005-09-18  Bruno Haible  <bruno@clisp.org>
20399
20400         * gnulib-tool: Support --with-tests also with --import.
20401         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
20402         (func_import): Use variables $testsbase and $inctests. Emit a
20403         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
20404         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
20405         SUBDIRS += $testsdir.
20406         (func_create_testdir): Update.
20407
20408 2005-09-18  Bruno Haible  <bruno@clisp.org>
20409
20410         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
20411         instead of $dry_run.
20412         (func_cp_if_changed, func_mv_if_changed): Remove functions.
20413         (func_ln_if_changed): Don't handle dry-run here.
20414         (func_import): In dry-run mode, detect more precisely which actions
20415         would be performed, and don't use "...ing" verbs.
20416
20417 2005-09-18  Bruno Haible  <bruno@clisp.org>
20418
20419         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
20420         (func_import): Use join on two temporary files instead of three nested
20421         loops, in order to determine which files are new or old.
20422
20423 2005-09-18  Bruno Haible  <bruno@clisp.org>
20424
20425         * gnulib-tool (func_import): Comment out code that spits out the
20426         new files with --dry-run.
20427
20428 2005-09-18  Bruno Haible  <bruno@clisp.org>
20429
20430         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
20431
20432 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20433
20434         * lib/stat-time.h: New file.
20435         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
20436         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
20437         in a different way.
20438         (timespec_cmp): New function.
20439         * lib/utimecmp.c: Include stat-time.h.
20440         (SYSCALL_RESOLUTION): Depend on whether various struct stat
20441         members exist, not on the obsolescent ST_MTIM_NSEC.
20442         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
20443
20444 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20445
20446         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
20447
20448 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20449
20450         * MODULES.html.sh (File system functions): Add stat-time.
20451         * modules/stat-time: New file.
20452         * modules/timespec (Files): Remove m4/st_mtim.m4; this
20453         is now done in a different way, by the stat-time module.
20454         * modules/utimecmp (Depends-on): Add stat-time.
20455
20456 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20457
20458         * m4/st_mtim.m4: Remove.  Superseded by...
20459         * m4/stat-time.m4: New file.
20460         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
20461         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
20462
20463 2005-09-15  Derek Price  <derek@ximbiot.com>
20464
20465         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
20466
20467 2005-09-15  Derek Price  <derek@ximbiot.com>
20468
20469         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
20470         * lib/regex_internal.c: Ditto, using this...
20471         (__GNUC_PREREQ): ...new macro.
20472         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
20473         using...
20474         (__GNUC_PREREQ): ...this new macro.
20475
20476         * lib/strstr.h: Include string.h. Define strstr as a macro here.
20477
20478 2005-09-15  Derek Price  <derek@ximbiot.com>
20479             Paul Eggert  <eggert@cs.ucla.edu>
20480
20481         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
20482         changes, consolidating in...
20483         * lib/regex_internal.h: ...this file.
20484
20485 2005-09-13  Jim Meyering  <jim@meyering.net>
20486
20487         * lib/canon-host.c: Filter through gnu indent and reword comments
20488         slightly.
20489         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
20490
20491 2005-09-13  Derek Price  <derek@ximbiot.com>
20492
20493         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
20494         failure.
20495         Reported by Jim Meyering  <jim@meyering.net>.
20496
20497 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
20498
20499         * lib/base64.c: Typo.
20500         (base64_encode): Put b64str in initialized data section.
20501
20502 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
20503
20504         Merge glibc and coreutils changes into gnulib, plus a few
20505         extra fixes.
20506         * lib/md5.c: Use #error rather than a string.
20507         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
20508         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
20509         (__attribute__): Define to empty for non recent-GCC.
20510         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
20511         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
20512         Renamed from their non-__ counterparts, with new macros replacing
20513         them if not _LIBC.  Add __THROW attribute.
20514         (rol): Remove.
20515         (struct md5_ctx): Align buffer if using GCC.
20516         * lib/sha1.h (struct sha1_ctx): Likewise.
20517         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
20518         The old name was backwards.
20519         (NOTSWAP): Remove; not used.
20520         (rol): New macro, moved here from md5.h.
20521         (sha1_process_block): Remove a FIXME that doesn't make sense.
20522
20523 2005-09-12  Derek Price  <derek@ximbiot.com>
20524
20525         Return usable errors from canon-host.
20526         * lib/canon-host.h: New file.
20527         * lib/canon-host.c (canon_host): Wrap...
20528         (canon_host_r): ...this new function, which now relies exclusively on
20529         getaddrinfo.
20530         (ch_strerror): New function.
20531         (last_cherror): New global.
20532         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
20533         interface.
20534         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
20535         void *.
20536         (freeaddrinfo): Free ai->ai_canonname when set.
20537
20538 2005-09-12  Derek Price  <derek@ximbiot.com>
20539
20540         Make canon-host require getaddrinfo.
20541         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
20542         AC_LIBSOURCE canon-host.h.  Call...
20543         (gl_PREREQ_CANON_HOST): ...this new function, which requires
20544         gl_GETADDRINFO.
20545         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
20546
20547 2005-09-12  Derek Price  <derek@ximbiot.com>
20548
20549         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
20550         LGPL.
20551         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
20552
20553 2005-09-12  Derek Price  <derek@ximbiot.com>
20554
20555         * lib/gai_strerror.c: Include config.h when available.  Include
20556         getaddrinfo.h before other headers to test interface.
20557         Reported by Larry Jones <lawrence.jones@ugs.com>.
20558
20559 2005-09-12  Derek Price  <derek@ximbiot.com>
20560             Paul Eggert  <eggert@cs.ucla.edu>
20561
20562         * modules/glob (Files): Add glob-libc.h.
20563
20564 2005-09-12  Derek Price  <derek@ximbiot.com>
20565             Paul Eggert  <eggert@cs.ucla.edu>
20566
20567         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
20568         glob_.h, glob-libc.h.
20569         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
20570
20571 2005-09-12  Derek Price  <derek@ximbiot.com>
20572             Paul Eggert  <eggert@cs.ucla.edu>
20573
20574         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
20575         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
20576         protecting things that should be done only in gnulib contexts.
20577         * lib/glob_.h: New file, containing only the glob things needed for
20578         gnulib.
20579         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
20580         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
20581         (glob, globfree, glob_pattern_p): Now defined simply in terms of
20582         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
20583         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
20584         and to respect the namespace rules better.
20585
20586 2005-09-08  Simon Josefsson  <jas@extundo.com>
20587
20588         * modules/socklen: New file.
20589
20590 2005-09-08  Simon Josefsson  <jas@extundo.com>
20591
20592         * m4/socklen.m4: New file.
20593
20594 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20595
20596         * modules/utimens (Files): Add m4/utimbuf.m4, since
20597         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
20598         Reported by Sergey Poznyakoff.
20599
20600 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20601
20602         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
20603         definitions, since that's the preferred style in glibc.
20604         Fix a minor spacing issue, and update copyright notice to match
20605         glibc's.
20606
20607 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20608
20609         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
20610
20611 2005-09-06  Simon Josefsson  <jas@extundo.com>
20612
20613         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
20614         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
20615
20616 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
20617
20618         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
20619         warning.
20620
20621 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
20622
20623         * config/srclist.txt: Add glibc bug 1302.
20624
20625 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20626
20627         Change bitset word type from unsigned int to unsigned long int,
20628         as this has better performance on typical 64-bit hosts.
20629         Port bitset code to hosts with unusual word sizes.
20630         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
20631         (build_collating_symbol):
20632         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
20633         argument is a bitset.  This is merely a style issue, but it makes
20634         it clearer that an entire array is expected.
20635         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
20636         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
20637         Port to the case where bitset_word is not the same as unsigned int.
20638         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20639         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
20640         Likewise.
20641         * lib/regexec.c (check_dst_limits_calc_pos_1,
20642         check_subexp_matching_top):
20643         (build_trtable, group_nodes_into_DFAstates):
20644         Likewise.
20645         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
20646         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
20647         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
20648         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
20649         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
20650         * lib/regcomp.c (optimize_subexps, lower_subexp):
20651         Work even if bitset_word has holes in its bitwise representation.
20652         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
20653         * lib/regexec.c (check_dst_limits_calc_pos_1,
20654         check_subexp_matching_top):
20655         Likewise.
20656         * lib/regex_internal.c (re_string_reconstruct):
20657         Don't assume UCHAR_MAX == 255.
20658         * lib/regex_internal.h (bitset_set_all): Likewise.
20659         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
20660         All uses changed.
20661         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
20662         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
20663         All uses changed.
20664         (BITSET_WORD_MAX): New macro.
20665         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
20666         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
20667         (bitset_empty, bitset_copy):
20668         Prefer sizeof (bitset) to multiplying it out ourselves.
20669         (bitset_not_merge): Remove; unused.
20670         (bitset_contain): Return bool, not unsigned int with one bit on.
20671         All callers changed.
20672         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
20673         alignment than re_node_set; do this by defining a new internal
20674         type struct dests_alloc and using it to allocate memory.
20675
20676 2005-09-05  Bruno Haible  <bruno@clisp.org>
20677
20678         * gnulib-tool (func_import): Fix comparison in handling of symbolic
20679         links.
20680
20681 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
20682
20683         * modules/size_max (Makefile.am): Add size_max.h
20684
20685 2005-09-04  Derek Price  <derek@ximbiot.com>
20686
20687         * gnulib-tool (func_import): Fix reversed $symbolic logic.
20688
20689 2005-09-03  Simon Josefsson  <jas@extundo.com>
20690
20691         * gnulib-tool: Fix typo.
20692
20693 2005-09-03  Simon Josefsson  <jas@extundo.com>
20694
20695         * config/srclist.txt: Add glibc bug 1293.
20696
20697 2005-09-03  Derek Price  <derek@ximbiot.com>
20698
20699         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
20700         From Larry Jones <lawrence.jones@ugs.com>.
20701
20702 2005-09-02  Simon Josefsson  <jas@extundo.com>
20703
20704         * modules/socklen: New file.
20705
20706 2005-09-02  Simon Josefsson  <jas@extundo.com>
20707
20708         * modules/havelib: New module.
20709
20710         * modules/gettext, modules/iconv, modules/lock, modules/readline:
20711         Use havelib.
20712
20713 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
20714
20715         Check for arithmetic overflow when calculating sizes, to prevent
20716         some buffer-overflow issues.  These patches are conservative, in the
20717         sense that when I couldn't determine whether an overflow was possible,
20718         I inserted a run-time check.
20719         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
20720         macros.
20721         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
20722         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
20723         (re_xnrealloc, re_x2nrealloc): New inline functions.
20724         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
20725         parse_bracket_exp):
20726         (build_equiv_class, build_charclass): Check for arithmetic overflow
20727         in size expression calculations.
20728         * lib/regex_internal.c (re_string_realloc_buffers):
20729         (build_wcs_upper_buffer, re_node_set_add_intersect):
20730         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
20731         (re_dfa_add_node, register_state): Likewise.
20732         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
20733         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
20734         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
20735         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
20736
20737 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
20738
20739         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
20740         m4/ulonglong.m4.  Problem reported by Martin Lambers.
20741
20742 2005-09-02  Bruno Haible  <bruno@clisp.org>
20743
20744         Support for lib vs. lib64 distinction on biarch platforms.
20745         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
20746         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
20747         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
20748
20749 2005-09-02  Bruno Haible  <bruno@clisp.org>
20750
20751         * gnulib-tool (import): In the other first-use case, provide defaults
20752         as well.
20753
20754 2005-09-02  Bruno Haible  <bruno@clisp.org>
20755
20756         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
20757         patches not yet found in the latest gettext release.
20758
20759 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20760
20761         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
20762         to avoid a collision with bits/local_lim.h in glibc.
20763         All uses changed.  Problem reported by Dmitry V. Levin in
20764         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
20765
20766         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
20767         bugs in int versus size_t comparisons.
20768         (re_string_context_at): Fix bug where the code assumed that
20769         Idx is signed.
20770
20771         Use bool where appropriate.
20772         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
20773         All callers changed.
20774         (calc_eclosure_iter): Likewise, for ROOT arg.
20775         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
20776         (build_charclass_op): Likewise, for NON_MATCH arg.
20777         * lib/regex_internal.c (re_string_allocate, re_string_construct):
20778         (re_string_construct_common): Likewise, for ICASE arg.
20779         * lib/regexec.c (re_search_2_stub, re_search_stub):
20780         Likewise, for RET_LEN arg.
20781         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
20782         (set_regs): Likewise, for FL_BACKTRACK arg.
20783         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
20784         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
20785         (calc_eclosure_iter, parse_bracket_exp):
20786         Use bool for internal variables that are booleans.
20787         * lib/regexec.c (re_search_internal, check_matching,
20788         proceed_next_node):
20789         (set_regs, build_sifted_states, sift_states_bkref):
20790         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
20791         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
20792         (find_collation_sequence_value):
20793         Likewise.
20794         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
20795         (re_node_set_compare):
20796         Return bool, not int. All callers changed.
20797         * lib/regexec.c (check_halt_node_context, check_dst_limits):
20798         (build_trtable, check_node_accept): Likewise.
20799         * lib/regex_internal.h: Include stdbool.h.
20800
20801         Fix bugs uncovered when converting to bool.
20802         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
20803         failure instead of charging ahead blindly.
20804         * lib/regex_internal.c (register_state): Likewise.
20805         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
20806         for freeing internal storage.
20807         (group_nodes_into_DFA_states): Use unsigned int, not int, for
20808         bitset pieces used as boolean, to avoid undefined behavior
20809         on hosts that do int overflow checking.
20810
20811 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20812
20813         * config/srclist.txt: Add glibc bugs 1285-1287.
20814
20815 2005-09-01  Jim Meyering  <jim@meyering.net>
20816
20817         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
20818         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
20819         Require gl_STAT_MACROS, too.
20820
20821 2005-09-01  Bruno Haible  <bruno@clisp.org>
20822
20823         * gnulib-tool (import): In the first-use case, provide defaults.
20824
20825 2005-09-01  Bruno Haible  <bruno@clisp.org>
20826
20827         * gnulib-tool (func_import): Remove the .tmp files.
20828
20829 2005-09-01  Bruno Haible  <bruno@clisp.org>
20830
20831         * gnulib-tool (func_import): Fix handling of symbolic links.
20832
20833 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20834
20835         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
20836         old glibc regex code mishandles strings longer than 2**31 bytes.
20837         This patch fixes this when the regex code is used in gnulib
20838         (i.e., outside glibc).
20839
20840         This patch should not affect the use of the regex code inside
20841         glibc.  No doubt this problem also needs to be handled for glibc
20842         as well, but the result will be an incompatible change to the
20843         glibc ABI, and the old ABI will have to be supported too.  That
20844         can be the the subject for another patch.
20845
20846         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
20847         governing whether the rest of this patch is active.  By default,
20848         the macro is disabled and the patch has no effect.
20849         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
20850         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
20851         (struct re_pattern_buffer, re_search, re_search_2, re_match):
20852         (re_match_2, re_set_registers): Use the new types.
20853         * lib/regex_internal.h (Idx, re_hashval_t): New types.
20854         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
20855         New macros.
20856         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
20857         (re_string_context_at, bin_tree_t, re_dfastate_t):
20858         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
20859         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
20860         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
20861         (re_string_char_size_at, re_string_wchar_at):
20862         (re_string_elem_size_at):
20863         Use the new types and macros to port to 64-bit hosts.
20864         Use unsigned types for internal values, so that the code
20865         mostly works even for arrays larger than SSIZE_MAX.
20866         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
20867         (search_duplicated_node, calc_eclosure_iter, fetch_number):
20868         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
20869         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
20870         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
20871         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
20872         (calc_inveclosure, parse_dup_op, build_range_exp):
20873         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
20874         (fetch_number, create_token_tree, mark_opt_subexp):
20875         Likewise.
20876         * lib/regex_internal.c (re_string_construct_common,
20877         create_ci_newstate):
20878         (create_cd_newstate, re_string_allocate, re_string_construct):
20879         (re_string_realloc_buffers, build_wcs_upper_buffer):
20880         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
20881         (re_string_reconstruct, re_string_peek_byte_case):
20882         (re_string_fetch_byte_case, re_string_context_at):
20883         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
20884         (re_node_set_init_copy, re_node_set_add_intersect):
20885         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20886         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20887         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
20888         (re_acquire_state, re_acquire_state_context, register_state):
20889         Likewise.
20890         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
20891         search_cur_bkref_entry):
20892         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
20893         (re_search_internal, re_search_2_stub, re_search_stub)
20894         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
20895         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
20896         (update_cur_sifted_state, check_dst_limits):
20897         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20898         (check_subexp_limits, sift_states_bkref, merge_state_array):
20899         (check_subexp_matching_top, get_subexp, get_subexp_sub):
20900         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
20901         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20902         (expand_bkref_cache, check_node_accept_bytes):
20903         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
20904         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
20905         (acquire_init_state_context, check_halt_node_context):
20906         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
20907         (sift_states_backward, clean_state_log_if_needed):
20908         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
20909         (find_recover_state, transit_state_sb, transit_state_mb):
20910         (transit_state_bkref, build_trtable, match_ctx_clean):
20911         Likewise.
20912         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
20913         to work around an assumption that REG_MISSING is negative.
20914
20915         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
20916         (seek_collating_symbol_entry) [defined _LIBC]:
20917         (lookup_collation_sequence_value) [defined _LIBC]:
20918         (build_range_exp, build_collating_symbol) [defined _LIBC]:
20919         Use prototypes rather than old-style function definitions.
20920         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
20921         (transit_state_sb) [0]:
20922         (find_collation_sequence_value) [defined _LIBC]: Likewise.
20923
20924         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
20925         rm_eo.
20926
20927         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
20928         (optimize_subexps, lower_subexp):
20929         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
20930         since the signed shift might overflow.  Use 1u<<31 instead.
20931         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20932         Likewise.
20933         * lib/regexec.c (check_dst_limits_calc_pos_1,
20934         check_subexp_matching_top): Likewise.
20935
20936         * lib/regcomp.c (optimize_subexps, lower_subexp):
20937         Use CHAR_BIT rather than 8, for clarity.
20938         * lib/regexec.c (check_dst_limits_calc_pos_1):
20939         (check_subexp_matching_top): Likewise.
20940         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
20941         have to worry about portability issues when shifting it left.
20942         Remove no-longer-needed test for table_size > 0.
20943         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
20944         in a word, as the resulting behavior is undefined.
20945         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
20946         in one case, a <= should have been an <, and in another case the
20947         whole test was missing.
20948         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
20949         the standard name CHAR_BIT.
20950         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
20951         this is not true on one's complement and signed-magnitude hosts.
20952
20953         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
20954         next_last_offset.
20955         (struct re_dfa_t): Remove unused member states_alloc.
20956         * lib/regcomp.c (init_dfa): Don't initialize unused members.
20957
20958 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20959
20960         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
20961         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
20962         and large-file glibc and in 32-bit large-file Solaris.
20963
20964 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20965
20966         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
20967         lengths fit in regoff_t; this isn't true if regoff_t is the same
20968         width as size_t.
20969         * lib/regex.c (re_search_internal): 5th arg is LAST_START
20970         (= START + RANGE) instead of RANGE.  This avoids overflow
20971         problems when regoff_t is the same width as size_t.
20972         All callers changed.
20973         (re_search_2_stub): Check for overflow when adding the
20974         sizes of the two strings.
20975         (re_search_stub): Check for overflow when adding START
20976         to RANGE; if it occurs, substitute the extreme value.
20977
20978 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20979
20980         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
20981
20982 2005-08-31  Jim Meyering  <jim@meyering.net>
20983
20984         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
20985         a pointer-to-const.
20986         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
20987         (register_state): Likewise.
20988         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
20989         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20990         (group_nodes_into_DFAstates): Likewise.
20991
20992 2005-08-31  Jim Meyering  <jim@meyering.net>
20993
20994         * check-module: Add a FIXME comment.
20995
20996 2005-08-31  Eric Blake  <ebb9@byu.net>
20997
20998         * modules/unistd-safer (Files): Add unistd--.h.
20999         * modules/stdio-safer (Files): Add stdio--.h.
21000
21001 2005-08-31  Derek Price  <derek@ximbiot.com>
21002
21003         * lib/getdelim.c (getdelim): Return EOF on EOF.
21004         Reported by Larry Jones <lawrence.jones@ugs.com>.
21005
21006 2005-08-31  Bruno Haible  <bruno@clisp.org>
21007
21008         Avoid unnecessary diffs in the generated lib/Makefile.am.
21009         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
21010         the generated files.
21011         (func_import): Don't set cmd.
21012
21013 2005-08-31  Bruno Haible  <bruno@clisp.org>
21014
21015         * lib/strstr.c: Include <stddef.h>, for NULL.
21016         * lib/strcasestr.c: Likewise.
21017         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
21018
21019 2005-08-31  Bruno Haible  <bruno@clisp.org>
21020
21021         * gnulib-tool: New option --macro-prefix.
21022         (func_import): Use macro_prefix.
21023         (import): Handle option --macro-prefix.
21024
21025 2005-08-31  Bruno Haible  <bruno@clisp.org>
21026
21027         * gnulib-tool (import): Rename most ac_* variables to cached_*.
21028         Also use new variables cached_lgpl, cached_libtool.
21029
21030 2005-08-31  Bruno Haible  <bruno@clisp.org>
21031
21032         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
21033         always instantiating them.
21034
21035 2005-08-31  Bruno Haible  <bruno@clisp.org>
21036
21037         * gnulib-tool (func_import): Read the previous cached settings
21038         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
21039         earlier added by gnulib but are now dropped. Warn when a gnulib file
21040         overwrites a non-gnulib file.
21041
21042 2005-08-31  Bruno Haible  <bruno@clisp.org>
21043
21044         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
21045         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
21046         projects that don't keep autogenerated files in CVS. Put into
21047         actioncmd only the specified modules, not the transitive closure.
21048
21049 2005-08-31  Bruno Haible  <bruno@clisp.org>
21050
21051         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
21052         Create directories that shall be filled.
21053         (import): Don't look for gl_* macros in configure.ac. Recurse across
21054         all directories containing a gnulib-cache.m4 files, if meaningful.
21055
21056 2005-08-31  Bruno Haible  <bruno@clisp.org>
21057
21058         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
21059         (import): Set seen_libtool when we see gl_LIBTOOL.
21060
21061 2005-08-31  Bruno Haible  <bruno@clisp.org>
21062
21063         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
21064         declaration macro definitions from generated gnulib.m4.
21065
21066 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
21067
21068         * lib/iconvme.h: Add prototype for iconv_alloc.
21069
21070 2005-08-29  Simon Josefsson  <jas@extundo.com>
21071
21072         * lib/iconvme.c: Fix errno.
21073
21074 2005-08-29  Bruno Haible  <bruno@clisp.org>
21075
21076         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
21077         that it works when the directory contains spaces.
21078
21079 2005-08-29  Bruno Haible  <bruno@clisp.org>
21080
21081         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
21082
21083 2005-08-29  Bruno Haible  <bruno@clisp.org>
21084
21085         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
21086         Emit more advice.
21087
21088 2005-08-29  Bruno Haible  <bruno@clisp.org>
21089         and Stepan Kasal  <kasal@ucw.cz>
21090
21091         * check-module: If more parameters are given, check each of them
21092         separately; add more exceptions, as noted by Jim Meyering.
21093         (check_module): New procedure.
21094         (%exempt_header): Now contains all exceptions.
21095
21096 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
21097
21098         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
21099
21100 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
21101
21102         * lib/iconvme.c: Split iconv_string into iconv_alloc.
21103
21104 2005-08-28  Bruno Haible  <bruno@clisp.org>
21105
21106         * m4/gnulib-tool.m4: New file.
21107
21108 2005-08-27  Jim Meyering  <jim@meyering.net>
21109
21110         * modules/unistd-safer (Files): Add pipe-safer.c.
21111         * modules/fcntl-safer (Files): Add creat-safer.c.
21112
21113 2005-08-27  Jim Meyering  <jim@meyering.net>
21114
21115         * m4/stdlib-safer.m4: New file.  From coreutils.
21116         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
21117         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
21118         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
21119         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
21120         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
21121
21122 2005-08-27  Jim Meyering  <jim@meyering.net>
21123
21124         * lib/fopen-safer.c: Merge minor changes from coreutils.
21125         * lib/dup-safer.c: Likewise.
21126         * lib/fd-safer.c: Likewise.
21127
21128         Merge from coreutils.
21129         * lib/stdio--.h: New file.
21130         * lib/stdlib--.h: New file.
21131         * lib/mkstemp-safer.c: New file.
21132
21133         GNU tar needs these.
21134         * lib/pipe-safer.c: New file.
21135         * lib/creat-safer.c: New file.
21136         * lib/fcntl--.h (creat): Define to creat_safer.
21137         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
21138         * lib/unistd--.h (pipe): Define to pipe_safer.
21139         * lib/unistd-safer.h: Declare pipe_safer.
21140
21141 2005-08-26  Simon Josefsson  <jas@extundo.com>
21142
21143         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
21144         Haible <bruno@clisp.org>.
21145
21146 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21147
21148         * lib/regex_internal.h: Remove all references to
21149         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
21150         or better.
21151         (bitset_not, bitset_merge, bitset_not_merge):
21152         (bitset_mask, re_string_allocate, re_string_construct):
21153         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
21154         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
21155         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
21156         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
21157         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
21158         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
21159         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
21160         (re_acquire_state_context):
21161         Remove unnecessary forward decls.
21162         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
21163         Put __attribute at function definition,
21164         now that the function decl has been removed.
21165         * lib/regex_internal.c (re_string_peek_byte_case):
21166         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
21167         Likewise.
21168
21169 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
21170
21171         * m4/regex.m4: Add AC_PREREQ(2.50).
21172         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
21173
21174 2005-08-25  Simon Josefsson  <jas@extundo.com>
21175
21176         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
21177         __fsetlocking.
21178
21179 2005-08-25  Simon Josefsson  <jas@extundo.com>
21180
21181         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
21182         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
21183         GLIBC specific code.
21184
21185 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21186
21187         Make regex safe for g++.  This fixes one real bug (an "err"
21188         that should have been "*err").  g++ problem reported by
21189         Sam Steingold.
21190         * lib/regex_internal.h (re_calloc): New macro, consistent with
21191         re_malloc etc.  All callers of calloc changed to use re_calloc.
21192         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
21193         not int.  All callers changed.
21194         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
21195         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
21196         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
21197         (find_recover_state): Change "err" to "*err"; this fixes what
21198         appears to be a real bug.
21199         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
21200         versus int.
21201
21202 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21203
21204         * modules/regex (Depends-on): Add malloc, since the code
21205         assumes that !malloc(0) means failure.
21206
21207 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21208
21209         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
21210
21211         alloca modernization/simplification for regex.
21212         * lib/regex.c: Remove portability cruft for alloca.  This no longer
21213         needs to be at the start of the file, and can be moved into
21214         regex_internal.h and simplified.
21215         * lib/regex_internal.h: Include <alloca.h>.
21216         (__libc_use_alloca) [!defined _LIBC]: New macro.
21217         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
21218         now works outside glibc.
21219
21220 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21221
21222         * config/srclist.txt: Add glibc bugs 1241, 1245.
21223
21224 2005-08-25  Jim Meyering  <jim@meyering.net>
21225
21226         * lib/open-safer.c: Include <config.h>.
21227         Otherwise, we'd lose LARGEFILE support in any file using
21228         e.g. "fcntl--.h"
21229
21230 2005-08-25  Bruno Haible  <bruno@clisp.org>
21231
21232         * m4/minmax.m4: Require autoconf 2.52.
21233         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
21234         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
21235         alternatives of translit over the alphabet.
21236         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
21237
21238 2005-08-24  Simon Josefsson  <jas@extundo.com>
21239
21240         * tests/test-getpass.c: New file.
21241
21242 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21243
21244         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
21245         for GNU regex features.
21246
21247 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21248
21249         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
21250         * lib/regex.h (regerror): Likewise.
21251
21252         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
21253         requires this.  (The code never needed it.)
21254
21255         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
21256         All uses of recently-renamed identifiers changed to use the new,
21257         POSIX-compliant names.  The code will build and run just fine
21258         without these changes, but it's better to eat our own dog food
21259         and use the standard-conforming names.
21260
21261         * lib/regex.h: Fix a multitude of POSIX name space violations.
21262         These changes have an effect only for programs that define
21263         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
21264         do not change anything for programs compiled in the normal way.
21265         Also, there is no effect on the ABI.
21266
21267         (_REGEX_SOURCE): New macro.
21268         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
21269         defined and _GNU_SOURCE is not; this fixes a name space violation.
21270
21271         Rename the following macros to obey POSIX requirements.
21272         The old names are still visible as macros if _REGEX_SOURCE is defined.
21273         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
21274         RE_BACKSLASH_ESCAPE_IN_LISTS.
21275         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
21276         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
21277         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
21278         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
21279         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
21280         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
21281         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
21282         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
21283         (REG_INTERVALS): renamed from RE_INTERVALS.
21284         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
21285         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
21286         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
21287         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
21288         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
21289         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
21290         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
21291         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
21292         RE_UNMATCHED_RIGHT_PAREN_ORD.
21293         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
21294         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
21295         (REG_DEBUG): renamed from RE_DEBUG.
21296         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
21297         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
21298         unusual, since we can't clash with the POSIX REG_ICASE.
21299         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
21300         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
21301         (REG_NO_SUB): renamed from RE_NO_SUB.
21302         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
21303         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
21304         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
21305         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
21306         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
21307         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
21308         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
21309         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
21310         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
21311         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
21312         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
21313         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
21314         RE_SYNTAX_POSIX_MINIMAL_BASIC.
21315         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
21316         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
21317         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
21318         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
21319         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
21320         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
21321         (REG_FIXED): Renamed from REGS_FIXED.
21322         (REG_NREGS): Renamed from RE_NREGS.
21323
21324         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
21325         of other REG_* macros, since POSIX says the user is allowed to
21326         #undef these macros selectively.
21327
21328         (reg_errcode_t): Update comment stating what other tables need
21329         to be consistent.
21330
21331         Rename the following enum values to obey POSIX requirements.
21332         The old names are still visible as macros.
21333         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
21334         is not defined, since GNU is supposed to be a superset of POSIX as
21335         much as possible, and since we want reg_errcode_t to be a signed
21336         type for implementation consistency.
21337         (_REG_NOERROR): Renamed from REG_NOERROR.
21338         (_REG_NOMATCH): Renamed from REG_NOMATCH.
21339         (_REG_BADPAT): Renamed from REG_BADPAT.
21340         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
21341         (_REG_ECTYPE): Renamed from REG_ECTYPE.
21342         (_REG_EESCAPE): Renamed from REG_EESCAPE.
21343         (_REG_ESUBREG): Renamed from REG_ESUBREG.
21344         (_REG_EBRACK): Renamed from REG_EBRACK.
21345         (_REG_EPAREN): Renamed from REG_EPAREN.
21346         (_REG_EBRACE): Renamed from REG_EBRACE.
21347         (_REG_BADBR): Renamed from REG_BADBR.
21348         (_REG_ERANGE): Renamed from REG_ERANGE.
21349         (_REG_ESPACE): Renamed from REG_ESPACE.
21350         (_REG_BADRPT): Renamed from REG_BADRPT.
21351         (_REG_EEND): Renamed from REG_EEND.
21352         (_REG_ESIZE): Renamed from REG_ESIZE.
21353         (_REG_ERPAREN): Renamed from REG_ERPAREN.
21354         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
21355         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
21356         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
21357         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
21358
21359         (_REG_RE_NAME, _REG_RM_NAME): New macros.
21360         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
21361         changed.  But support the old name if the new one is not defined
21362         and if _REGEX_SOURCE.
21363
21364         Change the following member names in struct re_pattern_buffer.
21365         The old names are still supported if !_REGEX_SOURCE.
21366         The new names are always supported, regardless of _REGEX_SOURCE.
21367         (re_buffer): Renamed from buffer.
21368         (re_allocated): Renamed from allocated.
21369         (re_used): Renamed from used.
21370         (re_syntax): Renamed from syntax.
21371         (re_fastmap): Renamed from fastmap.
21372         (re_translate): Renamed from translate.
21373         (re_can_be_null): Renamed from can_be_null.
21374         (re_regs_allocated): Renamed from regs_allocated.
21375         (re_fastmap_accurate): Renamed from fastmap_accurate.
21376         (re_no_sub): Renamed from no_sub.
21377         (re_not_bol): Renamed from not_bol.
21378         (re_not_eol): Renamed from not_eol.
21379         (re_newline_anchor): Renamed from newline_anchor.
21380
21381         Change the following member names in struct re_registers.
21382         The old names are still supported if !_REGEX_SOURCE.
21383         The new names are always supported, regardless of _REGEX_SOURCE.
21384         (rm_num_regs): Renamed from num_regs.
21385         (rm_start): Renamed from start.
21386         (rm_end): Renamed from end.
21387
21388         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
21389         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
21390         Prepend __ to parameter names.
21391
21392         Undo yesterday's changes.
21393
21394 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21395
21396         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
21397         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
21398         lib/regex.c.
21399
21400 2005-08-24  Jim Meyering  <jim@meyering.net>
21401
21402         Sync from coreutils.
21403         * m4/fcntl-safer.m4: New file.
21404
21405         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
21406         and object files for this module.
21407
21408 2005-08-24  Jim Meyering  <jim@meyering.net>
21409
21410         Sync from coreutils.
21411         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
21412
21413 2005-08-24  Jim Meyering  <jim@meyering.net>
21414
21415         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
21416         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
21417
21418 2005-08-24  Jim Meyering  <jim@meyering.net>
21419
21420         * modules/fcntl-safer: New module.
21421         * modules/fts (Depends-on): Add fcntl-safer.
21422         * MODULES.html.sh (File descriptor based Input/Output):
21423         Add fcntl-safer.
21424
21425 2005-08-24  Bruno Haible  <bruno@clisp.org>
21426
21427         Support for unit test modules.
21428         * modules/README: Mention tests modules.
21429         * modules/TEMPLATE-TESTS: New file.
21430         * gnulib-tool: New options --extract-tests-module, --with-tests and
21431         --tests-base (unused for the moment).
21432         (testsbase, inctests): New variables.
21433         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
21434         (func_verify_module): Exclude TEMPLATE-TESTS.
21435         (func_verify_nontests_module, func_verify_tests_module): New functions.
21436         (func_get_dependencies): Add implicit dependency for tests modules.
21437         (func_get_tests_module): New function.
21438         (func_modules_transitive_closure): When --with-tests was specified,
21439         include the unit tests as well, unless explicitly avoided.
21440         (func_emit_lib_Makefile_am): Ignore the tests modules here.
21441         (func_emit_tests_Makefile_am): New function.
21442         (func_create_testdir): When --with-tests was specified, emit a
21443         tests/ directory.
21444         * MODULES.html.sh (Future developments): Update.
21445
21446 2005-08-24  Bruno Haible  <bruno@clisp.org>
21447
21448         * modules/tls-tests: New file.
21449         * tests/test-tls.c: New file, from GNU gettext.
21450
21451 2005-08-24  Bruno Haible  <bruno@clisp.org>
21452
21453         * modules/lock-tests: New file.
21454         * tests/test-lock.c: New file, from GNU gettext.
21455
21456 2005-08-24  Bruno Haible  <bruno@clisp.org>
21457
21458         * lib/lock.h: Add multiple inclusion guard.
21459         * lib/tls.h: Add multiple inclusion guard.
21460
21461 2005-08-24  Bruno Haible  <bruno@clisp.org>
21462
21463         * gnulib-tool: Add support for the --aux-dir option to
21464         --create-testdir, --create-megatestdir, --test, --megatest.
21465         (func_create_testdir, func_create_megatestdir): Optionally emit a
21466         AC_CONFIG_AUX_DIR directive.
21467         (create-testdir, create-megatestdir, test, megatest): Provide a
21468         default value for $auxdir.
21469
21470 2005-08-24  Bruno Haible  <bruno@clisp.org>
21471
21472         * gnulib-tool (import): Use compound statement instead of subshell
21473         where possible.
21474
21475 2005-08-24  Bruno Haible  <bruno@clisp.org>
21476
21477         * gnulib-tool (import): Change --aux-dir default to "build-aux".
21478
21479 2005-08-24  Bruno Haible  <bruno@clisp.org>
21480
21481         * gnulib-tool (func_version): Update.
21482
21483 2005-08-24  Bruno Haible  <bruno@clisp.org>
21484
21485         * gnulib-tool (func_import, func_create_testdir,
21486         func_create_megatestdir): Quote all autoconf macro arguments.
21487
21488 2005-08-24  Bruno Haible  <bruno@clisp.org>
21489
21490         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
21491         option --force, because --force causes the aclocal.m4 of each
21492         subdirectory to be newer than the corresponding config.h.in.
21493
21494 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21495
21496         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
21497         All contents moved to gl_REGEX.
21498         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
21499         assume that it does.
21500
21501 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21502
21503         * lib/regex.h (REG_NOSYS)
21504         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
21505         Define, since POSIX requires it as of 2001.
21506         (_REG_ENOSYS)
21507         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
21508         New private symbol, used to keep the enum signed in all cases.
21509         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
21510         Youngman in
21511         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
21512
21513         * lib/regex_internal.c (re_string_skip_chars, register_state):
21514         (calc_state_hash):
21515         Remove forward decls; no longer needed now that we use prototypes.
21516         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
21517         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
21518         (clean_state_log_if_needed): Likewise.
21519
21520 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21521
21522         * config/srclist.txt: Add glibc bugs 1231-1233.
21523
21524 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21525
21526         Fix problems reported by Sam Steingold in
21527         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
21528         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
21529         assumed that reg_errcode_t is a signed type, which is not
21530         necessarily true if _XOPEN_SOURCE is not defined.
21531         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
21532         since some compilers warn about it otherwise.
21533
21534 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21535
21536         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
21537         (init_word_char, create_initial_state, duplicate_node_closure):
21538         (fetch_token, peek_token_bracket, build_range_exp):
21539         (build_collating_symbol): Remove forward decls; no longer needed
21540         now that we use prototypes.
21541
21542         * lib/regcomp.c:
21543         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
21544         (re_compile_fastmap_iter, regcomp, regerror, regfree):
21545         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
21546         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
21547         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
21548         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
21549         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
21550         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
21551         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
21552         (build_range_exp, build_collating_symbol, parse_bracket_exp):
21553         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
21554         (build_charclass, build_charclass_op, fetch_number, create_tree):
21555         (create_token_tree, mark_opt_subexp, duplicate_tree):
21556         Use prototypes rather than old-style definitions.
21557
21558         * lib/regex_internal.c:
21559         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
21560         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
21561         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
21562         (re_string_reconstruct, re_string_peek_byte_case):
21563         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
21564         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
21565         (re_node_set_init_copy, re_node_set_add_intersect):
21566         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
21567         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
21568         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
21569         (re_acquire_state, re_acquire_state_context, register_state):
21570         (create_ci_newstate, create_cd_newstate, free_state):
21571         Likewise.
21572         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
21573         re_search_2):
21574         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
21575         (re_search_internal, prune_impossible_nodes):
21576         (acquire_init_state_context, check_matching, static):
21577         (check_halt_node_context, check_halt_state_context, proceed_next_node):
21578         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
21579         (update_regs, sift_states_backward, build_sifted_states):
21580         (clean_state_log_if_needed, merge_state_array):
21581         (update_cur_sifted_state, add_epsilon_src_nodes):
21582         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
21583         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
21584         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
21585         (find_recover_state, check_subexp_matching_top, transit_state_mb):
21586         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
21587         (check_arrival, check_arrival_add_next_nodes):
21588         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
21589         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
21590         (check_node_accept_bytes, check_node_accept, extend_buffers):
21591         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
21592         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
21593         (sift_ctx_init):
21594         Likewise.
21595
21596         * lib/regex_internal.h:
21597         (re_string_allocate, re_string_construct, re_string_reconstruct):
21598         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
21599         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
21600         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
21601         (re_string_context_at, re_string_peek_byte_case):
21602         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
21603         is defined, since we now use prototypes always.
21604
21605         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
21606         C89 or better.  All uses removed.
21607
21608 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21609
21610         * config/srclist.txt: Add glibc bugs 1220-1227.
21611
21612 2005-08-20  Jim Meyering  <jim@meyering.net>
21613
21614         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
21615         of unused local, dfa.
21616
21617 2005-08-20  Bruno Haible  <bruno@clisp.org>
21618
21619         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
21620
21621 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21622
21623         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
21624         (re_node_set_insert_last, re_dfa_add_node):
21625         Rename local variables to avoid GCC shadowing warnings.
21626
21627 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21628
21629         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
21630         [defined lint]: Suppress bogus uninitialized-variable warnings.
21631
21632         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
21633         and let the caller return REG_ESPACE if out of space.  This
21634         removes an uninitialied-variable warning with GCC 4.0.1, and also
21635         avoids taking the address of a local variable.  All callers
21636         changed.
21637
21638 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21639
21640         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
21641         $LIBCSRC/posix/regexec.c.
21642         Add glibc bug 1217 for regcomp.c.
21643
21644 2005-08-19  Jim Meyering  <jim@meyering.net>
21645
21646         * lib/regexec.c (proceed_next_node): Redo local variables to
21647         avoid GCC shadowing warnings.
21648
21649 2005-08-18  Bruno Haible  <bruno@clisp.org>
21650
21651         * lib/strstr.c (strstr): Fix return value in multibyte case.
21652         * lib/strcasestr.c (strcasestr): Likewise.
21653
21654 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
21655
21656         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
21657
21658 2005-08-17  Jim Meyering  <jim@meyering.net>
21659
21660         Make the %s format (seconds since the epoch) work for a negative
21661         number and when used with a zero-padded field width, e.g. %015s.
21662
21663         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
21664         label so that it precedes the code to set `digits'.  Otherwise,
21665         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
21666         print `00-22'.  Now, it prints `-0022', as it should.
21667
21668 2005-08-17  Bruno Haible  <bruno@clisp.org>
21669
21670         * modules/strstr (Files): Add m4/mbrtowc.m4.
21671         (Depends-on): Add mbuiter.
21672
21673 2005-08-17  Bruno Haible  <bruno@clisp.org>
21674
21675         * modules/strcasestr: New file.
21676         * MODULES.html.sh (String handling, based on ANSI C 89): Add
21677         strcasestr.
21678
21679 2005-08-17  Bruno Haible  <bruno@clisp.org>
21680
21681         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
21682
21683 2005-08-17  Bruno Haible  <bruno@clisp.org>
21684
21685         * modules/mbuiter: New file.
21686         * MODULES.html.sh (Extended multibyte and wide character utilities):
21687         Add mbuiter.
21688
21689 2005-08-17  Bruno Haible  <bruno@clisp.org>
21690
21691         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
21692         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
21693
21694 2005-08-17  Bruno Haible  <bruno@clisp.org>
21695
21696         * m4/strcasestr.m4: New file.
21697
21698 2005-08-17  Bruno Haible  <bruno@clisp.org>
21699
21700         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
21701         * lib/strstr.c: Completely rewritten, with multibyte locale support.
21702
21703 2005-08-17  Bruno Haible  <bruno@clisp.org>
21704
21705         * lib/strcasestr.h: New file.
21706         * lib/strcasestr.c: New file.
21707
21708 2005-08-17  Bruno Haible  <bruno@clisp.org>
21709
21710         * lib/strcasecmp.c: Use mbuiter.h.
21711
21712 2005-08-17  Bruno Haible  <bruno@clisp.org>
21713
21714         * lib/mbuiter.h: New file.
21715
21716 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
21717
21718         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
21719         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
21720         and gl_GETOPT are both invoked via different paths (as happens
21721         with GNU tar CVS because it uses both argp and getopt), the former
21722         wins.
21723
21724 2005-08-16  Bruno Haible  <bruno@clisp.org>
21725
21726         * modules/tls: New file.
21727         * MODULES.html.sh (Multithreading): Add tls.
21728
21729 2005-08-16  Bruno Haible  <bruno@clisp.org>
21730
21731         * modules/strnlen1: New file.
21732         * MODULES.html.sh (String handling): Add strnlen1.
21733
21734 2005-08-16  Bruno Haible  <bruno@clisp.org>
21735
21736         * modules/strcase (Files): Add m4/mbrtowc.m4.
21737         (Depends-on): Add strnlen1, mbchar.
21738
21739 2005-08-16  Bruno Haible  <bruno@clisp.org>
21740
21741         * modules/mbiter: New file.
21742         * MODULES.html.sh (Extended multibyte and wide character utilities):
21743         Add mbiter.
21744
21745 2005-08-16  Bruno Haible  <bruno@clisp.org>
21746
21747         * modules/mbfile: New file.
21748         * MODULES.html.sh (Extended multibyte and wide character utilities):
21749         Add mbfile.
21750
21751 2005-08-16  Bruno Haible  <bruno@clisp.org>
21752
21753         * modules/mbchar: New file.
21754         * MODULES.html.sh (Extended multibyte and wide character utilities):
21755         New section.
21756
21757 2005-08-16  Bruno Haible  <bruno@clisp.org>
21758
21759         * m4/tls.m4: New file, from GNU gettext.
21760
21761 2005-08-16  Bruno Haible  <bruno@clisp.org>
21762
21763         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
21764         always.
21765         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
21766
21767 2005-08-16  Bruno Haible  <bruno@clisp.org>
21768
21769         * m4/mbiter.m4: New file.
21770
21771 2005-08-16  Bruno Haible  <bruno@clisp.org>
21772
21773         * m4/mbfile.m4: New file.
21774
21775 2005-08-16  Bruno Haible  <bruno@clisp.org>
21776
21777         * m4/mbchar.m4: New file.
21778
21779 2005-08-16  Bruno Haible  <bruno@clisp.org>
21780
21781         * lib/tls.h: New file, from GNU gettext.
21782         * lib/tls.c: New file, from GNU gettext.
21783
21784 2005-08-16  Bruno Haible  <bruno@clisp.org>
21785
21786         * lib/strnlen1.h: New file.
21787         * lib/strnlen1.c: New file.
21788
21789 2005-08-16  Bruno Haible  <bruno@clisp.org>
21790
21791         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
21792         (mbi_init): Update.
21793         (mbi_avail, mbi_advance): Let the iteration end before the terminating
21794         NUL byte, not after it.
21795
21796 2005-08-16  Bruno Haible  <bruno@clisp.org>
21797
21798         * lib/strcase.h (strcasecmp): Add note in comments.
21799         * lib/strncasecmp.c: Use code from strcasecmp.c.
21800         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
21801         (strcasecmp): Work correctly in multibyte locales.
21802
21803 2005-08-16  Bruno Haible  <bruno@clisp.org>
21804
21805         * lib/mbiter.h: New file.
21806
21807 2005-08-16  Bruno Haible  <bruno@clisp.org>
21808
21809         * lib/mbfile.h: New file.
21810
21811 2005-08-16  Bruno Haible  <bruno@clisp.org>
21812
21813         * lib/mbchar.h: New file.
21814         * lib/mbchar.c: New file.
21815
21816 2005-08-16  Bruno Haible  <bruno@clisp.org>
21817
21818         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
21819         the valid ones. Makes the comparison operations transitive:
21820         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
21821         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
21822
21823 2005-08-15  Simon Josefsson  <jas@extundo.com>
21824
21825         * modules/ssize_t (License): Change to 'unlimited'.
21826
21827         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
21828
21829 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21830
21831         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
21832         Add comments for each pending glibc patch.
21833
21834 2005-08-15  Bruno Haible  <bruno@clisp.org>
21835
21836         * lib/regex.h (__restrict_arr): Don't define to __restrict if
21837         __cplusplus is defined.
21838
21839 2005-08-14  Jim Meyering  <jim@meyering.net>
21840
21841         Sync from coreutils.
21842
21843         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
21844         Use the hash-table-based cycle-detection code not just when
21845         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
21846         Reported by James Youngman in
21847         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
21848         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
21849         FTS_TIGHT_CYCLE_CHECK.
21850         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
21851         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
21852         once again.
21853         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
21854         * lib/fts.c (fd_safer): Remove decl.
21855         Include fcntl--.h rather than unistd-safer.h
21856         (fts_safe_changedir): Don't call fd_safer; no longer needed
21857         now that we include fcntl--.h.
21858
21859 2005-08-12  Simon Josefsson  <jas@extundo.com>
21860
21861         * modules/getndelim2: Use ssize_t module.
21862         * modules/getnline: Likewise.
21863         * modules/safe-read: Likewise.
21864         * modules/xreadlink: Likewise.
21865
21866         * modules/ssize_t: New file.
21867
21868 2005-08-12  Simon Josefsson  <jas@extundo.com>
21869
21870         * m4/readline.m4: Look for termcap, curses or ncurses if required.
21871
21872 2005-08-12  Simon Josefsson  <jas@extundo.com>
21873
21874         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21875         ssize_t.
21876
21877 2005-08-12  Simon Josefsson  <jas@extundo.com>
21878
21879         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
21880         readline, getdelim and check_version.
21881         (Support for systems lacking ISO C 99: Sizes of integer types):
21882         Add size_max.
21883
21884 2005-08-12  Bruno Haible  <bruno@clisp.org>
21885
21886         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
21887
21888 2005-08-11  Simon Josefsson  <jas@extundo.com>
21889
21890         * modules/readline: New file.
21891
21892         * modules/strnlen (Files): Add strnlen.h.
21893
21894 2005-08-11  Simon Josefsson  <jas@extundo.com>
21895
21896         * m4/readline.m4: New file.
21897
21898 2005-08-11  Simon Josefsson  <jas@extundo.com>
21899
21900         * lib/readline.h, readline.c: New file.
21901
21902 2005-08-11  Simon Josefsson  <jas@extundo.com>
21903
21904         * doc/gnulib.texi (Initial import, Finishing touches): Mention
21905         gl_AVOID.
21906
21907 2005-08-11  Bruno Haible  <bruno@clisp.org>
21908
21909         * lib/strnlen.h (strnlen): Change parameter name to match comment.
21910
21911 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
21912
21913         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
21914
21915 2005-08-10  Simon Josefsson  <jas@extundo.com>
21916
21917         * tests/test-iconvme.c: New file.
21918
21919 2005-08-10  Simon Josefsson  <jas@extundo.com>
21920
21921         * m4/strnlen.m4: New file.
21922
21923         * m4/strndup.m4: Don't check for strnlen declaration, done in
21924         strnlen.m4.
21925
21926 2005-08-10  Simon Josefsson  <jas@extundo.com>
21927
21928         * lib/strndup.c: Use strnlen.h.
21929
21930         * lib/strnlen.h: New file.
21931
21932 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21933
21934         * README: Typos.
21935
21936 2005-08-02  Simon Josefsson  <jas@extundo.com>
21937
21938         * modules/readline: New file.
21939
21940 2005-08-02  Simon Josefsson  <jas@extundo.com>
21941
21942         * modules/getdelim: New file.
21943
21944         * modules/getline: Rewrite, don't use getndelim2.
21945
21946 2005-08-02  Simon Josefsson  <jas@extundo.com>
21947
21948         * m4/getline.m4: Separate out getdelim stuff into separate module.
21949
21950         * m4/getdelim.m4: New file.
21951
21952 2005-08-02  Simon Josefsson  <jas@extundo.com>
21953
21954         * lib/getline.h, getline.c: Rewrite.
21955
21956         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
21957
21958 2005-07-31  Bruno Haible  <bruno@clisp.org>
21959
21960         * lib/lock.h (gl_lock_initializer): New macro.
21961         (gl_lock_define_initialized): Use it.
21962         (gl_rwlock_initializer): New macro.
21963         (gl_rwlock_define_initialized): Use it.
21964         (gl_recursive_lock_initializer): New macro.
21965         (gl_recursive_lock_define_initialized): Use it.
21966
21967 2005-07-30  Karl Berry  <karl@gnu.org>
21968
21969         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
21970         Report from Ben Pfaff, regarding getopt.
21971
21972 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
21973
21974         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
21975         normal way.
21976         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
21977         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
21978         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
21979         (gl_GETOPT): Use the new macros.  Most of the implementation
21980         is moved to the new macros.  This is for programs like Emacs
21981         that don't want all the functionality of gl_GETOPT.
21982
21983 2005-07-26  Bruno Haible  <bruno@clisp.org>
21984
21985         * m4/lock.m4: Update from GNU gettext.
21986
21987 2005-07-26  Bruno Haible  <bruno@clisp.org>
21988
21989         * lib/lock.h: Update from GNU gettext.
21990         * lib/lock.c: Update from GNU gettext.
21991
21992 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
21993
21994         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
21995         obsolescent AC_TRY_RUN.  Include the default includes files, for
21996         'exit'.
21997
21998 2005-07-24  Bruno Haible  <bruno@clisp.org>
21999
22000         * modules/visibility: New file.
22001         * MODULES.html.sh (Misc): Add visibility.
22002
22003 2005-07-24  Bruno Haible  <bruno@clisp.org>
22004
22005         * m4/visibility.m4: New file.
22006
22007 2005-07-24  Bruno Haible  <bruno@clisp.org>
22008
22009         * doc/visibility.texi: New file.
22010
22011 2005-07-22  Bruno Haible  <bruno@clisp.org>
22012
22013         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
22014         $(ALLOCA_H), redundant through BUILT_SOURCES.
22015         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
22016         redundant through BUILT_SOURCES.
22017         * modules/byteswap (Makefile.am): Remove explicit dependency on
22018         $(BYTESWAP_H), redundant through BUILT_SOURCES.
22019         * modules/fnmatch (Makefile.am): Remove explicit dependency on
22020         $(FNMATCH_H), redundant through BUILT_SOURCES.
22021         * modules/getopt (Makefile.am): Remove explicit dependency on
22022         $(GETOPT_H), redundant through BUILT_SOURCES.
22023         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
22024         redundant through BUILT_SOURCES.
22025         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
22026         redundant through BUILT_SOURCES.
22027         * modules/stdbool (Makefile.am): Remove explicit dependency on
22028         $(STDBOOL_H), redundant through BUILT_SOURCES.
22029         * modules/stdint (Makefile.am): Remove explicit dependency on
22030         $(STDINT_H), redundant through BUILT_SOURCES.
22031         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
22032         Remove explicit dependency on $(SYSEXITS_H).
22033         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
22034
22035 2005-07-18  Simon Josefsson  <jas@extundo.com>
22036
22037         * lib/check-version.c (check_version): Accept identical versions too.
22038
22039 2005-07-18  Bruno Haible  <bruno@clisp.org>
22040
22041         * modules/lock: New file.
22042         * MODULES.html.sh (Multithreading): New section.
22043
22044 2005-07-18  Bruno Haible  <bruno@clisp.org>
22045
22046         * m4/lock.m4: New file, from GNU gettext.
22047
22048 2005-07-18  Bruno Haible  <bruno@clisp.org>
22049
22050         * lib/lock.h: New file, from GNU gettext.
22051         * lib/lock.c: New file, from GNU gettext.
22052
22053 2005-07-18  Bruno Haible  <bruno@clisp.org>
22054
22055         * lib/lock.h (gl_once_t): New type.
22056         (gl_once_define, gl_once): New macros.
22057         * lib/lock.c (fresh_once): New variable.
22058         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
22059         functions.
22060
22061 2005-07-16  Simon Josefsson  <jas@extundo.com>
22062
22063         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
22064         workaround, suggested by Bruno.
22065
22066 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
22067
22068         * modules/xalloc (Depends-on): Add xalloc-die.
22069         * modules/xvasprintf (Depends-on): Add xalloc-die.
22070
22071 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
22072
22073         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
22074         with a minor change.
22075
22076 2005-07-15  Bruno Haible  <bruno@clisp.org>
22077
22078         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
22079         When using lib/poll.c, define poll as rpl_poll.
22080
22081 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
22082
22083         * modules/argp (Depends-on): Remove unlocked-io.
22084
22085 2005-07-14  Derek Price  <derek@ximbiot.com>
22086
22087         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
22088         for glob symlink bug.
22089
22090 2005-07-14  Bruno Haible  <bruno@clisp.org>
22091
22092         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
22093         Instead, test for *_unlocked function declarations directly.
22094
22095 2005-07-11  Simon Josefsson  <jas@extundo.com>
22096
22097         * modules/size_max: New file.
22098
22099         * modules/xsize: Depend on size_max module for size_max.m4.
22100
22101 2005-07-11  Simon Josefsson  <jas@extundo.com>
22102
22103         * lib/size_max.h: New file.
22104
22105 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
22106
22107         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
22108         copyright symbol and the year.
22109         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
22110         (version_etc_va): Use parameterized copyright notice.
22111         Reword to conform to the current GNU coding standards.
22112
22113 2005-07-11  Karl Berry  <karl@gnu.org>
22114
22115         * doc/gnulib.texi (Quoting): new node.
22116         (Initial import): more info, from Patrice.
22117
22118 2005-07-11  Bruno Haible  <bruno@clisp.org>
22119
22120         * gnulib-tool (func_usage): Document option --avoid.
22121         (Command line options): Handle --avoid.
22122         (func_acceptable): New function.
22123         (func_modules_transitive_closure): Use it.
22124
22125 2005-07-11  Bruno Haible  <bruno@clisp.org>
22126
22127         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
22128         Reported by Jim Meyering.
22129
22130 2005-07-10  Bruno Haible  <bruno@clisp.org>
22131
22132         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
22133         Needed when size_t is smaller than 'unsigned int'.
22134         Reported by Paul Eggert.
22135
22136 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
22137
22138         * modules/argp (Depends-on): Add unlocked-io
22139
22140 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
22141
22142         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
22143         block of defines.
22144
22145 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
22146
22147         * config/srclist.txt: Comment out regcomp.c, since we have a porting
22148         fix now.
22149
22150 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
22151         and Paul Eggert  <eggert@cs.ucla.edu>
22152
22153         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
22154         in wint_t, not wchar_t.  Remove now-unnecessary cast.
22155
22156 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
22157
22158         * modules/regex (Files): Add lib/regex_internal.c,
22159         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
22160         (Depends-on): Add extensions.
22161         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
22162
22163 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
22164
22165         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
22166         pathconf.
22167         * m4/same.m4 (gl_SAME): Likewise.
22168         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
22169
22170         * m4/regex.m4: Adjust to new libc regex implementation.
22171         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
22172         all the .c and .h parts of (the new) regex.
22173         Quote the m4 stuff better.
22174         Check for RE_ICASE bug of old gnulib.
22175         Check for REG_STARTEND of recent libc.
22176         Rename local variables from jm_* to gl_*.
22177         Quote operand of "test -f".
22178         Say "recent enough" version of libc, not "version 2".
22179         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
22180         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
22181         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
22182         Remove check for btowc, isascii.
22183         Require AM_LANGINFO_CODESET.
22184
22185 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
22186
22187         * lib/regex.c, regex.h: Sync from libc.
22188         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
22189         * lib/regexec.c:
22190         New files, synced from libc, except that regex_internal.h
22191         currently has a small porting fix.
22192
22193 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
22194
22195         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
22196         regex_internal.c, regexec.c.
22197         Add regex_internal.h too, but as a comment, since the libc version
22198         is currently broken in gnulib mode.
22199
22200 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22201
22202         Support programs like Emacs that use gnulib but not gettext.
22203         * MODULES.html.sh (Internationalization functions): Add gettext-h.
22204         * modules/gettext-h: New file.
22205         * modules/gettext (Files): Remove lib/gettext.h.
22206         (Depends-on): Add gettext-h.
22207         (Makefile.am): Remove lib_SOURCES.
22208         * modules/argmatch, modules/c-stack, modules/closeout:
22209         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
22210         * modules/execute, modules/file-type, modules/getaddrinfo:
22211         * modules/getopt, modules/human, modules/javacomp:
22212         * modules/javaexec, modules/mkdir-p, modules/obstack:
22213         * modules/openat, modules/pagealign_alloc, modules/pipe:
22214         * modules/quotearg, modules/regex, modules/rpmatch:
22215         * modules/unicodeio, modules/userspec, modules/version-etc:
22216         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
22217         * modules/xsetenv:
22218         Depend on gettext-h, not gettext.
22219
22220 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22221
22222         * gnulib-tool (func_import): Add support for 'public domain' license.
22223         * modules/alloca, modules/atexit, modules/memmove:
22224         Now public domain, not GPL.
22225         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
22226         * modules/realloc, modules/strerror, modules/strtod:
22227         Now LGPL, not GPL.
22228
22229 2005-07-05  Bruno Haible  <bruno@clisp.org>
22230
22231         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
22232         autoconf CVS. Needed for mingw.
22233
22234 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22235
22236         Remove the dependency of the strftime module on the tzset module.
22237         * modules/strftime (Depends-on): Remove dependency on tzset.
22238
22239 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22240
22241         Remove the dependency of the strftime module on the tzset module.
22242         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
22243         gl_FUNC_TZSET_CLOBBER.
22244
22245 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22246
22247         Remove the dependency of the strftime module on the tzset module.
22248         * lib/strftime.c (my_strftime)
22249         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
22250         Copy the input structure, to work around some of the bug with
22251         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
22252         Solaris releases, you should also use the tzset module, but we won't
22253         require it as a dependency any more since we don't want LGPLed code
22254         to depend on GPLed code.
22255
22256 2005-07-02  Jim Meyering  <jim@meyering.net>
22257
22258         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
22259         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
22260         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
22261         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
22262
22263 2005-07-02  Jim Meyering  <jim@meyering.net>
22264
22265         * lib/backupfile.c (backup_args): Change a `0' to NULL.
22266
22267 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
22268
22269         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
22270         declares only 'struct timespec;' (!).
22271
22272 2005-07-01  Jim Meyering  <jim@meyering.net>
22273
22274         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
22275         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
22276         * lib/save-cwd.c, tempname.c:
22277         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
22278         and don't include <sys/file.h>).
22279
22280 2005-06-29  Jim Meyering  <jim@meyering.net>
22281
22282         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
22283         type name.  Use the variable name instead.
22284         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
22285         Likewise.
22286
22287 2005-06-28  Simon Josefsson  <jas@extundo.com>
22288
22289         * modules/check-version (Files): Add check-version.m4.
22290
22291 2005-06-28  Simon Josefsson  <jas@extundo.com>
22292
22293         * m4/check-version.m4: New file, suggested by Jim Meyering
22294         <jim@meyering.net>.
22295
22296 2005-06-28  Simon Josefsson  <jas@extundo.com>
22297
22298         * lib/check-version.h, lib/check-version.c: New files.
22299
22300 2005-06-28  Simon Josefsson  <jas@extundo.com>
22301
22302         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
22303         collision with global variable.  Better indentation.  Don't
22304         increment buffer pointer beyond buffer end.  Based on comments
22305         from Paul Eggert <eggert@cs.ucla.edu>.
22306
22307         * lib/base64.h: Indent.
22308
22309 2005-06-28  Simon Josefsson  <jas@extundo.com>
22310
22311         * doc/gnulib.texi (Library version handling): New section.
22312
22313 2005-06-28  Jim Meyering  <jim@meyering.net>
22314
22315         * check-module (find_included_lib_files): Hard-code another
22316         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
22317         but modules/fts-lgpl (correctly) does not list those files.
22318
22319         * modules/canonicalize (Files): Add lib/pathmax.h.
22320
22321 2005-06-25  Simon Josefsson  <jas@extundo.com>
22322
22323         * modules/check-version: New file.
22324
22325 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
22326
22327         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
22328         initializer of struct addrinfo, as an indication that we don't
22329         care how many members the structure has.
22330
22331 2005-06-24  Derek Price  <derek@ximbiot.com>
22332         and Bruno Haible  <bruno@clisp.org>
22333
22334         Remove stat module & update lstat.
22335         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
22336         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
22337         * m4/stat.m4: Remove this file.
22338
22339 2005-06-24  Derek Price  <derek@ximbiot.com>
22340         and Bruno Haible  <bruno@clisp.org>
22341
22342         Remove stat module & update lstat.
22343         * lib/stat.c: Remove this file...
22344         (slash_aware_lstat): ...moving this content and its support...
22345         * lib/lstat.c (rpl_lstat): ...into here.
22346         * lib/lstat.h: New file.
22347
22348 2005-06-24  Derek Price  <derek@ximbiot.com>
22349         and Bruno Haible  <bruno@clisp.org>
22350
22351         Remove stat module & update lstat.
22352         * config/srclist.txt (libc sources): Remove stat.
22353
22354 2005-06-24  Derek Price  <derek@ximbiot.com>
22355         and Bruno Haible  <bruno@clisp.org>
22356
22357         Remove stat module & update lstat.
22358         * MODULES.html.sh (stat): Remove.
22359         * MODULES.html: Regenerated.
22360         * modules/lstat (Description): Correct function name.
22361         (Files): Add "lstat.h".
22362         (Depends-on): Remove stat, add xalloc, stat-macros.
22363         * modules/stat: Remove this file.
22364         (Include): Add "lstat.h", remove <sys/stat.h>.
22365
22366 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22367
22368         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
22369         (ranged_convert): Don't save conversion in a temporary struct.
22370         This causes a warning with GCC 4.0.0, and anyway in the typical
22371         case it's not worth the extra 100 bytes or so of code.
22372         (ranged_convert, __mktime_internal): When calling a function via a
22373         pointer P, use P () rather than (*P) (), as we now assume C89 or
22374         better.
22375
22376 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
22377
22378         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
22379         "who -r" failed to give output.  Problem reported by Tim Waugh.
22380
22381         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
22382         (xcalloc): Use it to avoid needless tests.
22383         Problem reported by Jim Meyering.
22384
22385 2005-06-20  Derek Price  <derek@ximbiot.com>
22386
22387         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
22388         unnecessary for Autoconfs > 2.59c.
22389
22390 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22391
22392         * lib/argp.h (__option_is_short): Check upper limit of
22393         __key. Isprint() requires its argument to have the value
22394         of an unsigned char or EOF.
22395
22396 2005-06-16  Jim Meyering  <jim@meyering.net>
22397
22398         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
22399         when either N or S is zero.
22400
22401 2005-06-16  Derek Price  <derek@ximbiot.com>
22402
22403         * m4/bison.m4: Declare YACC & YFLAGS precious.
22404
22405 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
22406
22407         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
22408         multibyte string or pattern, fall back on unibyte matching.
22409         Problem reported by James Youngman.
22410
22411 2005-06-08  Bruno Haible  <bruno@clisp.org>
22412
22413         * modules/csharpcomp: New file.
22414         * MODULES.html.sh (C#): Add csharpcomp.
22415
22416 2005-06-08  Bruno Haible  <bruno@clisp.org>
22417
22418         * m4/csharpcomp.m4: New file, from GNU gettext.
22419
22420 2005-06-08  Bruno Haible  <bruno@clisp.org>
22421
22422         * lib/csharpcomp.h: New file, from GNU gettext.
22423         * lib/csharpcomp.c: New file, from GNU gettext.
22424         * lib/csharpcomp.sh.in: New file, from GNU gettext.
22425
22426 2005-06-08  Bruno Haible  <bruno@clisp.org>
22427
22428         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
22429         warning on mingw.
22430
22431 2005-06-07  Derek Price  <derek@ximbiot.com>
22432
22433         Sync from CVS.
22434         * lib/glob_.h: Indent nested #ifdef.
22435
22436 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22437
22438         Sync from coreutils.
22439         Use "file name" when talking about file names, instead of "filename"
22440         or "path", as per the GNU coding standards.
22441         * lib/mkdir-p.c: Renamed from makepath.c.
22442         (make_dir_parents): Renamed from make_path.  All callers changed.
22443         * lib/mkdir-p.h: Likewise.  All includers changed.
22444         * lib/filenamecat.c: Renamed from path-concat.c.
22445         (file_name_concat): Renamed from path_concat.  All callers changed.
22446         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
22447         * lib/filenamecat.h: Likewise.  All includers changed.
22448         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
22449         in comments or local variable names.
22450         * lib/basename.c: Likewise.
22451         * lib/canonicalize.c, canonicalize.h: Likewise.
22452         * lib/dirname.c, dirname.h: Likewise.
22453         * lib/euidaccess.c: Likewise.
22454         * lib/exclude.c: Likewise
22455         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
22456         * lib/fsusage.c, fsuage.h: Likewise.
22457         * lib/fts.c, fts_.h: Likewise.
22458         * lib/getcwd.c: Likewise.
22459         * lib/getloadavg.c: Likewise.
22460         * lib/mkstemp.c: Likewise.
22461         * lib/mountlist.c, mountlist.h: Likewise.
22462         * lib/openat.c, openat.h: Likewise.
22463         * lib/readlink-stub.c: Likewise.
22464         * lib/readutmp.c, readutmp.h: Likewise.
22465         * lib/rename.c: Likewise.
22466         * lib/rmdir.c: Likewise.
22467         * lib/same.c: Likewise.
22468         * lib/savedir.c: Likewise.
22469         * lib/stripslash.c: Likewise.
22470         * lib/tempname.c: Likewise.
22471         * lib/xreadlink.c: Likewise.
22472         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
22473         All uses changed.
22474         * lib/exclude.h: Likewise.
22475
22476         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
22477         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
22478         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
22479         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
22480         * lib/pathmax.h: Include <limits.h> unconditionally, since other
22481         files have been getting away with it for years (MORE/BSD 4.3
22482         is extinct now).
22483         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
22484         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
22485
22486         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
22487         Define to 256, not 255, as per modern POSIX.
22488
22489 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22490
22491         Sync from coreutils.
22492         Use "file name" when talking about file names, instead of "filename"
22493         or "path", as per the GNU coding standards.
22494         * MODULES.html.sh: mkdir-p renamed from makepath.
22495         filenamecat renamed from path-concat.
22496         * modules/filenamecat: Renamed from modules/path-concat.
22497         (Files): filenamecat.h and filenamecat.c renamed from
22498         path-concat.h and path-concat.c.
22499         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
22500         (Include): filenamecat.h, not path-concat.h.
22501         * modules/mkdir-p: Renamed from modules/makepath.
22502         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
22503         makepath.c.
22504         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
22505         (Include): mkdir-p.h, not makepath.h.
22506
22507 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22508
22509         Sync from coreutils.
22510         * m4/mkdir-p.m4: Renamed from makepath.m4.
22511         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
22512         Rename files from makepath.c to mkdir-p.c, and from
22513         makepath.h to mkdir-p.h.
22514         * m4/filenamecat.m4: Renamed from path-concat.m4.
22515         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
22516         Rename files from path-concat.c to filenamecat.c,
22517         and from path-concat.h to filenamecat.h.
22518         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
22519         "file name" in local variables or comments.
22520         * m4/rename.m4: Likewise.
22521
22522 2005-06-01  Bruno Haible  <bruno@clisp.org>
22523
22524         * modules/csharpexec: New file.
22525         * MODULES.html.sh (C#): New section.
22526
22527 2005-06-01  Bruno Haible  <bruno@clisp.org>
22528
22529         * m4/csharp.m4: New file, from GNU gettext.
22530         * m4/csharpexec.m4: New file, from GNU gettext.
22531
22532 2005-06-01  Bruno Haible  <bruno@clisp.org>
22533
22534         * lib/csharpexec.h: New file, from GNU gettext.
22535         * lib/csharpexec.c: New file, from GNU gettext.
22536         * lib/csharpexec.sh.in: New file, from GNU gettext.
22537
22538 2005-05-31  Derek Price  <derek@ximbiot.com>
22539             Paul Eggert  <eggert@cs.ucla.edu>
22540
22541         Sync from cvs.
22542         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
22543
22544 2005-05-31  Derek Price  <derek@ximbiot.com>
22545             Paul Eggert  <eggert@cs.ucla.edu>
22546
22547         Sync from cvs.
22548         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
22549
22550 2005-05-29  Derek Price  <derek@ximbiot.com>
22551
22552         * config/srclist.txt (glob_.h, glob.c): Add these files.
22553
22554 2005-05-29  Derek Price  <derek@ximbiot.com>
22555
22556         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
22557         * modules/glob: New file.
22558         * modules/getlogin_r: Add link to POSIX spec in description.
22559
22560 2005-05-29  Derek Price  <derek@ximbiot.com>
22561             Paul Eggert  <eggert@cs.ucla.edu>
22562
22563         * m4/glob.m4: New file.
22564
22565 2005-05-29  Derek Price  <derek@ximbiot.com>
22566             Paul Eggert  <eggert@cs.ucla.edu>
22567
22568         * lib/glob_.h, lib/glob.c: New files.
22569
22570 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22571
22572         * modules/fts (Files): Remove m4/inttypes-pri.m4.
22573         * modules/fts-lgpl (Depends-on): Remove gettext.
22574
22575 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22576
22577         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
22578         and don't require gt_INTTYPES_PRI.
22579
22580 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22581
22582         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
22583
22584         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
22585         the configuration hassle isn't worth it.
22586         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
22587         (LONGEST_MODIFIER, PRIuMAX): Remove.
22588
22589 2005-05-27  Bruno Haible  <bruno@clisp.org>
22590
22591         * lib/getlogin_r.h: Remove second include of <stddef.h>.
22592
22593 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
22594
22595         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
22596         _POSIX_PTHREAD_SEMANTICS for Solaris.
22597
22598 2005-05-25  Derek Price  <derek@ximbiot.com>
22599
22600         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
22601
22602 2005-05-25  Derek Price  <derek@ximbiot.com>
22603             Paul Eggert  <eggert@cs.ucla.edu>
22604
22605         * modules/getlogin_r, m4/getlogin_r.m4: New files.
22606         * lib/getlogin_r.c, getlogin_r.h: New files.
22607
22608 2005-05-25  Bruno Haible  <bruno@clisp.org>
22609             Derek Price  <derek@ximbiot.com>
22610
22611         * lib/getlogin_r.h: Simplify API documentation.
22612
22613 2005-05-23  Derek Price  <derek@ximbiot.com>
22614
22615         * modules/minmax (Files): Add m4/minmax.m4.
22616         (configure.ac): Add gl_MINMAX.
22617
22618 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
22619
22620         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
22621         so that unistd-safer.h (GPL'ed code) need not be included.
22622
22623 2005-05-22  Bruno Haible  <bruno@clisp.org>
22624
22625         * m4/minmax.m4: New file.
22626         Based on a patch by Derek Price <derek@ximbiot.com>.
22627
22628 2005-05-22  Bruno Haible  <bruno@clisp.org>
22629
22630         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
22631         (INT64_MIN): Fix definition.
22632         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
22633
22634         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
22635         NEED_SIGNED_INT_TYPES.
22636
22637         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
22638         HAVE_SYSTEM_INTTYPES.
22639
22640 2005-05-22  Bruno Haible  <bruno@clisp.org>
22641
22642         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
22643         Also include <sys/param.h> if it defines MIN, MAX.
22644         Based on a patch by Derek Price <derek@ximbiot.com>.
22645
22646 2005-05-21  Jim Meyering  <jim@meyering.net>
22647
22648         * modules/fts (Files): Add m4/inttypes-pri.m4.
22649         (Depends-on): Add lstat and remove gettext.  Alphabetize.
22650
22651 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22652
22653         New fts module.
22654         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
22655         (setup_dir, free_dir): New functions.
22656         (enter_dir, leave_dir): Define trivial
22657         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
22658         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
22659         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
22660         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
22661         Move to fts-cycle.c.
22662         (fts_open): Use setup_dir.
22663         (fts_close): Use free_dir.
22664         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
22665         This adds a label and some gotos, but the alternatives were messier.
22666         Check for memory allocation failure when entering a dir.
22667         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
22668         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
22669         (FTS): New member fts_cycle, that is a union that contains the
22670         old active_dir_ht and cycle_state.  All uses changed to mention
22671         fts_cycle.ht and fts_cycle.state.
22672         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
22673         fts.c, with the following changes:
22674         (setup_dir, free_dir): New functions.
22675         (enter_dir): Now returns bool.  Return true if successful, false
22676         if memory exhausted.  All callers changed.
22677         Do not bother partly cleaning up on
22678         memory allocation failure; that is free_dir's job.
22679         However, free ad if hash_insert fails, to avoid memory leak.
22680         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
22681         fts->fts_options to see which union member to use.
22682
22683 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22684
22685         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
22686         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
22687
22688 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22689
22690         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
22691
22692 2005-05-20  Jim Meyering  <jim@meyering.net>
22693
22694         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
22695         Now a macro, to pacify GCC.
22696
22697 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
22698
22699         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
22700         of -1.
22701
22702 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
22703
22704         * lib/chown.c (rpl_chown): Return -1 on failure.
22705
22706 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
22707
22708         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
22709         Don't check for stddef.h.
22710         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
22711         don't use its results.
22712         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
22713         since we include them unconditionally.  Don't require
22714         AM_STDBOOL_H, since stdbool is a prerequisite.
22715         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
22716         since we assume C89 or better.
22717         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
22718         as we don't use their results.
22719         Don't check for fchdir, memmove, memset, strrchr, as we use
22720         them unconditionally.
22721         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
22722         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
22723
22724 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
22725
22726         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
22727         Include <stddef.h> unconditionally, since we assume C89 now.
22728         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
22729         * lib/fts.c: Include fts_.h first, to check interface.
22730         Do not include intprops.h; no longer needed.
22731         Include cycle-check.h and hash.h, since fts_.h no longer does.
22732         Remove unnecessary casts of closedir to void.
22733         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
22734         decide whether to decrement nlinks.
22735         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
22736         (FTS): Use struct hash_table * instead of Hash_table, so that
22737         we no longer need to include hash.h here.
22738
22739 2005-05-18  Jim Meyering  <jim@meyering.net>
22740
22741         * modules/dirfd (License): Change to LGPL.  Most of the code
22742         is already in the public domain.
22743
22744 2005-05-18  Jim Meyering  <jim@meyering.net>
22745
22746         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
22747         Reported by Yoann Vandoorselaere.
22748
22749 2005-05-17  Jim Meyering  <jim@meyering.net>
22750
22751         * m4/fts.m4: New file, from coreutils.
22752
22753 2005-05-17  Jim Meyering  <jim@meyering.net>
22754
22755         * lib/fts.c, lib/fts_.h: New files, from coreutils.
22756
22757 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22758
22759         Sync from coreutils.
22760         * m4/unlinkdir.m4: New file.
22761
22762 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22763
22764         Sync from coreutils.
22765         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
22766         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
22767         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
22768         White space changes only.
22769         * lib/makepath.c (make_path): Port to hosts where leading "//" is
22770         special.
22771         * lib/yesno.c: Include getline.h, not ctype.h.
22772         (yesno): Don't remove leading white space; POSIX doesn't allow it.
22773         Use getline to remove arbitrary restriction on response length.
22774
22775 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22776
22777         * config/srclist-update: Spell out "Street" in FSF postal
22778         mail address; this is the style the FSF seems to prefer.
22779
22780         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
22781         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
22782         this updates FSF postal mail address.
22783
22784         Sync from coreutils.
22785         * modules/unlinkdir: New file.
22786         * modules/yesno (Depends-on): Add getline.
22787         * MODULES.html.sh (File system functions): Add unlinkdir.
22788
22789 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
22790
22791         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
22792         lib/strsep.h:
22793         Change the initial comment to refer to GPL, not LGPL.
22794         gnulib-tool will change it to LGPL as needed.
22795
22796         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
22797         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
22798         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
22799         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
22800         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
22801         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
22802         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
22803         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
22804         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
22805         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
22806         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
22807         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
22808         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
22809         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
22810         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
22811         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
22812         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
22813         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
22814         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
22815         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
22816         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
22817         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
22818         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
22819         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
22820         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
22821         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
22822         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
22823         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
22824         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
22825         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
22826         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
22827         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
22828         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
22829         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
22830         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
22831         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
22832         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
22833         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
22834         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
22835         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
22836         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
22837         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
22838         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
22839         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
22840         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
22841         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
22842         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
22843         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
22844         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
22845         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
22846         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
22847         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
22848         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
22849         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
22850         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
22851         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
22852         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
22853         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
22854         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
22855         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
22856         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
22857         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
22858         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
22859         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
22860         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
22861         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
22862         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
22863         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
22864         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
22865         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
22866         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
22867         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
22868         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
22869         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
22870         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
22871         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
22872         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
22873         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
22874         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
22875         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
22876         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
22877         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
22878         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
22879         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
22880         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
22881         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
22882         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
22883         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
22884         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
22885         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
22886         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
22887         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
22888         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
22889         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
22890         lib/yesno.c, lib/yesno.h:
22891         Update FSF postal mail address.
22892
22893 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
22894
22895         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
22896         tests/test-memmem.c, tests/test-stpncpy.c:
22897         Update FSF postal mail address.
22898
22899 2005-05-13  Bruno Haible  <bruno@clisp.org>
22900
22901         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
22902         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
22903         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
22904         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
22905         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
22906         Add support for 64-bit integers in the MSVC compiler.
22907
22908 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22909
22910         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
22911
22912 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
22913
22914         * gnulib-tool (func_import): Sort and uniquify recommended includes.
22915
22916 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
22917
22918         * doc/getdate.texi (General date syntax): Don't say that date
22919         date --iso-8601=ns generates acceptable dates; it doesn't yet.
22920         Problem reported by Nic Ferrier.
22921
22922 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22923
22924         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
22925         specified in ai_socktype. Fix invalid ai_protocol
22926         check. ai_protocol is usually set to 0 or depending on
22927         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
22928         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
22929         ai_socktype / ai_protocol in the returned addrinfo structure.
22930
22931 2005-05-10  Simon Josefsson  <jas@extundo.com>
22932
22933         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
22934         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22935
22936 2005-05-10  Karl Berry  <karl@gnu.org>
22937
22938         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
22939         (from http://www.gnu.org/licenses).
22940         * doc/COPYING.LIB: also rename to COPYING.LESSER.
22941         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
22942         fdl.texi suffices.
22943
22944 2005-05-10  Karl Berry  <karl@gnu.org>
22945
22946         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
22947         (COPYING.DOC): remove.
22948
22949         * config/srclist-update: new FSF address.
22950
22951 2005-05-10  Derek Price  <derek@ximbiot.com>
22952
22953         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
22954         possible.
22955
22956 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22957             Bruno Haible  <bruno@clisp.org>
22958
22959         * modules/inet_ntop: New file.
22960         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22961         inet_ntop.
22962
22963 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22964             Bruno Haible  <bruno@clisp.org>
22965
22966         * m4/inet_ntop.m4: New file.
22967
22968 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22969             Bruno Haible  <bruno@clisp.org>
22970
22971         * lib/inet_ntop.h: New file.
22972         * lib/inet_ntop.c: New file, from glibc with modifications.
22973
22974 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
22975
22976         * modules/time_r (License): Change to LGPL.
22977         * modules/extensions (License): Change to LGPL.  Actually,
22978         the license is more permissive than that, but currently gnulib-tool
22979         doesn't know how to handle more-permissive licenses.
22980
22981         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
22982         Problem reported by Dave Love.
22983
22984 2005-05-08  Jim Meyering  <jim@meyering.net>
22985
22986         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
22987         blank.
22988
22989 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
22990
22991         * modules/argmatch (Depends-on): Add stdbool.
22992         * modules/backupfile (Depends-on): Likewise.
22993         * modules/chdir-long (Depends-on): Likewise.
22994         * modules/closeout (Depends-on): Likewise.
22995         * modules/cycle-check (Depends-on): Likewise.
22996         * modules/dirname (Depends-on): Likewise.
22997         * modules/fnmatch (Depends-on): Likewise.
22998         * modules/fsusage (Depends-on): Likewise.
22999         * modules/fwriteerror (Depends-on): Likewise.
23000         * modules/getcwd (Depends-on): Likewise.
23001         * modules/getloadavg (Depends-on): Likewise.
23002         * modules/hard-locale (Depends-on): Likewise.
23003         * modules/makepath (Depends-on): Likewise.
23004         * modules/mountlist (Depends-on): Likewise.
23005         * modules/nanosleep (Depends-on): Likewise.
23006         * modules/posixtm (Depends-on): Likewise.
23007         * modules/quotearg (Depends-on): Likewise.
23008         * modules/readtokens (Depends-on): Likewise.
23009         * modules/readtokens0 (Depends-on): Likewise.
23010         * modules/readutmp (Depends-on): Likewise.
23011         * modules/save-cwd (Depends-on): Likewise.
23012         * modules/strftime (Depends-on): Likewise.
23013         * modules/userspec (Depends-on): Likewise.
23014         * modules/utimecmp (Depends-on): Likewise.
23015         * modules/xgetcwd (Depends-on): Likewise.
23016         * modules/xnanosleep (Depends-on): Likewise.
23017         * modules/xstrtod (Depends-on): Likewise.
23018         * modules/yesno (Depends-on): Likewise.
23019
23020 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
23021
23022         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
23023         needless checks.
23024
23025 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
23026
23027         Merge from coreutils.  Among other things,
23028         add bulletproofing for cases where stdin, stdout, or stderr are closed.
23029         * lib/fd-safer.c: New file.
23030         * lib/fcntl-safer.h, open-safer.c: Remove.
23031         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
23032         * lib/dup-safer.c: Include unistd-safer.h first.
23033         Don't include errno.h.
23034         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
23035         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
23036         * lib/file-type.c: Rely on file-type.h change.
23037         * lib/getloadavg.c: Include unistd-safer.h.
23038         (getloadavg): Use safer open.
23039         * lib/getusershell.c: Include "stdio-safer.h".
23040         (getusershell): Use safer fopen.
23041         * lib/long-options.c (long_options): Use NULL rather than 0.
23042         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
23043         'free'.
23044         * lib/modechange.c: Likewise.
23045         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
23046         (MODE_DONE): New constant.
23047         (struct mode_change): Remove 'next' member.
23048         (make_node_op_equals): New function; like the old one of the
23049         same name, except it allocates an array.
23050         (mode_compile, mode_create_from_ref): Use it.
23051         (mode_compile): Allocate result as an array, not a linked list.
23052         Parse octal string ourself, so that we catch mistakes like "+0".
23053         (mode_adjust): Arg is an array, not a linked list.
23054         * lib/modechange.c: Include stat-macros.h, xalloc.h.
23055         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
23056         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
23057         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
23058         Remove.  This is now stat-macros.h's job.
23059         (talloc): Remove.  All callers replaced by xalloc, so that
23060         our invokers don't have to worry about reporting memory failures.
23061         (make_node_op_equals): Remove.
23062         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
23063         New constants.
23064         (struct mode_change): Moved here from modechange.h.
23065         (mode_append_entry): Remove.
23066         (mode_compile): Remove MASKED_OPS arg, since it encouraged
23067         apps to have incorrect behavior.  Use simpler algorithm for head
23068         and tail.  Don't futz with umask; that's now the job of mode_adjust.
23069         Detect more invalid usages rather than having somewhat-random behavior.
23070         Don't insert an "a=" action, as that leads to incorrect behavior.
23071         (mode_compile, mode_create_from_ref): Return NULL on error instead
23072         of an enum, since now there's only one way to have an error.  All
23073         callers changed.
23074         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
23075         at the correct time.  Simplify calculation of "+u" and its ilk.
23076         Don't mishandle "+X".
23077         (mode_free): Remove "register" and localize decls.
23078         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
23079         (struct mode_change): Move to modechange.c; callers don't
23080         need to see this stuff.
23081         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
23082         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
23083         (mode_change, mode_adjust): Reflect the new signatures noted above.
23084         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
23085         that might redefine system include files.
23086         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
23087         (my_usleep): Use NULL rather than (void *) 0.
23088         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
23089         Use siginterrupt to specify that system calls should be interrupted.
23090         (rpl_nanosleep): Move initialization of suspended closer to call of
23091         my_usleep.
23092         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
23093         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
23094         (desirable_utmp_entry): New function.
23095         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
23096         using x2nrealloc, to simplify logic.
23097         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
23098         size calculation.  Do not assume utmp file is a regular file.
23099         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
23100         (READ_UTMP_CHECK_PIDS): New constant.
23101         * lib/save-cwd.c: Include unistd-safer.h.
23102         (save_cwd): Use fd_safer.
23103         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
23104         [!_LIBC] Include "stat-macros.h" instead.
23105         * lib/unistd-safer.h (fd_safer): New decl.
23106
23107 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
23108
23109         * modules/getloadavg (Depends-on): Add unistd-safer.
23110         * modules/getusershell (Depends-on): Add stdio-safer.
23111         * modules/lstat (Depends-on): Remove xalloc.
23112         * modules/mkstemp (Depends-on): Add stat-macros.
23113         * modules/modechange (Depends-on): Remove xstrtol.
23114         Add stat-macros, xalloc.
23115         * modules/save-cwd (Depends-on): Add unistd-safer.
23116         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
23117         * modules/unistd-safer (Files): Add lib/fd-safer.c
23118         (Makefile.am): Remove lib_SOURCES.
23119
23120         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
23121         Remove fcntl-safer; unistd-safer supersedes it.
23122
23123 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
23124
23125         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
23126         AC_HEADER_STAT.
23127         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
23128         (gl_PREREQ_CHOWN): Remove.
23129         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
23130         it.  Don't require AC_HEADER_STAT.
23131         (gl_PREREQ_LSTAT): Remove.
23132         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
23133         Don't require AC_HEADER_STAT.
23134         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
23135         (gl_PREREQ_RMDIR): Remove.
23136         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
23137         mention stat-macros.h or AC_HEADER_STAT, since we'll make
23138         the stat-macros module a prerequisite.
23139         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
23140         * m4/filemode.m4 (gl_FILEMODE): Likewise.
23141         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
23142         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
23143         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
23144         variable names.
23145         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
23146         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
23147         variable prefixes.
23148         * m4/fcntl-safer.m4: Remove.
23149         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
23150         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
23151         Invoke gl_PREREQ_FD_SAFER.
23152         (gl_PREREQ_FD_SAFER): New macro.
23153         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
23154         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
23155         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
23156         Remove duplicate call to AC_LIBOBJ(readutmp).
23157         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
23158
23159         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
23160         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
23161
23162 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
23163
23164         * MODULES.html.sh (Misc): Add byteswap.
23165
23166 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
23167
23168         * modules/getcwd (Depends-on): Add extensions.
23169         * modules/openat (Depends-on): Likewise.
23170
23171 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
23172
23173         * modules/byteswap: New file.
23174
23175 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
23176
23177         * m4/byteswap.m4: New file.
23178
23179 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
23180
23181         * lib/byteswap_.h: New file.
23182
23183 2005-04-25  Karl Berry  <karl@gnu.org>
23184
23185         * m4/gettext.m4: Update from GNU gettext 0.14.4.
23186
23187 2005-04-25  Albert Chin  <china@thewrittenword.com>
23188
23189         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
23190         Toolkit C bug.
23191
23192 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
23193
23194         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
23195         (func_ln_if_changed) Remove forcibly for no error message
23196         in case file does not exist.
23197
23198 2005-04-19  Simon Josefsson  <jas@extundo.com>
23199
23200         * gnulib-tool (Options): Make --symlink mean --symbolic.
23201
23202 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
23203
23204         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
23205
23206 2005-04-16  Simon Josefsson  <jas@extundo.com>
23207
23208         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
23209
23210 2005-04-15  Simon Josefsson  <jas@extundo.com>
23211
23212         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
23213
23214 2005-04-15  Simon Josefsson  <jas@extundo.com>
23215
23216         * gnulib-tool: Rename --symlink to --symbolic.
23217
23218 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
23219
23220         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
23221         symbolic links to files instead of copying/moving.  Add --aux-dir,
23222         specifying directory relative --dir where auxiliary build tools
23223         are placed.
23224
23225 2005-04-14  Bruno Haible  <bruno@clisp.org>
23226
23227         * modules/allocsa (License): Change to LGPL.
23228         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
23229
23230 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
23231
23232         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
23233         that "UTC +1 second" continues to work.  Problem reported
23234         by Dmitry V. Levin.
23235         (relunit_snumber): New rule.
23236         (relunit): Use it.
23237
23238 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
23239
23240         * lib/getdate.y (universal_time_zone_table): New constant.
23241         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
23242         universal_time_zone_table.
23243         (lookup_zone): Prefer universal_time_zone_table to
23244         local_time_zone_table, so that "GMT" time stamps are allowed in
23245         London during the summer.  Problem reported by Ian Abbott.
23246
23247 2005-04-12  Jim Meyering  <jim@meyering.net>
23248
23249         * lib/human.c (humblock): Set *options even when returning due to
23250         xstrtoumax conversion failure.  Thanks to a used-uninitialized
23251         warning from gcc-4.
23252
23253 2005-04-09  Jim Meyering  <jim@meyering.net>
23254
23255         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
23256         -Wuninitialized: initialize tm0.tm_year.
23257
23258 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
23259
23260         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
23261         count, since there's no maximum.  All uses changed.
23262         Add member dsts_seen.
23263         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
23264         not being INT_MAX.
23265         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
23266         Use pc_rels_seen to decide whther a date is absolute.
23267
23268         * lib/getdate.y (number): Don't overwrite year.
23269         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
23270         check.
23271
23272 2005-04-02  Simon Josefsson  <jas@extundo.com>
23273
23274         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
23275         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
23276
23277 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
23278
23279         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
23280         where no absolute path name can be longer than PATH_MAX.
23281
23282 2005-03-27  Jim Meyering  <jim@meyering.net>
23283
23284         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
23285
23286 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
23287
23288         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
23289         "one's complement" -> "ones' complement" in comment, as per Knuth.
23290         "value of type" -> "type or expression" in comment.
23291         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
23292
23293 2005-03-26  Jim Meyering  <jim@meyering.net>
23294
23295         Comment nits.
23296         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
23297         Correct typos: s/or/of/.
23298
23299 2005-03-26  Jim Meyering  <jim@meyering.net>
23300
23301         * modules/check-include-files: Move to ../ and rename to...
23302         * check-module: ...this.
23303
23304 2005-03-25  Jim Meyering  <jim@meyering.net>
23305
23306         * modules/xvasprintf (Files): Add xalloc.h.
23307
23308 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
23309
23310         * modules/gettext (Files): config/config.rpath ->
23311         build-aux/config.rpath
23312         * modules/iconv (Files): Likewise.
23313         Problem reported by Oskar Liljeblad.
23314
23315 2005-03-23  Jim Meyering  <jim@meyering.net>
23316
23317         * modules/check-include-files: New script to check for
23318         missing dependencies, multiple includes, etc.
23319
23320         * modules/c-strtold (Depends-on): Add xalloc.
23321         * modules/c-strtod (Depends-on): Add xalloc.
23322         * modules/hash (Depends-on): Add xalloc.
23323         (Files): Remove lib/xalloc.h.
23324
23325         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
23326         * modules/userspec (Files): Add lib/inttostr.h.
23327
23328 2005-03-23  Jim Meyering  <jim@meyering.net>
23329
23330         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
23331
23332 2005-03-22  Jim Meyering  <jim@meyering.net>
23333
23334         * modules/stat-macros: New module.
23335         * modules/canonicalize, modules/euidaccess, modules/file-type,
23336         * modules/filemode, modules/lchown, modules/makepath,
23337         * modules/rmdir, modules/stat: Depend on new stat-macros module
23338         rather than listing lib/stat-macros.h manually.
23339         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
23340
23341 2005-03-22  Jim Meyering  <jim@meyering.net>
23342
23343         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
23344
23345 2005-03-22  Bruno Haible  <bruno@clisp.org>
23346
23347         * config/srclist.txt: Replace target directory 'config' with
23348         'build-aux'.
23349         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
23350         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
23351         ../build-aux/.
23352
23353 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
23354
23355         * modules/chdir-long (Depends-on): Add mempcpy.
23356
23357         * modules/acl, modules/backupfile, modules/c-strtod,
23358         modules/c-strtold, modules/canon-host, modules/canonicalize,
23359         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
23360         modules/exclude, modules/exitfail, modules/file-type,
23361         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
23362         modules/getdate, modules/getline, modules/getpagesize,
23363         modules/getpass, modules/getugroups, modules/group-member,
23364         modules/hard-locale, modules/hash, modules/human, modules/idcache,
23365         modules/inttostr, modules/long-options, modules/makepath,
23366         modules/md5, modules/memcasecmp, modules/memcoll,
23367         modules/modechange, modules/mountlist, modules/path-concat,
23368         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
23369         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
23370         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
23371         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
23372         modules/strftime, modules/strndup, modules/strverscmp,
23373         modules/timespec, modules/unlocked-io, modules/userspec,
23374         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
23375         modules/yesno:
23376         Remove lib_SOURCES line from Makefile.am section, as this is now
23377         done automatically by the corresponding Autoconf macro.
23378
23379 2005-03-21  Jim Meyering  <jim@meyering.net>
23380
23381         Changes imported from coreutils.
23382
23383         * lib/cycle-check.c: Don't include xalloc.h.
23384
23385         * lib/path-concat.c: Don't include assert.h.
23386         (path_concat): Remove assertion that would have triggered
23387         for ABASE starting with more than one slash.
23388         Reported by Andreas Schwab.
23389
23390         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
23391         properly when ABASE is an absolute file name.
23392         Correct the description of this function.
23393         Include <assert.h>.
23394         Add an assertion and a test driver.
23395         This fixes a bug introduced on 2004-07-02.
23396         Andreas Schwab reported the resulting failure of cp --parents:
23397         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
23398
23399 2005-03-21  Jim Meyering  <jim@meyering.net>
23400
23401         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
23402         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
23403
23404 2005-03-21  Jim Meyering  <jim@meyering.net>
23405         and  Paul Eggert  <eggert@cs.ucla.edu>
23406
23407         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
23408         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
23409         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
23410         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
23411         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
23412         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
23413         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
23414         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
23415         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
23416         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
23417         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
23418         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
23419         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
23420         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
23421         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
23422         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
23423         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
23424         for these modules.
23425
23426 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
23427
23428         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
23429         (which shouldn't happen), generate nothing instead of returning 0
23430         immediately, so that nstrftime (NULL, ...) doesn't return 0.
23431
23432 2005-03-16  Bruno Haible  <bruno@clisp.org>
23433
23434         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
23435         HAVE_LONGLONG_64BIT.
23436
23437 2005-03-16  Bruno Haible  <bruno@clisp.org>
23438
23439         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
23440         HAVE_LONGLONG_64BIT.
23441
23442 2005-03-16  Bruno Haible  <bruno@clisp.org>
23443
23444         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
23445         HAVE_LONGLONG_64BIT.
23446
23447 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
23448
23449         * lib/strftime.c (my_strftime): Prepend space to format so that we can
23450         reliably distinguish strftime failure from empty output on POSIX
23451         hosts.
23452
23453 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
23454
23455         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
23456         (iconv_string): Don't guess a size-zero buffer, as that might cause
23457         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
23458         result would be 'too large', where 'too large' is (heuristically)
23459         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
23460         overflow concerns.  This will prevent some unwanted malloc failures
23461         when the inputs are very large.
23462
23463 2005-03-15  Karl Berry  <karl@gnu.org>
23464
23465         * config/srclist.txt (config.rpath): from gettext.
23466         * config/config.rpath: update.
23467
23468 2005-03-15  Bruno Haible  <bruno@clisp.org>
23469
23470         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
23471         to 'negate'.
23472
23473         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
23474         variable.
23475
23476         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
23477         results.
23478
23479 2005-03-14  Simon Josefsson  <jas@extundo.com>
23480
23481         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
23482         <fx@gnu.org>.
23483
23484 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
23485
23486         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
23487         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
23488         intprops.h.
23489         * lib/strtol.c: Likewise.
23490
23491 2005-03-14  Jim Meyering  <jim@meyering.net>
23492
23493         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
23494         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
23495         to be nonzero so that we (and caller) can detect the difference
23496         between a valid zero-length expansion and an error return, even
23497         when the underlying strftime fails before writing anything into
23498         that location.
23499
23500 2005-03-14  Bruno Haible  <bruno@clisp.org>
23501
23502         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
23503         Update from GNU gettext 0.14.3.
23504
23505 2005-03-10  Jim Meyering  <jim@meyering.net>
23506
23507         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
23508
23509 2005-03-10  Jim Meyering  <jim@meyering.net>
23510
23511         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
23512         so that this module works on systems without fchdir.
23513
23514 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
23515
23516         Factor int-properties macros into a single file, except for
23517         glibc-related files.
23518         * lib/intprops.h: New file.
23519         * lib/getloadavg.c: Include it instead of limits.h.
23520         (INT_STRLEN_BOUND): Remove.
23521         * lib/human.c: Include intprops.h.
23522         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
23523         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
23524         302/1000.
23525         * lib/inttostr.h: Include intprops.h instead of limits.h.
23526         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
23527         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
23528         for consistency with intprops.h.
23529         (time_t_is_integer, twos_complement_arithmetic): Use them.
23530         * lib/sig2str.h: Include <signal.h>, intprops.h.
23531         (INT_STRLEN_BOUND): Remove.
23532         * lib/strftime.c (TYPE_SIGNED): Remove.
23533         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
23534         * lib/strtol.c: Adjust comments to match intprops.h.
23535         * lib/userspec.c: Include intprops.h.
23536         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
23537         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
23538         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
23539         instead of rolling our own expressions.
23540         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
23541
23542         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
23543         instead of int.
23544         (my_strftime): Do not mishandle years close to INT_MAX, by doing
23545         the right thing even if adding 1900 would overflow.  Similarly
23546         for tm_mon + 1 and tm_yday + 1.
23547         Make %Y always equivalent to %C%y, and similarly for %G and %g.
23548         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
23549         (DO_SIGNED_NUMBER): New macro.
23550         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
23551
23552 2005-03-07  Bruno Haible  <bruno@clisp.org>
23553
23554         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
23555
23556 2005-03-07  Bruno Haible  <bruno@clisp.org>
23557
23558         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
23559
23560 2005-03-04  Derek R. Price  <derek@ximbiot.com>
23561
23562         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
23563         (func_import): Only replace files via --import when they have actually
23564         changed.
23565
23566 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23567
23568         * m4/mmap-anon.m4: New file.
23569         * m4/pagealign_alloc.m4: New file.
23570
23571 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23572             Bruno Haible  <bruno@clisp.org>
23573
23574         * modules/pagealign_alloc: New file.
23575         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
23576
23577 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23578             Bruno Haible  <bruno@clisp.org>
23579
23580         * lib/pagealign_alloc.h: New file.
23581         * lib/pagealign_alloc.c: New file.
23582
23583 2005-03-03  Bruno Haible  <bruno@clisp.org>
23584
23585         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
23586         Use an all-permissive copyright notice, recommended by RMS.
23587
23588 2005-03-02  Bruno Haible  <bruno@clisp.org>
23589
23590         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
23591         of AIX, the replacement has to be done only after <string.h> is
23592         included, therefore not in config.h. stpncpy.h does the replacement,
23593         and stpncpy.c uses it.
23594
23595 2005-03-02  Bruno Haible  <bruno@clisp.org>
23596
23597         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
23598         stpncpy.c uses it.
23599
23600 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23601
23602         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
23603         The workaround isn't strictly needed for POSIX conformance, and
23604         it's too much of a pain to configure and maintain.  We'll ask
23605         people to fix their kernels instead.
23606         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
23607         (NANOSLEEP_BUG_WORKAROUND): Remove.
23608         (xnanosleep): Remove the workaround.
23609
23610 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23611
23612         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
23613         Reported by Derek Price.
23614         (Include): Add "timespec.h".
23615
23616         * modules/xnanosleep (Depends-on): Remove gethrxtime.
23617
23618 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23619
23620         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
23621         to detect nanosleep bug.
23622
23623 2005-03-01  Bruno Haible  <bruno@clisp.org>
23624
23625         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
23626
23627 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
23628
23629         * modules/gethrxtime: New file.
23630         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
23631         (Depends-on): Add gethrxtime.
23632         (configure.ac): Add gl_XNANOSLEEP.
23633         (Makefile.am): Remove lib_SOURCES line.
23634
23635 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
23636
23637         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
23638         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
23639
23640 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
23641
23642         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
23643         * lib/timespec.h (gettime): Return void, since it always
23644         succeeds now.  All uses changed.
23645         * lib/gettime.c (gettime) Likewise.
23646         [HAVE_NANOTIME]: Prefer nanotime.
23647         Assume gettimeofday succeeds, as POSIX requires.
23648         Assime time () succeeds, since other code already does.
23649         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
23650         (timespec_subtract): Remove.
23651         (NANOSLEEP_BUG_WORKAROUND): New constant.
23652         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
23653         things considerably.  Use it only on GNU/Linux hosts, since the
23654         workaround shouldn't be needed elsewhere.
23655
23656 2005-02-24  Bruno Haible  <bruno@clisp.org>
23657
23658         * modules/gettext (Files): Add m4/glibc2.m4.
23659
23660 2005-02-24  Bruno Haible  <bruno@clisp.org>
23661
23662         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
23663         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
23664         * m4/progtest.m4:
23665         Update from GNU gettext 0.14.2.
23666         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
23667
23668 2005-02-24  Bruno Haible  <bruno@clisp.org>
23669
23670         * lib/localcharset.c: Update from GNU gettext 0.14.2.
23671         * lib/config.charset: Update from GNU gettext 0.14.2.
23672
23673 2005-02-24  Bruno Haible  <bruno@clisp.org>
23674
23675         * lib/gettext.h: Update from GNU gettext 0.14.2.
23676
23677 2005-02-23  Simon Josefsson  <jas@extundo.com>
23678
23679         * m4/iconvme.m4: New file.
23680
23681 2005-02-23  Jim Meyering  <jim@meyering.net>
23682
23683         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
23684         change.
23685         Thanks to Bruno Haible for catching it.
23686
23687 2005-02-22  Simon Josefsson  <jas@extundo.com>
23688
23689         * modules/iconvme: New file.
23690
23691         * MODULES.html.sh: Add iconvme.
23692
23693 2005-02-22  Simon Josefsson  <jas@extundo.com>
23694
23695         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
23696
23697 2005-02-22  Simon Josefsson  <jas@extundo.com>
23698
23699         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
23700
23701 2005-02-22  Jim Meyering  <jim@meyering.net>
23702
23703         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
23704         s/ifndef/ifdef/.
23705
23706 2005-02-20  Neil Conway  <neilc@samurai.com>
23707
23708         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
23709         returned by OSX/Darwin if the specified buffer is not large
23710         enough for the hostname.
23711
23712 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23713
23714         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
23715         pass it to _help, otherwise the latter coredumps trying to
23716         dereference state.root_argp.
23717
23718 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23719
23720         * modules/chdir-long (Depends-on): Add memrchr.
23721         * modules/memrchr (Files): Add lib/memrchr.h.
23722         (Include): "memrchr.h".
23723
23724 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23725
23726         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
23727
23728 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23729
23730         * lib/memrchr.h: New file.
23731         * lib/chdir-long.c: Include it.
23732         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
23733         Don't bother including stddef.h.
23734
23735 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
23736
23737         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
23738         inclusion.
23739         Include <sys/types.h>, for dev_t.
23740         (ME_DUMMY, ME_REMOTE): Move from here....
23741         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
23742         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
23743         Dmitry V. Levin.
23744         Include mountlist.h first, to test the interface.
23745
23746 2005-01-29  Bruno Haible  <bruno@clisp.org>
23747
23748         * lib/progname.c (program_name): Initialize.
23749         Needed when linking statically on MacOS X.
23750
23751 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23752
23753         Sync from coreutils.
23754         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
23755         (Depends-on): Add c-strtod.
23756         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
23757
23758 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23759
23760         Sync from coreutils.
23761         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
23762
23763         Remove files that are specific to coreutils.
23764         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
23765
23766 2005-01-28  Bruno Haible  <bruno@clisp.org>
23767
23768         * modules/javacomp: New file.
23769         * MODULES.html.sh (Java): Add javacomp.
23770
23771 2005-01-28  Bruno Haible  <bruno@clisp.org>
23772
23773         * m4/javacomp.m4: New file, from GNU gettext.
23774
23775 2005-01-28  Bruno Haible  <bruno@clisp.org>
23776
23777         * lib/javacomp.sh.in: New file, from GNU gettext.
23778         * lib/javacomp.h: New file, from GNU gettext.
23779         * lib/javacomp.c: New file, from GNU gettext.
23780
23781 2005-01-26  Simon Josefsson  <jas@extundo.com>
23782
23783         * lib/gai_strerror.c: Use GPL in header.
23784
23785 2005-01-26  Bruno Haible  <bruno@clisp.org>
23786
23787         * modules/javaexec: New file.
23788         * MODULES.html.sh (Java): Add javaexec.
23789
23790 2005-01-26  Bruno Haible  <bruno@clisp.org>
23791
23792         * m4/javaexec.m4: New file, from GNU gettext.
23793
23794 2005-01-26  Bruno Haible  <bruno@clisp.org>
23795
23796         * lib/javaexec.sh.in: New file, from GNU gettext.
23797         * lib/javaexec.h: New file, from GNU gettext.
23798         * lib/javaexec.c: New file, from GNU gettext.
23799
23800 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23801
23802         * modules/lchown (Depends-on): Remove lchown.h
23803
23804 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23805
23806         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
23807         must be defined if the header file was not found, in order
23808         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
23809
23810 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23811
23812         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
23813         initializers for struct pentry_state.
23814         (__argp_error): Check return value of __asprintf
23815         (__argp_failure): Translate error message
23816
23817         * lib/argp-parse.c: Removed braces around the expansion of N_()
23818
23819 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23820
23821         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
23822         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
23823         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
23824         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
23825         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
23826         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
23827         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
23828         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
23829         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
23830         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
23831         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
23832         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
23833         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
23834         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
23835         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
23836         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
23837         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
23838         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
23839         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
23840         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
23841         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
23842         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
23843         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
23844         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
23845         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
23846         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
23847         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
23848         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
23849         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
23850         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
23851         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
23852         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
23853         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
23854         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
23855         xstrtol.m4, xstrtoumax.m4, yesno.m4:
23856         Use an all-permissive copyright notice, recommended by RMS.
23857
23858 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
23859
23860         * modules/chdir-long (Depends-on): Remove mempcpy.
23861
23862 2005-01-21  Jim Meyering  <jim@meyering.net>
23863
23864         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
23865         same value as for Solaris 9.
23866
23867         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
23868         component length.  This included changing the parameter to be
23869         of type `char *' rather than `char const *'.
23870         * lib/chdir-long.h (chdir_long): Update prototype.
23871
23872         * lib/openat.c (fdopendir, fstatat): New functions.
23873         * lib/openat.h: Include headers required for use of DIR and struct
23874         stat.
23875         [AT_SYMLINK_NOFOLLOW]: Define.
23876         (fdopendir, fstatat): Add prototypes.
23877
23878 2005-01-21  Bruno Haible  <bruno@clisp.org>
23879
23880         * modules/classpath: New file.
23881         * MODULES.html.sh (Java): Add classpath.
23882
23883 2005-01-21  Bruno Haible  <bruno@clisp.org>
23884
23885         * lib/classpath.h: New file, from GNU gettext.
23886         * lib/classpath.c: New file, from GNU gettext.
23887
23888 2005-01-20  Simon Josefsson  <jas@extundo.com>
23889
23890         * modules/version-etc-fsf: New file.
23891
23892 2005-01-20  Simon Josefsson  <jas@extundo.com>
23893
23894         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
23895         * lib/version-etc.c: Remove version_etc_copyright.
23896         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
23897         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
23898
23899 2005-01-20  Simon Josefsson  <jas@extundo.com>
23900
23901         * lib/base64.h (isbase64): Add.
23902
23903         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
23904         using a unsigned prototype, don't inline.
23905         (base64_decode): Use it.
23906
23907 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23908
23909         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
23910         it.
23911
23912 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23913
23914         * lib/save-cwd.c (save_cwd): Remove code to support the case
23915         where fchdir is missing or flaky.
23916
23917 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23918
23919         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
23920
23921 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
23922
23923         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
23924         AC_LIBSOURCES now does this.
23925         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
23926         with new ullong_max module.
23927
23928 2005-01-19  Bruno Haible  <bruno@clisp.org>
23929
23930         * modules/sh-quote: New file.
23931         * MODULES.html.sh (Executing programs): Add sh-quote.
23932
23933 2005-01-19  Bruno Haible  <bruno@clisp.org>
23934
23935         * lib/sh-quote.h: New file, from GNU gettext.
23936         * lib/sh-quote.c: New file, from GNU gettext.
23937
23938 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23939
23940         Merge from coreutils.
23941         * m4/ullong_max.m4: New file.
23942         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
23943         (gl_MACROS): Assume localeconv exists.
23944
23945 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23946
23947         Merge changes from coreutils, as described below in several
23948         changelogs dated today.
23949
23950         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
23951         (O_DIRECTORY): Remove; not needed here, since "." must be
23952         a directory.  All uses removed.
23953         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
23954         universal on Suns, and we also need to test for IRIX.
23955         Revamp code to use 'if' rather than '#if'.
23956         Avoid unnecessary comparison of cwd->desc to 0.
23957
23958         * lib/utimens.c (futimens): Robustify the previous patch, by checking
23959         for known valid error numbers rather than observed invalid ones.
23960
23961 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23962
23963         * modules/ullong_max: New file.
23964
23965         * modules/chdir-long, modules/openat: New files.
23966         * modules/save-cwd (Depends-on): Depend on chdir-long.
23967         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
23968
23969 2005-01-18  Jim Meyering  <jim@meyering.net>
23970
23971         Merge from coreutils.
23972         * m4/chdir-long.m4, m4/openat.m4: New files.
23973         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
23974         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
23975         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
23976         is sane and DOES follow symlinks.  Besides, testing 20 different
23977         systems found no broken chown implementations.
23978         Prompted by a change in rsync's copy of this macro.
23979         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
23980
23981         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
23982
23983         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
23984         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
23985         NULL-means-set-to-current-time semantics.
23986         Remove temporary file immediately, rather than waiting
23987         for configure's at-exit trap code to do it.
23988
23989 2005-01-18  Jim Meyering  <jim@meyering.net>
23990
23991         * lib/version-etc.c (version_etc_copyright): Update copyright date.
23992
23993         * lib/utimens.c (futimens): Account for the fact that futimes
23994         can also fail with errno == ENOSYS or errno == ENOENT.
23995         Patch from Dmitry V. Levin.
23996
23997         Change the name of the robust chdir function from chdir to chdir_long.
23998         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
23999         (restore_cwd): Use chdir_long, not chdir.
24000         * lib/chdir-long.c: Renamed from chdir.c.
24001         * lib/chdir-long.h: Renamed from chdir.h.
24002         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
24003         Hurd.
24004
24005 2005-01-18  Bruno Haible  <bruno@clisp.org>
24006
24007         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
24008         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
24009         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
24010         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
24011         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
24012         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
24013         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
24014         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
24015         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
24016         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
24017         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
24018         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
24019         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
24020         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
24021         Use an all-permissive copyright notice, recommended by RMS.
24022
24023 2005-01-18  Bob Proulx  <bob@proulx.com>
24024
24025         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
24026         simplify offsetof() macro construct to avoid compile failure with
24027         native HP-UX 11.0 ANSI C compiler.
24028
24029 2005-01-17  Bruno Haible  <bruno@clisp.org>
24030
24031         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
24032         redundant because stpncpy.m4 takes care of it.
24033
24034 2005-01-17  Bruno Haible  <bruno@clisp.org>
24035
24036         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
24037
24038 2005-01-17  Bruno Haible  <bruno@clisp.org>
24039
24040         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
24041         used.
24042
24043 2005-01-17  Bruno Haible  <bruno@clisp.org>
24044
24045         * lib/fwriteerror.h (fwriteerror): Change specification to include
24046         fclose.
24047         * lib/fwriteerror.c: Include <stdbool.h>.
24048         (fwriteerror): At the end, close the file stream. Record whether
24049         stdout was already closed.
24050
24051 2005-01-17  Bruno Haible  <bruno@clisp.org>
24052
24053         * lib/execute.c (environ): Declare if needed.
24054         * lib/pipe.c (environ): Likewise.
24055         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
24056
24057 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24058
24059         * modules/argp: Depend on vsnprintf
24060
24061 2005-01-10  Jim Meyering  <jim@meyering.net>
24062
24063         * modules/closeout (Depends-on): Add atexit.
24064
24065 2005-01-06  Bruno Haible  <bruno@clisp.org>
24066
24067         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
24068
24069 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24070
24071         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
24072         definitions to be after all include files, to avoid collisions.
24073         Problem reported by Bob Proulx.
24074
24075 2005-01-04  Jim Meyering  <jim@meyering.net>
24076
24077         Changes imported from coreutils.
24078         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
24079         as the mkstemp template, use a temporary directory and an
24080         8.3-friendly template to avoid trouble on systems like DJGPP.
24081         Reported by Juan M. Guerrero via Stepan Kasal.
24082         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
24083         close. Remove the temporary directory right away, rather than waiting
24084         for configure's at-exit trap code to do it.
24085         Suggestion from Stepan Kasal.
24086
24087 2005-01-01  Simon Josefsson  <jas@extundo.com>
24088
24089         * gnulib-tool: Print #include directives when --import'ing.
24090
24091 2004-12-28  Simon Josefsson  <jas@extundo.com>
24092
24093         * tests/test-base64.c: Include required header files.  Remove
24094         unused variables.
24095
24096 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
24097
24098         * modules/error (Depends-on): Remove gettext.
24099
24100 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
24101
24102         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
24103         not needed.  This removes a dependency on the gettext module.
24104         [defined _LIBC]: Do not include <libintl.h>; not needed.
24105
24106 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
24107
24108         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
24109         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
24110
24111 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
24112
24113         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
24114         HAVE_DECL_STRTOLD.
24115
24116 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
24117
24118         * modules/getdate (Depends-on): Remove alloca-opt.
24119
24120 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
24121
24122         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
24123
24124 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
24125
24126         * lib/argp-parse.c: Include <stddef.h>.
24127         (alignof, alignto): New macros.
24128         (parser_init): Don't assume that void * is aligned sufficiently
24129         for struct option.
24130
24131         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
24132         need to extend the stack.
24133         (YYINITDEPTH): New macro, so that the initial stack isn't overly
24134         large.
24135
24136 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24137
24138         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
24139
24140 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
24141
24142         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
24143         (2004-10-24) change.  Apparently this was a false alarm.
24144
24145         * modules/getdate: Depend on alloca-opt, not alloca.
24146
24147 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
24148
24149         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
24150         Remove now-obsolete comment about AIX.
24151         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
24152         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
24153         (YYMAXDEPTH): New macro.
24154
24155 2004-12-18  Simon Josefsson  <jas@extundo.com>
24156
24157         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
24158
24159 2004-12-18  Bruno Haible  <bruno@clisp.org>
24160
24161         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
24162
24163 2004-12-18  Bruno Haible  <bruno@clisp.org>
24164
24165         * lib/fatal-signal.c (fatal_signals): Make non-const.
24166         (init_fatal_signals): New function.
24167         (uninstall_handlers, install_handlers): Ignore signals that were set to
24168         SIG_IGN.
24169         (at_fatal_signal): Call init_fatal_signals.
24170         (init_fatal_signal_set): Likewise. Ignore signals that were set to
24171         SIG_IGN.
24172         Reported by Paul Eggert.
24173
24174 2004-12-18  Bruno Haible  <bruno@clisp.org>
24175
24176         * doc/alloca.texi: New file.
24177         * doc/alloca-opt.texi: New file.
24178
24179 2004-12-17  Jim Meyering  <jim@meyering.net>
24180
24181         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
24182         Otherwise, install-sh could exit with improper exit status when
24183         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
24184
24185 2004-12-16  Simon Josefsson  <jas@extundo.com>
24186
24187         * tests/test-base64.c: Add license.
24188
24189 2004-12-15  Stepan Kasal  <address@hidden>
24190
24191         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
24192
24193 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
24194
24195         * modules/getcwd (Files): Add m4/d-ino.m4.
24196         Suggested by Mark D. Baushke.
24197
24198 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
24199
24200         * lib/getdate.y (textint): New member "negative".
24201         (time_zone_hhmm): New function.
24202         Expect 14 shift-reduce conflicts, not 13.
24203         (o_colon_minutes): New rule.
24204         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
24205         (yylex): Set the "negative" member of signed numbers.
24206
24207 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
24208
24209         * doc/getdate.texi (Time of day items, Time zone items):
24210         Describe new formats +00:00, UTC+00:00.
24211
24212 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
24213
24214         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
24215         spurious "-l"s.  Problem reported by Stepan Kasal.
24216
24217 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
24218
24219         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
24220         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
24221
24222 2004-12-04  Simon Josefsson  <jas@extundo.com>
24223
24224         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
24225         Vandoorselaere <yoann@prelude-ids.org>.
24226
24227 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
24228
24229         Changes imported from coreutils.
24230         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
24231         exist.
24232         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
24233
24234 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
24235
24236         Changes imported from coreutils.
24237         * lib/hard-locale.c: Assume <locale.h> exists.
24238         Include "strdup.h".
24239         (GLIBC_VERSION): New macro.
24240         (hard_locale): Assume setlocale exists.
24241         Rewrite to avoid #ifdef.
24242         Use strdup rather than malloc + strcpy.
24243         * lib/human.c: Assume <locale.h> exists.
24244         (human_readable): Assume localeconv exists.
24245
24246 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
24247
24248         * modules/hard-locale (Depends-on): Add strdup.
24249
24250 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
24251
24252         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
24253         convert T2, not T.  (Imported from libc.)
24254
24255 2004-11-30  Simon Josefsson  <jas@extundo.com>
24256
24257         * modules/restrict (License): Change to LGPL.
24258
24259 2004-11-30  Simon Josefsson  <jas@extundo.com>
24260
24261         * m4/restrict.m4: Add copyright and copying conditions.
24262
24263 2004-11-30  Simon Josefsson  <jas@extundo.com>
24264
24265         * m4/base64.m4: New file.
24266
24267 2004-11-30  Simon Josefsson  <jas@extundo.com>
24268
24269         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
24270         base64.
24271
24272         * tests/test-base64.c: New file.
24273
24274         * modules/base64: New file.
24275
24276 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
24277
24278         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
24279         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
24280
24281         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
24282
24283 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
24284
24285         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
24286         (__getcwd.c): Don't restore errno; glibc doesn't.
24287         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
24288         first, falling back to our code only if its results look suspicious.
24289         Ensure that the resulting buffer is only as large as necessary.
24290
24291         * lib/readutmp.c: Include readutmp.h first.
24292         Include <errno.h>, since readutmp.h no longer does that.
24293         * lib/readutmp.h: Don't include <errno.h>,
24294         <sys/param.h>, <time.h>; not needed to establish interface.
24295         (errno): Remove decl.
24296         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
24297         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
24298         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
24299
24300 2004-11-28  Simon Josefsson  <jas@extundo.com>
24301
24302         * lib/base64.h, base64.c: New file.
24303
24304 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
24305
24306         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
24307
24308 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
24309
24310         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
24311         (Depends-on): Remove pathmax, same.  Add mempcpy.
24312         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
24313         (Makefile.am): Append getcwd.h to lib_SOURCES.
24314         (Include): Add getcwd.h.
24315         (Maintainer): Change from Jim Meyering to "all, glibc",
24316         since getdate now uses intended-for-glibc code.
24317         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
24318         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
24319
24320 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
24321
24322         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
24323         HP's ANSI C compiler.
24324         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
24325         Declaring int functions causes warnings on some modern systems and
24326         shouldn't be needed to compile on ancient ones.
24327         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
24328         defined.
24329
24330         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
24331         with the following changes.
24332         (__set_errno): Parenthesize properly.
24333         Include <stdbool.h>.
24334         (MIN, MAX, MATCHING_INO): New macros.
24335         (__getcwd): Define with prototype, not K&R form.
24336         Use heuristics to allocate default buffer on stack if possible.
24337         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
24338         behavior, and to avoid the PATH_MAX limit when computing
24339         ../../../../...
24340         Use MATCHING_INO to compare inode number to file.
24341         Check for arithmetic overflow in size calculations.
24342         Fix bug in reallocation of dot array that caused getcwd to fail
24343         on directories nested deeper than 75.
24344         Be more careful about saving errno on error.
24345         Do not use realloc; use only free+malloc, as this is a bit
24346         more flexible and avoids a needless copy operation.
24347         Do not inspect st_dev and st_ino for symbolic links; POSIX
24348         doesn't specify the latter.
24349         Check for closedir errors.
24350         Avoid needless casts.
24351         Use "#ifdef weak_alias" around weak_alias, to be like other
24352         glibc code.
24353         The following changes to getcwd.c have effect only when used in
24354         gnulib; they have no effect inside glibc proper.
24355         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
24356         as alloca isn't used.
24357         (alloca, __alloca): Likewise.
24358         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
24359         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
24360         unconditionally, as gnulib assumes C89 or better.
24361         Do not include <sys/param.h>.
24362         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
24363         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
24364         better.
24365         (NULL) [!defined NULL]: Remove; we assume C89 or better.
24366         Include <dirent.h> in a way that is compatible with modern Autoconf.
24367         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
24368         New macros, if not already defined.
24369         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
24370         Use "_LIBC", not "defined _LIBC", for consistency.
24371         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
24372         a mempcpy module.
24373         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
24374         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
24375         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
24376         credit only to Jim Meyering and adjust the copyright dates.
24377         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
24378         <stdlib.h>, <unistd.h>, "pathmax.h".
24379         Instead, include "xgetcwd.h" (first) and "getcwd.h".
24380         (INITIAL_BUFFER_SIZE): Remove.
24381         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
24382
24383 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
24384
24385         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
24386         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
24387         Use the _ONCE methods, for efficiency.
24388         Check for fcntl.h.  In test program, include <errno.h>
24389         and <fcntl.h> if available.  Remove old K&R cruft from
24390         test program.  Check for common errors in GNU/Linux,
24391         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
24392         don't do AC_LIBOBJ, as that's getcwd.m4's job.
24393         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
24394         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
24395         name accordingly.
24396         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
24397         accommodate new getcwd.c.
24398         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
24399         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
24400         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
24401         that's all we need now.
24402
24403 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24404
24405         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
24406         argp-parse.c depends on getopt internals, that means we should
24407         always use our getopt, to be on the safe side.
24408         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
24409         order not to spoil the result of an eventual previous invocation
24410         of gl_GETOPT_SUBSTITUTE.
24411
24412 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24413
24414         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
24415         redefinition warnings. To avoid them, include the defines
24416         in `#if !defined __need_getopt ... #endif'. The only place
24417         where __getopt_argv_const is used is in definitions
24418         of getopt_long and getopt_long_only below, which are as well
24419         protected by `#ifndef __need_getopt'.
24420         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
24421         __need_getopt after including <stdio.h> and <unistd.h> These
24422         headers might have defined it.
24423
24424 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
24425
24426         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
24427
24428 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
24429
24430         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
24431         (futimens): New function, which uses futimes if available.
24432         (futimens, utimens): Support timespec==NULL, with same semantics
24433         as utime and utimens.
24434         * lib/utimens.h (futimens): New decl.
24435
24436 2004-11-23  Jim Meyering  <jim@meyering.net>
24437
24438         * lib/getopt_.h: Remove trailing blanks.
24439
24440 2004-11-23  Jim Meyering  <jim@meyering.net>
24441
24442         * lib/__fpending.c: Add comment.
24443
24444 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
24445
24446         * modules/canonicalize (Depends-on): Add xreadlink.
24447         Problem reported by James Youngman.
24448
24449 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
24450
24451         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
24452         New macros.
24453         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
24454         optopt): Use them instead of invoking ## directly; otherwise, the
24455         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
24456
24457 2004-11-19  Bruno Haible  <bruno@clisp.org>
24458
24459         * lib/strtok_r.c: Move comments from here...
24460         * lib/strtok_r.h: ... to here.
24461
24462 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
24463
24464         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
24465         implementations that mishandle size_t overflow.
24466
24467 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
24468
24469         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
24470         might fail.  Problem reported by Yoann Vandoorselaere.
24471         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
24472         implementations that mishandle size_t overflow.
24473
24474 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24475
24476         * modules/canon-host (Depends-on): Add strdup.
24477
24478 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24479
24480         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
24481
24482 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24483
24484         * lib/canon-host.c: Include "strdup.h".
24485         (canon_host): Use getaddrinfo if available, so that IPv6 works.
24486         Use strdup instead of malloc/strcpy to duplicate strings.
24487
24488         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
24489         (human_space_before_unit): New constant.
24490         * lib/human.c (human_readable): Support it.
24491
24492         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
24493         (xgetcwd): Set errno correctly when failing.
24494         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
24495         the failure is actually due to a PATH_MAX problem.
24496
24497         Further getopt changes to make it more likely that glibc will
24498         buy the changes back.
24499         * lib/getopt.c (POSIXLY_CORRECT): New constant.
24500         (getopt): Use it, so to preserve glibc semantic
24501         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
24502         when compiling for libc.
24503         * lib/getopt_.h (__getopt_argv_const): Bring it back.
24504         (getopt_long, getopt_long_only): Use it.
24505
24506         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
24507         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
24508         (getopt): Argv is now char * const *, as per standard.
24509         (_getopt_internal_r, _getopt_internal): Argv is now char **,
24510         not char *__getopt_argv_const *.
24511         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
24512         _getopt_long_only_r): Likewise.
24513         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
24514         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
24515         _getopt_long_r, _getopt_long_only_r): Likewise.
24516         * lib/getopt_.h (__getopt_argv_const): Remove.
24517         (getopt): Argv is now char * const *, as per standard.
24518
24519         * lib/getdate.y (tORDINAL): New token.
24520         (day, relunit): Allow it for relative times.
24521         (relative_time_table): Use tORDINAL for ordinals.
24522
24523 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24524
24525         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
24526         Document that "second" isn't allowed as an ordinal number.
24527
24528 2004-11-16  Jim Meyering  <jim@meyering.net>
24529
24530         * modules/closeout (Depends-on): Add fpending.
24531
24532 2004-11-15  Jim Meyering  <jim@meyering.net>
24533
24534         * lib/closeout.c: Include "__fpending.h" once again.
24535         Include <stdbool.h>.
24536         (close_stdout): Don't fail just because stdout was closed initially,
24537         since some programs don't write to stdout in the normal course of
24538         operation (other than --version and --help), and we don't want this
24539         function to make e.g. `touch file >&-' fail.
24540         But do fail if it was closed and someone has tried to write to it.
24541         E.g., `printf foo >&-' must fail.
24542
24543 2004-11-13  Jim Meyering  <jim@meyering.net>
24544
24545         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
24546
24547 2004-11-12  Simon Josefsson  <jas@extundo.com>
24548
24549         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
24550         small doc fix is still pending.
24551
24552 2004-11-11  Simon Josefsson  <jas@extundo.com>
24553
24554         * modules/strtok_r: New file.
24555
24556         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24557         strtok_r.
24558
24559 2004-11-11  Simon Josefsson  <jas@extundo.com>
24560
24561         * m4/strtok_r.m4: New file.
24562
24563         * m4/getopt.m4: Replace opterr.
24564
24565 2004-11-11  Simon Josefsson  <jas@extundo.com>
24566
24567         * lib/strtok_r.h, strtok_r.c: New file.
24568
24569 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
24570
24571         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
24572         of replacing opterr, getopt, etc.  This should handle the
24573         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
24574
24575 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
24576
24577         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
24578         we can stop lying to compilers about the constness of argv when we
24579         are compiled outside glibc.
24580         (getopt, getopt_long, getopt_long_only): Use it.
24581         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
24582         _getopt_internal, getopt): Likewise.
24583         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
24584         _getopt_long_only_r): Likewise.
24585         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
24586         _getopt_long_r, _getopt_long_only_r): Likewise.
24587
24588         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
24589         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
24590         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
24591         the other external symbols.
24592         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
24593         declaration, since the above renaming now works around collisions.
24594
24595 2004-11-11  Jim Meyering  <jim@meyering.net>
24596
24597         * lib/linebreak.c: Remove trailing blanks.
24598         * lib/alloca_.h: Likewise.
24599         * lib/acosl.c: Likewise.
24600         * lib/euidaccess.c: Likewise.
24601         * lib/allocsa.h: Likewise.
24602
24603 2004-11-10  Simon Josefsson  <jas@extundo.com>
24604
24605         * m4/getaddrinfo.m4: New file.
24606
24607 2004-11-10  Simon Josefsson  <jas@extundo.com>
24608
24609         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
24610
24611 2004-11-10  Simon Josefsson  <jas@extundo.com>
24612
24613         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24614         getaddrinfo.
24615
24616         * modules/getaddrinfo: New file.
24617
24618 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24619
24620         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
24621
24622 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24623
24624         * lib/mktime.c (SHR): New macro, which is a portable
24625         substitute for >> that should work even on Crays.
24626         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
24627         Problem reported by Mark D. Baushke in
24628         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
24629         * lib/getdate.y (SHR): Likewise.
24630         (tm_diff): Use it.
24631         * lib/strftime.c (SHR): Likewise.
24632         (tm_diff): Use it.
24633         * lib/quotearg.c (struct quoting_options): Use unsigned int for
24634         quote_these_too, so that right shifts are well defined.  All uses
24635         changed.
24636
24637 2004-11-10  Jim Meyering  <jim@meyering.net>
24638
24639         Ensure that no close failure goes unreported.
24640         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
24641         return early when it seems there's nothing to flush.
24642         Don't include __fpending.h.
24643
24644 2004-11-10  Jim Meyering  <jim@meyering.net>
24645
24646         * modules/closeout (Depends-on): Remove fpending.
24647
24648 2004-11-10  Jim Meyering  <jim@meyering.net>
24649
24650         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
24651
24652 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
24653
24654         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
24655         gl_FUNC_STRFTIME.
24656         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
24657         and AC_REQUIRE when possible, to avoid duplicate checks.
24658         Check for <wchar.h>.
24659
24660 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
24661
24662         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
24663
24664 2004-11-09  Bruno Haible  <bruno@clisp.org>
24665
24666         * m4/sockpfaf.m4: New file.
24667
24668 2004-11-05  Bruno Haible  <bruno@clisp.org>
24669
24670         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
24671         Reported by Mark D. Baushke <mdb@cvshome.org>.
24672
24673 2004-11-04  Bruno Haible  <bruno@clisp.org>
24674
24675         2004-09-11  Bruno Haible  <bruno@clisp.org>
24676                 * allocsa.valgrind: New file.
24677         2004-02-06  Bruno Haible  <bruno@clisp.org>
24678                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
24679                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
24680                 Reported by Christopher Seip <chris.seip@hp.com>.
24681
24682 2004-11-04  Bruno Haible  <bruno@clisp.org>
24683
24684         * modules/allocsa (Files): Add lib/allocsa.valgrind.
24685         (Makefile.am): Distribute it.
24686
24687 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
24688
24689         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
24690         with errno == ERANGE if the buffer is too small.
24691         Problem reported by Mark D. Baushke.
24692
24693 2004-11-03  Albert Chin  <china@thewrittenword.com>
24694             Paul Eggert  <eggert@cs.ucla.edu>
24695
24696         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
24697         equivalent, substitute $ac_type for equivalent type rather than
24698         blindly using uint32_t *always* which won't work if uint32_t is not
24699         available.  Define _UINT32_T to work around typedef of uint32_t if
24700         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
24701         2.5.1.
24702
24703 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24704
24705         * m4/jm-macros.m4: Sync from coreutils.
24706         (gl_MACROS): Check for mbrlen, for pathchk.
24707         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
24708
24709 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24710
24711         * lib/xreadlink.c (MAXSIZE): New macro.
24712         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
24713         size does not exceed MAXSIZE.  Avoid cast.
24714         As suggested by Mark D. Baushke in
24715         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
24716         if readlink fails with buffer size just under MAXSIZE, try again
24717         with MAXSIZE.
24718
24719 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24720
24721         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
24722
24723 2004-11-02  Derek R. Price  <derek@ximbiot.com>
24724         and  Paul Eggert  <eggert@cs.ucla.edu>
24725
24726         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
24727         (get_date): Overparenthesize to avoid GCC warning.
24728
24729 2004-11-02  Bruno Haible  <bruno@clisp.org>
24730
24731         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
24732         returns void.
24733
24734 2004-11-02  Bruno Haible  <bruno@clisp.org>
24735
24736         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
24737         function returns void.
24738
24739 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
24740
24741         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
24742         fflush_unlocked, flockfile, funlockfile, funlockfile,
24743         fputs_unlocked, putc_unlocked.
24744
24745 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
24746
24747         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
24748         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
24749         already declared.
24750
24751 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24752
24753         * modules/getdate (Files): Add doc/getdate.texi.
24754         (Depends-on): Add setenv, xalloc.
24755
24756 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24757
24758         * lib/getdate.y: Add support for TZ="foo" within a date string.
24759         Fix some bugs near time_t boundaries.  Reject dates with
24760         out-of-range components, e.g., "Sept 31".
24761         Include <stdlib.h>, "setenv.h", "xalloc.h".
24762         (ISDIGIT_LOCALE): Remove; unused.
24763         Note that the TZ and time functions used here are not reentrant.
24764         (mktime_ok, get_tz): New functions.
24765         (TZBUFSIZE): New constant.
24766         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
24767         This requires that we sometimes generate our own TZ="XXX..." setting.
24768
24769 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24770
24771         * doc/getdate.texi: New file, from coreutils with modifications for
24772         the new TZ parsing.
24773
24774 2004-10-27  Derek R. Price  <derek@ximbiot.com>
24775
24776         * lib/mktime.c (not_equal_tm): Remove redundant check.
24777
24778 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24779
24780         * modules/regex (lib_SOURCES): Add regex.c.
24781         Reported by James Youngman in
24782         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
24783
24784 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24785
24786         * lib/getdate.y: Use Bison 1.875 features, and some minor
24787         code cleanups.  This change does not affect semantics.
24788         Don't include <stdlib.h>; no longer needed.
24789         Don't include unlocked-io.h; only the "#if TEST" code uses
24790         stdio, and performance isn't crucial there.
24791         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
24792         Bison 1.875 features as described below.
24793         All uses of "PC." replaced by "pc->".
24794         (YYSTYPE): Add a forward declaration.
24795         (yylex, yyerror): Use full prototypes in forward decls.
24796         Use "%pure-parser" rather than obsolescent "%pure_parser".
24797         Use %parse-param and %lex-param instead of obsolescent
24798         YYPARSE_PARAM and YYLEX_PARAM.
24799         (meridian_table, month_and_day_table, time_units_table,
24800         relative_time_table, time_zone_table, military_table,
24801         lookup_zone, lookup_word, get_date):
24802         Use NULL instead of 0 where appropriate.
24803         (to_hour): Avoid abort (), to avoid a dependency on
24804         stdlib.h.
24805         (yyerror, yylex): Now accepts parser_control * arg.
24806         (main) [TEST]: Use '\0' rather than 0 for char.
24807
24808 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
24809
24810         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
24811
24812 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
24813
24814         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
24815         It's now the caller's responsibility to handle the case where
24816         !HAVE_GETPAGESIZE && !defined getpagesize.
24817
24818         * lib/mktime.c (leapyear): Arg is long int, not int.
24819
24820 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
24821
24822         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
24823
24824 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
24825
24826         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
24827         missing.  Problem reported by James Youngman.
24828
24829 2004-10-16  Simon Josefsson  <jas@extundo.com>
24830
24831         * gnulib-tool: Fix comments.  Fix parse problem.
24832         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
24833
24834 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
24835
24836         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
24837         implementation of getopt_long.  Problem reported by Alexander Taler in:
24838         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
24839
24840 2004-10-15  Bruno Haible  <bruno@clisp.org>
24841
24842         * gnulib-tool: Untabify. Initialize supplied_libname.
24843         (func_usage): More homogenous output.
24844         (func_modules_transitive_closure, func_modules_to_filelist,
24845         func_emit_lib_Makefile_am): New functions.
24846         (func_import): New function, extracted from big case statement. Use
24847         func_get_license, func_modules_transitive_closure,
24848         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
24849         opt_lgpl. Don't use test -a, as it's not portable.
24850         (func_create_testdir): Use func_modules_transitive_closure,
24851         func_modules_to_filelist, func_emit_lib_Makefile_am.
24852
24853 2004-10-15  Bruno Haible  <bruno@clisp.org>
24854
24855         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
24856
24857 2004-10-15  Bruno Haible  <bruno@clisp.org>
24858
24859         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
24860         the portions belonging to each module.
24861         Suggested by Derek Robert Price <derek@ximbiot.com>.
24862
24863 2004-10-12  Simon Josefsson  <jas@extundo.com>
24864
24865         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
24866         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
24867         to real functions.
24868
24869 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24870
24871         * modules/vsnprintf: New file.
24872
24873 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24874
24875         * m4/vsnprintf.m4: New file.
24876
24877 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24878
24879         * lib/vsnprintf.h: New file.
24880         * lib/vsnprintf.c: New file.
24881
24882 2004-10-11  Bruno Haible  <bruno@clisp.org>
24883
24884         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
24885         vsnprintf.
24886
24887 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24888
24889         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
24890
24891 2004-10-07  Bruno Haible  <bruno@clisp.org>
24892
24893         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
24894         fits into the provided buffer.
24895
24896 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
24897
24898         * lib/diacrit.c, diacrit.h: Add GPL notice.
24899
24900         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
24901         notice.
24902         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
24903         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
24904         This avoids a potential constant-folding bug.
24905
24906 2004-10-05  Bruno Haible  <bruno@clisp.org>
24907
24908         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
24909         for the declaration of strsep.
24910
24911 2004-10-05  Bruno Haible  <bruno@clisp.org>
24912
24913         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
24914
24915 2004-10-04  Simon Josefsson  <jas@extundo.com>
24916
24917         * modules/memmem: New file.
24918         * tests/test-memmem.c: New file.
24919         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
24920
24921 2004-10-04  Simon Josefsson  <jas@extundo.com>
24922
24923         * m4/memmem.m4: New file.
24924
24925 2004-10-04  Simon Josefsson  <jas@extundo.com>
24926
24927         * lib/memmem.h: New file.
24928         * lib/memmem.c: New file, taken from glibc.
24929
24930 2004-10-04  Simon Josefsson  <jas@extundo.com>
24931
24932         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
24933         '#ifdef USE_UNLOCKED_IO'.
24934
24935 2004-10-04  Simon Josefsson  <jas@extundo.com>
24936
24937         * config/srclist.txt: Add memmem from glibc.
24938
24939 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24940
24941         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
24942
24943         * modules/argmatch, modules/argp, modules/closeout, modules/error,
24944         modules/exclude, modules/getdate, modules/getline,
24945         modules/getndelim2, modules/getpass, modules/getpass-gnu,
24946         modules/getusershell, modules/linebuffer, modules/md5,
24947         modules/mountlist, modules/posixtm, modules/readtokens,
24948         modules/readutmp, modules/regex, modules/sha1,
24949         modules/version-etc, modules/yesno:
24950         Remove dependency on unlocked-io.
24951
24952 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24953
24954         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
24955
24956         * m4/unlocked-io.m4: Add copyright notice.
24957         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
24958
24959 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24960
24961         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
24962         * lib/xmalloc.c (xmemdup): Likewise.
24963         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
24964         XFREE): Remove these long-obsolescent macros.
24965         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
24966         * lib/xstrdup.c: Remove.
24967
24968         * lib/regex.c (re_comp): Cast gettext return value to char *,
24969         Problem reported by Martin Neitzel via Mark D. Baushke.
24970
24971 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24972
24973         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
24974         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
24975         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
24976         regex.c, sha1.c, version-etc.c, yesno.c:
24977         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
24978         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
24979         the includer's responsibility.
24980
24981         Sync from coreutils.
24982
24983         * lib/modechange.c (mode_compile): Don't decrement a pointer that
24984         points to the start of a string, as the C Standard says the
24985         resulting behavior is undefined.
24986
24987         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
24988         simple -> simple_backups, numbered_existing ->
24989         numbered_existing_backups, numbered -> numbered_backups
24990         to avoid shadowing problems.  All uses changed.
24991         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
24992         * lib/backupfile.c (check_extension, numbered_backup):
24993         Rename locals to avoid shadowing 'basename'.
24994         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
24995         once.
24996
24997         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
24998         * lib/.cvsignore: Add getopt.h.
24999
25000 2004-10-04  Bruno Haible  <bruno@clisp.org>
25001
25002         * modules/README: New file.
25003         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
25004         not a module.
25005
25006 2004-10-02  Jim Meyering  <jim@meyering.net>
25007
25008         * lib/dirfd.h, getpagesize.h: Add copyright notice.
25009
25010 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
25011
25012         * modules/strsep: New file.
25013
25014 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
25015
25016         * m4/strsep.m4: New file.
25017
25018 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
25019
25020         * lib/strsep.h: New file.
25021         * lib/strsep.c: New file.
25022
25023 2004-10-01  Simon Josefsson  <jas@extundo.com>
25024
25025         * lib/snprintf.c (snprintf): Handle size==0.
25026
25027 2004-10-01  Simon Josefsson  <jas@extundo.com>
25028             Bruno Haible  <bruno@clisp.org>
25029
25030         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
25031         (snprintf): Declare 'args'.
25032
25033 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
25034
25035         * lib/snprintf.c: Remove comments as to why each header is needed.
25036
25037 2004-10-01  Bruno Haible  <bruno@clisp.org>
25038
25039         * MODULES.html.sh: Add strsep.
25040
25041 2004-09-30  Simon Josefsson  <jas@extundo.com>
25042
25043         * modules/snprintf: New file.
25044
25045 2004-09-30  Simon Josefsson  <jas@extundo.com>
25046
25047         * m4/snprintf.m4: New file.
25048
25049 2004-09-30  Simon Josefsson  <jas@extundo.com>
25050
25051         * lib/snprintf.h, lib/snprintf.c: New files.
25052
25053 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25054
25055         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
25056         (hol_entry_help): Never translate an empty string.
25057         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
25058         * lib/argp.h (OPTION_NO_TRANS): New option.
25059
25060 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
25061
25062         * modules/argp (Maintainer): Replace Simon Josefsson
25063         by Sergey Poznyakoff.
25064
25065 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
25066
25067         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
25068         changes merged back into glibc.
25069
25070 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
25071
25072         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
25073
25074 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
25075
25076         * lib/xvasprintf.c: Include xalloc.h.
25077         (xvasprintf): Use xalloc_die, not xmalloc_die.
25078
25079 2004-09-29  Bruno Haible  <bruno@clisp.org>
25080
25081         * modules/alloca-opt: New file, derived from modules/alloca.
25082         * modules/allocsa: Depend on alloca-opt instead of alloca.
25083         * modules/setenv: Likewise.
25084         * modules/vasnprintf: Likewise.
25085         * MODULES.html.sh: Add alloca-opt.
25086
25087 2004-09-28  Simon Josefsson  <jas@extundo.com>
25088
25089         * gnulib-tool: New parameter --lgpl, to asseert that modules are
25090         LGPL, and to replace license template from GPL to LGPL.
25091
25092 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
25093
25094         * modules/dummy: Change license to LGPL.
25095
25096 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
25097
25098         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
25099
25100 2004-09-24  Simon Josefsson  <jas@extundo.com>
25101
25102         * modules/minmax (License): Change from GPL to LGPL.
25103
25104 2004-09-23  Simon Josefsson  <jas@extundo.com>
25105
25106         * gnulib-tool (--import): Typo.
25107
25108 2004-09-23  Simon Josefsson  <jas@extundo.com>
25109
25110         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
25111
25112 2004-09-22  Bruno Haible  <bruno@clisp.org>
25113
25114         * modules/*: Add 'License' field.
25115         * gnulib-tool: Accept --extract-license option.
25116         (func_get_license): New function.
25117
25118 2004-09-21  Bruno Haible  <bruno@clisp.org>
25119
25120         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
25121         Reported by Simon Josefsson.
25122
25123 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
25124
25125         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
25126         gl_AC_TYPE_LONG_LONG.
25127
25128 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
25129
25130         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
25131
25132 2004-09-18  Simon Josefsson  <jas@extundo.com>
25133         and  Paul Eggert  <eggert@cs.ucla.edu>
25134
25135         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
25136         calls with autoreconf.  Define GL_LIB.
25137
25138 2004-09-14  Karl Berry  <karl@gnu.org>
25139
25140         * config/srclist.txt: unsync setenv.c, sigh.
25141
25142 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
25143
25144         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
25145         Problem reported by Bruno Haible in:
25146         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
25147
25148 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
25149
25150         * config/srclist.txt: Comment out argp-pvh.c.
25151
25152 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
25153
25154         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
25155         in case some system header has #define'd it.  Problem reported by
25156         Soeren D. Schulze in
25157         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
25158
25159 2004-09-09  Karl Berry  <karl@gnu.org>
25160
25161         * regex.[ch]: delete from the root.  These were supposed to be
25162                 synced with emacs cvs, but this has not happened for about
25163                 a year, and anyway nothing else uses emacs regex.[ch].
25164                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
25165                 lib/regex[.ch] is untouched.
25166
25167 2004-09-09  Bruno Haible  <bruno@clisp.org>
25168
25169         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
25170
25171 2004-09-09  Bruno Haible  <bruno@clisp.org>
25172
25173         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
25174         modifications.
25175         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
25176
25177 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
25178
25179         * modules/xvasprintf: New file.
25180         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
25181
25182 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
25183
25184         * lib/xvasprintf.h: New file.
25185         * lib/xvasprintf.c: New file.
25186         * lib/xasprintf.c: New file.
25187
25188 2004-09-08  Bruno Haible  <bruno@clisp.org>
25189
25190         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
25191
25192 2004-09-08  Bruno Haible  <bruno@clisp.org>
25193
25194         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
25195         length is > INT_MAX.
25196         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
25197         more.
25198
25199 2004-09-08  Bruno Haible  <bruno@clisp.org>
25200
25201         * lib/stdint_.h: New file, taken from GNU clisp.
25202
25203 2004-09-08  Bruno Haible  <bruno@clisp.org>
25204             Oskar Liljeblad  <oskar@osk.mine.nu>
25205
25206         * modules/stdint: New file.
25207         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
25208
25209 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25210
25211         Import from coreutils.
25212         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
25213         strings on unbounded length.  alloca's performance benefits aren't
25214         that important here.
25215         (V_STRDUP): Remove.
25216         (parse_with_separator): New function, with most of the internals
25217         of the old parse_user_spec.  Allow user to omit both user and group,
25218         for compatibility with FreeBSD.
25219         Clone only the user name, not the entire spec.
25220         Do not set *uid, *gid unless entirely successful.
25221         Avoid memory leak in some failing cases.
25222         Fix regression for USER.GROUP reported by Dmitry V. Levin in
25223         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
25224         (parse_user_spec): Rewrite to use parse_with_separator.
25225
25226 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25227
25228         * modules/userspec: Don't depend on alloca.
25229
25230 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25231
25232         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
25233
25234 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
25235
25236         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
25237         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
25238         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
25239
25240 2004-08-16  Simon Josefsson  <jas@extundo.com>
25241
25242         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
25243         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
25244         Add --dry-run for --import.
25245         Let user provided command line parameters override configure.ac
25246         settings.
25247
25248 2004-08-12  Simon Josefsson  <jas@extundo.com>
25249
25250         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
25251         as discussed with Paul Eggert in threads rooted at
25252         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
25253         and
25254         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
25255         Before, the test was empty, and relied on ELIDE_CODE in source
25256         code.)
25257         (gl_PREREQ_GETOPT): New macro.
25258         (gl_GETOPT): Use them.
25259
25260 2004-08-12  Simon Josefsson  <jas@extundo.com>
25261
25262         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
25263         * lib/getopt_.h: Renamed from getopt.h.
25264
25265 2004-08-12  Simon Josefsson  <jas@extundo.com>
25266
25267         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
25268         Change default library name from libfoo to libgnu.
25269         Now, if you have a configure.ac that says:
25270                 gl_SOURCE_BASE(gl)
25271                 gl_M4_BASE(gl/m4)
25272                 gl_MODULES(error getopt etcetera)
25273                 gl_INIT
25274         you can import all you need by running:
25275                 ../gnulib/gnulib-tool --import
25276
25277         * modules/getopt (Files): Rename getopt.h to getopt_.h.
25278         (Makefile.am): Rewrite, use logic from argz.
25279         (Include): Use <getopt.h> instead of "getopt.h".
25280
25281 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
25282
25283         * modules/argp (Files): Add m4/unlocked-io.m4.
25284         (Depends-on): Add extensions.
25285
25286 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
25287
25288         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
25289         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
25290         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
25291         Check for program_invocation_name, program_invocation_short_name,
25292         flockfile, funlockfile, features.h, _getopt_long_only_r.
25293
25294 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
25295
25296         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
25297         its complicated substitute.
25298         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
25299         and program_invocation_name.
25300         (__argp_basename) [!_LIBC]: Remove; the only use was
25301         replaced by its body.
25302         (__argp_short_program_name): Change condition from
25303         !defined __argp_short_program_name to
25304         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
25305         to match argp-namefrob.h.
25306         (__argp_failure): Don't assume strerror_r returns char *.
25307         * lib/argp-parse.c (N_): Define unconditionally.
25308         (argp_default_options): Fill out initializers with 0 to avoid
25309         gcc warnings.
25310
25311 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
25312
25313         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
25314         getopt1.c.
25315
25316 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
25317
25318         Merge from coreutils.
25319
25320         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
25321
25322         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
25323         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
25324
25325 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
25326
25327         Merge from coreutils.
25328
25329         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
25330         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
25331         for Reliant Unix 5.43.
25332
25333         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
25334         (union fooround): Use uintmax_t, not long int.
25335         The rest is a merge from libc:
25336         [defined _LIBC]: Include <shlib-compat.h>.
25337         (_obstack) [defined _LIBC]: Remove after 2.3.4.
25338
25339         * lib/settime.c (settime): Recode to avoid warning with
25340         Sun Forte C 6U2.
25341
25342         * lib/strverscmp.c: Convert to UTF-8.
25343
25344 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
25345
25346         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
25347         m4/uintmax_t.m4.
25348
25349 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
25350
25351         * modules/xalloc-die: New file.
25352         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
25353
25354         * modules/md5 (Files): Add m4/uint32_t.m4.
25355         * modules/sha1: Renamed from modules/sha.
25356         (Files):
25357         Rename lib/sha.h to lib/sha1.h.
25358         Rename lib/sha.c to lib/sha1.c.
25359         Rename m4/sha.m4 to m4/sha1.m4.
25360         (lib_SOURCES): Likewise.
25361         (configure.ac): Rename gl_SHA to gl_SHA1.
25362         (Include): sha.h -> sha1.h.
25363
25364 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
25365
25366         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
25367         * m4/sha1.m4: Renamed from sha.m4.
25368         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
25369
25370 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
25371
25372         * lib/obstack.h (obstack_empty_p):
25373         Don't assume that chunk->contents is suitably aligned.
25374         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
25375         Likewise. Problem reported by Benno in
25376         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
25377
25378         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
25379         readable.  This could be improved further but it'd take some work.
25380
25381 2004-08-08  Simon Josefsson  <jas@extundo.com>
25382
25383         * modules/xgethostname (Depends-on): Remove exit and error (not
25384         used).
25385
25386         * modules/getpass-gnu: Add getpass.h.
25387         (Depends-on): Add stdbool.
25388         * modules/getpass: Add getpass.h.
25389
25390 2004-08-08  Simon Josefsson  <jas@extundo.com>
25391
25392         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
25393         Check getpass declaration.
25394
25395 2004-08-08  Simon Josefsson  <jas@extundo.com>
25396
25397         * lib/xgethostname.c: Don't include error.h (not used).
25398
25399         * lib/getpass.h: Add.
25400         * lib/getpass.c: Include getpass.h first.
25401
25402 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
25403
25404         * lib/xalloc-die.c: New file.
25405         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
25406         All uses removed.
25407         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
25408         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
25409         xalloc-die.c.
25410         (_, N_, xalloc_die): Move to xalloc-die.c.
25411         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
25412         so that we needn't mess with xalloc_msg_memory_exhausted.
25413
25414         * lib/sha1.h: Renamed from sha.h.
25415         (SHA1_H): Renamed from _SHA_H.
25416         (sha1_ctx): Renamed from sha_ctx.
25417         (sha1_init_ctx): Renamed from sha_init_ctx.
25418         (sha1_process_block): Renamed from sha_process_block.
25419         (sha1_process_bytes): Renamed from sha_process_bytes.
25420         (sha1_finish_ctx): Renamed from sha_finish_ctx.
25421         (sha1_read_ctx): Renamed from sha_read_ctx.
25422         (sha1_stream): Renamed from sha_stream.
25423         (sha1_buffer): Renamed from sha_buffer.
25424         * lib/sha1.c: Likewise; renamed from sha.c.
25425         Do not include <sys/types.h>.
25426         Include <stddef.h> rather than <stdlib.h>.
25427
25428 2004-08-08  Bruno Haible  <bruno@clisp.org>
25429
25430         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
25431         FILESYSTEM_PREFIX_LEN.
25432         * lib/progreloc.c: Likewise.
25433         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
25434
25435 2004-08-06  Simon Josefsson  <jas@extundo.com>
25436
25437         * modules/progname (Depends-on): Don't depend on stdbool.
25438
25439 2004-08-06  Simon Josefsson  <jas@extundo.com>
25440
25441         * modules/getsubopt: New file.
25442         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
25443         getsubopt.
25444
25445 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
25446
25447         More merge from coreutils.
25448
25449         * m4/utimens.m4, m4/utimecmp.m4: New files.
25450         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
25451         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
25452         prereq.m4, sha.m4: Import changes from coreutils.
25453
25454 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
25455
25456         More merge from coreutils.
25457         * modules/raise, modules/readtokens0, modules/utimens:
25458         * modules/utimecmp, module/xnanosleep: New files.
25459         * modules/strftime: Add lib/strftime.h.
25460         Change include from <time.h> to "strftime.h".
25461         * modules/yesno: Add lib/yesno.h.
25462         * modules/backupfile: Remove lib/addext.c.
25463         * modules/euidaccess: Add stat-macros.h.
25464         * modules/canonicalize, modules/euidaccess,
25465         modules/filemode, modules/lchown, modules/makepath,
25466         modules/rmdir, modules/stat: Likewise.
25467
25468 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
25469
25470         Merge from tar.
25471         * lib/argp-help.c (make_hol, hol_append): Don't assume that
25472         SIZE_MAX is a valid preprocessor constant.
25473         (__argp_basename): Change from "#ifndef _LIBC"
25474         to "#ifndef __argp_short_program_name", so that
25475         we don't compile these functions for tar.
25476
25477         More merges from coreutils.
25478         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
25479         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
25480         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
25481         * lib/addext.c: Remove; no longer needed.
25482         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
25483         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
25484         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
25485         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
25486         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
25487         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
25488         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
25489         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
25490         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
25491         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
25492         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
25493         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
25494         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
25495         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
25496         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
25497         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
25498         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
25499         Import changes from coreutils.
25500
25501 2004-08-05  Simon Josefsson  <jas@extundo.com>
25502
25503         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
25504
25505 2004-08-05  Simon Josefsson  <jas@extundo.com>
25506
25507         * m4/getsubopt.m4: New file.
25508
25509 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25510
25511         Merge from coreutils.
25512
25513         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
25514         * m4/getcwd-path-max.m4: New files.
25515
25516         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
25517         FILESYSTEM_PREFIX_LEN ->
25518         FILE_SYSTEM_PREFIX_LEN.
25519         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
25520         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
25521         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
25522         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
25523
25524         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
25525         prerequisite modules now handle the DOS stuff.
25526         Don't check for unistd.h.
25527
25528 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25529
25530         Merge from coreutils.
25531
25532         * lib/.gdb-history: Remove; this doesn't belong here.
25533
25534         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
25535         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
25536         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
25537         * lib/getcwd.c: New files.
25538
25539         * lib/dirname.h: Include <stdbool.h>.
25540         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
25541         for consistency with POSIX terminology.  All uses changed.
25542         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
25543         (strip_trailing_slashes): Use bool for booleans.
25544         * lib/stripslash.c (strip_trailing_slashes): Likewise.
25545
25546         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
25547         sometimes returns a positive errno value even when it succeeds.
25548         (print_errno_message) [!LIBC]: Fall back on strerror if
25549         __strerror_r fails.
25550
25551         * lib/path-concat.c (mempcpy): Don't define if a system header defines
25552         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
25553         (longest_relative_suffix): New function.
25554         (path_concat): Use it.  Assume first argument is not NULL.
25555         Port to DOS.  Omit redundant separators.
25556         Report an error instead of returning NULL.
25557         Use mempcpy instead of memcpy.
25558         (xpath_concat): Remove: not declared or used.
25559
25560         * lib/same.h: Include <stdbool.h>
25561         (same_name): Return bool, not int.
25562         * lib/same.c (same_name): Likewise.
25563         (errno): Don't declare; we assume C89 or better now.
25564
25565         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
25566         if not already defined.
25567
25568         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
25569         * lib/dup-safer.c (errno): Likewise.
25570
25571 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25572
25573         Merge from coreutils.
25574         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
25575         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
25576         * modules/path-concat: Don't depend on strdup.
25577
25578 2004-08-03  Simon Josefsson  <jas@extundo.com>
25579
25580         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
25581         * lib/progname.h: Don't include stdbool.h.
25582
25583 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25584
25585         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
25586         * MODULES.html.sh (func_all_modules): Remove fatal.
25587
25588 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25589
25590         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
25591
25592 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25593
25594         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
25595         working.
25596
25597 2004-08-02  Simon Josefsson  <jas@extundo.com>
25598
25599         * lib/getsubopt.h: New file, with comments from Bruno Haible.
25600         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
25601         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
25602
25603 2004-08-01  Simon Josefsson  <jas@extundo.com>
25604
25605         * lib/xgetdomainname.c: Include stdlib.h, for free().
25606
25607 2004-07-19  Bruno Haible  <bruno@clisp.org>
25608
25609         * MODULES.html.sh (func_all_modules): Add dummy.
25610
25611 2004-07-16  Simon Josefsson  <jas@extundo.com>
25612
25613         * modules/dummy: New file.
25614
25615 2004-07-16  Simon Josefsson  <jas@extundo.com>
25616
25617         * lib/dummy.c: New file.
25618
25619 2004-07-16  Bruno Haible  <bruno@clisp.org>
25620
25621         * lib/backupfile.h: Add extern "C" for C++.
25622         * lib/closeout.h: Likewise.
25623         * lib/copy-file.h: Likewise.
25624         * lib/findprog.h: Likewise.
25625         * lib/full-write.h: Likewise.
25626         * lib/pathname.h: Likewise.
25627         * lib/progname.h: Likewise.
25628         * lib/stpcpy.h: Likewise.
25629         * lib/stpncpy.h: Likewise.
25630         * lib/strcase.h: Likewise.
25631         * lib/strstr.h: Likewise.
25632         * lib/xalloc.h: Likewise.
25633
25634         * lib/mbswidth.h: Add extern "C" for C++.
25635         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
25636
25637 2004-07-13  Robert Millan  <robertmh@gnu.org>
25638
25639         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
25640
25641 2004-07-09  Simon Josefsson  <jas@extundo.com>
25642
25643         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
25644         failed without this.)
25645
25646 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25647
25648         * modules/chown (Files): Add lib/fchown-stub.c, since
25649         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
25650
25651 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25652
25653         * lib/fchown-stub.c: New file.
25654
25655 2004-06-24  Jim Meyering  <jim@meyering.net>
25656
25657         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
25658
25659 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25660
25661         * modules/argz: Omit "#include".
25662
25663         * MODULES.html.sh (func_all_modules): Add calloc, to match
25664         2004-06-01 addition of calloc module.
25665
25666 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25667
25668         * m4/argz.m4: New file, which is autoupdated from libtool.
25669
25670 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25671
25672         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
25673         libtool.
25674
25675 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25676
25677         * config/srclist-update: Don't insist on "USA." before the
25678         close-comment, as libtool omits the period and puts the */ on a
25679         separate line.
25680         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
25681         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
25682
25683 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
25684
25685         * modules/argz: New file.
25686         * MODULES.html.sh (func_all_modules): Add argz.
25687
25688 2004-06-12  Jim Meyering  <jim@meyering.net>
25689         and  Paul Eggert  <eggert@cs.ucla.edu>
25690
25691         * modules/hash (Files): Add lib/xalloc.h.
25692         * modules/pipe (Depends-on): Add wait-process.
25693         * modules/stat (Depends-on): Add xalloc.
25694         * modules/userspec (Files): Add lib/userspec.h.
25695         * modules/xstrto
25696
25697         Upgrade from gettext-0.13.
25698         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
25699         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
25700         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
25701
25702 2004-06-10  Jim Meyering  <jim@meyering.net>
25703
25704         * lib/calloc.c: New file.
25705
25706 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
25707
25708         * lib/getdate.y (yylex): Allow space between sign and number.
25709         Problem reported by Dan Jacobson.
25710
25711 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
25712
25713         Merge from coreutils CVS.
25714
25715         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
25716         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
25717         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
25718         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
25719         xstrtol.m4: Fix copyright date and/or serial number.
25720
25721         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
25722         See if we need an fchown replacement.
25723         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
25724         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
25725         and use the replacement function if we detect either defect.
25726
25727         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
25728         gl_UTIMECMP.
25729
25730 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
25731         and  Jim Meyering  <jim@meyering.net>
25732
25733         Merge from coreutils CVS.
25734
25735         * lib/stat-macros.h: New file, with contents from file-type.h
25736         and coreutils' system.h.
25737         * lib/file-type.c: Include "stat-macros.h".
25738         * lib/file-type.h (file_type): Move all macro definitions to new file,
25739         stat-macros.h.
25740
25741         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
25742         Wrap old code with this conditional.
25743         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
25744         function that does not dereference symlinks.
25745         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
25746
25747         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
25748         dependency problems.
25749         (xreadlink): Accept new arg SIZE, for efficiency.
25750         All decls and uses changed.
25751         * lib/xreadlink.h: Include <stddef.h>, for size_t.
25752
25753         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
25754         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
25755
25756         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
25757         sysexits.h.
25758
25759 2004-06-01  Jim Meyering  <jim@meyering.net>
25760
25761         * m4/calloc.m4: New file.
25762
25763 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
25764
25765         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
25766         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
25767         Also, fix a typo in a diagnostic.
25768
25769 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
25770
25771         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
25772         or AC_FUNC_REALLOC.
25773
25774 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
25775
25776         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
25777         macros to be defined.
25778         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
25779         the allocator returns NULL because the requested size is zero.
25780
25781 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
25782
25783         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
25784         var.  Add comment explaining why libc still defines it.  This
25785         merges the following patch from glibc:
25786         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
25787
25788 2004-05-20  Andreas Schwab  <schwab@suse.de>
25789
25790         * m4/free.m4: Replace free if it not known to work, not the other
25791         way round.
25792
25793 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
25794
25795         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
25796         present in glibc since revision 1.1 of this file.
25797         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
25798         obstack_alignment_mask, obstack_alloc, obstack_base,
25799         obstack_blank, obstack_blank_fast, obstack_chunk_size,
25800         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
25801         obstack_grow0, obstack_init, obstack_int_grow,
25802         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
25803         obstack_next_free, obstack_object_size, obstack_ptr_grow,
25804         obstack_ptr_grow_fast, obstack_room): Remove declarations of
25805         nonexistent functions.
25806
25807 2004-05-18  Karl Berry  <karl@gnu.org>
25808
25809         * config/srclist.txt: break link for vasnprintf.c.
25810
25811 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
25812
25813         Port obstack to the AS/400, where pointers are 16 bytes wide and
25814         you cannot cast an integer to a valid pointer.  This patch is
25815         currently waiting to be integrated into glibc; see
25816         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
25817
25818         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
25819         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
25820         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
25821         (struct obstack): temp member is now a union of a pointer and
25822         an integer, instead of an integer.  All integer uses changed.
25823         This does not affect the physical layout of struct obstack,
25824         except on hosts (like the AS/400) where the size or alignment of
25825         void * is greater than that of ptrdiff_t.
25826         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
25827         __STDC__)]: Store temporary in pointer member of union, not
25828         integer member.
25829         * lib/obstack.c: Include <stddef.h>, for offsetof.
25830         (struct fooalign): Remove; it doesn't need a name.
25831         (union fooround): Change double to long double, and add void *.
25832         (DEFAULT_ALIGNMENT): Use offsetof to compute.
25833         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
25834         not a macro.  Hence the values are always int; so remove all
25835         casts-to-int in uses.
25836
25837 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
25838
25839         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
25840         we can get this patch merged into glibc.
25841
25842 2004-05-17  Derek R. Price  <derek@ximbiot.com>
25843             Paul Eggert  <eggert@cs.ucla.edu>
25844
25845         * m4/argp: Depend on alloca.
25846
25847 2004-05-17  Derek R. Price  <derek@ximbiot.com>
25848             Paul Eggert  <eggert@cs.ucla.edu>
25849
25850         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
25851         freecoding.
25852
25853 2004-05-17  Bruno Haible  <bruno@clisp.org>
25854
25855         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
25856         precision that consists of a '.' followed by an empty digit string.
25857         Patch by Tor Lillqvist <tml@iki.fi>.
25858
25859 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25860
25861         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
25862         for backward compatibility with older code.  We need our own
25863         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
25864         it under some other name, and our alloca.h will define it.
25865
25866 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25867             Derek Price  <derek@ximbiot.com>
25868
25869         * lib/alloca.c: Include <alloca.h>, to get our interface.
25870         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
25871         include <alloca.h> first.  Use C89 prototype for alloca; this
25872         requires including <stddef.h> for size_t.  Use extern "C" if C++.
25873         Use #elif for simplicity, since we can assume C89 now.
25874         Don't try to source the system alloca.h since it will not be found
25875         and to prevent recursively including its replacement.
25876         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
25877         * lib/regex.c: Likewise.
25878
25879 2004-05-16  Derek Price  <derek@ximbiot.com>
25880             Paul Eggert  <eggert@cs.ucla.edu>
25881
25882         getline cleanup.  This changes the getndelim2 API: both order of
25883         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
25884         no delimiter).
25885
25886         * lib/getline.c: Don't include stddef.h or stdio.h, since our
25887         interface does that.
25888         (getline): Always use getdelim, so that we don't have two
25889         copies of this code.
25890         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
25891         if available.
25892         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
25893         (GETNDELIM2_MAXIMUM): New macro.
25894         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
25895         instead of the old practice of delim2==0.  All callers changed.
25896         Return -1 on overflow, instead of returning junk.
25897         Do not set *linesize unless allocation succeeds.
25898         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
25899         that we include sys/types.h.
25900         * lib/getnline.h: Likewise.
25901         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
25902         (getndelim2): Reorder arguments.
25903         * lib/getnline.c (getnline, getndelim):
25904         Don't discard the NMAX argument.
25905         (getnline): Invoke getndelim, to avoid code duplication.
25906         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
25907         of (size_t) -1 by callers of the getnline family.
25908
25909 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25910
25911         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
25912         Check for gettimeofday.
25913         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
25914         Check for settimeofday, stime.
25915
25916 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25917
25918         * lib/nanosleep.c (suspended): Change its type from int to
25919         sig_atomic_t volatile.
25920         (first_call): Make it private to rpl_nanosleep, and have it
25921         be zero initially as that's a bit faster.
25922         (my_usleep): Round up fractional times instead of truncating them,
25923         as this is the usual meaning for 'sleep'.
25924
25925         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
25926         doesn't work.
25927         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
25928         (ENOSYS): Define if not defined.
25929         (settime): Fall back on stime if it exists and settimeofday fails.
25930         But don't bother with fallbacks if a method fails with errno == EPERM.
25931
25932 2004-05-11  Jim Meyering  <jim@meyering.net>
25933
25934         Prior to this change, the save_cwd caller required read access to the
25935         current directory on most systems (ones with the fchdir function).
25936
25937         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
25938         fails, try write-only, and finally, resort to using xgetcwd.
25939
25940 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
25941
25942         * lib/obstack.c, obstack.h: Import changes from libc.
25943
25944 2004-04-28  Bruno Haible  <bruno@clisp.org>
25945
25946         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
25947         also implicitly appends .exe to executables.
25948         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
25949         accepts Windows pathnames.
25950         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25951         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25952         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25953         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25954         Reported by Derek Robert Price <derek@ximbiot.com>.
25955
25956 2004-04-21  Karl Berry  <karl@gnu.org>
25957
25958         * config/srclist.txt (localcharset.c): break sync.
25959
25960 2004-04-20  Paul Eggert  <eggert@twinsun.com>
25961
25962         * m4/host-os.m4: Add a copyright notice.
25963
25964 2004-04-20  Jim Meyering  <jim@meyering.net>
25965
25966         Change UTILS_ to gl_ in AC_DEFINE'd names.
25967         Change utils_- and jm_-prefixed variables, too.
25968         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
25969         UTILS_FUNC_MKDIR_TRAILING_SLASH.
25970         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
25971
25972         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
25973         Don't emit trailing blanks.
25974         Also rename jm_-prefixed variables to have gl_ prefix.
25975
25976         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
25977         Also rename jm_-prefixed variables to have gl_ prefix.
25978
25979         * m4/jm-macros.m4: Reflect the renamings.
25980         * m4/prereq.m4: Likewise.
25981
25982 2004-04-20  Jim Meyering  <jim@meyering.net>
25983
25984         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
25985         memory.
25986
25987 2004-04-20  Jim Meyering  <jim@meyering.net>
25988             Bruno Haible  <bruno@clisp.org>
25989
25990         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
25991         memory when realloc fails.
25992
25993 2004-04-19  Jim Meyering  <jim@meyering.net>
25994
25995         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
25996         now that readutmp.c may call `free (0)'.
25997
25998 2004-04-19  Bruno Haible  <bruno@clisp.org>
25999
26000         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
26001         * m4/inttypes_h.m4: Likewise.
26002         * m4/stdint_h.m4: Likewise.
26003         * m4/intmax_t.m4: Likewise.
26004         * m4/uintmax_t.m4: Likewise.
26005
26006 2004-04-18  Jim Meyering  <jim@meyering.net>
26007
26008         * m4/prereq.m4: Don't forbid jm_ prefix.
26009
26010         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
26011         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
26012         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
26013         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
26014         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
26015         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
26016         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
26017         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
26018         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
26019         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
26020         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
26021         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
26022         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
26023         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
26024         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
26025         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
26026         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
26027         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
26028         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
26029
26030 2004-04-18  Jim Meyering  <jim@meyering.net>
26031
26032         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
26033         failure, don't leak memory and do call END_UTMP_ENT.
26034
26035 2004-04-16  Jim Meyering  <jim@meyering.net>
26036
26037         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
26038         coreutils' stat program.
26039         (gl_PREREQ): Don't require jm_PREREQ_STAT.
26040
26041 2004-04-11  Paul Eggert  <eggert@twinsun.com>
26042
26043         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
26044         C89.
26045         (CHAR_BIT): Remove, since we assume C89.
26046         Include <stdint.h> if available, as per current Autoconf CVS advice.
26047
26048 2004-03-31  Jim Meyering  <jim@meyering.net>
26049
26050         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
26051         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
26052         * m4/xalloc.m4: Likewise.
26053
26054 2004-03-30  Paul Eggert  <eggert@twinsun.com>
26055
26056         Merge from coreutils.
26057
26058         * m4/inttostr.m4: New file.
26059         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
26060         Require AM_STDBOOL_H and gl_TIMESPEC instead.
26061         Require gl_CLOCK_TIME.
26062         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
26063
26064 2004-03-30  Paul Eggert  <eggert@twinsun.com>
26065
26066         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
26067         not bool, to be more consistent with Unix conventions.
26068         Suggested by Bruno Haible.
26069
26070         Merge from coreutils.
26071
26072         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
26073         * lib/umaxtostr.c: New files.
26074
26075         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
26076         the usual <time.h> dance.
26077         (get_date): Change signature to support fractional time stamps.
26078         All callers changed.
26079         * lib/getdate.y: Include "getdate.h" first, as we can now
26080         assume C89 and don't need to worry about 'const'.
26081         Similarly, include "unlocked-io.h" near start, not in middle.
26082         Include <limits.h>.
26083         (textint.value): Use long int rather than int.
26084         (textint.digits): Use size_t rather than int.
26085         (BILLION, LOG10_BILLION): New constants.
26086         (parser_control): New member rel_ns.  Members day_ordinal,
26087         time_zone, month, day, hour, minutes, rel_year, rel_month,
26088         rel_day, rel_hour, rel_minutes, rel_seconds
26089         are now long int, not int.  Member seconds is now struct timespec,
26090         not int.  New member timespec_seen.  Members dates_seen, days_seen,
26091         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
26092         not int.
26093         (%union.intval): Now long int, not int.
26094         New member timespec.
26095         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
26096         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
26097         (spec): Now is a timespec or an item list.
26098         (timespec, items): New nonterminals.
26099         (time, rel, relunit, number, get_date):
26100         Add support for fractional seconds.
26101         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
26102         (gmtime, localtime, mktime): Remove decls; not needed with C89.
26103         (to_hour): First arg is now long int, not int.
26104         (to_year): Returns long int, not int.
26105         Don't treat year -70 like 70.
26106         (tm_diff): Returns long int, not int.
26107         (lookup_word): Use bool instead of int when appropriate.
26108         (yylex): Use size_t for count, not int.
26109         Detect overflow when parsing large integer constants.
26110         Add support for fractions.
26111         (get_date): Make pointers 'const' if possible.
26112         Use more-portable code to detect integer overflow.
26113         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
26114         Don't use ctime; it's not reliable if the year has >4 digits.
26115
26116         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
26117         This is for compatibility with BSD.
26118
26119         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
26120         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
26121         From coreutils' system.h.
26122
26123         * lib/userspec.c: Don't include "posixver.h".
26124         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
26125         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
26126         compatible extension.  Simplify code by removing a boolean int
26127         that was always nonzero if a string was nonnull.
26128
26129 2004-03-30  Jim Meyering  <jim@meyering.net>
26130
26131         Merge from coreutils.
26132
26133         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
26134         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
26135         on some systems one must include <grp.h> before it.
26136         Reported by Christian Krackowizer.
26137
26138 2004-03-30  Jim Meyering  <jim@meyering.net>
26139
26140         Merge from coreutils.
26141
26142         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
26143
26144         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
26145         an empty input stream.
26146
26147         * lib/readtokens.c: Include <stdbool.h>.
26148         (readtoken): Use `size_t' rather than int/long.
26149         All callers adjusted.
26150         Use `bool' rather than `int' where appropriate.
26151         Use memset rather than an explicit loop.
26152         Use x2nrealloc rather than xrealloc.
26153         Allow the use of `\0' as a delimiter.
26154         (readtokens): Likewise.
26155         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
26156
26157 2004-03-30  Jim Meyering  <jim@meyering.net>
26158
26159         * m4/realloc.m4: Remove file, since now it does no more than
26160         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
26161         the `configure.ac' section of module/realloc.
26162         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
26163
26164 2004-03-30  Bruno Haible  <bruno@clisp.org>
26165
26166         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
26167         nonnull.
26168
26169 2004-03-29  Paul Eggert  <eggert@twinsun.com>
26170
26171         Merge changes to getloadavg.c from coreutils and Emacs.
26172
26173         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
26174         Define to an expression, not to the empty string.
26175         Include cloexec.h and xalloc.h.
26176         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
26177         Use set_cloexec_flag rather than rolling our own.
26178         * lib/cloexec.c, lib/cloexec.h: New files.
26179
26180 2004-03-29  Paul Eggert  <eggert@twinsun.com>
26181
26182         * m4/cloexec.m4: New file.
26183
26184 2004-03-18  Paul Eggert  <eggert@twinsun.com>
26185
26186         * lib/getopt.h: Sync with libc CVS.
26187
26188 2004-03-18  Paul Eggert  <eggert@twinsun.com>
26189             Bruno Haible  <bruno@clisp.org>
26190
26191         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
26192         mbswidth.
26193
26194 2004-03-18  Paul Eggert  <eggert@twinsun.com>
26195             Bruno Haible  <bruno@clisp.org>
26196
26197         * lib/mbswidth.h: Include <wchar.h> only if
26198         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
26199         <wchar.h>.
26200         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
26201
26202 2004-03-09  Paul Eggert  <eggert@twinsun.com>
26203
26204         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
26205         Sync with libc CVS.
26206         * lib/getopt_int.h: New file, also synced from libc.
26207
26208 2004-03-09  Paul Eggert  <eggert@twinsun.com>
26209
26210         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
26211         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
26212         Bring back getopt.c, getopt.h, getopt1.c.
26213
26214 2004-03-07  Paul Eggert  <eggert@twinsun.com>
26215
26216         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
26217         All uses changed.  Check for sa_sigaction member; this fixes
26218         a bug first reported by Jason Andrade in
26219         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
26220
26221 2004-03-07  Paul Eggert  <eggert@twinsun.com>
26222
26223         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
26224         '#if' expressions.  Unlike the code it replaces, it does not
26225         depend on (defined _SC_PAGESIZE).  However, it does depend on
26226         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
26227         first reported by Jason Andrade in
26228         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
26229
26230 2004-02-25  Simon Josefsson  <jas@extundo.com>
26231
26232         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
26233
26234 2004-02-25  Simon Josefsson  <jas@extundo.com>
26235
26236         * lib/strdup.h: New file.
26237         * lib/strdup.c: Include it.
26238         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
26239         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
26240
26241 2004-02-23  Karl Berry  <karl@gnu.org>
26242
26243         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
26244         (from fencepost.gnu.org:/gd/gnuorg).
26245
26246 2004-02-23  Karl Berry  <karl@gnu.org>
26247
26248         * config/srclistvars.sh (GNUORG) [karl]: redefine.
26249         * config/srclist.txt: add maintain/standards documents.
26250
26251 2004-02-18  Bruno Haible  <bruno@clisp.org>
26252
26253         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
26254         Reported by Derek Robert Price <derek@ximbiot.com>.
26255
26256 2004-02-16  Karl Berry  <karl@gnu.org>
26257
26258         * config/mkinstalldirs, install-sh: update from automake.
26259
26260 2004-02-06  Karl Berry  <karl@gnu.org>
26261
26262         * m4/po.m4: update from gettext 0.14.1.
26263
26264 2004-02-06  Karl Berry  <karl@gnu.org>
26265
26266         * lib/config.charset: update from gettext 0.14.1.
26267
26268 2004-02-05  Paul Eggert  <eggert@twinsun.com>
26269
26270         Add comments and code, prompted by suggestions from Bruno Haible
26271         for sh-quote.
26272         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
26273         describing the enum quoting_style values.
26274         * lib/quotearg.c (quotearg_alloc): New function.
26275         (quotearg_buffer_restyled): Treat lone { and } as special.
26276         Treat = as special.  Work around bug with older shells
26277         that "see" a '\' that is really the 2nd byte of a multibyte char.
26278         Quote empty string with shell_quoting_style.
26279
26280 2004-02-03  Bruno Haible  <bruno@clisp.org>
26281
26282         * m4/pipe.m4: New file, from GNU gettext.
26283
26284 2004-02-03  Bruno Haible  <bruno@clisp.org>
26285
26286         * lib/pipe.h: New file, from GNU gettext.
26287         * lib/pipe.c: New file, from GNU gettext.
26288
26289 2004-01-27  Bruno Haible  <bruno@clisp.org>
26290
26291         * m4/execute.m4: New file, from GNU gettext.
26292
26293 2004-01-27  Bruno Haible  <bruno@clisp.org>
26294
26295         * lib/execute.h: New file, from GNU gettext.
26296         * lib/execute.c: New file, from GNU gettext.
26297         * lib/w32spawn.h: New file, from GNU gettext.
26298
26299 2004-01-24  Paul Eggert  <eggert@twinsun.com>
26300
26301         Merge from diffutils.
26302
26303         * lib/file-type.c (file_type): Add typed memory objects.
26304         * lib/file-type.h (S_TYPEISTMO): New macro.
26305
26306         * lib/c-stack.h (c_stack_action): Remove argv argument.
26307         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
26308         (die): Don't calculate message unless segv_action returns.
26309         (get_stack_location, min_address_from_argv, max_address_from_argv,
26310         volatile stack_base, volatile_stack_size): Remove.
26311         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
26312         that every segmentation violation is a stack overflow.  (Ouch!)
26313         See Debian bug 136249 (still outstanding) for more info about why
26314         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
26315
26316 2004-01-24  Paul Eggert  <eggert@twinsun.com>
26317
26318         Exit-status fix from coreutils.
26319
26320         Use exit_failure consistently in place of EXIT_FAILURE,
26321         so that program exit statuses are consistent on failure.
26322
26323         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
26324         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
26325         * lib/argmatch.h: Comment fix to match the above.
26326         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
26327         Now a macro referring to exit_failure, instead of a separate
26328         variable.  Include "exitfail.h" to get it.
26329         * lib/xstrtol.h: Include "exitfail.h".
26330         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
26331
26332         * lib/long-options.c (parse_long_options): Use prototype
26333         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
26334         for clarity.
26335
26336 2004-01-21  Jim Meyering  <jim@meyering.net>
26337
26338         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
26339         so as not to conflict with a different-sized __mktime_internal
26340         function in GNU libc.
26341         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
26342         Problem building statically-linked `ls' reported by Michael Brunnbauer.
26343
26344 2004-01-20  Karl Berry  <karl@gnu.org>
26345
26346         * config/config.guess: update from config.
26347
26348         * config/srclistvars.sh: GNUWWWLICENSES for karl.
26349
26350 2004-01-20  Bruno Haible  <bruno@clisp.org>
26351
26352         Safer stack allocation.
26353         * lib/setenv.c: Include allocsa.h.
26354         (alloca): Remove fallback definition.
26355         (freea): Remove macro.
26356         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
26357         instead of freea.
26358
26359 2004-01-20  Bruno Haible  <bruno@clisp.org>
26360
26361         * m4/eealloc.m4: New file, from GNU gettext.
26362
26363 2004-01-20  Bruno Haible  <bruno@clisp.org>
26364
26365         * m4/allocsa.m4: New file, from GNU gettext.
26366
26367 2004-01-20  Bruno Haible  <bruno@clisp.org>
26368
26369         * lib/xallocsa.h: New file, from GNU gettext.
26370         * lib/xallocsa.c: New file, from GNU gettext.
26371
26372 2004-01-20  Bruno Haible  <bruno@clisp.org>
26373
26374         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
26375
26376 2004-01-20  Bruno Haible  <bruno@clisp.org>
26377
26378         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
26379         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
26380         specially.
26381
26382 2004-01-20  Bruno Haible  <bruno@clisp.org>
26383
26384         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
26385         patch.
26386
26387 2004-01-20  Bruno Haible  <bruno@clisp.org>
26388
26389         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
26390
26391 2004-01-20  Bruno Haible  <bruno@clisp.org>
26392
26393         * lib/eealloc.h: New file.
26394
26395 2004-01-20  Bruno Haible  <bruno@clisp.org>
26396
26397         * lib/binary-io.h: Avoid warnings on Cygwin.
26398
26399 2004-01-20  Bruno Haible  <bruno@clisp.org>
26400
26401         * lib/allocsa.h: New file, from GNU gettext.
26402         * lib/allocsa.c: New file, from GNU gettext.
26403
26404 2004-01-18  Karl Berry  <karl@gnu.org>
26405
26406         * doc/gpl.texi, doc/lgpl.texi: new files.
26407
26408 2004-01-18  Karl Berry  <karl@gnu.org>
26409
26410         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
26411         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
26412
26413 2004-01-15  Paul Eggert  <eggert@twinsun.com>
26414
26415         Merge from coreutils.
26416
26417         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
26418         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
26419         (gl_DEFAULT_POSIX2_VERSION): Move
26420         the documentation from 'configure' into 'config.hin',
26421         so that 'configure --help' isn't burdened by it and
26422         we don't have to worry about its formatting there.
26423         Reword the documentation so that it's more succinct
26424         and can be run together into a single paragraph.
26425         * m4/same.m4 (gl_SAME): Check for pathconf.
26426
26427 2004-01-15  Paul Eggert  <eggert@twinsun.com>
26428
26429         Merge from coreutils.
26430
26431         * lib/posixver.c: Include posixver.h.
26432
26433         * lib/same.c: Include <stdbool.h>, <limits.h>.
26434         (_POSIX_NAME_MAX): Define if not defined.
26435         (MIN): New macro.
26436         (same_name): If file names are silently truncated, report
26437         that the file names are the same if they are the same after
26438         the silent truncation.
26439
26440         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
26441         conversion function.
26442         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
26443         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
26444         longer needed.
26445
26446 2004-01-15  Jim Meyering  <jim@meyering.net>
26447
26448         Merge from coreutils.
26449
26450         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
26451         if no library is required.
26452         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
26453         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
26454         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
26455         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
26456         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
26457         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
26458         value, $ac_cv_search_crypt, if it's "none required".
26459         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
26460         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
26461         not gl_FUNC_GETLOADAVG.
26462         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
26463         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
26464
26465 2004-01-15  Jim Meyering  <jim@meyering.net>
26466
26467         Merge from coreutils.
26468
26469         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
26470         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
26471         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
26472
26473         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
26474         optional configure-time default.
26475
26476         * lib/version-etc.c (version_etc_copyright): Update copyright date.
26477
26478         * lib/xreadlink.c (xreadlink): Correct outdated comment.
26479
26480 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
26481
26482         Merge from coreutils.
26483
26484         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
26485         value, $ac_cv_search_nanosleep, if it's "none required".
26486
26487 2004-01-14  Paul Eggert  <eggert@twinsun.com>
26488
26489         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
26490         with like-named macro in fnmatch.c.
26491         (EXT): Use an internal constant instead.
26492
26493         Merge fnmatch patches from glibc.
26494         * lib/fnmatch.c (mbsinit): Remove define.
26495         Add libc_hidden_ver (__fnmatch, fnmatch).
26496         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
26497         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
26498
26499 2004-01-14  Karl Berry  <karl@gnu.org>
26500
26501         * config/install-sh: update from automake.
26502
26503 2004-01-13  Karl Berry  <karl@gnu.org>
26504
26505         * config/install-sh: update from automake.
26506
26507 2004-01-09  Karl Berry  <karl@gnu.org>
26508
26509         * config/install-sh: update from automake.
26510
26511 2004-01-05  Karl Berry  <karl@gnu.org>
26512
26513         * config/config.{sub,guess}: update from config.
26514
26515 2003-12-31  Karl Berry  <karl@gnu.org>
26516
26517         * config/depcomp: update from automake.
26518
26519 2003-12-14  Karl Berry  <karl@gnu.org>
26520
26521         * lib/config.charset: update from gettext-runtime.
26522
26523 2003-12-03  Paul Eggert  <eggert@twinsun.com>
26524
26525         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
26526         Bug reported by Alfred M. Szmidt.
26527
26528 2003-12-03  Bruno Haible  <bruno@clisp.org>
26529
26530         * m4/gettext.m4: Upgrade from gettext-0.13.
26531         * m4/po.m4: Upgrade from gettext-0.13.
26532         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
26533         * m4/intmax.m4: New file, from gettext-0.13.
26534         * m4/printf-posix.m4: New file, from gettext-0.13.
26535
26536 2003-11-29  Karl Berry  <karl@gnu.org>
26537
26538         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
26539
26540 2003-11-25  Paul Eggert  <eggert@twinsun.com>
26541             Bruno Haible  <bruno@clisp.org>
26542
26543         * lib/printf-parse.h: Don't include sys/types.h.
26544         (ARG_NONE): New macro.
26545         (char_directive): Change type of *arg_index fields to size_t.
26546         * lib/printf-parse.c: Don't include sys/types.h.
26547         (SSIZE_MAX): Remove macro.
26548         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
26549         Remove unnecessary overflow check.
26550         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
26551         fields.
26552
26553 2003-11-25  Bruno Haible  <bruno@clisp.org>
26554
26555         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
26556
26557 2003-11-25  Bruno Haible  <bruno@clisp.org>
26558
26559         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
26560         gt_TYPE_SSIZE_T.
26561
26562 2003-11-24  Paul Eggert  <eggert@twinsun.com>
26563
26564         * modules/alloca: Remove dependency on xalloc.
26565
26566 2003-11-24  Paul Eggert  <eggert@twinsun.com>
26567
26568         * lib/alloca.c: Remove dependency on xalloc module.
26569         (xalloc_die): Remove.
26570         (memory_full) [!defined emacs]: New macro.
26571         [!defined emacs]: Don't include xalloc.h.
26572         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
26573         address arithmetic overflows.  Change datatypes a bit to avoid
26574         unnecessary casts.
26575
26576 2003-11-22  Jim Meyering  <jim@meyering.net>
26577
26578         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
26579         s/size/size_t/.
26580
26581 2003-11-21  Karl Berry  <karl@gnu.org>
26582
26583         * config/config.{sub,guess}: update from config.
26584
26585 2003-11-18  Karl Berry  <karl@gnu.org>
26586
26587         * config/config.{sub,guess}: update from config.
26588
26589         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
26590
26591 2003-11-17  Paul Eggert  <eggert@twinsun.com>
26592
26593         * README: Mention that S+T cannot overflow if S is the size of
26594         an existing object and T is sufficiently small.
26595
26596 2003-11-17  Jim Meyering  <jim@meyering.net>
26597
26598         On systems without utime and without a utimes function capable of
26599         dealing with a NULL struct utimbuf* argument, this utime replacement
26600         could -- in unusual circumstances -- leak a file descriptor.
26601         * lib/utime.c: Include <unistd.h> and <errno.h>.
26602         (utime_null): Be sure to close `fd' and to preserve errno.
26603         Reported by Geoff Collyer via Arnold Robbins.
26604
26605 2003-11-17  Bruno Haible  <bruno@clisp.org>
26606
26607         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
26608         (Depends-on): Add xsize.
26609
26610 2003-11-17  Bruno Haible  <bruno@clisp.org>
26611
26612         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
26613
26614 2003-11-17  Bruno Haible  <bruno@clisp.org>
26615
26616         * lib/vasnprintf.c (alloca): Remove fallback definition.
26617         (freea): Remove definition.
26618         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
26619         Reported by Paul Eggert.
26620
26621 2003-11-16  Paul Eggert  <eggert@twinsun.com>
26622             Bruno Haible  <bruno@clisp.org>
26623
26624         Protect against address arithmetic overflow.
26625         * lib/printf-args.h: Include stddef.h.
26626         (arguments): Change type of field 'count' to size_t.
26627         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
26628         'unsigned int' where appropriate.
26629         * lib/printf-parse.h: Include sys/types.h.
26630         (char_directive): Change type of *arg_index fields to ssize_t.
26631         (char_directives): Change type of fields 'count', max_*_length to
26632         size_t.
26633         * lib/printf-parse.c: Include sys/types.h and xsize.h.
26634         (SSIZE_MAX): Define fallback value.
26635         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
26636         instead of 'int' where appropriate. Check a_allocated, d_allocated
26637         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
26638         * lib/vasnprintf.c: Include xsize.h.
26639         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
26640         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
26641         overflow. Avoid wraparound when converting a width or precision from
26642         decimal to binary.
26643
26644 2003-11-16  Bruno Haible  <bruno@clisp.org>
26645
26646         Update from GNU gettext.
26647         * lib/printf-parse.c: Generalize to it can be compiled for wide
26648         strings.
26649         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
26650         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
26651         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
26652         SNPRINTF): New macros.
26653         Don't include <alloca.h> if the file is used inside libintl.
26654         (local_wcslen): New function, for Solaris 2.5.1.
26655         (VASNPRINTF): Use it instead of wcslen.
26656
26657 2003-11-16  Bruno Haible  <bruno@clisp.org>
26658
26659         * lib/xsize.h (xmax): New function.
26660         (xsum, xsum3, xsum4): Declare as "pure" functions.
26661
26662 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26663
26664         * modules/xalloc (Files): Undo latest change, since xalloc.h
26665         no longer needs SIZE_MAX or PTRDIFF_MAX.
26666
26667 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26668
26669         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
26670         gl_PTRDIFF_MAX.
26671
26672 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26673
26674         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
26675         "return", to pacify some unknown compiler.  Problem reported
26676         by Joerg Schilling.
26677
26678 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26679
26680         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
26681         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
26682         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
26683         heuristic is just as accurate as far as we know, and it removes a
26684         dependency on size_max.m4 and ptrdiff_max.m4.
26685
26686 2003-11-11  Bruno Haible  <bruno@clisp.org>
26687
26688         * modules/xsize (Files): Add m4/size_max.m4.
26689         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
26690
26691 2003-11-11  Bruno Haible  <bruno@clisp.org>
26692
26693         * m4/size_max.m4: New file.
26694         * m4/ptrdiff_max.m4: New file.
26695         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
26696         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
26697         (gl_XALLOC): Invoke it.
26698
26699 2003-11-11  Bruno Haible  <bruno@clisp.org>
26700
26701         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
26702         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
26703         defined.
26704
26705 2003-11-10  Paul Eggert  <eggert@twinsun.com>
26706
26707         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
26708         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
26709         rejected some allocations of exactly SIZE_MAX - 2 bytes.
26710         From Bruno Haible.
26711         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
26712         not (size_t) -1, since it's defined here.
26713
26714 2003-11-09  Karl Berry  <karl@gnu.org>
26715
26716         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
26717
26718 2003-11-06  Paul Eggert  <eggert@twinsun.com>
26719
26720         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
26721         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
26722         Reject sizes of exactly SIZE_MAX bytes.
26723         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
26724         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
26725
26726 2003-11-05  Bruno Haible  <bruno@clisp.org>
26727
26728         * lib/xsize.h: Include limits.h, to avoid a possible collision with
26729         SIZE_MAX defined in <limits.h> on Solaris.
26730
26731 2003-11-04  Jim Meyering  <jim@meyering.net>
26732
26733         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
26734         variable names, rather than @VAR@.
26735         * modules/poll: Likewise.
26736
26737 2003-11-04  Bruno Haible  <bruno@clisp.org>
26738
26739         * modules/xsize: New file.
26740         * modules/linebreak: Depend on xsize.
26741         * MODULES.html.sh (func_all_modules): Add xsize.
26742
26743 2003-11-04  Bruno Haible  <bruno@clisp.org>
26744
26745         * m4/xsize.m4: New file.
26746
26747 2003-11-04  Bruno Haible  <bruno@clisp.org>
26748
26749         * lib/xsize.h: New file.
26750         * lib/linebreak.c: Include xsize.h.
26751         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
26752         argument for overflow.
26753         Suggested by Paul Eggert.
26754
26755 2003-11-03  Karl Berry  <karl@gnu.org>
26756
26757         * config/config.{guess,sub}: update from config.
26758
26759 2003-11-03  Jim Meyering  <jim@meyering.net>
26760
26761         * modules/userspec (lib_SOURCES): Add userspec.h.
26762         (Include): Add "userspec.h".
26763         Improve description.
26764
26765 2003-11-03  Jim Meyering  <jim@meyering.net>
26766
26767         * lib/userspec.c: Include "userspec.h".
26768         * lib/userspec.h: New file.
26769
26770 2003-11-03  Bruno Haible  <bruno@clisp.org>
26771
26772         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
26773
26774 2003-11-03  Bruno Haible  <bruno@clisp.org>
26775
26776         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
26777         available, to avoid (extremely rare) race condition.
26778         Suggested by Paul Eggert.
26779
26780 2003-11-02  Karl Berry  <karl@gnu.org>
26781
26782         * config/srclist.txt (vasprintf.c): sync broken, sigh.
26783
26784 2003-10-31  Paul Eggert  <eggert@twinsun.com>
26785
26786         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
26787         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
26788         (read_filesystem_list): Set and use me_type_malloced.
26789         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
26790         whatever the type happens to be), for brevity and consistency.
26791         Check for size calculation overflow on Alphas running OSF/1.
26792
26793 2003-10-31  Jim Meyering  <jim@meyering.net>
26794
26795         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
26796
26797         * lib/linebuffer.c: Include <string.h> for declaration of memset.
26798
26799 2003-10-30  Paul Eggert  <eggert@twinsun.com>
26800             Bruno Haible  <bruno@clisp.org>
26801
26802         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
26803         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
26804
26805 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
26806
26807         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
26808         netbsd*-gnu*.  Suggested by Robert Millan.
26809
26810 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26811
26812         * modules/group-member: Depend on stdbool.
26813
26814 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26815
26816         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
26817
26818 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26819
26820         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
26821         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
26822         after the 'gnu' in these cases.  This fixes some bugs in the
26823         previous change, and is based on suggestions by Robert Millan.
26824
26825 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26826
26827         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
26828         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
26829         no longer needed.
26830         * lib/quotearg.c (quotearg_n_options): Use it.
26831         * lib/group-member.c: Include <stdbool.h>.
26832         (free_group_info): Arg is now const *; don't free arg.
26833         (get_group_info): Now returns bool and accepts struct group_info *,
26834         rather than returning a malloc'ed struct group_info *.
26835         All uses changed.  Check for overflow in internal size calculation.
26836
26837         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
26838         rather than xmalloc/xrealloc.
26839         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
26840         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
26841         conformance bug: the old code used a pointer after freeing the
26842         storage that it addressed.
26843         * lib/hash.c (hash_initialize): Simplify the code by using
26844         xalloc_oversized rather than doing it by hand.
26845         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
26846         the buffer preserved.  Use free and xmalloc instead.
26847         * lib/quotearg.c (quotearg_n_options): Likewise.
26848         Use a simpler test for size overflow.  Don't use xalloc_oversized
26849         because unsigned int might be wider than size_t (!); this suggests
26850         that we should switch from unsigned int to size_t for slot numbers.
26851
26852 2003-10-28  Paul Eggert  <eggert@twinsun.com>
26853
26854         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
26855         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
26856         NetBSD kernels.  Requested by Richard Stallman.
26857
26858 2003-10-27  Paul Eggert  <eggert@twinsun.com>
26859
26860         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
26861         to allocate the returned structure.  Do not allocate a subarray,
26862         as x2nrealloc will do that.
26863         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
26864         instead of xnrealloc.
26865         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
26866
26867 2003-10-27  Bruno Haible  <bruno@clisp.org>
26868
26869         * lib/stdbool_.h: Better support for BeOS.
26870
26871 2003-10-26  Paul Eggert  <eggert@twinsun.com>
26872
26873         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
26874         now uses inline.
26875
26876 2003-10-26  Paul Eggert  <eggert@twinsun.com>
26877
26878         * lib/xalloc.h (xalloc_oversized): New static inline function, for
26879         callers that want to do their own size-overflow checking.  Include
26880         <stdbool.h>, since xalloc_oversized returns bool.
26881         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
26882         to use xalloc_oversized.
26883
26884         Add two functions x2realloc, x2nrealloc, for programs that grow
26885         arrays dynamically by doubling their sizes.
26886         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
26887         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
26888         New functions.
26889
26890         Port to C99 semantics for 'inline' of external functions.
26891         Bug reported by Bruno Haible.
26892         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
26893         with the old contents of xnmalloc.
26894         (xnmalloc, xmalloc): Use it.
26895         (xnrealloc_inline): New static inline function,
26896         with the old contents of xnrealloc.
26897         (xnrealloc, xrealloc): Use it.
26898
26899         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
26900         that.
26901
26902 2003-10-26  Karl Berry  <karl@gnu.org>
26903
26904         * config/srclist.txt (COPYING.DOC): no longer available from
26905         /gd/gnuorg; don't know where the ultimate source is.
26906
26907 2003-10-25  Paul Eggert  <eggert@twinsun.com>
26908
26909         Fix several address-calculation bugs in the hash modules,
26910         plus some minor code cleanup.
26911
26912         * lib/hash.h: Include <stdbool.h>, for bool.
26913         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
26914         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
26915         hash_get_n_entries, hash_get_max_bucket_length,
26916         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
26917         hash_rehash): Use size_t rather than unsigned.
26918         * lib/hash.c (struct hash_table, hash_get_n_buckets,
26919         hash_get_n_buckets_used, hash_get_n_entries,
26920         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
26921         hash_get_entries, hash_do_for_each, hash_string, is_prime,
26922         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
26923         Likewise.
26924         (SIZE_MAX): Define if not defined.
26925         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
26926         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
26927         hash_print):
26928         Use const * when possible.
26929         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
26930         (check_tuning): Fix bug: if tuning parameters were very close to
26931         0 or 1, rounding errors could have caused subscript violations.
26932         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
26933         (hash_initialize): Add 'fail:' label
26934         to free table and return NULL, and use it to simplify code.
26935         Use calloc rather than clearing the storage ourself.
26936         (hash_initialize, hash_rehash): Check for arithmetic overflow in
26937         buffer size calculations.
26938         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
26939         Include <stddef.h>, for size_t.
26940         * lib/hash-pjw.c (hash_pjw): Likewise.
26941         Switch to method described by Bruno Haible.
26942         Include <limits.h>, for CHAR_BIT.
26943         (SIZE_BITS): New macro.
26944
26945 2003-10-23  Paul Eggert  <eggert@twinsun.com>
26946
26947         * m4/getline.m4 (AM_FUNC_GETLINE):
26948         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
26949         hosts.  Problem reported by Derek Robert Price in
26950         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
26951         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
26952         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
26953
26954 2003-10-21  Paul Eggert  <eggert@twinsun.com>
26955
26956         * lib/getndelim2.c (getndelim2): When size calculation overflows,
26957         ceiling the allocation at NMAX bytes rather than silently
26958         discarding input bytes before NMAX is reached.  This makes
26959         a difference only if NMAX exceeds SIZE_MAX / 2.
26960
26961         * lib/obstack.c: Merge from glibc.
26962         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
26963         Add libc_hidden_def (_obstack_newchunk).
26964         (_obstack_free) [! defined _LIBC]: Remove.
26965         [defined _LIBC]: Make a strong alias from obstack_free, rather than
26966         a clone of the function body.
26967         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
26968         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
26969
26970         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
26971         glibc.
26972         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
26973         arg to memcpy.
26974
26975         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
26976         (obstack_ptr_grow_fast, obstack_int_grow_fast):
26977         Don't use lvalue casts, as GCC plans to remove support for them
26978         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
26979         was also present in the non-GCC version, indicating that this
26980         code had always been buggy and had never been widely used.
26981         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
26982         Use the fast variant of each macro, rather than copying the
26983         definiens of the fast variant; that way, we'll be more likely to
26984         catch future bugs in the fast variants.
26985
26986 2003-10-20  Bruno Haible  <bruno@clisp.org>
26987
26988         * modules/wait-process: New file.
26989         * MODULES.html.sh (func_all_modules): Add wait-process.
26990
26991 2003-10-20  Bruno Haible  <bruno@clisp.org>
26992
26993         * m4/wait-process.m4: New file.
26994
26995 2003-10-20  Bruno Haible  <bruno@clisp.org>
26996
26997         * lib/wait-process.h: New file, from GNU gettext.
26998         * lib/wait-process.c: New file, from GNU gettext.
26999
27000 2003-10-19  Jim Meyering  <jim@meyering.net>
27001
27002         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
27003         HPUX 10.20.
27004
27005 2003-10-18  Karl Berry  <karl@gnu.org>
27006
27007         * config/config.guess: update from config.
27008
27009 2003-10-16  Paul Eggert  <eggert@twinsun.com>
27010
27011         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
27012         (getgroups): First arg is int, not size_t.
27013         Don't let 'free' mangle errno.
27014
27015 2003-10-16  Paul Eggert  <eggert@twinsun.com>
27016
27017         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
27018
27019 2003-10-16  Karl Berry  <karl@gnu.org>
27020
27021         * config/config.{guess,sub}: update from config.
27022
27023 2003-10-16  Jim Meyering  <jim@meyering.net>
27024
27025         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
27026         memcpy.
27027
27028 2003-10-15  Paul Eggert  <eggert@twinsun.com>
27029
27030         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
27031         (SIZE_MAX): Remove.
27032         (new_exclude, add_exclude_file): Initial size no longer needs to
27033         be a power of 2.
27034         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
27035         our own address arithmetic overflow checking.
27036
27037         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
27038         (fnmatch): Do not alloca more than 2000 wide characters;
27039         instead, use malloc for large buffers.
27040         Check for address arithmetic overflow, and return -1
27041         with errno set to ENOMEM in that case.
27042         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
27043         (NEW_PATTERN): Do not alloca more than 8000 bytes;
27044         instead, return -1.  Check for address arithmetic overflow.
27045
27046 2003-10-14  Paul Eggert  <eggert@twinsun.com>
27047
27048         Handle invalid suffixes and overflow independently, so that
27049         callers can treat them independently as needed.  Fix some bugs in
27050         suffix handling, e.g., "100k@" was not diagnosed as an invalid
27051         suffix for a human-readable blocksize.  The major caller-visible
27052         change is the addition of a new
27053         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
27054         that both overflow and suffix chars were found.
27055
27056         * lib/human.c (humblock): Don't check separately for invalid suffix
27057         char; that is xstrtoumax's job (now that its bug is fixed).
27058         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
27059         INTMAX_MAX]: New macros.
27060         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
27061         TYPE_MAXIMUM): New macros.
27062         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
27063         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
27064         if overflow occurs, as it's what __strtol does and it's more useful
27065         in practice.
27066         (__xstrtol): If __strtol reports some error other than ERANGE,
27067         reflect it to the caller as LONGINT_INVALID.  If it reports
27068         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
27069         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
27070         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
27071         value.
27072         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
27073         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
27074         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
27075         [defined UINTMAX_MAX]: New macros.
27076
27077 2003-10-14  Bruno Haible  <bruno@clisp.org>
27078
27079         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
27080
27081 2003-10-14  Bruno Haible  <bruno@clisp.org>
27082
27083         * m4/sig_atomic_t: New file, from GNU gettext.
27084         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
27085
27086 2003-10-14  Bruno Haible  <bruno@clisp.org>
27087
27088         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
27089         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
27090         Also use volatile where needed.
27091
27092 2003-10-12  Paul Eggert  <eggert@twinsun.com>
27093
27094         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
27095         Change maintainer from Bruno Haible to 'all'.
27096
27097 2003-10-12  Paul Eggert  <eggert@twinsun.com>
27098
27099         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
27100
27101 2003-10-12  Paul Eggert  <eggert@twinsun.com>
27102
27103         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
27104         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
27105         and define in terms of the other primitives.
27106         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
27107         (SIZE_MAX): Define if not already defined.
27108         (array_size_overflow): New function.
27109         (xalloc_die): Abort instead of exiting if 'error' returns.
27110         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
27111         (xmalloc, xrealloc): Use them.
27112         (xcalloc): Check for address arithmetic overflow.
27113         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
27114         a bit faster than strcpy.
27115
27116 2003-10-10  Simon Josefsson  <jas@extundo.com>
27117
27118         * modules/argp (Depends-on): Add restrict and strcase.
27119
27120 2003-10-10  Simon Josefsson  <jas@extundo.com>
27121
27122         * m4/argp.m4: Add AC_C_INLINE.
27123
27124 2003-10-08  Paul Eggert  <eggert@twinsun.com>
27125
27126         Merge getpass from libc, plus a few fixes.
27127
27128         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
27129         Include <stdbool.h>.
27130         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
27131         __fsetlocking to empty.
27132         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
27133         do include <bits/libc-lock.h>.
27134         Do not include <fcntl.h>; not needed.
27135         [_LIBC]: Include <wchar.h>.
27136         (NOTCANCEL_MODE): New macro.
27137         (flockfile, funlockfile) [_LIBC]: New macros.
27138         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
27139         [!_LIBC]: New macros.
27140         (call_fclose): New function.
27141         (getpass): Use it.  Save tty stream separately; this simplifies the
27142         code and makes it more reliable if stdin happens to equal stdout.
27143         Invoke __fsetlocking on tty.
27144         Handle thread cancellation if needed.
27145         Namespace cleanup (use __tcgetattr, __getline).
27146         Use bool for Booleans.
27147         [USE_IN_LIBIO]: Handle wide streams.
27148         [!_LIBC]: Unconditionally do the fseek, since we don't know what
27149         stream might go where.
27150
27151         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
27152         doesn't have to include <stdio.h> before us.
27153         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
27154         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
27155         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
27156         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
27157         if not declared, so that we can use getpass.c code from libc without
27158         rewriting it.
27159         (flockfile, ftrylockfile, funlockfile): New macros.
27160
27161 2003-10-08  Paul Eggert  <eggert@twinsun.com>
27162
27163         * modules/getpass: Depend on stdbool.
27164
27165 2003-10-08  Paul Eggert  <eggert@twinsun.com>
27166
27167         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
27168
27169 2003-10-07  Karl Berry  <karl@gnu.org>
27170
27171         * config/config.{guess,sub}: update from config.
27172
27173 2003-10-06  Jim Meyering  <jim@meyering.net>
27174             Bruno Haible  <bruno@clisp.org>
27175
27176         This lets translators provide better translations for the
27177         "Written by ..." part of --version output.
27178         * lib/version-etc.h: Include stdarg.h.
27179         (version_etc_copyright): Declare as readonly.
27180         (version_etc): Make this function variadic with a NULL-terminated list
27181         of author name strings.
27182         (version_etc_va): New declaration.
27183         * lib/version-etc.c: Include stdarg.h, stdlib.h.
27184         (version_etc_copyright): Declare as readonly.
27185         (version_etc_va): New function. Provide a different translatable string
27186         for each possible number of authors < 10. Abbreviate when there are 10
27187         authors or more.
27188         (version_etc): Make this function variadic. Call version_etc_va.
27189         Suggestion from Gary V. Vaughan.
27190
27191         * lib/long-options.h (parse_long_options): Change prototype: the
27192         authors string is moved to the end and becomes variadic.
27193         * lib/long-options.c: Include stdarg.h.
27194         (parse_long_options): Make this function variadic, too.
27195         Call version_etc_va, not version_etc.
27196
27197 2003-10-06  Bruno Haible  <bruno@clisp.org>
27198
27199         * modules/version-etc-2: Remove file.
27200         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
27201
27202 2003-10-06  Bruno Haible  <bruno@clisp.org>
27203
27204         * modules/fatal-signal: New file.
27205         * MODULES.html.sh (func_all_modules): Add fatal-signal.
27206
27207 2003-10-06  Bruno Haible  <bruno@clisp.org>
27208
27209         * m4/fatal-signal.m4: New file.
27210         * m4/signalblocking.m4: New file, from GNU gettext.
27211
27212 2003-10-06  Bruno Haible  <bruno@clisp.org>
27213
27214         * lib/version-etc-2.h: Remove file.
27215         * lib/version-etc-2.c: Remove file.
27216
27217 2003-10-06  Bruno Haible  <bruno@clisp.org>
27218
27219         * lib/fatal-signal.h: New file, from GNU gettext.
27220         * lib/fatal-signal.c: New file, from GNU gettext.
27221
27222 2003-10-05  Paul Eggert  <eggert@twinsun.com>
27223
27224         * README: Rework advice for preventing empty .o files.
27225         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
27226         not <sys/types.h>.
27227
27228 2003-10-04  Karl Berry  <karl@gnu.org>
27229
27230         * lib/argp*: update from libc.
27231
27232 2003-10-04  Karl Berry  <karl@gnu.org>
27233
27234         * config/config.{guess,sub}: update from config.
27235
27236 2003-10-02  Bruno Haible  <bruno@clisp.org>
27237
27238         * modules/lchown (Include): Add lchown.h.
27239         * modules/time_r (Include): Use "..." syntax.
27240         * modules/xgetdomainname (Include): Add xgetdomainname.h.
27241
27242 2003-10-01  Simon Josefsson  <jas@extundo.com>
27243
27244         * MODULES.html.sh (func_all_modules): Move gethostname from section
27245         'based on' to section 'lacking' POSIX:2001.
27246
27247 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
27248
27249         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
27250         to output mode on the same stream.
27251
27252 2003-09-29  Paul Eggert  <eggert@twinsun.com>
27253
27254         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
27255         Fix arg typo in previous patch.
27256
27257 2003-09-28  Jim Meyering  <jim@meyering.net>
27258
27259         * lib/error.c: Correct cpp indentation.
27260
27261 2003-09-27  Paul Eggert  <eggert@twinsun.com>
27262
27263         * modules/free: New file.
27264
27265 2003-09-27  Paul Eggert  <eggert@twinsun.com>
27266
27267         * m4/free.m4: New file.
27268
27269 2003-09-27  Paul Eggert  <eggert@twinsun.com>
27270
27271         * lib/minmax.h (MIN, MAX)
27272         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
27273         Omit the special code that used __typeof__, since we worry that
27274         it could be more trouble than it's worth.  See:
27275         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
27276         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
27277
27278         * lib/free.c: New file.
27279
27280 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
27281
27282         Trivial fixes to Makefile.am parts of module listings.
27283         * modules/strstr: Append strstr.h to lib_SOURCES.
27284         * modules/strcase: Likewise, for strcase.h.
27285
27286 2003-09-27  Karl Berry  <karl@gnu.org>
27287
27288         * config/mkinstalldirs: update from automake.
27289
27290 2003-09-26  Paul Eggert  <eggert@twinsun.com>
27291
27292         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
27293         (error_tail): Do not loop, reallocating temporary buffer, since
27294         the output cannot contain more wide characters than the input
27295         contains bytes, the size must be big enough already.  This avoids
27296         one potential size overflow calculation.  Check for size overflow
27297         when calculating temporary buffer size.  Free temporary buffer
27298         when done, if it was allocated with malloc; this plugs a memory
27299         leak.  Remove casts from void * to pointers, that are no longer
27300         needed now that we're assuming C89 or better.
27301
27302         Merge error changes from glibc.
27303
27304         * lib/error.c, error.h: Update copyright notice header to match glibc.
27305         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
27306         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
27307         Disable cancellation while printing error.
27308         * lib/error.h: Prepend __ to parameter names.
27309
27310 2003-09-26  Jim Meyering  <jim@meyering.net>
27311
27312         * lib/error.c (error_tail): Move some declarations
27313         into inner scope where the local variables are used.
27314
27315 2003-09-26  Bruno Haible  <bruno@clisp.org>
27316
27317         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
27318         stpncpy().
27319         Don't define stpncpy through config.h; it's now done through stpncpy.h.
27320
27321 2003-09-26  Bruno Haible  <bruno@clisp.org>
27322
27323         * lib/stpncpy.h (gnu_stpncpy): New declaration.
27324         (stpncpy): Define as alias for gnu_stpncpy.
27325         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
27326
27327 2003-09-25  Simon Josefsson  <jas@extundo.com>
27328
27329         * lib/xgetdomainname.h: New file.
27330         * lib/xgetdomainname.c: New file.
27331
27332 2003-09-25  Simon Josefsson  <jas@extundo.com>
27333             Bruno Haible  <bruno@clisp.org>
27334
27335         * modules/getdomainname: New file.
27336         * modules/xgetdomainname: New file.
27337         * MODULES.html.sh (func_all_modules): Add getdomainname,
27338         xgetdomainname.
27339
27340 2003-09-25  Simon Josefsson  <jas@extundo.com>
27341             Bruno Haible  <bruno@clisp.org>
27342
27343         * m4/getdomainname.m4: New file.
27344
27345 2003-09-25  Simon Josefsson  <jas@extundo.com>
27346             Bruno Haible  <bruno@clisp.org>
27347
27348         * lib/getdomainname.h: New file.
27349         * lib/getdomainname.c: New file.
27350
27351 2003-09-25  Karl Berry  <karl@gnu.org>
27352
27353         * lib/argp-fmtstream.c, argp-help.c: update from libc.
27354
27355 2003-09-25  Karl Berry  <karl@gnu.org>
27356
27357         * config/install-sh: update from automake.
27358
27359 2003-09-25  Bruno Haible  <bruno@clisp.org>
27360
27361         * modules/version-etc-2: New file, from modules/version-etc with
27362         modifications.
27363         * MODULES.html.sh (func_all_modules): Add version-etc-2.
27364
27365 2003-09-25  Bruno Haible  <bruno@clisp.org>
27366
27367         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
27368         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
27369
27370 2003-09-24  Simon Josefsson  <jas@extundo.com>
27371
27372         * modules/xgethostname: Add xgethostname.h.
27373
27374 2003-09-24  Paul Eggert  <eggert@twinsun.com>
27375
27376         * lib/linebuffer.c (freebuffer): Don't free the argument, just
27377         the buffer associated with the argument.  Bug reported by
27378         Simon Josefsson.
27379
27380 2003-09-24  Paul Eggert  <eggert@twinsun.com>
27381
27382         * README: Document assumptions that 'int' is at least 32 bits
27383         wide, that integer arithmetic is 2's complement without overflow,
27384         that there are no holes in integer values, that adding sizes of
27385         two nonoverlapping objects can't overflow, and that all-bits-zero
27386         yields scalar zero.  Fix spelling and capitalization typos.
27387
27388 2003-09-19  Karl Berry  <karl@gnu.org>
27389
27390         * lib/argp.h: update from libc.
27391
27392 2003-09-17  Paul Eggert  <eggert@twinsun.com>
27393
27394         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
27395         to avoid spurious warnings like "AC_RUN_IFELSE was called before
27396         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
27397
27398 2003-09-17  Paul Eggert  <eggert@twinsun.com>
27399
27400         * gnulib-tool: Use "test -h", not "test -L", for portability
27401         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
27402         (tags_regexp): Remove, since \| doesn't conform to POSIX.
27403         (sed_extract_prog): Issue s commands one-by-one, rather than
27404         using \| in one s command.
27405
27406 2003-09-16  Paul Eggert  <eggert@twinsun.com>
27407
27408         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
27409         input error, instead of returning NULL the next time we are called
27410         (and therefore losing track of errno).
27411
27412 2003-09-16  Bruno Haible  <bruno@clisp.org>
27413
27414         * gnulib-tool (func_create_testdir): Warn about duplicated
27415         dependencies.
27416
27417 2003-09-15  Paul Eggert  <eggert@twinsun.com>
27418
27419         * modules/argmatch, modules/fatal, modules/obstack,
27420         modules/xalloc, modules/xgethostname: Sort dependencies by
27421         importance, not alphabetically.
27422
27423 2003-09-15  Paul Eggert  <eggert@twinsun.com>
27424
27425         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
27426         fails, so that the caller gets the proper errno.
27427
27428         * lib/readutmp.c (read_utmp): Likewise.
27429         Check for fstat error.  Close stream and free storage
27430         when failing.
27431
27432 2003-09-14  Karl Berry  <karl@gnu.org>
27433
27434         * config/srclist.txt (strdup.c): disable for c89 changes.
27435
27436 2003-09-14  Jim Meyering  <jim@meyering.net>
27437
27438         * lib/getloadavg.c: Correct cpp indentation.
27439         * lib/strdup.c: Likewise.
27440         * lib/vasnprintf.c: Likewise.
27441
27442 2003-09-14  Bruno Haible  <bruno@clisp.org>
27443
27444         * modules/fwriteerror: New file.
27445         * MODULES.html.sh (func_all_modules): Add fwriteerror.
27446
27447 2003-09-14  Bruno Haible  <bruno@clisp.org>
27448
27449         * lib/fwriteerror.h: New file.
27450         * lib/fwriteerror.c: New file.
27451
27452 2003-09-12  Paul Eggert  <eggert@twinsun.com>
27453
27454         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
27455         modules/xgethostname, modules/xalloc: Depend on exit.
27456
27457 2003-09-12  Paul Eggert  <eggert@twinsun.com>
27458
27459         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
27460
27461         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
27462         and AC_MINIX, too, so that their extensions are available.
27463
27464         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
27465         This macro has been superseded by gl_BACKUPFILE.
27466
27467         More patches to assume C89 or better.
27468
27469         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
27470
27471         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
27472         unconditionally.
27473         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
27474         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
27475         Include <string.h>, <stdlib.h> unconditionally.
27476         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
27477         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
27478         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
27479         headers or for string.h.
27480         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
27481         or strtoul.
27482
27483         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
27484         headers.
27485         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
27486         * m4/userspec.m4 (gl_USERSPEC): Likewise.
27487         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
27488         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
27489         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
27490         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
27491         memcpy, memset.
27492         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
27493         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
27494         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
27495         strtol.
27496         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
27497         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
27498         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
27499         strtoul.
27500
27501 2003-09-12  Paul Eggert  <eggert@twinsun.com>
27502
27503         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
27504         * lib/obstack.c [!defined _LIBC]: Likewise.
27505         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
27506         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
27507         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
27508
27509         More changes to assume C89 or better.
27510
27511         * lib/error.c (error_tail): Assume vprintf.
27512
27513         * lib/argmatch.c (getenv): Remove decl.
27514         * lib/progreloc.c (get_full_program_name): Define via prototype.
27515         * lib/setenv.c (clearenv): Likewise.
27516         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
27517         needed.
27518         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
27519         (malloc, memcpy): Remove decls.
27520         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
27521         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
27522         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
27523         (memcpy): Remove macro.
27524         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
27525         (__P): Remove.  All uses removed.
27526         (PTR): Remove.  All uses changed to void *.
27527         (CHAR_BIT, NULL): Remove.
27528         (spaces, zeros, memset_space, memset_zero)
27529         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
27530         Remove.
27531         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
27532         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
27533         Define with prototype.
27534         Remove now-unnecessary prototype decl.
27535         (extra_args_spec): Assume ANSI C.  All uses changed.
27536         (extra_args_spec_iso): Remove.
27537         (my_strftime, emacs_strftimeu): Define via prototype.
27538         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
27539         unconditionally.
27540         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
27541         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
27542         (strtoul, strtol): Remove decls.
27543         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
27544         LONG_MAX): Remove.
27545         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
27546         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
27547         (LOCALE_PARAM_PROTO): New macro.
27548         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
27549         (INTERNAL (strtol), strtol): Define with a prototype.
27550         (PARAMS): Remove.  All uses removed.
27551         * lib/tempname.c: Include <string.h> unconditionally.
27552         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
27553         * lib/xgethostname.c (main): Define with a prototype.
27554         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
27555         Include <stdlib.h> unconditionally.
27556         (calloc, malloc, realloc, free): Remove decls.
27557         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
27558         Include <stdlib.h> unconditionally.  Sort include file names.
27559         (strtod): Remove.
27560         (xstrtod): Define with a prototype.
27561         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
27562         (strtol, strtoul): Remove decls.
27563
27564 2003-09-11  Paul Eggert  <eggert@twinsun.com>
27565
27566         More patches to assume C89 or better.
27567         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
27568         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
27569         string.h, memchr, STDC_HEADERS.
27570
27571 2003-09-11  Paul Eggert  <eggert@twinsun.com>
27572
27573         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
27574         Include <stdlib.h>, <string.h> unconditionally.
27575         Remove now-unnecessary cast to char *.
27576         * lib/strnlen.c: Include <string.h> unconditionally.
27577         * lib/yesno.c (yesno): Define with a prototype.
27578
27579 2003-09-11  Bruno Haible  <bruno@clisp.org>
27580
27581         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
27582
27583 2003-09-10  Jim Meyering  <jim@meyering.net>
27584
27585         * lib/error.c: Correct indentation of cpp directives.
27586
27587 2003-09-10  Bruno Haible  <bruno@clisp.org>
27588
27589         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
27590         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
27591         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
27592         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
27593         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
27594         <stdlib.h> and <string.h> checks.
27595         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
27596         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
27597
27598 2003-09-10  Bruno Haible  <bruno@clisp.org>
27599
27600         * lib/strcspn.c: Include <string.h> unconditionally.
27601         * lib/strpbrk.c: Include <string.h> unconditionally.
27602         * lib/strstr.c: Include <string.h> unconditionally.
27603         * lib/unicodeio.c: Include <string.h> unconditionally.
27604         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
27605         * lib/unsetenv.c: Likewise.
27606         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
27607         * lib/yesno.c: Include <stdlib.h> unconditionally.
27608         (rpmatch): Add prototype.
27609
27610 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27611
27612         More patches to assume C89 or better.
27613         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
27614         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
27615         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
27616         or for string.h.
27617         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
27618         stdlib.h.
27619         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
27620         C headers.
27621         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
27622         string.h.
27623         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
27624         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
27625         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
27626         or for string.h.
27627         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
27628         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
27629         C headers.
27630         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
27631         memcpy.
27632         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
27633         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
27634         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
27635         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
27636         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
27637         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
27638         string.h, free.
27639         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
27640         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
27641         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
27642         C headers, or for string.h.
27643         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
27644         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
27645         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
27646         headers, memory.h, stdlib.h, string.h, strings.h.
27647         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
27648         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
27649         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
27650         strchr.
27651         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
27652         headers, memory.h, string.h.
27653         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
27654         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
27655         free.
27656         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
27657         headers.
27658         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
27659         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
27660         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
27661         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
27662         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
27663
27664 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27665
27666         More K&R removal.
27667
27668         * lib/acosl.c (main): Use a prototype.
27669         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
27670         tanl.c: Likewise.
27671
27672         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
27673
27674         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
27675         (getopt, etopt_long, getopt_long_only, _getopt_internal)
27676         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
27677         with a prototype.
27678         * lib/getopt.c (const): Remove macro.
27679         Include <string.h> unconditionally.
27680         (my_index): Remove; all uses changed to strchr.
27681         (strlen): Remove decl.
27682         (exchange): Remove forward decl; no longer needed.
27683         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
27684         Define with prototype.
27685         * lib/getopt1.c (const): Remove macro.
27686         (getopt_long, getopt_long_only, main): Define with prototype.
27687
27688         * lib/getugroups.c: Include <string.h> unconditionally.
27689
27690         * lib/getusershell.c: Include <stdlib.h> unconditionally.
27691         (getusershell, setusershell, endusershell, readname, main):
27692         Define with prototypes.
27693
27694         * lib/group-member.c: Include group-member.h first.
27695         Include <stdlib.h> unconditionally.
27696
27697         * lib/hard-locale.c: Include hard-locale.h first.
27698         Include <stdlib.h>, <string.h> unconditionally.
27699
27700         * lib/hash.c (free, malloc): Remove decls.
27701         Include <stdlib.h> unconditionally.
27702
27703         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
27704         (getenv): Do not declare.
27705
27706         * lib/idcache.c: Include <string.h> unconditionally.
27707
27708         * lib/long-options.c: Include long-options.h first, to test interface.
27709         Include <stdlib.h> unconditionally.
27710
27711         * lib/makepath.c: Include makepath.h first, to test interface.
27712         Include <stdlib.h> and <string.h> unconditionally.
27713
27714         * lib/linebuffer.c: Include <stdlib.h>.
27715         (free): Remove decl.
27716
27717         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
27718         stddef.h. rpl_malloc returns void *, not char *.
27719         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
27720         prototype.
27721
27722         * lib/md5.h: Include <limits.h> unconditionally.
27723         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
27724         (__P): Remove; all uses removed.
27725         * lib/md5.c: Include "md5.h" first.
27726         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
27727         md5_buffer, md5_process_bytes, md5_process_block):
27728         Define with prototypes.
27729         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
27730         * lib/sha.c: Include "sha.h" first.
27731         Include <stdlib.h>, <string.h> unconditionally.
27732
27733         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
27734         * lib/memcmp.c (__ptr_t): Likewise.
27735         * lib/memrchr.c (__ptr_t): Likewise.
27736         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
27737         Include <string.h> unconditionally.
27738         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
27739         * lib/memchr.c: Include <stdlib.h> unconditionally.
27740         * lib/memchr.c (LONG_MAX): Remove.
27741         * lib/memrchr.c (LONG_MAX): Likewise.
27742         * lib/memchr.c (__memchr): Define via a prototype.
27743         * lib/memrchr.c (__memrchr): Likewise.
27744         * lib/memcmp.c (__P): Remove, and remove all uses.
27745         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
27746         Remove forward decls; no longer needed.
27747         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
27748         Use types required by C89 in prototype.
27749
27750         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
27751         * lib/savedir.c: Likewise.
27752         * lib/mkdir.c (free): Remove decl.
27753         * lib/rmdir.c (rmdir): Define with a prototype.
27754         * lib/savedir.c: Include savedir.h first, to test interface.
27755
27756         * lib/mktime.c (STDC_HEADERS): Remove.
27757         Include <stdlib.h>, <string.h> unconditionally.
27758
27759         * lib/modechange.c: Include <stdlib.h> unconditionally.
27760         (malloc): Remove decl.
27761
27762         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
27763         (free): Remove decl.
27764
27765         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
27766         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
27767         (This type really should be intptr_t, but that's a C99ism.)
27768         (_obstack_memcpy): Remove: all uses changed to memcpy.
27769         Include <string.h> unconditionally.
27770         (struct obstack): Assume __STDC__ for types of members
27771         chunkfun, freefun, extra_arg.
27772         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
27773         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
27774         obstack_begin, obstack_specify_allocation,
27775         obstack_specify_allocation_with_arg, obstack_chunkfun,
27776         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
27777         Remove unprototyped decls and the macros that use them.
27778         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
27779         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
27780         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
27781         (defined __STDC__ && __STDC__)]:
27782         Remove nonprototyped code.
27783         Include <stdlib.h> unconditionally.
27784         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
27785         _obstack_allocated_p, _obstack_free, obstack_free,
27786         _obstack_memory_used, print_and_abort):
27787         Define using prototypes.
27788         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
27789         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
27790         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
27791         obstack_next_free, obstack_object_size, obstack_room) [0]:
27792         Remove unused, unprototyped code.
27793
27794         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
27795
27796         * lib/physmem.c (physmem_total, physmem_available, main): Define
27797         with prototypes.
27798
27799         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
27800         (main): Define with a prototype.
27801
27802         * lib/posixver.c (getenv): Remove decl.
27803
27804         * lib/putenv.c (malloc): Returns void *, not char *.
27805         Include <string.h> unconditionally.
27806         (strchr, memcpy, NULL): Do not define.
27807
27808         * lib/readtokens.c: Include readtokens.h first, to test interface.
27809         Include <stdlib.h>, <string.h> unconditionally.
27810         (init_tokenbuffer): Define with a prototype.
27811
27812         * lib/regex.c (PARAMS): Remove.  All uses removed.
27813         All uses of _RE_ARGS removed, too.
27814         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
27815         unconditionally.
27816         (bzero): Assume memset exists.
27817         (memcmp, memcpy, NULL): Remove.
27818         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
27819         char, or assignments to local vars of type signed char.
27820         (init_syntax_once, PREFIX(extract_number_and_incr),
27821         PREFIX(print_partial_compiled_pattern),
27822         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
27823         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
27824         PREFIX(regex_grow_registers), PREFIX(regex_compile),
27825         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
27826         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
27827         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
27828         wcs_compile_range, byte_compile_range, truncate_wchar,
27829         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
27830         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
27831         count_mbs_length, wcs_re_match_2_internal,
27832         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
27833         PREFIX(alt_match_null_string_p),
27834         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
27835         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
27836         regfree, PREFIX(extract_number)): Define with prototype.  Remove
27837         now-unnecessary declaration, if any.
27838         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
27839         regcomp, regexec):
27840         Remove now-unnecessary casts among pointer types.
27841         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
27842
27843         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
27844         (free): Remove decl.
27845
27846         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
27847
27848         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
27849         (free): Remove decl.
27850
27851         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
27852         * lib/xgetcwd.c: Likewise.
27853
27854         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
27855         (free): Remove decl.
27856
27857         * lib/strchrnul.c (strchrnul): Define with a prototype.
27858         Fix bug: c_in was not converted to char before searching.
27859
27860         The following changes are not K&R related:
27861
27862         * lib/group-member.h: Include <sys/types.h>, so that this file is
27863         self-contained.
27864         * lib/makepath.h: Likewise.
27865
27866         * lib/getusershell.c (readname, default_index, line_size, readname):
27867         Use size_t, not int, for sizes.
27868         (readname): If the size overflows, report an error instead of
27869         looping forever.
27870
27871 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27872
27873         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
27874         libc.
27875
27876 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27877
27878         * README: New section: portability guidelines.
27879
27880 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27881
27882         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
27883         C89 spec.
27884
27885 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27886
27887         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
27888
27889 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27890
27891         Assume C89 or better; remove K&R cruft.
27892         A few of these changes were first proposed by Derek Robert Price
27893         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
27894
27895         * lib/addext.c: Include <string.h> unconditionally.
27896         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
27897         Don't declare getenv or malloc.
27898
27899         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
27900         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
27901         (NULL): Remove.
27902         (find_stack_direction, alloca): Use prototypes.
27903
27904         * lib/atexit.c (atexit): Define using a prototype.
27905
27906         * lib/basename.c, dirname.c, stripslash.c:
27907         Include <string.h> unconditionally.
27908
27909         * lib/bcopy.c: Include <stddef.h>.
27910         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
27911
27912         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
27913
27914         * lib/error.h (error, error_at_line, error_print_progname)
27915         [! (defined (__STDC__) && __STDC__)]: Remove decls.
27916         * lib/error.c: Include error.h first, to check interface.
27917         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27918         (VA_START): Remove; all uses changeed to va_start.
27919         (exit, strerror): Remove decls.
27920         (error_print_progname): Prototype uncondionally.
27921         Don't include <errno.h>; no longer needed.
27922         (private_strerror): Remove.
27923         (error_tail): Always define.
27924         (error, error_at_line): Assume C89 or better; always use prototypes.
27925         * lib/fatal.c: Include "fatal.h" first, to test interface.
27926         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27927         (VA_START): Remove; all uses changed to va_start.
27928         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
27929         this case.
27930         (exit): Remove decl.
27931         (fatal): Prototype unconditionally.  Assume va_start works.
27932         Abort at end, to pacify gcc.
27933
27934         * lib/euidaccess.c (main): Define with a prototype.
27935
27936         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
27937
27938         * lib/exitfail.c: Include <stdlib.h> unconditionally.
27939
27940         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
27941         prototypes.
27942         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
27943         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
27944         (getenv): Remove decl.
27945         (fnmatch): Define using a prototype.
27946         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
27947         (FCT): Define using a prototype.
27948
27949         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
27950
27951         * lib/gethostname.c: Include <stddef.h>.
27952         (gethostname): Define with prototype.  Length is size_t, not int.
27953
27954 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27955
27956         Assume C89 or better; remove K&R cruft.
27957         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
27958         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
27959         string.h, getenv, malloc.
27960         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
27961         headers.
27962         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
27963         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
27964         do not check for strerror.
27965         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
27966         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
27967         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
27968         do not check for doprnt or vprintf.
27969         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
27970         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
27971
27972 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27973
27974         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
27975         getversion.c should have been removed then, but was accidentally
27976         preserved.
27977
27978         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
27979         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
27980
27981 2003-09-08  Karl Berry  <karl@gnu.org>
27982
27983         * config/config.sub, config.guess, srclistvars.sh: update from savannah
27984                 config, forget about prep.
27985
27986         * config/depcomp, missing: update from automake.
27987
27988 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27989
27990         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
27991         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27992
27993 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27994
27995         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
27996         copy_tm_result.  Bug reported by Simon Josefsson in
27997         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27998
27999 2003-09-06  Paul Eggert  <eggert@twinsun.com>
28000
28001         * m4/time_r.m4: New file.
28002         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
28003         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
28004         is. Check for timegm declaration.
28005         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
28006         Do not check for gmtime_r.
28007         Replace mktime if __mktime_internal does not exist and if mktime
28008         hasn't been replaced already.
28009
28010 2003-09-06  Paul Eggert  <eggert@twinsun.com>
28011
28012         * lib/time_r.c, lib/time_r.h: New files.
28013
28014         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
28015         __localtime_r.
28016         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
28017         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
28018
28019         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
28020         __gmtime_r.
28021         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
28022         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
28023         Include <time_r.h>.
28024
28025         * lib/timegm.c: Switch to glibc implementation, with the following
28026         changes:
28027         [defined HAVE_CONFIG_H]: Include <config.h>.
28028         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
28029         (__mktime_internal) [!defined _LIBC]: New decl.
28030         (__gmtime_r) [!defined _LIBC]: New macro and function.
28031         (timegm): Use a prototype, since gnulib assumes C89.
28032         Do not bother declaring tmp to be const, as it's not really usefu.
28033         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
28034         (timegm): Declare only if HAVE_DECL_TIMEGM.
28035
28036 2003-09-06  Paul Eggert  <eggert@twinsun.com>
28037
28038         * MODULES.html.sh (func_all_modules): Add time_r.
28039         * modules/time_r: New file.
28040         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
28041         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
28042
28043 2003-09-03  Paul Eggert  <eggert@twinsun.com>
28044
28045         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
28046         Bug reported by Lute Kamstra in
28047         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
28048
28049         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
28050         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
28051         course with correspondingly smaller numbers for tomorrow and
28052         yesterday.  From Tadayoshi Funaba.  Originally installed into
28053         sh-utils on 1999-08-07, but the patch got lost (I guess during the
28054         coreutils merge?).
28055
28056 2003-08-31  Simon Josefsson  <jas@extundo.com>
28057
28058         * modules/timegm: New file.
28059         * MODULES.html.sh (func_all_modules): Add timegm.
28060
28061 2003-08-31  Simon Josefsson  <jas@extundo.com>
28062
28063         * m4/timegm.m4: New file.
28064
28065 2003-08-31  Simon Josefsson  <jas@extundo.com>
28066
28067         * lib/timegm.h: New file.
28068         * lib/timegm.c: New file.  Based on
28069         wget-1.8.2/src/http.c:mktime_from_utc.
28070
28071 2003-08-31  Karl Berry  <karl@gnu.org>
28072
28073         * lib/argp.h: update from libc.
28074
28075 2003-08-28  Bruno Haible  <bruno@clisp.org>
28076
28077         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
28078         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
28079         followed by '#define fnmatch fnmatch_posix' gives an error.
28080
28081 2003-08-28  Bruno Haible  <bruno@clisp.org>
28082
28083         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
28084         warning on QNX, which defines O_BINARY to 000000.
28085
28086 2003-08-27  Jim Meyering  <jim@meyering.net>
28087
28088         * m4/mkstemp.m4: Require that the system mkstemp be able to create
28089         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
28090         would fail after 32.  Reported by Danny Levinson.  Details here:
28091         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
28092
28093 2003-08-24  Bruno Haible  <bruno@clisp.org>
28094
28095         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
28096         MSVC7 <stdio.h> is included later.
28097
28098 2003-08-22  Simon Josefsson  <jas@extundo.com>
28099
28100         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
28101
28102 2003-08-20  Karl Berry  <karl@gnu.org>
28103
28104         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
28105
28106 2003-08-20  Bruno Haible  <bruno@clisp.org>
28107
28108         * modules/progname: New file.
28109         * MODULES.html.sh (func_all_modules): Add progname.
28110
28111 2003-08-20  Bruno Haible  <bruno@clisp.org>
28112
28113         * lib/progname.h: New file, from GNU gettext.
28114         * lib/progname.c: New file, from GNU gettext.
28115         * lib/progreloc.c: New file, from GNU gettext.
28116
28117 2003-08-19  Jim Meyering  <jim@meyering.net>
28118
28119         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
28120         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
28121
28122 2003-08-19  Bruno Haible  <bruno@clisp.org>
28123
28124         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
28125         more.
28126
28127 2003-08-19  Bruno Haible  <bruno@clisp.org>
28128
28129         * lib/xstrdup.c: Assume <string.h> exists.
28130
28131 2003-08-18  Paul Eggert  <eggert@twinsun.com>
28132
28133         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
28134         in makefile rules.
28135
28136 2003-08-18  Jim Meyering  <jim@meyering.net>
28137
28138         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
28139         * m4/lib-ld.m4: Likewise.
28140
28141 2003-08-18  Jim Meyering  <jim@meyering.net>
28142
28143         * lib/setenv.h: Indent nested cpp directive.
28144         * lib/vasnprintf.c: Remove trailing blanks.
28145
28146 2003-08-17  Simon Josefsson  <jas@extundo.com>
28147
28148         * modules/xstrndup: New file.
28149         * MODULES.html.sh (func_all_modules): Add xstrndup.
28150
28151 2003-08-17  Simon Josefsson  <jas@extundo.com>
28152
28153         * modules/argp: Fix autoconf macro name. Add more dependencies.
28154
28155 2003-08-17  Simon Josefsson  <jas@extundo.com>
28156
28157         * m4/xstrndup.m4: New file.
28158
28159 2003-08-17  Simon Josefsson  <jas@extundo.com>
28160
28161         * m4/argp.m4: New file.
28162
28163 2003-08-17  Simon Josefsson  <jas@extundo.com>
28164             Bruno Haible  <bruno@clisp.org>
28165
28166         * lib/xstrndup.h: New file.
28167         * lib/xstrndup.c: New file.
28168
28169 2003-08-17  Bruno Haible  <bruno@clisp.org>
28170
28171         * modules/strndup (Files, Include): Add lib/strndup.h.
28172
28173 2003-08-17  Bruno Haible  <bruno@clisp.org>
28174
28175         * modules/euidaccess (Files): Add lib/euidaccess.h.
28176
28177 2003-08-17  Bruno Haible  <bruno@clisp.org>
28178
28179         * lib/strndup.h: New file.
28180
28181 2003-08-17  Bruno Haible  <bruno@clisp.org>
28182
28183         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
28184         like AC_GNU_SOURCE.
28185         * modules/extensions (configure.ac): Comment out the invocation of
28186         gl_USE_SYSTEM_EXTENSIONS.
28187
28188 2003-08-16  Paul Eggert  <eggert@twinsun.com>
28189
28190         Merges from coreutils, etc.
28191         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
28192         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
28193         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
28194         fixing a typo.
28195         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
28196         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
28197
28198 2003-08-16  Paul Eggert  <eggert@twinsun.com>
28199
28200         Document merge from coreutils.
28201         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
28202         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
28203         * modules/utime: Add m4/utimes-null.m4.
28204
28205 2003-08-16  Paul Eggert  <eggert@twinsun.com>
28206
28207         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
28208         space, undoing this 2003-08-12 change:
28209         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
28210
28211 2003-08-16  Paul Eggert  <eggert@twinsun.com>
28212
28213         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
28214         strtoul.c from libc, undoing this 2003-08-12 change:
28215         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
28216
28217 2003-08-16  Jim Meyering  <jim@meyering.net>
28218
28219         Merges from coreutils.
28220         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
28221         prefix.  Adjust cache variables similarly.  Create 500 rather than
28222         just 300 files, to exercise bug on Darwin6.5, too.
28223         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
28224         $missing_dir.
28225         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
28226         AM_SYS_POSIX_TERMIOS.
28227         Reported by mkc@mathdogs.com.
28228         Also change use of $am_cv_sys_posix_termios
28229         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
28230         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
28231         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
28232         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
28233         in /proc/mounts until it finds one with matching device number.  This
28234         is unnecessary when the FILE argument *is* a mount point.  No stat call
28235         is necessary in that case.  So, disable the statvfs-testing code on
28236         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
28237         as RedHat bug# 84846.
28238         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
28239         to 1MB, so as not to render systems with no stack size limit (e.g.,
28240         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
28241         Include <unistd.h>.  On some systems,
28242         it is required for the definition of _SC_PAGESIZE.
28243
28244 2003-08-16  Jim Meyering  <jim@meyering.net>
28245
28246         Merge from coreutils.
28247         * lib/xstrtoimax.c: #else #if -> #elif.
28248         * lib/xstrtoumax.c: Likewise.
28249
28250 2003-08-16  Jim Meyering  <jim@meyering.net>
28251
28252         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
28253         * m4/utimes.m4: Removed.
28254         * m4/utimes-null.m4: Renamed from utimes.m4.
28255
28256         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
28257         to 1MB, so as not to render systems with no stack size limit (e.g.,
28258         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
28259         Include <unistd.h>.  On some systems,
28260         it is required for the definition of _SC_PAGESIZE.
28261
28262 2003-08-16  Jim Meyering  <jim@meyering.net>
28263         and Paul Eggert  <eggert@cs.ucla.edu>
28264
28265         Merges from coreutils, etc.
28266
28267         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
28268         using the latest version from cvs.  This avoids problems with #line
28269         directives using a vendor (Sun) compiler.
28270         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
28271         Don't set GETGROUPS_LIB here; now it's
28272         done via getgroups.m4's wrapper function.
28273         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
28274         rather than just in sh-util/configure.in, so that the
28275         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
28276         same.
28277         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
28278         AC_FUNC_GETLOADAVG where to find getloadavg.c.
28279         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
28280         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
28281         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
28282         Remove code that is now done by the newly-required macros.
28283         Append $(EXEEXT) to DF_PROG.
28284         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
28285         Do not invoke or require the following here,
28286         since prereq.m4 or some gnulib .m4 now does this for us:
28287         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
28288         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
28289         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
28290         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
28291         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
28292         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
28293         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
28294         AC_FUNC_OBSTACK.
28295         Do not replace the following functions, as this is now the job
28296         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
28297         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
28298         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
28299         atexit getpass, strdup, getpagesize.
28300         Replace 'raise'.
28301         Do not check for the following functions, as this is now the job
28302         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
28303         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
28304         setregid.
28305         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
28306         Check for sys/sysctl.h.
28307         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
28308         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
28309         of checking for ssize_t ourselves.
28310
28311         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
28312         Require every macro that gnulib/modules/* suggests for us.
28313         (jm_PREREQ_ADDEXT): New macro.
28314         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
28315         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
28316
28317         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
28318         (gl_PHYSMEM): Use it.
28319         Also check for `table' function.
28320         Check for new headers and functions.
28321         Add check for sys/sysmp.h.
28322         With suggestions from Kaveh Ghazi.
28323         Ignore headers that are present but cannot be compiled.  This
28324         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
28325         C 5.4.
28326
28327 2003-08-15  Paul Eggert  <eggert@twinsun.com>
28328
28329         Document merge from coreutils.
28330         * modules/userspec: Depend on posixver.
28331         * modules/strftime: Depend on tzset.
28332
28333 2003-08-15  Paul Eggert  <eggert@twinsun.com>
28334
28335         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
28336         rather than tab, after '#' in shell-script copyright notices.
28337         Suggested by Bruno Haible.
28338
28339 2003-08-15  Paul Eggert  <eggert@twinsun.com>
28340
28341         * config/srclist-update: Use three spaces, rather than tab, after '#'
28342         in shell-script copyright notices.  Suggested by Bruno Haible.
28343         Remove unnecessary parenthesization in regular expression.
28344
28345 2003-08-15  Jim Meyering  <jim@meyering.net>
28346
28347         Merge from coreutils.
28348         * lib/xgethostname.c: Include <stdlib.h>.
28349         (xghostname): Don't exit for anything other than memory-related
28350         failure; just return NULL.
28351         * lib/userspec.c: Include "posixver.h".
28352         (parse_user_spec): Accept `.' as a separator only
28353         in pre-POSIX-200112 mode.
28354         * lib/strtoimax.c: Use #elif rather than #else #if.
28355         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
28356         Remove function, now that we can rely on a working tzset function.
28357         [!_LIBC]: Ensure that the required autoconf test has been run.
28358         [!defined _NL_CURRENT && HAVE_STRFTIME]:
28359         Use underlying_strftime for %r.
28360         * lib/sha.c: Merge in some clean-up and optimization changes from
28361         glibc.
28362         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
28363         Ensure that it is a multiple of 64.
28364         Rearrange loop exit tests so as to avoid performing an
28365         additional fread after encountering an error or EOF.
28366         * lib/realloc.c: Update copyright date.
28367
28368 2003-08-15  Jim Meyering  <jim@meyering.net>
28369         and Paul Eggert  <eggert@twinsun.com>
28370
28371         Merge from coreutils.
28372         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
28373         member but strut utmpx does not.  Needed for AIX 4.3.3.
28374         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
28375
28376 2003-08-15  Jim Meyering  <jim@meyering.net>
28377         and Paul Eggert  <eggert@cs.ucla.edu>
28378
28379         Merges from coreutils, etc.
28380         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
28381         Require gl_FUNC_TZSET_CLOBBER.
28382         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
28383         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
28384         members.
28385
28386 2003-08-14  Paul Eggert  <eggert@twinsun.com>
28387
28388         Help the merge from coreutils.
28389         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
28390         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
28391         * m4/tzset.m4: Use it too.
28392
28393 2003-08-14  Paul Eggert  <eggert@twinsun.com>
28394
28395         * modules/tzset: New file.
28396
28397 2003-08-14  Jim Meyering  <jim@meyering.net>
28398
28399         Merges from coreutils.
28400         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
28401         variable names, rather than @FNMATCH_H@.
28402         * modules/alloca: Likewise for $(ALLOCA_H).
28403
28404         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
28405         the three copies of the literal target, `fnmatch.h'.
28406         * modules/alloca (alloca.h): Likewise.
28407
28408 2003-08-14  Jim Meyering  <jim@meyering.net>
28409
28410         Merge from coreutils.
28411         * m4/tzset.m4: New file.
28412         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
28413         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
28414         otherwise, AIX 5.1 systems would end up using the latter.
28415         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
28416         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
28417         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
28418         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
28419
28420 2003-08-14  Jim Meyering  <jim@meyering.net>
28421
28422         Merge from coreutils.
28423         * lib/obstack.h: Whitespace changes.
28424         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
28425         and xcalloc return values.
28426         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
28427         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
28428         hang on OSF/1 5.1 for DIR on both local and remote file systems.
28429         Reported by (and fix confirmed by) Nelson H. F. Beebe.
28430         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
28431         error from mntctl.
28432         Use mntctl's return value to drive the entry-processing loop, since
28433         we can't rely on the value of the vmt_length member in the last
28434         entry.  On some systems doing so could result in exhausting
28435         virtual memory.  Based in part on a patch from Mike Jetzer.
28436
28437 2003-08-14  Jim Meyering  <jim@meyering.net>
28438         and Paul Eggert  <eggert@twinsun.com>
28439
28440         Merges from coreutils, plus other fixes.
28441         * lib/physmem.c: Merge in portability changes from gcc/libiberty
28442         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
28443         for credits and details.  Thanks to Kaveh Ghazi for helping
28444         to keep these files in sync.
28445         (ARRAY_SIZE): Define it.
28446         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
28447         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
28448         (memcasecmp): Don't assume size_t fits in unsigned int.
28449         Remove casts and duplicate code.
28450         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
28451         (memcpy): Remove definition.
28452         Merge in some clean-up and optimization changes from glibc.
28453         [BLOCKSIZE]: Move definition to top of file.
28454         Ensure that it is a multiple of 64.
28455         Rearrange loop exit tests so as to avoid performing an
28456         additional fread after encountering an error or EOF.
28457         * lib/md5.h (md5_uintptr): Define.
28458         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
28459         return to the initial working directory.  Preserve errno
28460         for caller.
28461         * lib/idcache.c: Include "xalloc.h".
28462         (xmalloc, xrealloc): Remove decls.
28463         (getuser): Remove casts no longer required in C89.
28464         * lib/human.c: Include stdio.h, for sprintf.
28465         * lib/group-member.c: Include "xalloc.h".
28466         (xmalloc, xrealloc): Remove decls.
28467         (get_group_info): Remove casts no longer required in C89.
28468         * lib/getusershell.c (readname): Remove casts no longer required in
28469         C89.
28470         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
28471         * lib/getline.c: Whitespace fix, from coreutils.
28472
28473 2003-08-13  Paul Eggert  <eggert@twinsun.com>
28474
28475         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
28476         Check for isascii.
28477
28478         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
28479         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
28480         Undo previous (whitespace-only) change.
28481
28482 2003-08-13  Paul Eggert  <eggert@twinsun.com>
28483
28484         * lib/exclude.c: Include <ctype.h>
28485         (IN_CTYPE_DOMAIN): New macro.
28486         (is_space): New fn.
28487         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
28488         and empty lines.
28489
28490         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
28491         Undo previous (whitespace-only) change.
28492
28493 2003-08-13  Paul Eggert  <eggert@twinsun.com>
28494
28495         * config/srclist-update: Change update back to the old behavior,
28496         leaving whitespace alone.  Use one 'sed' command rather than a
28497         pipeline.
28498         (fixlicense): Now a variable, not a function.
28499         (remove_trailing_blanks): Remove.
28500         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
28501         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
28502         Undo previous (whitespace-only) change.
28503
28504 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28505
28506         Merge from coreutils.
28507         * modules/euidaccess: Add lib_SOURCES, include for new
28508         file euidaccess.h
28509
28510 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28511
28512         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
28513         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
28514         Normalize leading white space and remove trailing white space.
28515
28516         Merge from coreutils
28517         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
28518
28519         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
28520         0.12.1.  These files are now being upgraded automatically by
28521         ../config/srclist-update.
28522
28523 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28524
28525         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
28526         Normalize leading white space and remove trailing white space.
28527         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
28528         notice, as per ../config/srclist-update.
28529
28530         Merge from coreutils.
28531         * lib/euidaccess.h: New file.
28532         * lib/euidaccess.c: Include it.
28533         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
28534         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
28535         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
28536
28537 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28538
28539         * config/srclist-update: Add copyright notice.
28540         (remove_id_lines, remove_trailing_blanks): New constants.
28541         (fixfile): Use them to normalize spacing a bit in copied files.
28542         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
28543         Normalize leading white space and remove trailing white space.
28544
28545         * config/texinfo.tex: Sync with texinfo.
28546
28547         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
28548         strtoul.c from libc, to merge coreutils whitespace changes.
28549
28550         * config/srclist.txt: Get the following m4 files from gettext:
28551         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
28552         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
28553         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
28554         wint_t.m4.
28555
28556 2003-08-12  Karl Berry  <karl@gnu.org>
28557
28558         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
28559         been made.
28560
28561 2003-08-11  Paul Eggert  <eggert@twinsun.com>
28562
28563         * modules/gnu-source, m4/gnu-source.m4:
28564         Remove; we're assuming Autoconf 2.54 or later now.
28565         Suggested by Bruno Haible.
28566         * MODULES.html.sh (func_all_modules): Remove gnu-source.
28567
28568 2003-08-11  Bruno Haible  <bruno@clisp.org>
28569
28570         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
28571
28572 2003-08-11  Bruno Haible  <bruno@clisp.org>
28573
28574         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
28575         (vasnprintf): Use it instead of wcslen.
28576
28577 2003-08-11  Bruno Haible  <bruno@clisp.org>
28578
28579         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
28580         value to ensure that _Bool promotes to int. Use #define for _Bool when
28581         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
28582
28583 2003-08-10  Karl Berry  <karl@gnu.org>
28584
28585         * lib/regex.h: update from libc (whitespace fix).
28586
28587 2003-08-09  Paul Eggert  <eggert@twinsun.com>
28588
28589         Merge some files from coreutils.  These changes were
28590         originally made by Jim Meyering.
28591         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
28592         many older Unixes require this.
28593         * lib/alloca.c (alloca): Remove cast to argument of free;
28594         no longer needed in C89.
28595         * lib/alloca_.h, regex.h: Fix white space to match
28596         what GNU indent does.
28597
28598 2003-08-09  Paul Eggert  <eggert@twinsun.com>
28599
28600         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
28601         apparently Emacs's Unicode mode got confused before my 2003-08-05
28602         checkin.
28603
28604 2003-08-08  Paul Eggert  <eggert@twinsun.com>
28605
28606         * m4/extensions.m4: New file.
28607         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
28608         Require gl_USE_SYSTEM_EXTENSIONS.
28609         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
28610         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
28611
28612 2003-08-08  Paul Eggert  <eggert@twinsun.com>
28613
28614         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
28615         * modules/extensions, modules/gnu-source: New files.
28616         * modules/timespec, modules/unlocked-io: Depend on extensions.
28617
28618 2003-08-07  Paul Eggert  <eggert@twinsun.com>
28619
28620         * modules/restrict: New file.
28621         * MODULES.html.sh (func_all_modules): Add restrict.
28622         * modules/regex: Depend on restrict.
28623
28624 2003-08-07  Paul Eggert  <eggert@twinsun.com>
28625
28626         * m4/restrict.m4: New file.
28627         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
28628
28629 2003-08-07  Bruno Haible  <bruno@clisp.org>
28630
28631         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
28632         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
28633
28634 2003-08-07  Bruno Haible  <bruno@clisp.org>
28635
28636         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
28637         makes the module 'getndelim2' compatible with the module 'getline'.
28638
28639 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28640
28641         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
28642         byte with "\201" to avoid glitches when editing that source file
28643         with multi-gnome-terminal.
28644
28645 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28646
28647         * lib/bumpalloc.h: Remove.
28648
28649 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28650
28651         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
28652         * modules/bumpalloc: Remove.
28653
28654 2003-08-04  Paul Eggert  <eggert@twinsun.com>
28655
28656         * lib/getloadavg.c: Change copyright notice and spacing to conform to
28657         GNU coding style.
28658
28659         Merge from coreutils.
28660         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
28661         1. From glibc.
28662         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
28663         from Karl Berry, implemented by Jim Meyering.
28664         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
28665         from Dmitry V. Levin.
28666         Remove anachronistic cast of xrealloc.
28667         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
28668         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
28669         type. Otherwise, it wouldn't compile with at least /bin/cc on
28670         ymp-cray-unicos9.0.2.X.
28671         Combine two mostly-identical uses of alloca into one.
28672         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
28673
28674 2003-08-04  Dave Love  <d.love@dl.ac.uk>
28675
28676         [From Emacs.]
28677
28678         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
28679         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
28680         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
28681         obsolete NLIST_NAME_UNION.
28682         [__GNU__]: Undef BSD and FSCALE.
28683         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
28684
28685 2003-08-03  Paul Eggert  <eggert@twinsun.com>
28686
28687         * lib/stdbool_.h (_Bool): Make it signed char, instead of
28688         an enum type, so that it's guaranteed to promote to int.  See:
28689         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
28690
28691 2003-08-03  Karl Berry  <karl@gnu.org>
28692
28693         * config/depcomp: update from automake.
28694
28695 2003-07-31  Paul Eggert  <eggert@twinsun.com>
28696
28697         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
28698         (strerror): Don't assume that a printable int fits in 14 bytes.
28699
28700 2003-07-31  Bruno Haible  <bruno@clisp.org>
28701
28702         * modules/getpass-gnu: New file.
28703         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
28704
28705 2003-07-31  Bruno Haible  <bruno@clisp.org>
28706
28707         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
28708
28709 2003-07-24  Karl Berry  <karl@gnu.org>
28710
28711         * config/missing: update from automake.
28712
28713 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
28714             Bruno Haible  <bruno@clisp.org>
28715
28716         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
28717         * lib/getline.c (getline, getdelim): Likewise.
28718         Remove _GNU_SOURCE define; now it's defined in config.h through
28719         m4/getline.m4.
28720
28721 2003-07-23  Karl Berry  <karl@gnu.org>
28722
28723         * config/config.sub: update from prep.
28724
28725 2003-07-22  Paul Eggert  <eggert@twinsun.com>
28726
28727         * modules/xalloc (Depends-on): Add exitfail.
28728         * modules/xmemcoll: Likewise.
28729
28730 2003-07-22  Paul Eggert  <eggert@twinsun.com>
28731
28732         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
28733         over-parenthesization in macros.
28734
28735         Sync with coreutils.
28736
28737         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
28738         required by C99.
28739
28740         Use `exit_failure' for xalloc and xmemcoll instead of their own
28741         private exit-failure variables.
28742         * lib/xalloc.h (xalloc_exit_failure): Remove.
28743         * lib/xmalloc.c: Likewise.  Include exitfail.h.
28744         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
28745         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
28746         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
28747         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
28748
28749 2003-07-20  Jim Meyering  <jim@meyering.net>
28750
28751         * modules/closeout (Depends-on): Add exitfail.
28752         Suggestion from Bruno Haible.
28753
28754 2003-07-19  Karl Berry  <karl@gnu.org>
28755
28756         * config/config.sub: update from prep.
28757
28758 2003-07-18  Paul Eggert  <eggert@twinsun.com>
28759
28760         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
28761         Remove.
28762         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
28763         to test that it can stand by itself.  Include "exitfail.h".
28764         Clients should set exit_failure instead.
28765         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
28766
28767 2003-07-18  Bruno Haible  <bruno@clisp.org>
28768
28769         * modules/getndelim2: New file.
28770         * modules/getline: Share files with module getndelim2.
28771         * modules/getnline: Depend on getndelim2 instead of sharing files with
28772         it. Add getnline.c to lib_SOURCES.
28773         * MODULES.html.sh (func_all_modules): Add getndelim2.
28774
28775 2003-07-18  Bruno Haible  <bruno@clisp.org>
28776
28777         * m4/getndelim2.m4: New file.
28778         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
28779         invoke gl_PREREQ_GETNDELIM2.
28780         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
28781         gl_PREREQ_GETNDELIM2.
28782         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
28783         gl_GETNDELIM2.
28784
28785 2003-07-18  Bruno Haible  <bruno@clisp.org>
28786
28787         * lib/getndelim2.h: New file.
28788         * lib/getndelim2.c: Make into a module of its own. Include config.h,
28789         getndelim2.h.
28790         (getndelim2): Make non-static. Change return type to ssize_t.
28791         * lib/getline.h: Change argument names.
28792         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
28793         * lib/getnline.c: Include getndelim2.h.
28794
28795 2003-07-18  Andreas Schwab  <schwab@suse.de>
28796
28797         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
28798
28799 2003-07-17  Karl Berry  <karl@gnu.org>
28800
28801         * config/config.sub: update from prep.
28802
28803 2003-07-17  Bruno Haible  <bruno@clisp.org>
28804
28805         * modules/getnline: New file.
28806         * modules/getline: Add lib/getndelim2.c to source file list.
28807         * MODULES.html.sh (func_all_modules): Add getnline.
28808
28809 2003-07-17  Bruno Haible  <bruno@clisp.org>
28810
28811         * m4/getnline.m4: New file.
28812
28813 2003-07-17  Bruno Haible  <bruno@clisp.org>
28814
28815         * m4/Makefile.am.in: Remove file.
28816         * m4/Makefile.am: Remove file.
28817         * m4/Makefile.in: Remove file.
28818
28819 2003-07-17  Bruno Haible  <bruno@clisp.org>
28820
28821         * lib/getnline.h: New file.
28822         * lib/getnline.c: New file.
28823         * lib/getndelim2.c: New file, extracted from getline.c.
28824         (getndelim2): Renamed from getdelim2, with added nmax argument.
28825         * lib/getline.c: Include getndelim2.c.
28826         (getdelim2): Moved out to getndelim2.c.
28827         (getline, getdelim): Update.
28828
28829 2003-07-17  Bruno Haible  <bruno@clisp.org>
28830
28831         * lib/Makefile.am: Remove file.
28832         * lib/Makefile.in: Remove file.
28833
28834 2003-07-17  Bruno Haible  <bruno@clisp.org>
28835
28836         * configure.in: Remove file.
28837         * Makefile.in: Remove file.
28838
28839 2003-07-17  Bruno Haible  <bruno@clisp.org>
28840
28841         * MODULES.html.sh: Put the </BODY> right before </HTML>.
28842
28843 2003-07-16  Karl Berry  <karl@gnu.org>
28844
28845         * config/srclist-update: was running fixlicense twice, which caused
28846                 texinfo.tex to be nullified for some reason.  Simplify,
28847                 $gplsrc is no longer needed as far as I can see?
28848
28849 2003-07-16  Jim Meyering  <jim@meyering.net>
28850
28851         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
28852
28853 2003-07-15  Paul Eggert  <eggert@twinsun.com>
28854
28855         * config/srclist.txt: Get the following files from gettext-runtime/intl
28856         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
28857         ref-del.sin.  From Bruno Haible.
28858         * config/srclist-update (fixfile): Change grep pattern again, since the
28859         previous fix didn't work (there was another trailing $).  Use
28860         '[$]' to escape the $s.
28861
28862 2003-07-15  Karl Berry  <karl@gnu.org>
28863
28864         * lib/vasnprintf.c: update from gettext.
28865
28866 2003-07-15  Karl Berry  <karl@gnu.org>
28867
28868         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
28869         gets expanded when surrounded by '$'.
28870
28871 2003-07-15  Jim Meyering  <jim@meyering.net>
28872
28873         * modules/save-cwd: Don't depend on error.  From Derek Price.
28874
28875 2003-07-15  Jim Meyering  <jim@meyering.net>
28876
28877         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
28878
28879 2003-07-14  Simon Josefsson  <jas@extundo.com>
28880
28881         * modules/mempcpy: New file.
28882         * MODULES.html.sh (func_all_modules): Add mempcpy.
28883
28884 2003-07-14  Simon Josefsson  <jas@extundo.com>
28885
28886         * m4/mempcpy.m4: New file.
28887
28888 2003-07-14  Simon Josefsson  <jas@extundo.com>
28889
28890         * lib/mempcpy.h: New file.
28891         * lib/mempcpy.c: New file.
28892
28893 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28894
28895         * modules/getdate, modules/posixtm: Depend on mktime.
28896
28897 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28898
28899         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
28900         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
28901         unicodeio.c, unicodeio.h, unlocked-io.h:
28902         Switch from LGPL to GPL.
28903
28904 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28905
28906         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
28907         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
28908         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
28909         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
28910         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
28911         updated automatically by ../config/srclist-update.  This changes
28912         their license from LPGL to GPL.
28913
28914 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28915
28916         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
28917         assumed to refer to the root of the most recent stable gettext version.
28918         * config/srclistvars.sh: Add defaults for eggert.
28919         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
28920         Match "This program" as well as "The program".  This is needed
28921         for gettext.
28922
28923 2003-07-14  Jim Meyering  <jim@meyering.net>
28924
28925         Don't emit diagnostics.  Let callers do that.
28926         * lib/save-cwd.c: Don't include "error.h".
28927         (save_cwd): Don't call error.  Ensure that errno is valid
28928         when returning nonzero.
28929
28930         * lib/save-cwd.h (restore_cwd): Update prototype.
28931         * lib/save-cwd.c (restore_cwd): Remove two parameters.
28932         Simplify.  Don't call error upon failure.  Let callers do that.
28933         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
28934         when auditing is enabled.  But don't bother updating the #if.
28935
28936 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
28937
28938         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
28939         it breaks C++ compilation.
28940         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
28941
28942 2003-07-10  Simon Josefsson  <jas@extundo.com>
28943
28944         * modules/strchrnul (Makefile.am): Add strchrnul.h.
28945
28946 2003-07-10  Jim Meyering  <jim@meyering.net>
28947
28948         * m4/clock_time.m4: Remove trailing blank.
28949         * m4/intmax_t.m4: Likewise.
28950
28951 2003-07-10  Jim Meyering  <jim@meyering.net>
28952
28953         * lib/vasnprintf.c: Remove trailing blanks.
28954         Make cpp indentation consistent.
28955
28956 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28957
28958         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
28959         posixver.c, strftime.c, strnlen.c, strverscmp.c:
28960         Switch from LGPL to GPL.
28961
28962 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28963
28964         * config/srclist.txt: Sort sublists.  Add
28965         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
28966         that differ from gnulib for one reason or another; we'd like this list
28967         to be smaller but for now let's document what we have.
28968
28969 2003-07-08  Paul Eggert  <eggert@twinsun.com>
28970
28971         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
28972         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
28973         and sweeter "eval x=$x".
28974         * config/srclist.txt: Get lib/argp* from glibc.
28975
28976 2003-07-07  Paul Eggert  <eggert@twinsun.com>
28977
28978         * lib/mktime.c: Fix some boundary cases and remove need for floating
28979         point.
28980
28981         Issue a compile-time diagnostic if time_t is floating point, or if
28982         two's complement arithmetic is not in effect, or if arithmetic
28983         right shift does not propagate the sign.  These assumptions were
28984         all in the original code but they weren't checked.
28985
28986         (TIME_T_MIDPOINT, verify): New macros.
28987         (__isleap): Remove; it has integer overflow problems.
28988         (leapyear): New function, without those problems.
28989         (ydhms_tm_diff): Remove; splitting into two parts.
28990         (ydhms_diff): New function, containing the arithmetic part of
28991         the old ydhms_tm_diff function.  Issue a compile-time
28992         diagnostic if we are not using C99 integer division.
28993         Avoid casts when possible.
28994         (guess_time_tm): New function, containing the checking part of
28995         the old ydhms_tm_diff function.  Return the new value, rather than
28996         the difference between it and the old.  Accept a new argument T
28997         so that *T specifies the old value.  Check for overflow in the result.
28998
28999         (__mktime_internal): Use a time_t offset, not a long int offset.
29000         This undoes the 2003-06-04 change, which is no longer needed now
29001         that we have better overflow checking.
29002         (localtime_offset): Likewise.
29003
29004         (__mktime_internal): Avoid harmful overflow on hosts where time_t
29005         and long are 64-bit but int is only 32-bit.
29006         (ydhms_diff): Use long int to store year1 and yday1.
29007         Issue a compile-time diagnostic if long int is not wide enough.
29008
29009         (__mktime_internal): Use long int to store adjusted year and yday.
29010         Use plain C rather than preprocessor commands, if that doesn't
29011         affect efficiency.
29012         Check for overflow (and try to repair) after each probe
29013         rather than checking only at the very end.  This avoids some bugs
29014         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
29015         does not equal GMT offset at maximum time).
29016         Use integer to check for overflow rather than floating point; this
29017         is more portable to non-IEEE hosts, and is a tad faster.
29018         When we detect that we are oscillating between two values,
29019         don't check whether tm_isdst has the requested value, since
29020         we already know the answer.  When tm_isdst has the wrong value,
29021         use a different heuristic to find the right one, based on the
29022         extreme values actually observed in practice in tz2003a,
29023         rather than the (overly optimistic) "previous 3 calendar quarters".
29024
29025         (not_equal_tm, print_tm, check_result): Use "const T" rather than
29026         "T const" to accommodate glibc style.
29027         (check_result): Use less-confusing report format.  "long" -> "long int.
29028         (main): Likewise.
29029         Don't loop if the iteration overflows time_t.
29030         Allow a negative step in the iteration.
29031
29032 2003-07-06  Karl Berry  <karl@gnu.org>
29033
29034         * config/depcomp: update from automake.
29035         * config/config.sub: update from prep.
29036
29037 2003-07-03  Karl Berry  <karl@gnu.org>
29038
29039         * config/config.guess: update from prep.
29040
29041 2003-07-01  Paul Eggert  <eggert@twinsun.com>
29042
29043         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
29044         xreadlink.c now includes it unconditionally.
29045
29046 2003-07-01  Paul Eggert  <eggert@twinsun.com>
29047
29048         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
29049         having it depend on HAVE_SYS_TYPES_H.
29050
29051 2003-07-01  Bruno Haible  <bruno@clisp.org>
29052
29053         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
29054         <sys/types.h> should be sufficient.
29055         Reported by Paul Eggert.
29056
29057 2003-06-26  Karl Berry  <karl@gnu.org>
29058
29059         * config/depcomp: update from automake.
29060
29061 2003-06-26  Bruno Haible  <bruno@clisp.org>
29062
29063         * modules/human: Depend on module stdbool.
29064
29065 2003-06-25  Bruno Haible  <bruno@clisp.org>
29066
29067         * modules/readlink: New file.
29068         * modules/xreadlink: Depend on it.
29069         * MODULES.html.sh (func_all_modules): Add readlink.
29070
29071 2003-06-25  Bruno Haible  <bruno@clisp.org>
29072
29073         * m4/readlink.m4: New file.
29074
29075 2003-06-25  Bruno Haible  <bruno@clisp.org>
29076
29077         * lib/readlink.c: New file.
29078
29079 2003-06-22  Karl Berry  <karl@gnu.org>
29080
29081         * config/srclist.txt: update mkinstalldirs from automake.
29082         * config/mkinstalldirs: update.
29083
29084 2003-06-22  Bruno Haible  <bruno@clisp.org>
29085
29086         Portability to mingw32.
29087         * m4/ssize_t.m4: New file, from GNU gettext.
29088         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
29089         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
29090
29091 2003-06-22  Bruno Haible  <bruno@clisp.org>
29092
29093         * modules/safe-read: Add m4/ssize_t.m4.
29094         * modules/xreadlink: Add m4/ssize_t.m4.
29095
29096 2003-06-20  Bruno Haible  <bruno@clisp.org>
29097
29098         Assume C89, so PARAMS isn't needed.
29099         * lib/unicodeio.h (PARAMS): Remove.
29100         * lib/unicodeio.c: Don't use PARAMS.
29101
29102 2003-06-18  Karl Berry  <karl@gnu.org>
29103
29104         * config/config.{guess,sub}: update from prep.
29105
29106 2003-06-18  Jim Meyering  <jim@meyering.net>
29107
29108         Merge changes from coreutils.
29109         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
29110         Remove explicit declarations of xmalloc and realloc.
29111         Include xalloc.h.
29112         (read_utmp): Remove anachronistic cast of xmalloc.
29113
29114 2003-06-17  Paul Eggert  <eggert@twinsun.com>
29115
29116         Assume C89, so PARAMS isn't needed.
29117         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
29118         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
29119         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
29120         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
29121         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
29122         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
29123         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
29124         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
29125         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
29126         lib/xstrtod.h, lib/xstrtol.h: Likewise.
29127         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
29128         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
29129         no longer needed. Anyway, config.h should always be included before any
29130         other file.
29131
29132 2003-06-11  Simon Josefsson  <jas@extundo.com>
29133
29134         * modules/sysexits: New file.
29135         * MODULES.html.sh (func_all_modules): Add sysexits.
29136
29137 2003-06-11  Simon Josefsson  <jas@extundo.com>
29138
29139         * lib/sysexit_.h: New file.
29140
29141 2003-06-11  Derek Price  <derek@ximbiot.com>
29142
29143         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
29144         necessary.
29145
29146 2003-06-11  Bruno Haible  <bruno@clisp.org>
29147
29148         * m4/sysexits.m4: New file.
29149
29150 2003-06-10  Simon Josefsson  <jas@extundo.com>
29151
29152         * lib/argp.h: New file, from glibc.
29153         * lib/argp-ba.c: New file, from glibc.
29154         * lib/argp-eexst.c: New file, from glibc.
29155         * lib/argp-fmtstream.c: New file, from glibc.
29156         * lib/argp-fmtstream.h: New file, from glibc.
29157         * lib/argp-fs-xinl.c: New file, from glibc.
29158         * lib/argp-help.c: New file, from glibc.
29159         * lib/argp-namefrob.h: New file, from glibc.
29160         * lib/argp-parse.c: New file, from glibc.
29161         * lib/argp-pv.c: New file, from glibc.
29162         * lib/argp-pvh.c: New file, from glibc.
29163         * lib/argp-xinl.c: New file, from glibc.
29164
29165 2003-06-10  Simon Josefsson  <jas@extundo.com>
29166
29167         * modules/strchrnul: New file.
29168
29169 2003-06-10  Simon Josefsson  <jas@extundo.com>
29170
29171         * modules/argp: New file.
29172
29173 2003-06-10  Simon Josefsson  <jas@extundo.com>
29174
29175         * m4/strchrnul.m4: New file.
29176
29177 2003-06-10  Simon Josefsson  <jas@extundo.com>
29178
29179         * lib/strchrnul.h: New file.
29180         * lib/strchrnul.c: New file.
29181
29182 2003-06-10  Bruno Haible  <bruno@clisp.org>
29183
29184         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
29185
29186 2003-06-07  Karl Berry  <karl@gnu.org>
29187
29188         * config/config.{guess,sub}: update from prep.
29189
29190 2003-06-07  Jim Meyering  <jim@meyering.net>
29191
29192         * modules/strtod: Use $(...) notation, not @...@ for
29193         AC_REPLACE'd variables.
29194         * modules/localcharset: Likewise.
29195
29196 2003-06-07  Jim Meyering  <jim@meyering.net>
29197
29198         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
29199         in place of my name in the copyright comment.
29200         Remove definition and uses of __P.
29201
29202         From coreutils.
29203         * lib/stat.c: Don't declare xmalloc explicitly.
29204         Instead, include "xalloc.h".
29205         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
29206         xrealloc, and xcalloc return values.
29207         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
29208         Improve comment.
29209         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
29210
29211 2003-06-07  Bruno Haible  <bruno@clisp.org>
29212
29213         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
29214         avoid AC_CONFIG_LINKS.
29215         * modules/fnmatch (Makefile.am): Use explicit creation rule for
29216         fnmatch.h, to avoid AC_CONFIG_LINKS.
29217         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
29218
29219 2003-06-07  Bruno Haible  <bruno@clisp.org>
29220
29221         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
29222         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
29223         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
29224         directory.
29225         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
29226         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
29227         directory.
29228
29229 2003-06-06  Jim Meyering  <jim@meyering.net>
29230
29231         Merge from coreutils.
29232         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
29233         Consolidate declarations and initializations of *_base* locals.
29234
29235         Merge from coreutils.
29236         This avoids a core dump on systems without GNU putenv,
29237         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
29238         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
29239         (unsetenv): New static function, from GNU libc.
29240         (rpl_putenv): Use it.
29241
29242         * lib/modechange.c: Remove trailing blanks.
29243
29244         Merge from coreutils.
29245         * lib/fsusage.c: Remove declaration of statfs.
29246         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
29247
29248         * lib/posixtm.c: Include <stdbool.h> unconditionally.
29249
29250 2003-06-06  Jim Meyering  <jim@meyering.net>
29251
29252         * lib/stdbool_.h: Renamed from stdbool.h.in.
29253
29254 2003-06-06  Jim Meyering  <jim@meyering.net>
29255             Bruno Haible  <bruno@clisp.org>
29256
29257         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
29258         Adjust Makefile.am snippet not to redirect directly to target.
29259         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
29260
29261 2003-06-05  Paul Eggert  <eggert@twinsun.com>
29262
29263         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
29264         mismatch, look in future quarters as well as past.  This fixes a
29265         bug when processing fall-backwards gaps immediately after a long
29266         period of daylight-saving time.
29267
29268         * lib/mktime.c: Assume freestanding C89 or better.
29269         (HAVE_LIMITS_H): Remove.  Assume it's 1.
29270         (__P): Remove; not used.
29271         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
29272         (mktime, not_equal_tm, print_tm, check_result,
29273         main): Use prototypes.  Use const * where appropriate.
29274         (main): Fix typo in testing code that uncovered by above changes.
29275         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
29276
29277 2003-06-04  Paul Eggert  <eggert@twinsun.com>
29278
29279         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
29280         locale.h, localeconv.  This merges changes from coreutils.
29281
29282         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
29283         It can be removed after the next Autoconf is released.
29284         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
29285         needed.
29286
29287 2003-06-04  Paul Eggert  <eggert@twinsun.com>
29288
29289         * lib/mktime.c: Fix Debian bug 177940
29290         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
29291         (localtime_offset): Now long int, not time_t, because we want it
29292         to be guaranteed to be signed.  All uses changed.
29293         (__mktime_internal): If overflow would occur when adding offset,
29294         don't add it.
29295
29296         Merge 'human' changes from coreutils.  Rewrite to support
29297         locale-specific notations like thousands separators.
29298         * lib/human.c: Simplify authorship notice.
29299         Include human.h immediately after config.h.
29300         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
29301         <limits.h>: Do not include, since human.h does.
29302         (SIZE_MAX, UINTMAX_MAX): New macros.
29303         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
29304         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
29305         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
29306         (power_letter): Renamed from suffixes.
29307         (generate_suffix_backwards): Remove.
29308         (adjust_value): Now takes int style (because of human.h changes)
29309         and long double value (for greater precision on some platforms).
29310         (group_number): New function.
29311         (human_readable): Use it.  Use integer options, not enum.
29312         Put the options before the sizes in the arg list.
29313         Support all the new options.
29314         The old human_readable function has been removed;
29315         use inttostr.h instead.
29316         (human_readable, default_block_size, humblock):
29317         Use uintmax_t, not int, for block sizes.
29318         (human_readable_inexact, block_size_types): Remove.
29319         (block_size_opts): New constant.
29320         (human_options): Renamed from human_block_size, with new signature
29321         that allows block sizes up to UINTMAX_MAX.  All callers changed.
29322         * lib/human.h: Add copyright and authorship notice.
29323         Include <limits.h> and <stdbool.h> unconditionally.
29324         (PARAMS): Remove.  All uses removed.
29325         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
29326         (enum human_inexact_style): Remove tag; now a nameless enum.
29327         (human_floor, human_ceiling, human_round_to_even): Now have
29328         values 2, 0, 1 rather than -1, 1, 0.
29329         (human_group_digits, human_suppress_point_zero, human_autoscale,
29330         human_base_1024, human_SI, human_B): New constants.
29331         (human_readable_inexact, human_block_size): Remove.
29332         (human_readable): Size args are now uintmax_t, not int.
29333         (human_options): New decl.
29334
29335         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
29336         unnecessary now that we assume C89 or better.  This change
29337         imported from coreutils.
29338
29339         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
29340         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
29341         in the 2003-05-30 sync from glibc.
29342
29343         .h files should stand alone, but we shouldn't include <sys/types.h>
29344         if we can get away with just <stddef.h>.
29345
29346         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
29347         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
29348         rather than <sys/types.h>, as we merely need size_t.
29349         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
29350         to get size_t.
29351         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
29352         Include <stdio.h>, to get FILE.
29353         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
29354         memcasecmp.h has included <stddef.h> and all we need is size_t.
29355         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
29356         our interface, instead of including <sys/types.h>
29357
29358 2003-06-04  Paul Eggert  <eggert@twinsun.com>
29359
29360         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
29361         now, as glibc mktime is buggy on non-glibc systems.
29362
29363 2003-06-03  Karl Berry  <karl@gnu.org>
29364
29365         * config/config.sub: update from prep.
29366
29367 2003-06-02  Paul Eggert  <eggert@twinsun.com>
29368
29369         [from coreutils]
29370         Fix some minor time-related bugs with POSIX time arguments.
29371         Some valid time stamps were being rejected (notably -1, and
29372         time stamps before 1900 on 64-bit hosts).  And some invalid
29373         time stamps were being accepted, e.g. September 31.
29374
29375         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
29376         that we can return (time_t) -1 successfully.
29377         * lib/posixtm.c: Likewise.
29378         [HAVE_STDBOOL_H]: Include <stdbool.h>.
29379         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
29380         (t): Remove static var.
29381         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
29382         of static var.  All uses changed.
29383         (year): Do not reject years before 1900; they can occur with
29384         64-bit time_t.
29385         (posix_time_parse): Do not check for out-of-range components;
29386         that is now the caller's responsibility, since our checks were
29387         only approximations.
29388         (posixtime): Use mktime to check for out-of-range components,
29389         since it knows them exactly.
29390         If mktime returns (time_t) -1, check whether an error actually occurred
29391         by invoking localtime on -1.
29392         (main) [TEST_POSIXTIME]: Check for input data errors, and report
29393         posixtime failures better.
29394         Improve the test data (in comments only).
29395
29396 2003-06-02  Karl Berry  <karl@gnu.org>
29397
29398         * config/mkinstalldirs (version): new variable.
29399         (--version): new option.
29400         (usage): improve message.
29401
29402 2003-05-30  Karl Berry  <karl@gnu.org>
29403
29404         * lib/mktime.c: update from libc.
29405
29406 2003-05-30  Bruno Haible  <bruno@clisp.org>
29407
29408         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
29409         * config/config.rpath: Upgrade to gettext-0.12.1.
29410
29411 2003-05-30  Bruno Haible  <bruno@clisp.org>
29412
29413         * m4/gettext.m4: Upgrade to gettext-0.12.1.
29414         * m4/nls.m4: New file, from gettext-0.12.1.
29415         * m4/po.m4: New file, from gettext-0.12.1.
29416         * m4/progtest.m4: Upgrade to gettext-0.12.1.
29417
29418 2003-05-30  Bruno Haible  <bruno@clisp.org>
29419
29420         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
29421         * lib/localcharset.h: Likewise.
29422         * lib/localcharset.c: Likewise.
29423
29424 2003-05-29  Karl Berry  <karl@gnu.org>
29425
29426         * config/config.rpath: update from gettext.
29427
29428 2003-05-28  Paul Eggert  <eggert@twinsun.com>
29429
29430         Assume the headers required for C89 freestanding compilers.
29431         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
29432         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
29433         * m4/human.m4 (gl_HUMAN): Likewise.
29434         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
29435         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
29436         * m4/userspec.m4 (gl_USERSPEC): Likewise.
29437         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
29438         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
29439         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
29440
29441 2003-05-28  Paul Eggert  <eggert@twinsun.com>
29442
29443         Assume the headers required for C89 freestanding compilers.
29444         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
29445         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
29446         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
29447         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
29448         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
29449         define, since <limits.h> is guaranteed to do that.
29450         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
29451         * lib/exclude.c: Include <stdbool.h> unconditionally.
29452         * lib/tempname.c: Include <stddef.h> unconditionally.
29453         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
29454         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
29455         <stddef.h> does that.
29456         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
29457         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
29458         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
29459         needed.
29460         * lib/xstrtol.c: Likewise.
29461         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
29462         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
29463
29464         * lib/addext.c (addext): Use assignment rather than cast, to avoid
29465         warnings on some platforms.
29466
29467         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
29468         arbitrarily.
29469
29470 2003-05-26  Jim Meyering  <jim@meyering.net>
29471
29472         Merge in a change from coreutils:
29473         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
29474         that is guaranteed to be `no'.  Use `no_such_member' to indicate
29475         that condition, rather than `-1' which is slightly misleading.
29476         Change the name of the cache variable to have the gl_ prefix.
29477         Prompted by a patch from Richard Dawe for DJGPP.
29478
29479 2003-05-24  Karl Berry  <karl@gnu.org>
29480
29481         * config/config.guess: update from prep.
29482
29483 2003-05-22  Karl Berry  <karl@gnu.org>
29484
29485         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
29486
29487 2003-05-20  Karl Berry  <karl@gnu.org>
29488
29489         * config/config.guess: update from prep.
29490
29491 2003-05-18  Karl Berry  <karl@gnu.org>
29492
29493         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
29494         might actually be set by the user.
29495
29496         * config/depcomp, install-sh, mdate-sh: update from automake.
29497
29498 2003-05-17  Bruno Haible  <bruno@clisp.org>
29499
29500         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
29501         invalid expansion for AC_EGREP_CPP.
29502         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
29503         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
29504         Suggested by Akim Demaille <akim@epita.fr> in
29505         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
29506
29507 2003-05-12  Jim Meyering  <jim@meyering.net>
29508
29509         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
29510         the space-padded-by-default conversion specifiers, %e, %k, %l.
29511
29512 2003-05-12  Bruno Haible  <bruno@clisp.org>
29513
29514         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
29515         the string is longer than 4 KB.
29516
29517 2003-05-11  Karl Berry  <karl@gnu.org>
29518
29519         * config/config.{guess,sub}: update from prep.
29520
29521 2003-05-09  Bruno Haible  <bruno@clisp.org>
29522
29523         * modules/error: Add m4/strerror_r.m4 to file list.
29524
29525 2003-05-03  Bruno Haible  <bruno@clisp.org>
29526
29527         Upgrade to Unicode-4.0.
29528         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
29529         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
29530         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
29531         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
29532         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
29533         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
29534         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
29535         Change width of U+E0100..U+E01EF from 1 to 0.
29536
29537 2003-04-25  Jim Meyering  <jim@meyering.net>
29538
29539         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
29540         of type size_t, not int.
29541
29542 2003-04-25  Bruno Haible  <bruno@clisp.org>
29543
29544         * lib/copy-file.c: Include <stddef.h>, for size_t.
29545
29546 2003-04-21  Paul Eggert  <eggert@twinsun.com>
29547
29548         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
29549         code which expansion is under static control.  Patch imported from
29550         Akim Demaille's patch to Bison; see
29551         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
29552
29553 2003-04-14  Bruno Haible  <bruno@clisp.org>
29554
29555         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
29556
29557 2003-04-11  Jim Meyering  <jim@meyering.net>
29558
29559         Merge changes from Coreutils.
29560
29561         2003-03-22  Jim Meyering  <jim@meyering.net>
29562
29563         * lib/strftime.c (widen): Cast alloca return value to proper type.
29564
29565         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
29566
29567         From GNU libc.
29568         * lib/strftime.c (my_strftime): Handle very large width
29569         specifications for numeric values correctly.  Improve checks for
29570         overflow.
29571
29572         2003-01-19  Jim Meyering  <jim@meyering.net>
29573
29574         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
29575         definitions.
29576         (nl_get_alt_digit) [! defined my_strftime]: Define.
29577         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
29578         _nl_get_alt_digit and _nl_get_walt_digit.
29579
29580         * lib/strftime.c (my_strftime): Merge in locale-related changes from
29581         libc. These changes have no effect outside of _LIBC.
29582
29583 2003-04-10  Bruno Haible  <bruno@clisp.org>
29584
29585         * modules/findprog: New file.
29586         * MODULES.html.sh (func_all_modules): Add it.
29587
29588 2003-04-10  Bruno Haible  <bruno@clisp.org>
29589
29590         * m4/findprog.m4: New file.
29591         * m4/eaccess.m4: New file.
29592
29593 2003-04-10  Bruno Haible  <bruno@clisp.org>
29594
29595         * lib/findprog.h: New file, from GNU gettext.
29596         * lib/findprog.c: New file, from GNU gettext.
29597
29598 2003-04-05  Jim Meyering  <jim@meyering.net>
29599
29600         Merge changes from Coreutils.
29601
29602         * lib/exclude.h (PARAMS): Remove definition and uses.
29603         * lib/exclude.c: Remove uses of `PARAMS'.
29604
29605         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
29606         Add test-cases for DOS filenames. Declare program_name.
29607         (main): Set up program_name.  Patch by Rich Dawe.
29608
29609         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
29610         error from mntctl.
29611         Use mntctl's return value to drive the entry-processing loop, since
29612         we can't rely on the value of the vmt_length member in the last
29613         entry.  On some systems doing so could result in exhausting
29614         virtual memory.  Based in part on a patch from Mike Jetzer.
29615
29616 2003-04-04  Bruno Haible  <bruno@clisp.org>
29617
29618         * modules/linebreak: New file.
29619         * MODULES.html.sh (func_all_modules): Add it.
29620
29621 2003-04-04  Bruno Haible  <bruno@clisp.org>
29622
29623         * m4/linebreak.m4: New file.
29624
29625 2003-04-04  Bruno Haible  <bruno@clisp.org>
29626
29627         * lib/linebreak.h: New file, from GNU gettext.
29628         * lib/linebreak.c: New file, from GNU gettext with slight
29629         modifications.
29630         * lib/lbrkprop.h: New file, from GNU gettext.
29631
29632 2003-04-03  Bruno Haible  <bruno@clisp.org>
29633
29634         * modules/utf8-ucs4: New file.
29635         * modules/utf16-ucs4: New file.
29636         * modules/ucs4-utf8: New file.
29637         * modules/ucs4-utf16: New file.
29638         * MODULES.html.sh (func_all_modules): Add them.
29639
29640 2003-04-03  Bruno Haible  <bruno@clisp.org>
29641
29642         * m4/utf-ucs4.m4: New file.
29643         * m4/ucs4-utf.m4: New file.
29644
29645 2003-04-03  Bruno Haible  <bruno@clisp.org>
29646
29647         * lib/utf8-ucs4.h: New file, from GNU gettext.
29648         * lib/utf16-ucs4.h: New file, from GNU gettext.
29649         * lib/ucs4-utf8.h: New file, from GNU gettext.
29650         * lib/ucs4-utf16.h: New file, from GNU gettext.
29651
29652 2003-04-02  Bruno Haible  <bruno@clisp.org>
29653
29654         * modules/binary-io: New file.
29655         * MODULES.html.sh (func_all_modules): Add it.
29656
29657 2003-04-02  Bruno Haible  <bruno@clisp.org>
29658
29659         * lib/binary-io.h: New file, from GNU gettext.
29660
29661 2003-04-01  Bruno Haible  <bruno@clisp.org>
29662
29663         * modules/pathname: New file.
29664         * MODULES.html.sh (func_all_modules): Add it.
29665
29666 2003-04-01  Bruno Haible  <bruno@clisp.org>
29667
29668         * lib/pathname.h: New file, from GNU gettext.
29669         * lib/concatpath.c: New file, from GNU gettext.
29670
29671 2003-03-30  Bruno Haible  <bruno@clisp.org>
29672
29673         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
29674
29675 2003-03-30  Bruno Haible  <bruno@clisp.org>
29676
29677         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
29678         function chown() doesn't exist.
29679
29680 2003-03-28  Bruno Haible  <bruno@clisp.org>
29681
29682         * modules/copy-file: New file.
29683         * MODULES.html.sh (func_all_modules): Add it.
29684
29685 2003-03-28  Bruno Haible  <bruno@clisp.org>
29686
29687         * m4/copy-file.m4: New file.
29688
29689 2003-03-28  Bruno Haible  <bruno@clisp.org>
29690
29691         * lib/copy-file.h: New file, from GNU gettext.
29692         * lib/copy-file.c: New file, from GNU gettext.
29693
29694 2003-03-18  Jim Meyering  <jim@meyering.net>
29695
29696         * lib/quote.c (quote_n): Fix typo in comment.
29697
29698 2003-03-18  Bruno Haible  <bruno@clisp.org>
29699
29700         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
29701         checking.
29702         * m4/onceonly_2_57.m4: Likewise.
29703
29704 2003-03-17  Bruno Haible  <bruno@clisp.org>
29705
29706         * m4/onceonly.m4: Require autoconf 2.54 or newer.
29707         (m4_quote): Remove macro.
29708         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
29709
29710 2003-03-14  Jim Meyering  <jim@meyering.net>
29711
29712         Merge changes from Coreutils.
29713         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
29714         to be const, in order to avoid warnings.
29715         (obstack_room): Likewise.
29716         (obstack_empty_p): Likewise.
29717
29718 2003-03-14  Bruno Haible  <bruno@clisp.org>
29719
29720         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
29721         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
29722
29723 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29724
29725         Merge changes from Bison.
29726         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
29727         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
29728         when compiling Bison 1.875's `bitset bset = obstack_alloc
29729         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
29730         * lib/hash.c: Include <stdbool.h> unconditionally.
29731
29732 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29733
29734         * m4/onceonly.m4 (m4_quote): New macro.
29735         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
29736         Quote AC_FOREACH variable-expansions properly.
29737
29738 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29739
29740         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
29741
29742 2003-03-09  Paul Eggert  <eggert@twinsun.com>
29743
29744         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
29745         Reported by Bruce Becker; see:
29746         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
29747
29748 2003-03-03  Paul Eggert  <eggert@twinsun.com>
29749             Bruno Haible  <bruno@clisp.org>
29750
29751         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
29752         Reported by John Hughes, see
29753         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
29754
29755 2003-02-20  Bruno Haible  <bruno@clisp.org>
29756
29757         * MODULES.html.sh (func_all_modules): Add poll.
29758
29759 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29760
29761         * modules/poll: New file.
29762
29763 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29764
29765         * lib/poll_.h: New file.
29766         * lib/poll.c: New file.
29767
29768 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29769
29770         * m4/poll.m4: New file.
29771
29772 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29773
29774         * modules/mathl: New file.
29775
29776 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29777
29778         * lib/mathl.h: New file.
29779         * lib/acosl.c: New file.
29780         * lib/asinl.c: New file.
29781         * lib/atanl.c: New file.
29782         * lib/ceill.c: New file.
29783         * lib/cosl.c: New file.
29784         * lib/expl.c: New file.
29785         * lib/floorl.c: New file.
29786         * lib/frexpl.c: New file.
29787         * lib/ldexpl.c: New file.
29788         * lib/logl.c: New file.
29789         * lib/sincosl.c: New file.
29790         * lib/sinl.c: New file.
29791         * lib/sqrtl.c: New file.
29792         * lib/tanl.c: New file.
29793         * lib/trigl.c: New file.
29794         * lib/trigl.h: New file.
29795
29796 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29797
29798         * m4/mathl.m4: New file.
29799
29800 2003-02-18  Bruno Haible  <bruno@clisp.org>
29801
29802         * MODULES.html.sh (func_all_modules): Add mathl.
29803
29804 2003-02-17  Bruno Haible  <bruno@clisp.org>
29805
29806         * modules/mkdtemp: New module.
29807         * MODULES.html.sh (func_all_modules): Add it.
29808
29809 2003-02-17  Bruno Haible  <bruno@clisp.org>
29810
29811         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
29812
29813 2003-02-17  Bruno Haible  <bruno@clisp.org>
29814
29815         * lib/mkdtemp.h: New file, from GNU gettext.
29816         * lib/mkdtemp.c: New file, from GNU gettext.
29817
29818 2003-02-02  Jim Meyering  <jim@meyering.net>
29819
29820         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
29821         e.g. glibc-2.2.93.
29822
29823 2003-01-31  Bruno Haible  <bruno@clisp.org>
29824
29825         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
29826         'rpl_rename'.
29827         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
29828         'rpl_strnlen'.
29829         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
29830         'rpl_strtod'.
29831         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
29832         'rpl_utime'.
29833
29834 2003-01-31  Bruno Haible  <bruno@clisp.org>
29835
29836         * lib/rename.c: #undef rename before defining rpl_rename.
29837         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
29838
29839 2003-01-30  Bruno Haible  <bruno@clisp.org>
29840
29841         * modules/vasnprintf, modules/vasprintf: New modules.
29842         * MODULES.html.sh (func_all_modules): Add them.
29843
29844 2003-01-30  Bruno Haible  <bruno@clisp.org>
29845
29846         * m4/signed.m4: New file, from GNU gettext.
29847         * m4/longdouble.m4: New file, from GNU gettext.
29848         * m4/wchar_t.m4: New file, from GNU gettext.
29849         * m4/wint_t.m4: New file, from GNU gettext.
29850         * m4/vasnprintf.m4: New file.
29851         * m4/vasprintf.m4: New file.
29852
29853 2003-01-30  Bruno Haible  <bruno@clisp.org>
29854
29855         * lib/printf-args.h: New file, from GNU gettext.
29856         * lib/printf-args.c: New file, from GNU gettext.
29857         * lib/printf-parse.h: New file, from GNU gettext.
29858         * lib/printf-parse.c: New file, from GNU gettext.
29859         * lib/vasnprintf.h: New file, from GNU gettext.
29860         * lib/vasnprintf.c: New file, from GNU gettext.
29861         * lib/asnprintf.c: New file, from GNU gettext.
29862         * lib/vasprintf.h: New file, from GNU gettext with modifications.
29863         * lib/vasprintf.c: New file, from GNU gettext.
29864         * lib/asprintf.c: New file, from GNU gettext.
29865
29866 2003-01-29  Bruno Haible  <bruno@clisp.org>
29867
29868         * modules/stpncpy: New module.
29869         * MODULES.html.sh (func_all_modules): Add it.
29870
29871 2003-01-29  Bruno Haible  <bruno@clisp.org>
29872
29873         * m4/stpncpy.m4: New file.
29874
29875 2003-01-29  Bruno Haible  <bruno@clisp.org>
29876
29877         * lib/stpncpy.h: New file, from GNU gettext with modifications.
29878         * lib/stpncpy.c: New file, from GNU gettext with modifications.
29879
29880 2003-01-28  Bruno Haible  <bruno@clisp.org>
29881
29882         * modules/c-ctype: New module.
29883         * MODULES.html.sh (func_all_modules): Add it.
29884
29885 2003-01-28  Bruno Haible  <bruno@clisp.org>
29886
29887         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
29888         Paul Eggert.
29889         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
29890         Paul Eggert.
29891
29892 2003-01-27  Bruno Haible  <bruno@clisp.org>
29893
29894         * modules/xsetenv: New module.
29895         * MODULES.html.sh (func_all_modules): Add it.
29896
29897 2003-01-27  Bruno Haible  <bruno@clisp.org>
29898
29899         * lib/xsetenv.h: New file, from GNU gettext.
29900         * lib/xsetenv.c: New file, from GNU gettext.
29901
29902 2003-01-23  Jim Meyering  <jim@meyering.net>
29903
29904         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
29905         from working on systems without dirfd (at least Irix and OSF1/Tru64).
29906
29907 2003-01-23  Bruno Haible  <bruno@clisp.org>
29908
29909         * modules/minmax: New module.
29910         * MODULES.html.sh (func_all_modules): Add it.
29911
29912 2003-01-23  Bruno Haible  <bruno@clisp.org>
29913
29914         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
29915         Eggert.
29916
29917 2003-01-22  Bruno Haible  <bruno@clisp.org>
29918
29919         * modules/exit: New module.
29920         * MODULES.html.sh (func_all_modules): Add it.
29921
29922 2003-01-22  Bruno Haible  <bruno@clisp.org>
29923
29924         * lib/exit.h: New file, from GNU gettext.
29925
29926 2003-01-19  Bruno Haible  <bruno@clisp.org>
29927
29928         * gnulib-tool: Recognize option --extract-maintainer.
29929         (func_get_maintainer): New function.
29930         * modules/*: Add Maintainer entry.
29931
29932 2003-01-16  Jim Meyering  <jim@meyering.net>
29933
29934         * m4/regex.m4: The `regex' struct is both input and output.
29935         Initialize it before each use.  Patch by Tim Waugh.
29936
29937 2003-01-16  Bruno Haible  <bruno@clisp.org>
29938
29939         * MODULES.html.sh: Add a table of contents. Add the module name as
29940         leftmost column. Add hyperlinks.
29941
29942 2003-01-15  Bruno Haible  <bruno@clisp.org>
29943
29944         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
29945
29946 2003-01-15  Bruno Haible  <bruno@clisp.org>
29947
29948         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
29949         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
29950         suffix.
29951
29952 2003-01-15  Bruno Haible  <bruno@clisp.org>
29953
29954         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
29955
29956 2003-01-15  Bruno Haible  <bruno@clisp.org>
29957
29958         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
29959         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
29960
29961 2003-01-14  Jim Meyering  <jim@meyering.net>
29962
29963         * lib/same.c (same_name): Tweak a comment.
29964
29965 2003-01-14  Bruno Haible  <bruno@clisp.org>
29966
29967         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
29968         when a string comparison is sufficient.
29969
29970 2003-01-14  Bruno Haible  <bruno@clisp.org>
29971
29972         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
29973         'unsigned int'.
29974
29975 2003-01-14  Bruno Haible  <bruno@clisp.org>
29976
29977         * lib/hash-pjw.c: Add comment about low quality of this function.
29978
29979 2003-01-13  Bruno Haible  <bruno@clisp.org>
29980
29981         * modules/stpcpy: Distribute lib/stpcpy.h.
29982         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
29983
29984 2003-01-13  Bruno Haible  <bruno@clisp.org>
29985
29986         * modules/*: Add a description.
29987         * modules/strpbrk: Fix Makefile.am snippet.
29988         * modules/strtoimax: Fix dependencies.
29989         * modules/strtoumax: Likewise.
29990
29991 2003-01-13  Bruno Haible  <bruno@clisp.org>
29992
29993         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
29994         * modules/alloca (Makefile.am): All object files depend on alloca.h.
29995         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
29996
29997 2003-01-13  Bruno Haible  <bruno@clisp.org>
29998
29999         * gnulib-tool (func_create_testdir): Store config/* files in the main
30000         directory.
30001         * config.rpath: Move to ...
30002         * config/config.rpath: ... here.
30003         * modules/gettext: Contains config/config.rpath, not config.rpath.
30004         * modules/iconv: Likewise.
30005
30006 2003-01-12  Paul Eggert  <eggert@twinsun.com>
30007
30008         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
30009         to avoid collisions with libcurses and libreadline.
30010
30011         * m4/getstr.m4: Remove.
30012         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
30013
30014 2003-01-12  Paul Eggert  <eggert@twinsun.com>
30015
30016         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
30017         to avoid collisions with libcurses and libreadline.
30018
30019         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
30020         * lib/getstr.h, getstr.c: Remove.
30021         * lib/getline.c: Include "getline.h", to check interface.
30022         Move body of old getstr.c here: this defines MIN_CHUNK and
30023         declares getdelim2, which is renamed from getstr.
30024         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
30025
30026         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
30027         All uses changed.
30028         * lib/linebuffer.h: Likewise.
30029         (readline): Remove backward-compatibility macro.
30030
30031 2003-01-12  Paul Eggert  <eggert@twinsun.com>
30032
30033         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
30034         to avoid collisions with libcurses and libreadline.
30035         * getstr: Remove.
30036         * MODULES.html.sh: Remove getstr.
30037         * modules/getline: Depend on unlocked-io, not getstr.
30038
30039 2003-01-12  Jim Meyering  <jim@meyering.net>
30040
30041         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
30042
30043 2003-01-10  Bruno Haible  <bruno@clisp.org>
30044
30045         * modules/alloca: Change Makefile.am requirements. Simplify Include
30046         requirements. Add lib/alloca_.h to file list.
30047
30048 2003-01-10  Bruno Haible  <bruno@clisp.org>
30049
30050         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
30051
30052 2003-01-10  Bruno Haible  <bruno@clisp.org>
30053
30054         * lib/alloca_.h: New file.
30055         * lib/getdate.y: Unconditionally include alloca.h.
30056         * lib/makepath.c: Likewise.
30057         * lib/setenv.c: Likewise.
30058         * lib/userspec.c: Likewise.
30059
30060 2003-01-09  Karl Berry  <karl@gnu.org>
30061
30062         * MODULES.html.sh: include `dirname $0` in PATH, to find
30063         gnulib-tool.
30064
30065 2003-01-09  Bruno Haible  <bruno@clisp.org>
30066
30067         * modules/stdbool: Change configure.ac, Makefile.am requirements.
30068         Simplify Include requirements. Add lib/stdbool.h.in to file list.
30069
30070 2003-01-09  Bruno Haible  <bruno@clisp.org>
30071
30072         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
30073
30074 2003-01-09  Bruno Haible  <bruno@clisp.org>
30075
30076         * lib/stdbool.h.in: New file.
30077
30078 2003-01-09  Bruno Haible  <bruno@clisp.org>
30079
30080         * gnulib-tool (func_all_modules): Ignore files ending in ~.
30081         * MODULES.html.sh: Likewise.
30082
30083 2003-01-08  Jim Meyering  <jim@meyering.net>
30084
30085         * lib/full-write.c: Undefine and define-away `const' after inclusion
30086         of errno.h, not before.  Suggestion from Bruno Haible.
30087
30088 2003-01-08  Bruno Haible  <bruno@clisp.org>
30089
30090         * modules/full-read: Depend on full-write.
30091
30092 2003-01-08  Bruno Haible  <bruno@clisp.org>
30093
30094         * lib/safe-read.c: Include specification header first, to ensure its
30095         selfcontainedness.
30096         * lib/full-write.c: Likewise.
30097
30098 2003-01-07  Jim Meyering  <jim@meyering.net>
30099
30100         * lib/full-write.c: Rework so that it may serve to define full_read,
30101         too.
30102         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
30103
30104 2003-01-07  Bruno Haible  <bruno@clisp.org>
30105
30106         * lib/strtoimax.c: Include <stdint.h> as an alternative to
30107         <inttypes.h>.
30108         * lib/xstrtol.h: Likewise.
30109         * lib/xstrtoimax.c: Likewise.
30110         * lib/xstrtoumax.c: Likewise.
30111         * lib/human.h: Likewise.
30112
30113         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
30114         on systems that have <inttypes.h> but not <stdint.h>.
30115
30116 2003-01-07  Bruno Haible  <bruno@clisp.org>
30117
30118         * MODULES.html.sh: Add copyright notice.
30119         (missed_files): Omit CVS directory entries.
30120         (func_module): Make it work with sed-3.02.
30121         * MODULES.txt: Remove file.
30122
30123 2003-01-06  Jim Meyering  <jim@meyering.net>
30124
30125         * lib/version-etc.c: Update year in translatable copyright string.
30126
30127 2003-01-03  Karl Berry  <karl@gnu.org>
30128
30129         * config/config.{guess,sub}: update from prep.
30130
30131 2003-01-02  Karl Berry  <karl@gnu.org>
30132
30133         * doc/COPYING.DOC: belatedly updated to 1.2.
30134
30135 2003-01-01  Karl Berry  <karl@gnu.org>
30136
30137         * gnulib-tool (func_verify_module): report module name $module in
30138         error message, not $1.
30139         * gnulib-tool (create-testdir): don't complain if destdir couldn't
30140         be created, only if it doesn't exist.
30141         * gnulib-tool (last_checkin_date): don't expand the $Date here.
30142
30143 2002-12-31  Paul Eggert  <eggert@twinsun.com>
30144
30145         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
30146
30147 2002-12-31  Paul Eggert  <eggert@twinsun.com>
30148
30149         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
30150         memcmp if strcoll doesn't work.
30151
30152 2002-12-31  Bruno Haible  <bruno@clisp.org>
30153
30154         * lib/utime.c (utime_null): No need to call ftruncate if the file was
30155         nonempty.
30156
30157 2002-12-31  Bruno Haible  <bruno@clisp.org>
30158
30159         * lib/memcoll.c (STRCOLL): New macro.
30160         (memcoll): Use it.
30161
30162 2002-12-31  Bruno Haible  <bruno@clisp.org>
30163
30164         * lib/localcharset.h: New file.
30165         * lib/localcharset.c: Include it.
30166         * lib/unicodeio.c: Likewise.
30167
30168 2002-12-31  Bruno Haible  <bruno@clisp.org>
30169
30170         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
30171         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
30172
30173 2002-12-31  Bruno Haible  <bruno@clisp.org>
30174
30175         * lib/getline.h: Include <stddef.h>, for size_t.
30176
30177         * lib/unicodeio.h: Include <stddef.h>, for size_t.
30178         * lib/unicodeio.c: Don't include <stddef.h>.
30179
30180 2002-12-31  Bruno Haible  <bruno@clisp.org>
30181
30182         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
30183         HAVE_TM_ZONE.
30184
30185 2002-12-24  Karl Berry  <karl@gnu.org>
30186
30187         * config/config.guess: update from prep.
30188
30189 2002-12-24  Bruno Haible  <bruno@clisp.org>
30190
30191         General infrasructure.
30192         * m4/README: Rewritten.
30193         * m4/onceonly.m4: New file.
30194         * m4/onceonly_2_57.m4: New file.
30195
30196         Module atexit.
30197         * m4/atexit.m4: New file.
30198
30199         Module strtod.
30200         * m4/strtod.m4: New file.
30201
30202         Module strtol.
30203         * m4/strtol.m4: New file.
30204
30205         Module strtoul.
30206         * m4/strtoul.m4: New file.
30207
30208         Module memchr.
30209         * m4/memchr.m4: New file.
30210
30211         Module memcmp.
30212         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
30213         (jm_FUNC_MEMCMP): Invoke it.
30214
30215         Module memcpy.
30216         * m4/memcpy.m4: New file.
30217
30218         Module memmove.
30219         * m4/memmove.m4: New file.
30220
30221         Module memset.
30222         * m4/memset.m4: New file.
30223
30224         Module strcspn.
30225         * m4/strcspn.m4: New file.
30226
30227         Module strpbrk.
30228         * m4/strpbrk.m4: New file.
30229
30230         Module strstr.
30231         * m4/strstr.m4: New file.
30232
30233         Module strerror.
30234         * m4/strerror.m4: New file.
30235
30236         Module mktime.
30237         * m4/mktime.m4: Renamed from jm-mktime.m4.
30238         (gl_PREREQ_MKTIME): New macro.
30239         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
30240
30241         Module malloc.
30242         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
30243         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
30244         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
30245
30246         Module realloc.
30247         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
30248         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
30249         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
30250
30251         Module strftime.
30252         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
30253         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
30254         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
30255         gl_TM_GMTOFF.
30256         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
30257
30258         Module xalloc.
30259         * m4/xalloc.m4: New file.
30260
30261         Module alloca.
30262         * m4/alloca.m4: New file.
30263
30264         Module putenv.
30265         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
30266         (jm_FUNC_PUTENV): Invoke it.
30267
30268         Module setenv.
30269         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
30270         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
30271         when invoked twice.
30272         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
30273         gt_FUNC_SETENV.
30274
30275         Module memrchr.
30276         * m4/memrchr.m4: New file.
30277
30278         Module stpcpy.
30279         * m4/stpcpy.m4: New file.
30280
30281         Module strcase.
30282         * m4/strcase.m4: New file.
30283
30284         Module strdup.
30285         * m4/strdup.m4: New file.
30286
30287         Module strnlen.
30288         * m4/strnlen.m4: New file.
30289
30290         Module strndup.
30291         * m4/strndup.m4: New file.
30292
30293         Module xstrtod.
30294         * m4/xstrtod.m4: New file.
30295
30296         Module xstrtol.
30297         * m4/xstrtol.m4: New file.
30298
30299         Module getdate.
30300         * m4/getdate.m4: New file.
30301
30302         Module unlocked-io.
30303         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
30304         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
30305         * m4/jm-glibc-io.m4n: Remove file.
30306
30307         Module long-options.
30308         * m4/long-options.m4: New file.
30309
30310         Module md5.
30311         * m4/md5.m4: New file.
30312
30313         Module sha.
30314         * m4/sha.m4: New file.
30315
30316         Module getstr.
30317         * m4/getstr.m4: New file.
30318
30319         Module getline.
30320         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
30321         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
30322         <sys/types.h>, for size_t. Use the function name gnu_getline, not
30323         simply getline. Infoke gl_PREREQ_GETLINE.
30324
30325         Module obstack.
30326         * m4/obstack.m4: New file.
30327
30328         Module hash.
30329         * m4/hash.m4: New file.
30330
30331         Module readtokens.
30332         * m4/readtokens.m4: New file.
30333
30334         Module strverscmp.
30335         * m4/strverscmp.m4: New file.
30336
30337         Module stdbool.
30338         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
30339         OSF/1.
30340
30341         Module strtoll.
30342         * m4/strtoll.m4: New file.
30343
30344         Module strtoull.
30345         * m4/strtoull.m4: New file.
30346
30347         Module strtoimax.
30348         * m4/strtoimax.m4: New file.
30349
30350         Module strtoumax.
30351         * m4/strtoumax.m4: New file.
30352
30353         Module xstrtoimax.
30354         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
30355         jm_AC_PREREQ_XSTRTOIMAX.
30356         Moved the strtol prerequisites to strtol.m4.
30357         Moved the strtoll prerequisites to strtoll.m4.
30358         Moved the strtoimax prerequisites to strtoimax.m4.
30359
30360         Module xstrtoumax.
30361         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
30362         jm_AC_PREREQ_XSTRTOUMAX.
30363         Moved the strtoul prerequisites to strtoul.m4.
30364         Moved the strtoull prerequisites to strtoull.m4.
30365         Moved the strtoumax prerequisites to strtoumax.m4.
30366
30367         Module chown.
30368         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
30369         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
30370
30371         Module dup2.
30372         * m4/dup2.m4: New file.
30373
30374         Module ftruncate.
30375         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
30376         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
30377
30378         Module getgroups.
30379         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
30380         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
30381
30382         Module gettimeofday.
30383         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
30384         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
30385         gl_PREREQ_GETTIMEOFDAY.
30386
30387         Module mkdir.
30388         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
30389         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
30390
30391         Module mkstemp.
30392         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
30393         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
30394         jm_AC_TYPE_UINTMAX_T.
30395         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
30396
30397         Module stat.
30398         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
30399         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
30400
30401         Module lstat.
30402         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
30403         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
30404
30405         Module timespec.
30406         * m4/timespec.m4 (gl_TIMESPEC): New macro.
30407         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
30408         * m4/st_mtim.m4: Indentation.
30409
30410         Module nanosleep.
30411         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
30412         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
30413         gl_PREREQ_NANOSLEEP.
30414
30415         Module regex.
30416         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
30417         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
30418         (gl_REGEX): New macro.
30419
30420         Module rename.
30421         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
30422         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
30423
30424         Module rmdir.
30425         * m4/rmdir.m4: New file.
30426
30427         Module utime.
30428         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
30429         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
30430         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
30431
30432         Module dirname.
30433         * m4/dirname.m4: New file.
30434
30435         Module getopt.
30436         * m4/getopt.m4: New file.
30437
30438         Module unistd-safer.
30439         * m4/unistd-safer.m4: New file.
30440
30441         Module fnmatch.
30442         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
30443         declaration.
30444         (gl_PREREQ_FNMATCH_EXTRA): New macro.
30445         (gl_FUNC_FNMATCH_POSIX): New macro.
30446         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
30447         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
30448         simply fnmatch.
30449
30450         Module exclude.
30451         * m4/exclude.m4: New file.
30452
30453         Module human.
30454         * m4/human.m4: New file.
30455
30456         Module acl.
30457         * m4/acl.m4: Nop.
30458
30459         Module backupfile.
30460         * m4/backupfile.m4: New file.
30461         * m4/d-ino.m4: Indentation.
30462
30463         Module fsusage.
30464         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
30465         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
30466         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
30467
30468         Module dirfd.
30469         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
30470         requirements.
30471
30472         Module euidaccess.
30473         * m4/euidaccess.m4: New file.
30474
30475         Module file-type.
30476         * m4/file-type.m4: New file.
30477
30478         Module fileblocks.
30479         * m4/fileblocks.m4: New file.
30480
30481         Module filemode.
30482         * m4/filemode.m4: New file.
30483
30484         Module isdir.
30485         * m4/isdir.m4: New file.
30486
30487         Module lchown.
30488         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
30489         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
30490
30491         Module makepath.
30492         * m4/makepath.m4: New file.
30493
30494         Module modechange.
30495         * m4/modechange.m4: New file.
30496
30497         Module mountlist.
30498         * m4/mountlist.m4: New file.
30499         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
30500         Indentation.
30501
30502         Module path-concat.
30503         * m4/path-concat.m4: New file.
30504
30505         Module pathmax.
30506         * m4/pathmax.m4: New file.
30507
30508         Module same.
30509         * m4/same.m4: New file.
30510
30511         Module save-cwd.
30512         * m4/save-cwd.m4: New file.
30513
30514         Module savedir.
30515         * m4/savedir.m4: New file.
30516
30517         Module xgetcwd.
30518         * m4/xgetcwd.m4: New file.
30519         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
30520
30521         Module xreadlink.
30522         * m4/xreadlink.m4: New file.
30523
30524         Module safe-read.
30525         * m4/safe-read.m4: New file.
30526
30527         Module safe-write.
30528         * m4/safe-write.m4: New file.
30529
30530         Module closeout.
30531         * m4/closeout.m4: New file.
30532
30533         Module stdio-safer.
30534         * m4/stdio-safer.m4: New file.
30535
30536         Module getpass.
30537         * m4/getpass.m4: New file.
30538
30539         Module getugroups.
30540         * m4/getugroups.m4: New file.
30541
30542         Module group-member.
30543         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
30544         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
30545
30546         Module idcache.
30547         * m4/idcache.m4: New file.
30548
30549         Module userspec.
30550         * m4/userspec.m4: New file.
30551
30552         Module gettime.
30553         * m4/clock_time.m4: New file.
30554         * m4/gettime.m4: New file.
30555
30556         Module settime.
30557         * m4/settime.m4: New file.
30558
30559         Module posixtm.
30560         * m4/posixtm.m4: New file.
30561
30562         Module gethostname.
30563         * m4/gethostname.m4: New file.
30564
30565         Module canon-host.
30566         * m4/canon-host.m4: New file.
30567
30568         Module gettext.
30569         * m4/codeset.m4: New file, from gettext-0.11.5.
30570         * m4/gettext.m4: New file, from gettext-0.11.5.
30571         * m4/glibc21.m4: New file, from gettext-0.11.5.
30572         * m4/iconv.m4: New file, from gettext-0.11.5.
30573         * m4/intdiv0.m4: New file, from gettext-0.11.5.
30574         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
30575         * m4/inttypes.m4: New file, from gettext-0.11.5.
30576         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
30577         * m4/isc-posix.m4: New file, from gettext-0.11.5.
30578         * m4/lcmessage.m4: New file, from gettext-0.11.5.
30579         * m4/lib-ld.m4: New file, from gettext-0.11.5.
30580         * m4/lib-link.m4: New file, from gettext-0.11.5.
30581         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
30582         * m4/progtest.m4: New file, from gettext-0.11.5.
30583         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
30584         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
30585         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
30586
30587         Module localcharset.
30588         * m4/localcharset.m4: New file.
30589
30590         Module hard-locale.
30591         * m4/hard-locale.m4: New file.
30592
30593         Module mbswidth.
30594         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
30595         onceonly macros.
30596         * m4/mbrtowc.m4: Add comment.
30597
30598         Module memcasecmp.
30599         * m4/memcasecmp.m4: New file.
30600
30601         Module memcoll.
30602         * m4/memcoll.m4: New file.
30603
30604         Module unicodeio.
30605         * m4/unicodeio.m4: New file.
30606
30607         Module rpmatch.
30608         * m4/rpmatch.m4: New file.
30609
30610         Module yesno.
30611         * m4/yesno.m4: New file.
30612
30613         Module exitfail.
30614         * m4/exitfail.m4: New file.
30615
30616         Module c-stack.
30617         * m4/c-stack.m4 (gl_C_STACK): New macro.
30618         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
30619
30620         Module error.
30621         * m4/error.m4 (gl_ERROR): New macro.
30622         (jm_PREREQ_ERROR): Use onceonly macros.
30623
30624         Module fatal.
30625         * m4/fatal.m4: New file.
30626
30627         Module getloadavg.
30628         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
30629         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
30630
30631         Module getpagesize.
30632         * m4/getpagesize.m4: New file.
30633
30634         Module getusershell.
30635         * m4/getusershell.m4: New file.
30636
30637         Module physmem.
30638         * m4/physmem.m4: New file.
30639
30640         Module posixver.
30641         * m4/posixver.m4: New file.
30642
30643         Module quotearg.
30644         * m4/quotearg.m4: New file.
30645
30646         Module quote.
30647         * m4/quote.m4: New file.
30648
30649         Module readutmp.
30650         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
30651
30652         Module sig2str.
30653         * m4/sig2str.m4: New file.
30654
30655         Other.
30656         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
30657         ulonglong.m4.
30658         * m4/intmax_t.m4: New file.
30659         * m4/d-type.m4: Indentation.
30660         * m4/jm-macros.m4: Update.
30661         * m4/prereq.m4 (jm_PREREQ): Update.
30662         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
30663         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
30664         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
30665         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
30666         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
30667         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
30668         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
30669         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
30670         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
30671         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
30672         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
30673         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
30674         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
30675         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
30676         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
30677         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
30678         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
30679         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
30680         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
30681
30682 2002-12-24  Bruno Haible  <bruno@clisp.org>
30683
30684         * MODULES.txt: Update according to m4/ changes.
30685
30686         Module gettext.
30687         * config.rpath: New file, from gettext-0.11.5.
30688
30689         * modules/*: New module descriptions.
30690         * gnulib-tool: New file.
30691         * MODULES.html.sh: New file.
30692
30693 2002-12-21  Karl Berry  <karl@gnu.org>
30694
30695         * doc/fdl.texi: update to version 1.2.
30696
30697 2002-12-19  Karl Berry  <karl@gnu.org>
30698
30699         * config/config.guess: update from prep.
30700
30701 2002-12-18  Bruno Haible  <bruno@clisp.org>
30702
30703         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
30704         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
30705
30706 2002-12-17  Bruno Haible  <bruno@clisp.org>
30707
30708         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
30709         stdlib.h, string.h.
30710
30711 2002-12-17  Bruno Haible  <bruno@clisp.org>
30712
30713         * lib/canon-host.c (strdup): Remove unused declaration.
30714
30715         * lib/fsusage.c: Include full_read.h.
30716         (get_fs_usage): Use full_read instead of safe_read.
30717
30718         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
30719
30720 2002-12-12  Karl Berry  <karl@gnu.org>
30721
30722         * config/config.guess: update from prep.
30723
30724 2002-12-11  Bruno Haible  <bruno@clisp.org>
30725
30726         * m4/setenv.m4: New file, from gettext-0.11.5.
30727
30728 2002-12-11  Bruno Haible  <bruno@clisp.org>
30729
30730         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
30731         not unsetenv().
30732         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
30733         modifications:
30734
30735         2002-12-11  Bruno Haible  <bruno@clisp.org>
30736
30737                 * setenv.c (alloca): Fall back to malloc.
30738                 (freea): New macro.
30739                 (setenv): Use freea() to free memory allocated with alloca().
30740
30741         2002-11-13  Bruno Haible  <bruno@clisp.org>
30742
30743                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
30744                 function declarations.
30745                 * unsetenv.c (unsetenv): Likewise.
30746
30747         2002-03-04  Bruno Haible  <bruno@clisp.org>
30748
30749                 Portability to AIX 4.3.3.
30750                 * unsetenv.c: New file, extracted from setenv.c.
30751                 * setenv.c: Move the unsetenv() function to unsetenv.c.
30752
30753         2001-12-20  Bruno Haible  <bruno@clisp.org>
30754
30755                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
30756                 use malloc instead. For SunOS 4.
30757
30758         2001-12-11  Bruno Haible  <bruno@clisp.org>
30759
30760                 * setenv.c: Declare alloca.
30761                 (compar_fn_t): New typedef.
30762                 (KNOWN_VALUE, STORE_VALUE): Use it.
30763
30764         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
30765         setenv.h.
30766
30767 2002-12-10  Paul Eggert  <eggert@twinsun.com>
30768
30769         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
30770         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
30771         Choose values that are less likely to collide with system fnmatch
30772         options.
30773         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
30774         defined (e.g., a pure POSIX system).
30775         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
30776         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
30777
30778 2002-12-06  Paul Eggert  <eggert@twinsun.com>
30779
30780         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
30781         a pain in practice to deal with generated m4 files.  This change
30782         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
30783
30784         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
30785         and jm-glibc-io.m4, as they are no longer a special case.
30786         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
30787         kludge and the auto-generation stuff.  Check only whether the
30788         functions are declared, not whether they exist, since older hosts
30789         that don't declare the functions can't use the optimization anyway.
30790
30791 2002-12-06  Jim Meyering  <jim@meyering.net>
30792
30793         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
30794
30795         Merge in changes from libc's misc/error.c, in preparation
30796         for the merge of gnulib's changes back into libc.
30797
30798         * lib/error.c (_): Define only if not already defined.
30799         Move definition to follow all #include directives.
30800         Include unlocked-io.h only if !_LIBC.
30801         [_LIBC]: Include <libio/libioP.h>.
30802         [USE_IN_LIBIO]: Include <libio/iolibio.h>
30803         (fflush): Tweak definition to use INTUSE.
30804         (putc): Define.
30805
30806 2002-12-05  Paul Eggert  <eggert@twinsun.com>
30807
30808         * lib/alloca.c [defined emacs]: Include "lisp.h".
30809         (xalloc_die) [defined emacs]: New macro.
30810         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
30811         [! defined emacs]: Include <xalloc.h>.
30812         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
30813         (pointer): Typedef to POINTER_TYPE *.
30814         (malloc): Remove decl; we now always use xmalloc.
30815         (alloca): Use old-style definition, since Emacs needs this.
30816         Check for arithmetic overflow when computing combined size.
30817
30818 2002-12-04  Paul Eggert  <eggert@twinsun.com>
30819
30820         Do not generate unlocked-io.h automatically, since it's easier to
30821         maintain it by hand.
30822
30823         * lib/unlocked-io.h: New file, from GNU diffutils,
30824         but with proper copyright notice and attribution.
30825         * lib/gen-uio: Remove.
30826         * lib/Makefile.am: Add copyright notice.
30827         (libfetish_a_SOURCES): Add unlocked-io.h.
30828         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
30829         (DISTCLEANFILES, io_functions): Remove macros.
30830         (EXTRA_DIST): Remove gen_uio.
30831         (unlocked-io.h): Remove rule.
30832
30833 2002-12-04  Jim Meyering  <jim@meyering.net>
30834
30835         Reflect the fact that stat.c and lstat.c are no longer generated.
30836         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
30837         (DISTCLEANFILES): Likewise.
30838         (EXTRA_DIST): Likewise.
30839         (all_local): Don't depend on stat.c or lstat.c.
30840         (stat.c, lstat.c): Remove rules.
30841         (EXTRA_DIST): Remove xstat.in.
30842
30843         * lib/xstat.in: Remove file.  Contents moved into stat.c.
30844         * lib/stat.c: New file.  Contents mostly from xstat.in.
30845         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
30846         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
30847
30848         * lib/safe-read.c: Rework so that it may serve to define safe_write,
30849         too.
30850         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
30851
30852 2002-12-03  Jim Meyering  <jim@meyering.net>
30853
30854         * lib/safe-read.c, safe-write.c: Change variable names and comments,
30855         but not semantics, to minimize the differences between these two files.
30856         (safe_read): Change comment to mention SAFE_READ_ERROR.
30857
30858         * lib/safe-read.c (IS_EINTR): Define.
30859         (safe_read): Use IS_EINTR in place of in-function cpp directives.
30860
30861 2002-12-02  Jim Meyering  <jim@meyering.net>
30862
30863         * lib/safe-read.c (EINTR): Define.
30864         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
30865         (INT_MAX): Provide fallback.
30866         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
30867
30868         * lib/safe-read.h (SAFE_READ_ERROR): Define.
30869
30870 2002-12-02  Bruno Haible  <bruno@clisp.org>
30871
30872         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
30873         Define, taken from safe-read.c.
30874         (INT_MAX): Provide fallback.
30875         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
30876         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
30877
30878         * lib/safe-read.c (EINTR): Remove definition.
30879         (safe_read): Don't use EINTR if it is absent.
30880
30881 2002-12-01  Jim Meyering  <jim@meyering.net>
30882
30883         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
30884         zero.
30885         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
30886
30887 2002-11-27  Paul Eggert  <eggert@twinsun.com>
30888
30889         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
30890         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
30891         with `if (! (value < limit)) abort ();', for readability.
30892
30893 2002-11-26  Karl Berry  <karl@gnu.org>
30894
30895         * lib/strdup.c: copy from libc again, with jim's ok.
30896         * lib/.cppi-disable: re-add strdup.c
30897
30898 2002-11-25  Karl Berry  <karl@gnu.org>
30899
30900         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
30901         instead of "strtol.c".
30902
30903 2002-11-25  Karl Berry  <karl@gnu.org>
30904
30905         * config/install-sh: update from automake for variable quoting, $0 in
30906         error msgs, etc.
30907
30908         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
30909         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
30910         entry.
30911
30912 2002-11-25  Jim Meyering  <jim@meyering.net>
30913
30914         * lib/mktime.c: Sync from libc, now that it has the latest fix.
30915
30916 2002-11-24  Karl Berry  <karl@gnu.org>
30917
30918         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
30919         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
30920
30921 2002-11-24  Jim Meyering  <jim@meyering.net>
30922
30923         Update from coreutils:
30924
30925         * lib/mktime.c: Merge in changes from libc.
30926
30927         Avoid a link-time failure on some Linux systems.
30928         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
30929         (otherwise).
30930         (__mon_yday): Declare with the STATIC attribute.
30931         (__mktime_internal): Likewise.
30932         Based on a report from Greg Schafer.
30933
30934 2002-11-23  Jim Meyering  <jim@meyering.net>
30935
30936         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
30937         Use `unsigned', not `int', as type of index.
30938
30939         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
30940
30941         * lib/fsusage.c: Remove unneeded parentheses around operands of
30942         `defined'.
30943
30944 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30945
30946         * lib/quotearg.h: Allow multiple inclusion by surrounding with
30947         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
30948         so that we can be included first.
30949         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
30950         * lib/quotearg.c: Include quotearg.h immediately after config.h.
30951         No need to include stddef.h or sys/types.h any more.
30952         Surround local include files with "", not "<>".
30953         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
30954         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
30955         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
30956         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
30957         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
30958         (ISPRINT): Remove; no longer needed now that we assume C89.
30959
30960         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
30961         Preserve errno.
30962
30963         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
30964         quotearg_char): Use SIZE_MAX rather than
30965         (size_t) -1 when we are talking about "infinity".
30966
30967         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
30968
30969 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30970
30971         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
30972         hint that one should use `if (! x) abort ();' rather than `assert
30973         (x);', and anyway it's one less thing to worry about configuring.
30974         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
30975         hash_rehash, hash_insert): Use abort rather than assert.
30976
30977 2002-11-22  Bruno Haible  <bruno@clisp.org>
30978
30979         * lib/safe-read.h: Assume C89. Add comments.
30980         (safe_read): Change return type to size_t.
30981         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
30982         byte counts > SSIZE_MAX correctly.
30983         * lib/safe-write.h: New file.
30984         * lib/safe-write.c: New file.
30985         * lib/full-read.h: New file.
30986         * lib/full-read.c: New file.
30987         * lib/full-write.h: Assume C89. Add comments.
30988         * lib/full-write.c: Include safe-write.h.
30989         (full_write): Rewritten to use safe_write.
30990         Suggested by Jim Meyering and Paul Eggert.
30991
30992 2002-11-21  Jim Meyering  <jim@meyering.net>
30993
30994         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
30995
30996         Merge in changes from the coreutils.
30997
30998         2002-09-25  Paul Eggert  <eggert@twinsun.com>
30999         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
31000         <stdint.h>.
31001         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
31002         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
31003         int.  Work more efficiently if X is the same width as uintmax_t.
31004         Do not compare X to -1, to avoid bogus compiler warning.
31005         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
31006         Don't assume that f_frsize and f_bsize are the same type.
31007
31008         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
31009         warning on FreeBSD.
31010
31011         * lib/makepath.c (make_path): Restore umask *before* creating the final
31012         component.
31013         (make_path): Minor reformatting.
31014
31015         * lib/xmalloc.c: Adjust to work with new autoconf macros,
31016         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
31017         HAVE_MALLOC/HAVE_REALLOC.
31018
31019         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
31020         dummy ones.  At least on GNU/Linux systems, `auto' means something
31021         else.
31022         From Michael Stone.
31023
31024 2002-11-21  Bruno Haible  <bruno@clisp.org>
31025
31026         Remove case insensitive option matching.
31027         * lib/argmatch.h (argcasematch): Remove declaration.
31028         (ARGCASEMATCH): Remove macro.
31029         (__xargmatch_internal): Remove case_sensitive argument.
31030         (XARGMATCH): Update.
31031         (XARGCASEMATCH): Remove macro.
31032         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
31033         case_sensitive argument.
31034         (argcasematch): Remove function.
31035         (__xargmatch_internal): Remove case_sensitive argument.
31036         (main): Use XARGMATCH instead of XARGCASEMATCH.
31037
31038         * lib/xmalloc.c: Change compile-time error message. Add comment about
31039         required autoconf version.
31040
31041 2002-11-20  Paul Eggert  <eggert@twinsun.com>
31042
31043         Merge argmatch cleanups from Bison.  Assume C89.
31044
31045         * lib/argmatch.c: Include config.h here, not in argmatch.h.
31046         Include stdlib.h, for EXIT_FAILURE.
31047         Always include <string.h>, since we assume C89.
31048         (EXIT_FAILURE): Remove pre-C89 bug workaround.
31049         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
31050         Include <stddef.h> instead, since it's all we need for size_t.
31051         (PARAMS): Remove.  All uses removed.
31052         (ARRAY_CARDINALITY): Do not bother to #undef.
31053         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
31054         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
31055         Remove unnecessary parentheses.
31056         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
31057         Insert necessary parentheses.
31058         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
31059         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
31060
31061 2002-11-19  Bruno Haible  <bruno@clisp.org>
31062
31063         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
31064         * lib/mbswidth.h: Include <stddef.h>, for size_t.
31065
31066         * lib/mbswidth.h (PARAMS): Remove macro.
31067         (mbswidth, mbsnwidth): Use ANSI C function declarations.
31068         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
31069
31070         * lib/gcd.h (PARAMS): Remove macro.
31071         (gcd): Use ANSI C function declarations.
31072         * lib/gcd.c (gcd): Likewise.
31073
31074 2002-11-15  Bruno Haible  <bruno@clisp.org>
31075
31076         * lib/strcspn.c: Include <stddef.h>.
31077         (strcspn): Use ANSI C function declaration. Change return type to
31078         size_t. Use NULL.
31079         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
31080         (strpbrk): Use NULL.
31081         * lib/strpbrk.h (PARAMS): Remove macro.
31082         (strpbrk): Use ANSI C function declaration.
31083         * lib/strstr.c: Don't include <sys/types.h>.
31084         * lib/strstr.h (PARAMS): Remove macro.
31085         (strstr): Use ANSI C function declarations.
31086
31087 2002-11-14  Karl Berry  <karl@gnu.org>
31088
31089         * config/mkinstalldirs: `do' on separate line, instead of
31090         `for var; do'.
31091
31092 2002-11-06  Bruno Haible  <bruno@clisp.org>
31093
31094         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
31095         * lib/gcd.c (gcd): Likewise.
31096
31097 2002-11-05  Bruno Haible  <bruno@clisp.org>
31098
31099         * lib/gcd.h: New file, from gettext-0.11.5.
31100         * lib/gcd.c: New file, from gettext-0.11.5.
31101
31102 2002-11-05  Bruno Haible  <bruno@clisp.org>
31103
31104         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
31105         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
31106         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
31107         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
31108
31109         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
31110         <libintl.h>.
31111         * lib/makepath.c: Include gettext.h instead of <locale.h> and
31112         <libintl.h>.
31113
31114         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
31115         * lib/human.c: Include gettext.h instead of <libintl.h>.
31116         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
31117         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
31118         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
31119         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
31120         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
31121         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
31122         (textdomain): Remove definition.
31123         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
31124
31125         * lib/long-options.c: Remove include of <libintl.h> and definition of
31126         _.
31127         * lib/same.c: Remove include of <libintl.h> and definition of _.
31128
31129 2002-11-04  Owen Taylor  <otaylor@redhat.com>
31130
31131         * lib/config.charset: A few additions for Solaris.
31132
31133 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
31134
31135         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
31136         * lib/localcharset.c (locale_charset): Declare as extern "C".
31137
31138 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
31139
31140         * lib/config.charset: msdos in uk_UA uses CP1125.
31141
31142 2002-11-04  Bruno Haible  <bruno@clisp.org>
31143
31144         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
31145         * lib/strcase.h: New file, from GNU gettext-0.11.5.
31146         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
31147         * lib/strstr.h: New file, from GNU gettext-0.11.5.
31148         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
31149
31150 2002-11-04  Bruno Haible  <bruno@clisp.org>
31151
31152         * lib/localcharset.c (locale_charset): Don't return an empty string.
31153
31154 2002-11-04  Bruno Haible  <bruno@clisp.org>
31155
31156         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
31157         aliases.
31158
31159 2002-11-04  Bruno Haible  <bruno@clisp.org>
31160
31161         * lib/config.charset: Update for newest glibc. Add canonical names
31162         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
31163
31164 2002-11-04  Bruno Haible  <bruno@clisp.org>
31165
31166         * lib/config.charset: Add support for NetBSD.
31167
31168 2002-11-04  Bruno Haible  <bruno@clisp.org>
31169
31170         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
31171
31172 2002-11-01  Bruno Haible  <bruno@clisp.org>
31173
31174         * configure.in: Add AC_CONFIG_AUX_DIR call.
31175         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
31176         test/Makefile.
31177         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
31178
31179 2002-09-28  Karl Berry  <karl@gnu.org>
31180
31181         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
31182         installed automake until the next release, since changes have been
31183         made.
31184
31185 2002-09-25  Karl Berry  <karl@gnu.org>
31186
31187         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
31188         * lib/getopt*: copy from libc/posix.
31189         * lib/gettext.h: copy from gettext.
31190         * lib/.cppi-disable: add strdup.c, gettext.h.
31191
31192 2002-09-25  Karl Berry  <karl@gnu.org>
31193
31194         * config/srclist.txt: enable gettext.h check.
31195         * config/config.{guess,sub}: update from prep.
31196         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
31197                 from automake 1.6.3.
31198         See srclist*.
31199
31200 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
31201
31202         * regex.c (PATFETCH): Remove the translating fetch.
31203         (PATFETCH_RAW): Rename to PATFETCH.
31204         (set_image_of_range): New fun.
31205         (SET_RANGE_TABLE_WORK_AREA): Use it.
31206         (regex_compile): Don't translate the pattern chars so eagerly.
31207         Only do it when inserting an `exactn' bytecode or when handling
31208         a char-range.
31209         (mutually_exclusive_p): Avoid empty statement.
31210
31211 2002-07-06  Jim Meyering  <meyering@lucent.com>
31212
31213         * m4/README: Don't mention Makefile.am.in.
31214         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
31215
31216 2002-07-01  Jim Meyering  <meyering@lucent.com>
31217
31218         * lib/c-stack.c: Include sys/time.h.
31219         From Volker Borchert.
31220
31221 2002-06-26  Paul Eggert  <eggert@twinsun.com>
31222
31223         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
31224
31225 2002-06-26  Paul Eggert  <eggert@twinsun.com>
31226
31227         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
31228         New macro.  Use it uniformly instead of
31229         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
31230         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
31231         reported by Vin Shelton.
31232
31233 2002-06-22  Paul Eggert  <eggert@twinsun.com>
31234
31235         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
31236         Do not assume SA_SIGINFO behavior.
31237         Bug reported by Jim Meyering on NetBSD 1.5.2.
31238
31239 2002-06-22  Jim Meyering  <meyering@lucent.com>
31240
31241         * m4/c-stack.m4: New file, from diffutils-2.8.2.
31242         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
31243
31244         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
31245         now that configure.ac uses AC_GNU_SOURCE.
31246         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
31247         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
31248
31249         Update to latest tools.  Suggestions from Paul Eggert.
31250         * m4/stdbool.m4: New file, from diffutils-2.8.2.
31251         * m4/gnu-source.m4: Update from diffutils-2.8.2.
31252         * m4/fnmatch.m4: Likewise.
31253         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
31254         to AC_HEADER_STDBOOL
31255
31256 2002-06-22  Jim Meyering  <meyering@lucent.com>
31257
31258         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
31259         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
31260
31261 2002-06-22  Jim Meyering  <meyering@lucent.com>
31262
31263         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
31264
31265         * lib/exitfail.c, exitfail.h: Likewise.
31266         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
31267
31268         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
31269         of fnmatch.h.
31270         (EXTRA_DIST): Add fnmatch_loop.c.
31271         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
31272
31273         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
31274         * lib/fnmatch.c: Update from diffutils-2.8.2.
31275         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
31276         * lib/fnmatch.h: Remove file.
31277
31278 2002-06-21  Jim Meyering  <meyering@lucent.com>
31279
31280         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
31281         * m4/mbrtowc.m4: Likewise.
31282
31283         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
31284         * m4/mbswidth.m4: Reflect name change:
31285         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
31286         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
31287
31288         * m4/lib-link.m4: Update from gettext-0.11.2.
31289         * m4/gettext.m4: Likewise.
31290
31291         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
31292         From Alfred M. Szmidt.
31293
31294 2002-06-18  Paul Eggert  <eggert@twinsun.com>
31295
31296         * lib/file-type.h: Report an error if neither S_ISREG nor
31297         S_IFREG is defined, instead of using a test specific to glibc
31298         2.2.  This should be safe, since POSIX requires S_ISREG and
31299         Unix Version 7 had S_IFREG.  We don't need to check for
31300         <sys/types.h> since we don't use any symbols that it defines.
31301
31302 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
31303
31304         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
31305         $@-t, so that each temporary file name is unique and valid in the first
31306         8 characters, for operation under DOS.
31307
31308 2002-06-15  Paul Eggert  <eggert@twinsun.com>
31309
31310         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
31311
31312 2002-06-15  Jim Meyering  <meyering@lucent.com>
31313
31314         Work even with DJGPP 2.03, which lacks support for symlinks.
31315         From Richard Dawe.
31316         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
31317         is defined.
31318         * lib/lchown.c (S_ISLNK): Likewise.
31319
31320 2002-06-15  Jim Meyering  <meyering@lucent.com>
31321
31322         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
31323         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
31324         have been included before this file.
31325
31326 2002-06-14  Jim Meyering  <meyering@lucent.com>
31327
31328         * lib/file-type.h: Use the version from diffutils-2.8.2.
31329         * lib/file-type.c: Likewise.
31330
31331 2002-06-07  Jim Meyering  <meyering@lucent.com>
31332
31333         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
31334         They're needed at least for NetBSD 1.5.2.
31335         ($statxfs_includes): Include those same headers.
31336         ($statxfs_includes): Include sys/vfs.h if available.
31337         ($statxfs_includes): Likewise for sys/statvfs.h.
31338         Check for the following members in both structs statfs and statvfs:
31339         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
31340
31341 2002-06-01  Jim Meyering  <meyering@lucent.com>
31342
31343         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
31344         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
31345
31346 2002-05-28  Jim Meyering  <meyering@lucent.com>
31347
31348         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
31349         Reported by Volker Borchert.
31350
31351 2002-05-27  Jim Meyering  <meyering@lucent.com>
31352
31353         Fix a problem seen only on nonconforming systems whereby ls.c's
31354         use of localtime, and then of gettimeofday would cause trouble:
31355         the localtime call used to initialize rpl_gettimeofday's save
31356         mechanism would clobber ls's current local time information so
31357         that in any long listing the first file would always be listed
31358         with date 1970-01-01.  Analysis by Volker Borchert.
31359
31360         * lib/gettimeofday.c (localtime): Undefine.
31361         (rpl_localtime): New function.
31362
31363 2002-05-27  Jim Meyering  <meyering@lucent.com>
31364
31365         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
31366         localtime.
31367
31368         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
31369         use the replacement function; it wouldn't resolve at link time.
31370         Reported by Volker Borchert.
31371
31372 2002-05-22  Jim Meyering  <meyering@lucent.com>
31373
31374         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
31375         file-type.h.
31376         * lib/file-type.h: New file.
31377         * lib/file-type.c (file_type): New file/function.  Extracted from
31378         diffutils.
31379
31380 2002-04-30  Jim Meyering  <meyering@lucent.com>
31381
31382         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
31383
31384 2002-04-29  Paul Eggert  <eggert@twinsun.com>
31385
31386         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
31387
31388 2002-04-29  Paul Eggert  <eggert@twinsun.com>
31389
31390         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
31391         Do not check for alloca.h (no longer used) or stdbool.h (was never
31392         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
31393
31394 2002-04-29  Paul Eggert  <eggert@twinsun.com>
31395
31396         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
31397
31398 2002-04-29  Jim Meyering  <meyering@lucent.com>
31399
31400         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
31401         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
31402         Use AC_FUNC_STRNLEN here instead.
31403
31404         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
31405         With autoconf-2.53a, it's part of AC_PROG_CC.
31406
31407 2002-04-28  Paul Eggert  <eggert@twinsun.com>
31408
31409         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
31410         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
31411
31412 2002-04-28  Paul Eggert  <eggert@twinsun.com>
31413
31414         * lib/sig2str.h, lib/sig2str.c: New files.
31415         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
31416
31417 2002-04-28  Paul Eggert  <eggert@twinsun.com>
31418
31419         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
31420         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
31421         of 127, since 64 is the largest conceivable number for ancient
31422         nonstandard hosts.
31423         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
31424
31425 2002-04-28  Jim Meyering  <meyering@lucent.com>
31426
31427         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
31428
31429 2002-04-24  Jim Meyering  <meyering@lucent.com>
31430
31431         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
31432         (jm_PREREQ): Use it.
31433
31434         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
31435         mach/mach.h fcntl.h.
31436         Check for this function: setlocale.
31437
31438 2002-04-24  Jim Meyering  <meyering@lucent.com>
31439
31440         * lib/gettext.h: New file, from Gettext.
31441         * lib/Makefile.am (INCLUDES): Remove -I../intl.
31442         (libfetish_a_SOURCES): Add gettext.h.
31443
31444 2002-04-16  Jim Meyering  <meyering@lucent.com>
31445
31446         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
31447         ut_pid, ut_id, ut_exit.
31448
31449 2002-04-16  Jim Meyering  <meyering@lucent.com>
31450
31451         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
31452         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
31453         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
31454
31455 2002-04-12  Jim Meyering  <meyering@lucent.com>
31456
31457         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
31458         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
31459         existence of the getmntinfo function.  Needed for Darwin 5.3.
31460
31461         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
31462         This is necessary at least on Darwin 5.3.
31463
31464         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
31465         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
31466         strnlen.o in the library, and that makes some versions of ranlib
31467         object.
31468
31469 2002-04-12  Jim Meyering  <meyering@lucent.com>
31470
31471         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
31472
31473 2002-04-09  Jim Meyering  <meyering@lucent.com>
31474
31475         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
31476         to be more precise.  Rather than saying we're checking whether the
31477         function `works', say what we're testing.
31478         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
31479         Reported by Bruno Haible.
31480
31481 2002-03-10  Jim Meyering  <meyering@lucent.com>
31482
31483         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
31484         Suggestion from Santiago Vila.
31485
31486 2002-03-08  Jim Meyering  <meyering@lucent.com>
31487
31488         * lib/rename.c: Mention that this wrapper is needed also on
31489         mips-dec-ultrix4.4 systems.
31490
31491 2002-03-02  Jim Meyering  <meyering@lucent.com>
31492
31493         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
31494         not HAVE_CLOCK_SETTIME.
31495
31496 2002-02-27  Paul Eggert  <eggert@twinsun.com>
31497
31498         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
31499         Check for clock_settime.
31500
31501 2002-02-27  Paul Eggert  <eggert@twinsun.com>
31502
31503         * lib/nanosleep.h: Rename to....
31504         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
31505
31506         * lib/gettime.c: New file.
31507         * lib/settime.c: New file.
31508         * lib/stime.c: Remove.
31509
31510         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
31511         timespec.h.  Remove nanosleep.h.
31512
31513 2002-02-25  Paul Eggert  <eggert@twinsun.com>
31514
31515         * m4/acl.m4: New file.
31516         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
31517         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
31518
31519 2002-02-25  Paul Eggert  <eggert@twinsun.com>
31520
31521         * lib/acl.c, lib/acl.h: New files.
31522         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
31523
31524 2002-02-24  Jim Meyering  <meyering@lucent.com>
31525
31526         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
31527         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
31528         cause trouble.  Reported by Nelson Beebe.
31529
31530 2002-02-23  Paul Eggert  <eggert@twinsun.com>
31531
31532         * lib/path-concat.c (xpath_concat): Reorder code to pacify
31533         compilers that don't know that xalloc_die never returns.
31534
31535 2002-02-20  Jim Meyering  <meyering@lucent.com>
31536
31537         * lib/getdate.c: Regenerate using bison-1.33.
31538
31539 2002-02-17  Jim Meyering  <meyering@lucent.com>
31540
31541         * config/config.guess (main): Don't use `head -1'; it's no longer
31542         portable. Use `sed 1q' instead.
31543
31544 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
31545
31546         * m4/codeset.m4: Upgrade to gettext-0.11.
31547         * m4/gettext.m4: Upgrade to gettext-0.11.
31548         * m4/glibc21.m4: Upgrade to gettext-0.11.
31549         * m4/iconv.m4: Upgrade to gettext-0.11.
31550         * m4/isc-posix.m4: Upgrade to gettext-0.11.
31551         * m4/lcmessage.m4: Upgrade to gettext-0.11.
31552         * m4/lib-ld.m4: New file, from gettext-0.11.
31553         * m4/lib-link.m4: New file, from gettext-0.11.
31554         * m4/lib-prefix.m4: New file, from gettext-0.11.
31555         * m4/progtest.m4: Upgrade to gettext-0.11.
31556
31557 2002-02-15  Paul Eggert  <eggert@twinsun.com>
31558
31559         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
31560         (jm_PREREQ): Use it.
31561
31562 2002-02-15  Paul Eggert  <eggert@twinsun.com>
31563
31564         * lib/posixver.c, lib/posixver.h: New files.
31565         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
31566
31567 2002-02-02  Paul Eggert  <eggert@twinsun.com>
31568             Bruno Haible  <bruno@clisp.org>
31569
31570         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
31571         (fwrite_success_callback): New declaration.
31572         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
31573         print_unicode_char. Call failure callback instead of error.
31574         (fwrite_success_callback): New function.
31575         (exit_failure_callback): New function.
31576         (fallback_failure_callback): New function.
31577         (print_unicode_char): Call unicode_to_mb.
31578
31579 2002-01-26  Jim Meyering  <meyering@lucent.com>
31580
31581         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
31582         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
31583
31584 2002-01-26  Jim Meyering  <meyering@lucent.com>
31585
31586         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
31587
31588 2002-01-22  Paul Eggert  <eggert@twinsun.com>
31589
31590         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
31591
31592 2002-01-22  Jim Meyering  <meyering@lucent.com>
31593
31594         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
31595         Otherwise, some versions of automake would omit the rule that makes
31596         Makefile from Makefile.in.
31597
31598 2002-01-21  Paul Eggert  <eggert@twinsun.com>
31599
31600         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
31601         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
31602         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
31603         (memcoll): Set errno to zero if there is no error.
31604
31605         * lib/quotearg.c (quotearg_buffer_restyled):
31606         Fix bug with quoting buffers containing NUL when backslashing escapes.
31607         This bug was exposed by the other changes in this patch.
31608         (quotearg_n_options): New arg ARGSIZE.
31609         All callers changed.
31610         (quoting_options_from_style): New function.
31611         (quotearg_n_style): Use it.
31612         (quotearg_n_style_mem): New function.
31613
31614         * lib/quotearg.h (quotearg_n_style_mem): New function.
31615
31616 2002-01-19  Jim Meyering  <meyering@lucent.com>
31617
31618         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
31619         Remove useless quotes: DF_PROG="df".
31620         * m4/strnlen.m4: New file.
31621
31622 2002-01-16  Paul Eggert  <eggert@twinsun.com>
31623
31624         * lib/backupfile.c (ISDIGIT): Comment fix.
31625         * lib/getdate.y (ISDIGIT): Likewise.
31626         * lib/posixtm.c (ISDIGIT, year): Likewise.
31627         * lib/strverscmp.c (ISDIGIT): Likewise.
31628         * lib/userspec.c (ISDIGIT): Likewise.
31629
31630 2002-01-16  Jim Meyering  <meyering@lucent.com>
31631
31632         * lib/getdate.y: Add three semicolons, each just before a closing
31633         brace. Bison (as of version 1.31) no longer papers over that mistake.
31634
31635 2002-01-05  Jim Meyering  <meyering@lucent.com>
31636
31637         * lib/version-etc.c (version_etc_copyright): Update copyright year.
31638
31639 2001-12-19  Paul Eggert  <eggert@twinsun.com>
31640
31641         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
31642         not silently exit merely because the output buffer happens to
31643         have nothing pending.
31644
31645 2001-12-18  Paul Eggert  <eggert@twinsun.com>
31646
31647         See the big note in ../ChangeLog.
31648         * lib/human.c (suffixes): Prefer K to k for 1024.
31649         (generate_suffix_backwards): New function.
31650         (human_readable_inexact): Use it.
31651         * lib/xstrtol.c (__xstrtol): If there is no number but there
31652         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
31653         Accept 'K' as well as 'k'.
31654
31655 2001-12-15  Jim Meyering  <meyering@lucent.com>
31656
31657         * lib/regex.h (__restrict_arr): Update from libc.
31658
31659         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
31660         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
31661         (STREQ): Define.
31662
31663 2001-12-14  Jim Meyering  <meyering@lucent.com>
31664
31665         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
31666         Suggestion from Bruno Haible.
31667
31668 2001-12-10  Jim Meyering  <meyering@lucent.com>
31669
31670         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
31671         xrealloc, Instead, include "xalloc.h".
31672         (initbuffer): Don't cast xmalloc return value to char*.
31673         (readline): Reword comment.
31674         Don't cast xrealloc return value to char*
31675         Return NULL, not 0.
31676
31677 2001-12-09  Jim Meyering  <meyering@lucent.com>
31678
31679         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
31680         about `signed and unsigned type in conditional expression'.
31681         * lib/posixtm.c (posix_time_parse): Likewise.
31682
31683         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
31684
31685         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
31686         to avoid a pedantic warning.
31687
31688         * lib/getstr.c: Don't include assert.h.
31689         (getstr): Remove warning-evoking assertions.
31690         Return -1 if offset parameter is out of bounds.
31691         Change the type of a local from int to size_t.
31692
31693         * lib/strftime.c (my_strftime_localtime_r): Include this function
31694         definition in the `#if ! HAVE_TM_GMTOFF' block.
31695
31696         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
31697         Include xalloc.h instead.
31698
31699 2001-12-02  Jim Meyering  <meyering@lucent.com>
31700
31701         * lib/tempname.c: Don't declare getenv, thus reverting the change of
31702         2001-11-18.  It's no longer necessary, now that stdlib.h is always
31703         included.
31704
31705         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
31706         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
31707
31708 2001-11-30  Akim Demaille  <akim@epita.fr>
31709
31710         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
31711         before being defined.
31712
31713 2001-11-27  Paul Eggert  <eggert@twinsun.com>
31714
31715         * lib/quotearg.h (quotearg_n, quotearg_n_style):
31716         First arg is int, not unsigned.
31717         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
31718         (SIZE_MAX, UINT_MAX): New macros.
31719         (quotearg_n_options): Abort if N is negative.
31720         Avoid overflow check on hosts where size_t is 64 bits and int
31721         is 32 bits, as overflow is impossible there.
31722         Fix off-by-one typo that caused unnecessary reallocation.
31723
31724 2001-11-27  Jim Meyering  <meyering@lucent.com>
31725
31726         * lib/tempname.c: Merge with version from libc.
31727         * lib/regex.c: Likewise.
31728
31729         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
31730         systems for which STDC_HEADERS is 0, it was not included, resulting in
31731         a warning about an integer-to-pointer conversion problem with getenv.
31732         Reported by Volker Borchert.
31733
31734 2001-11-26  Jim Meyering  <meyering@lucent.com>
31735
31736         * lib/gtod.h: Remove file.
31737         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
31738         * lib/gettimeofday.c: Don't include gtod.h.
31739         (GTOD_init): Remove function.
31740         (rpl_gettimeofday): Do its job here instead, rather than aborting.
31741         Suggestion from Volker Borchert.
31742
31743 2001-11-23  Jim Meyering  <meyering@lucent.com>
31744
31745         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
31746         it.
31747         * lib/hash.c (struct hash_table): Define it here instead.
31748
31749 2001-11-22  Jim Meyering  <meyering@lucent.com>
31750
31751         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
31752
31753 2001-11-20  Jim Meyering  <meyering@lucent.com>
31754
31755         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
31756         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
31757
31758 2001-11-19  Jim Meyering  <meyering@lucent.com>
31759
31760         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
31761         directory.  Use "conftestXXXXXX" as the template.
31762         Suggestion from Paul Eggert.
31763
31764         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
31765         immediately, so the test doesn't mistakenly hit the max-open-files
31766         limit.
31767
31768 2001-11-18  Paul Eggert  <eggert@twinsun.com>
31769
31770         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
31771         (TEMPORARIES): New macro.
31772         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
31773         removes an artificial limitation (e.g. HP-UX 10.20, where
31774         TMP_MAX is 17576).
31775
31776 2001-11-18  Jim Meyering  <meyering@lucent.com>
31777
31778         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
31779
31780 2001-11-18  Jim Meyering  <meyering@lucent.com>
31781
31782         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
31783         on SunOS 4.
31784
31785         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
31786         files will be created before anything else.
31787
31788 2001-11-17  Paul Eggert  <eggert@twinsun.com>
31789
31790         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
31791         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
31792
31793 2001-11-17  Jim Meyering  <meyering@lucent.com>
31794
31795         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
31796         Prompted by a report from Bob Proulx.
31797
31798         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
31799         Instead, require UTILS_FUNC_MKSTEMP.
31800
31801 2001-11-17  Jim Meyering  <meyering@lucent.com>
31802
31803         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
31804         Now, that's done as part of AC_FUNC_STRTOD.
31805
31806 2001-11-17  Jim Meyering  <meyering@lucent.com>
31807
31808         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
31809         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
31810         rather than group writable.  Patch by Juan F. Codagnone.
31811
31812         * lib/readtokens.c: Remove explicit declarations of xmalloc and
31813         xrealloc, Instead, include "xalloc.h".
31814
31815         * lib/mountlist.c: Include unlocked-io.h after all system headers.
31816         Remove explicit declarations of xmalloc, xrealloc,
31817         and xstrdup.  Instead, include "xalloc.h".
31818
31819         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
31820         unlocked-io.h.
31821         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
31822         Likewise.
31823         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
31824
31825         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
31826         Reported by Padraig Brady.
31827
31828         * lib/mkstemp.c: #undef mkstemp.
31829         Include config.h.
31830         (rpl_mkstemp): Rename from mkstemp.
31831         Protoize.
31832
31833 2001-11-16  Jim Meyering  <meyering@lucent.com>
31834
31835         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
31836         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
31837         determine the amount of total physical memory, use pstat_getstatic.
31838         HPUX-11 doesn't define _SC_PHYS_PAGES.
31839         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
31840         If sysconf couldn't be used to determine the amount of available
31841         physical memory, use both pstat_getstatic and pstat_getdynamic.
31842         Based on a patch from Bob Proulx.
31843
31844 2001-11-10  Jim Meyering  <meyering@lucent.com>
31845
31846         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
31847         (jm_PREREQ): Use it.
31848
31849 2001-11-09  Jim Meyering  <meyering@lucent.com>
31850
31851         * m4/jm-macros.m4: Require autoconf-2.52f.
31852         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
31853         Use these AC_-prefixed names, not the AM_-prefixed ones.
31854
31855         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
31856
31857 2001-11-05  Jim Meyering  <meyering@lucent.com>
31858
31859         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
31860
31861 2001-11-04  Jim Meyering  <meyering@lucent.com>
31862
31863         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
31864         $DEFS.
31865
31866 2001-11-03  Jim Meyering  <meyering@lucent.com>
31867
31868         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
31869         of AC_DEFUN.
31870
31871         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
31872         know the name of the variable in the macro definition.
31873
31874 2001-11-03  Jim Meyering  <meyering@lucent.com>
31875
31876         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
31877         in argmatch_to_argument call.
31878
31879         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
31880         argument.
31881
31882         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
31883         e.g., a fault due to an attempt to free a NULL pointer.
31884
31885 2001-11-01  Jim Meyering  <meyering@lucent.com>
31886
31887         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
31888         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
31889
31890 2001-11-01  Jim Meyering  <meyering@lucent.com>
31891
31892         * lib/dirfd.c, lib/dirfd.h: New files.
31893         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
31894
31895         * lib/hash.c (hash_print) [TESTING]: Clean up.
31896
31897 2001-10-22  Paul Eggert  <eggert@twinsun.com>
31898
31899         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
31900         to avoid a warning if -Wall.
31901
31902 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
31903
31904         * README: New file
31905         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
31906         (per RMS's instructions, this is now the canonical source)
31907         * lgpl/, gpl/: New directories.
31908
31909 2001-10-21  Paul Eggert  <eggert@twinsun.com>
31910
31911         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
31912
31913 2001-10-21  Jim Meyering  <meyering@lucent.com>
31914
31915         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
31916         this code would end up calling gettext even in packages built
31917         with --disable-nls.
31918         * lib/getopt.c (_): Likewise.
31919         * lib/regex.c (_): Likewise.
31920
31921 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31922
31923         * m4/error.m4 (jm_PREREQ_ERROR):
31924         Do not invoke AC_CHECK_FUNCS with strerror_r, as
31925         AC_FUNC_STRERROR_R does that.
31926         Check for strerror declaration.
31927
31928         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
31929         are supposed to have them these days.
31930         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
31931         Merge changes from latest Autoconf CVS.
31932         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
31933         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
31934         POSIX decided to standardize on the int flavor of strerror_r.
31935
31936 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31937
31938         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
31939         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
31940         Use strerror_r that is only a macro, even if it is not a function.
31941         (strerror): Check for HAVE_DECL_STRERROR before declaring.
31942         (private_strerror): Use prototypes, not old-style function definition.
31943         (print_errno_message): New function.
31944         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
31945         char*-flavored one.
31946         (error_tail, error, error_at_line): Use it.
31947
31948 2001-10-11  Jim Meyering  <meyering@lucent.com>
31949
31950         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
31951         and quote_n (1, ... to avoid clobbering a buffer.
31952
31953 2001-10-05  Jim Meyering  <meyering@lucent.com>
31954
31955         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
31956         hash-pjw.h.
31957         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
31958         * lib/hash-pjw.h: New file.
31959
31960 2001-09-30  Jim Meyering  <meyering@lucent.com>
31961
31962         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
31963         `struct fsstat' has the `f_fstypename' member.
31964         Use that to define FS_TYPE, which is now used to make
31965         the getfsstat link test tighter.
31966
31967 2001-09-30  Jim Meyering  <meyering@lucent.com>
31968
31969         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
31970         Include <sys/ucred.h>, for Apple Darwin.
31971         Include sys/mount.h and sys/fs_types.h only if available.
31972         (FS_TYPE): Define.
31973         (read_filesystem_list): Use FS_TYPE.
31974
31975 2001-09-29  Paul Eggert  <eggert@twinsun.com>
31976
31977         * lib/exclude.c (excluded_filename): 0 -> false, since it's
31978         a boolean context.
31979
31980 2001-09-29  Jim Meyering  <meyering@lucent.com>
31981
31982         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31983         [one-argument getmntent function]): Include stdio.h before mntent.h.
31984         SunOS 4.1.x needs it for the declaration of `FILE'.
31985         Patch by Volker Borchert.
31986
31987         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31988         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
31989         sys/fs_types.h, and make the link-test for getfsstat guard #include
31990         directives with appropriate #if HAVE_*_H tests so that we can
31991         detect getfsstat on Apple Darwin1.3.7 systems.
31992         Reported by Nelson Beebe.
31993         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
31994
31995 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31996
31997         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31998         #defines strtoimax.  Also treat the other strto* functions
31999         like strtoimax.
32000
32001         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
32002         Check for strtoul and strtoumax,
32003         as those declarations are made even in the signed case.
32004         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
32005         Likewise, for strtol and strtoimax.
32006
32007 2001-09-28  Paul Eggert  <eggert@twinsun.com>
32008
32009         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
32010         #defines strtoimax.  Also treat the other strto* functions
32011         like strtoimax.
32012
32013         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
32014         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
32015         (strtoimax, strtoumax): Do not declare if already defined as a macro.
32016
32017 2001-09-26  Jim Meyering  <meyering@lucent.com>
32018
32019         Most macros in unlocked-io.h had the wrong number of arguments.
32020         * lib/gen-uio: New script.
32021         (USE_UNLOCKED_IO): Define to 1 if not already defined.
32022         * lib/unlocked-io.hin: Remove file.
32023         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
32024         rather than trying to embed it here.
32025         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
32026         Reported by Padraig Brady.
32027
32028 2001-09-25  Volker Borchert  <bt@teknon.de>
32029
32030         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
32031         `result'.
32032
32033 2001-09-24  Jim Meyering  <meyering@lucent.com>
32034
32035         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
32036
32037 2001-09-23  Jim Meyering  <meyering@lucent.com>
32038
32039         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
32040         instead of the mere test for existence of mntent.h.  The latter
32041         would get a false-positive on AIX 3.4 systems.
32042         In the outer getmntent if-block, don't die if neither of the getmntent
32043         tests succeeds.  Instead, just fall through and continue with the
32044         remaining tests.
32045
32046 2001-09-23  Jim Meyering  <meyering@lucent.com>
32047
32048         * lib/mountlist.c: Remove useless parentheses in #if directives.
32049         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
32050         the deprecated MOUNTED symbol is no longer defined in mntent.h.
32051
32052 2001-09-22  Jim Meyering  <meyering@lucent.com>
32053
32054         * m4/gettext.m4: New file.  From gettext.
32055         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
32056         * m4/progtest.m4: Likewise
32057         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
32058         * m4/glibc21.m4: Likewise.
32059
32060         * m4/libintl.m4: Remove.  No longer used.
32061
32062 2001-09-22  Jim Meyering  <meyering@lucent.com>
32063
32064         * lib/localcharset.c: Update from latest gettext.
32065         * lib/config.charset: Likewise.
32066
32067 2001-09-20  Jim Meyering  <meyering@lucent.com>
32068
32069         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
32070         strtoimax.
32071         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
32072         strtoumax.
32073
32074 2001-09-20  Jim Meyering  <meyering@lucent.com>
32075
32076         * lib/xstrtol.c (strtoimax): Guard declaration with
32077         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
32078         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
32079         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
32080         (strtoumax): Likewise, for completeness (it wasn't necessary).
32081
32082 2001-09-17  Paul Eggert  <eggert@twinsun.com>
32083
32084         * lib/strtoimax.c (HAVE_LONG_LONG):
32085         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
32086         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
32087         to work around bug in IBM C compiler.
32088
32089 2001-09-17  Jim Meyering  <meyering@lucent.com>
32090
32091         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
32092         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
32093         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
32094         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
32095         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
32096         whenever the right hand side need not be expanded by the shell.
32097
32098 2001-09-16  Paul Eggert  <eggert@twinsun.com>
32099
32100         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
32101         library.  It's not correct, as some older glibcs are buggy.
32102         fnmatch wasn't fixed until glibc 2.2.
32103
32104         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
32105         special shell magic here.
32106
32107 2001-09-16  Jim Meyering  <meyering@lucent.com>
32108
32109         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
32110         * m4/jm-macros.m4: Require it.
32111
32112 2001-09-16  Jim Meyering  <meyering@lucent.com>
32113
32114         * lib/mkdir.c: New file.
32115
32116 2001-09-15  Jim Meyering  <meyering@lucent.com>
32117
32118         * m4/jm-macros.m4: Check for help2man.
32119
32120 2001-09-11  Jim Meyering  <meyering@lucent.com>
32121
32122         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
32123         The body, by Paul Eggert, was moved here from configure.in.
32124         * m4/jm-macros.m4: Require UTILS_HOST_OS.
32125
32126 2001-09-04  Paul Eggert  <eggert@twinsun.com>
32127
32128         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
32129         (jm_PREREQ): Use it.
32130
32131 2001-09-04  Paul Eggert  <eggert@twinsun.com>
32132
32133         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
32134         Use ssize_t, not int, to store result of readlink.
32135         Check for ssize_t overflow as well as size_t overflow,
32136         as POSIX says the result of readlink is implementation-defined
32137         when ssize_t overflows.
32138         Remove unnecessary cast to char*.
32139         Use free+malloc instead of realloc, as the storage doesn't need
32140         to be preserved and it's clearer and can be more efficient that way.
32141         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
32142         * lib/xreadlink.h (xreadlink): Update prototype.
32143
32144 2001-09-04  Paul Eggert  <eggert@twinsun.com>
32145
32146         * lib/xgetcwd.c: Revert some of the previous change; intead,
32147         fix the HAVE_GETCWD_NULL code to behave more like the
32148         !HAVE_GETCWD_NULL code used to.
32149
32150         Include "xalloc.h".
32151         (xgetcwd): Do not return NULL when memory is exhausted; instead,
32152         invoke xalloc_die.
32153
32154 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32155
32156         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
32157         sys/param.h, as pathmax.h includes them.
32158
32159 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32160
32161         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
32162         (jm_PREREQ_XGETCWD): New macro.
32163
32164         * m4/getcwd.m4: New file.
32165
32166 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32167
32168         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
32169         like the HAVE_GETCWD_NULL code.
32170         Include pathmax.h if not HAVE_GETCWD.
32171         Do not include xalloc.h.
32172         (INITIAL_BUFFER_SIZE): New symbol.
32173         Do not use xmalloc / xrealloc, since the caller is responsible for
32174         handling errors.  Preserve errno around `free' during failure.
32175         Do not overrun buffer when using getwd.
32176
32177 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32178
32179         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
32180         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
32181         getcwd (NULL, 0).
32182
32183 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32184
32185         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
32186         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
32187         spotted by Jim Meyering.
32188
32189 2001-09-03  Jim Meyering  <meyering@lucent.com>
32190
32191         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
32192         failure.
32193
32194 2001-09-02  Jim Meyering  <meyering@lucent.com>
32195
32196         * lib/error.c: Update from GNU libc.
32197
32198 2001-09-01  Jim Meyering  <meyering@lucent.com>
32199
32200         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
32201         Used by df.
32202
32203 2001-09-01  Jim Meyering  <meyering@lucent.com>
32204
32205         * lib/xreadlink.c: New file.
32206         * lib/xreadlink.h: New file.
32207         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
32208         xreadlink.h.
32209
32210         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
32211         doesn't conflict with sparc Solaris 7's definition in
32212         /usr/include/sys/int_types.h.
32213
32214         * lib/exclude.c: Use `""', not `<>' to #include non-system header
32215         files.
32216         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
32217         and strncasecmp as r-values.  Unixware didn't have declarations.
32218
32219 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32220
32221         * lib/xstrtol.h: Add copyright notice.
32222         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
32223         LONGINT_INVALID_SUFFIX_CHAR.
32224
32225 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32226
32227         * lib/xstrtol.c (strtoimax): New decl.
32228
32229 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32230
32231         * lib/xgetcwd.c: Don't include pathmax.h.
32232         Include stdlib.h and unistd.h if available.
32233         Include xalloc.h.
32234         (xmalloc, xstrdup, free): Remove decls.
32235         (xgetcwd): Don't assume sizes fit in unsigned.
32236         Check for overflow when computing sizes.
32237         Simplify reallocation code.
32238
32239 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32240
32241         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
32242         a directory's st_size can have an arbitrary value, so the old
32243         usage could waste an arbitrary amount of memory.  All uses
32244         changed.
32245         * lib/savedir.h: Update prototype.
32246
32247 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32248
32249         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
32250
32251         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
32252         old strtoimax.c.
32253
32254         Also, make the following further changes to make this file's
32255         configuration more similar to that of strtol.c:
32256         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
32257         (strtoumax, uintmax_t, strtoull, strtol): Remove.
32258         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
32259         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
32260         changed to signed values.
32261
32262         And make the following changes as well:
32263         Fix copyright notice, as 1999 was missing.
32264         (verify): New macro.
32265         (strtoimax): Check sizes at compile-time, not run-time.
32266         Prefer strtol to strtoll if both work.
32267         (main): Remove; it was not that useful and was a pain to maintain.
32268
32269         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
32270
32271 2001-08-31  Jim Meyering  <meyering@lucent.com>
32272
32273         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
32274         Use an initial, malloc'd, buffer of length 128 rather than
32275         a statically allocated one of length 1024.
32276
32277 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32278
32279         Simplify code, partly by assuming autoconf 2.52 semantics.
32280
32281         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
32282
32283         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
32284         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
32285         All uses removed.
32286         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
32287         Move AC_REQUIRE to next-to-top level, to avoid confusion.
32288         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
32289         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
32290         jm_AC_HEADER_INTTYPES_H.
32291         * m4/jm-macros.m4 (jm_MACROS): Likewise.
32292
32293         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
32294
32295         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
32296         Quote first arg of AC_DEFUN.
32297         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
32298         since they are needed to parse the include file even if we need
32299         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
32300         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
32301         but with opposite signedness.
32302
32303 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32304
32305         Merge 'exclude' changes from tar 1.13.22.
32306         This fixes one or two unlikely storage allocation overflow bugs,
32307         but doesn't change user-visible behavior otherwise.
32308
32309 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32310
32311         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
32312         (jm_PREREQ_EXCLUDE): New macro.
32313
32314 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32315
32316         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
32317         tm to be declared.
32318
32319 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32320
32321         * lib/hash.c: Remove '2001' from copyright notice.
32322
32323 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32324
32325         * lib/full-write.h: New file.
32326         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
32327         * lib/full-write.c: Correct credits, as cccp.c no longer
32328         exists and anyway it was so heavily changed from the old cccp
32329         code as to be unrecognizable.  Include full-write.h.
32330         (full_write) Return size_t, with short writes meaning failure.
32331         All callers changed.  This fixes a bug with large buffers
32332         on 64-bit hosts.
32333         * lib/utime.c: Include full-write.h.
32334
32335 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32336
32337         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
32338         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
32339         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
32340         Include if available.
32341         (<xalloc.h>): Include
32342         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
32343         (verify): New macro.  Use it to verify that EXCLUDE macros do not
32344         collide with FNM macros.
32345         (struct patopts): New struct.
32346         (struct exclude): Use it, as exclude patterns now come with options.
32347         (new_exclude): Support above changes.
32348         (new_exclude, add_exclude_file):
32349         Initial size must now be a power of two to simplify overflow checking.
32350         (free_exclude, fnmatch_no_wildcards): New function.
32351         (excluded_filename): No longer requires options arg, as the options
32352         are determined by add_exclude.  Now returns bool, not int.
32353         (excluded_filename, add_exclude):
32354         Add support for the fancy new exclusion options.
32355         (add_exclude, add_exclude_file): Now takes int options arg.
32356         Check for arithmetic overflow when computing sizes.
32357         (add_exclude_file): xrealloc might modify errno, so don't
32358         realloc until after errno might be used.
32359
32360         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
32361         New macros.
32362         (free_exclude): New decl.
32363         (add_exclude, add_exclude_file): Now takes int options arg.
32364         (excluded_filename): No longer requires options arg, as the options
32365         are determined by add_exclude.  Now returns bool, not int.
32366
32367 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32368
32369         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
32370
32371 2001-08-27  Jim Meyering  <meyering@lucent.com>
32372
32373         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
32374
32375         * lib/version-etc.c (N_): Remove definition.
32376         Revert most of last change.
32377         Instead, simply don't mark the `Copyright...' string for translation.
32378         Based on advice from Paul Eggert.
32379
32380         * lib/strtoxmax.c: Tweak comment.
32381
32382 2001-08-26  Jim Meyering  <meyering@lucent.com>
32383
32384         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
32385
32386         * m4/xstrtoimax.m4: New file.
32387         * m4/xstrtoumax.m4: Add comments explaining why we
32388         AC_REPLACE_FUNCS(strtol).
32389
32390 2001-08-26  Jim Meyering  <meyering@lucent.com>
32391
32392         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
32393         of copyright with `%s' so translators don't get an untranslated
32394         message in 2002.
32395         (COPYRIGHT_YEAR): Define.
32396         (version_etc): Use fprintf rather than fputs.
32397         Suggestion from Ulrich Drepper.
32398
32399         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
32400
32401         * lib/strtoll.c: New file, from GNU libc.
32402         * lib/xstrtoimax.c: New file.
32403
32404         * lib/xstrtol.h: Add xstrtoimax.
32405         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
32406         * lib/strtoimax.c: New file.  Likewise, but first define
32407         STRTOUXMAX_SIGNED.
32408
32409         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
32410         ...
32411         * lib/strtoxmax.c: ... then renamed to this.
32412
32413 2001-08-18  Paul Eggert  <eggert@twinsun.com>
32414
32415         * m4/inttypes.m4: Add AC_PREREQ(2.13).
32416         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
32417         (jm_AC_TYPE_INTMAX_T): New macro.
32418         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
32419
32420         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
32421
32422         * m4/longlong.m4: Renamed from ulonglong.m4.
32423         * m4/inttypes.m4: Renamed from inttypes_h.m4.
32424         * m4/uintmax_t.m4: Removed.
32425
32426 2001-08-13  Paul Eggert  <eggert@twinsun.com>
32427
32428         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
32429         Port to Solaris 8, where 'sed' requires a space after the 'r'
32430         command, and where sh dislikes "$/".  Clean up the spacing a bit.
32431         Redirect output to $tmp just once.
32432
32433 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
32434
32435         * lib/addext.c (<errno.h>): Include.
32436         (errno): Declare if not defined.
32437         (addext): Work correctly when pathconf returns -1 and leaves
32438         errno alone because there is no limit.  Also, work even if
32439         pathconf returns a value greater than SIZE_MAX.
32440
32441 2001-08-12  Jim Meyering  <meyering@lucent.com>
32442
32443         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
32444         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
32445         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
32446         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
32447         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
32448         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
32449         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
32450         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
32451         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
32452         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
32453         utime.m4, utimes.m4, xstrtoumax.m4:
32454         Quote the first argument in each use of AC_DEFUN.
32455
32456 2001-08-12  Jim Meyering  <meyering@lucent.com>
32457
32458         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
32459         Simply `return getcwd (NULL, 0);'.
32460         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
32461         Use 1300 as initial value for length, not PATH_MAX.
32462
32463         * lib/pathmax.h: Clean up cpp syntax.
32464
32465 2001-08-12  Jim Meyering  <meyering@lucent.com>
32466
32467         * lib/gettimeofday.c: New file.
32468         * lib/gtod.h: New file.
32469         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
32470
32471 2001-08-05  Jim Meyering  <meyering@lucent.com>
32472
32473         * m4/jm-macros.m4: Require autoconf-2.52.
32474
32475 2001-08-04  Jim Meyering  <meyering@lucent.com>
32476
32477         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
32478         stmt, to get in sync with glibc.
32479
32480 2001-08-03  Paul Eggert  <eggert@twinsun.com>
32481
32482         The following changes are from gettext 0.10.39 as maintained by
32483         Bruno Haible.
32484
32485         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
32486         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
32487         with inverted sense.  All uses changed.
32488
32489         * lib/mbswidth.c: Don't include <limits.h>.
32490         Include <stdlib.h> and <string.h> unconditionally.
32491         (iswcntrl, mbsinit, ISCNTRL): New macros.
32492         (mbsnwidth): Use K&R style function declarations.
32493         Don't bother checking for MB_LEN_MAX == 1, since the compiler
32494         can optimize it when MB_CUR_MAX == 1.
32495         The width of control characters is zero, not 1.
32496
32497 2001-08-03  Paul Eggert  <eggert@twinsun.com>
32498
32499         The following changes are from gettext 0.10.39 as maintained by
32500         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
32501
32502         * m4/codeset.m4: Upgrade to serial AM1.
32503         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
32504         all uses changed.  Quote first arg of AC_DEFUN.
32505         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
32506
32507         * m4/iconv.m4: Upgrade to serial AM2.
32508         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
32509         Add --with-libconv-prefix.
32510         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
32511         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
32512         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
32513         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
32514         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
32515
32516         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
32517         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
32518         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
32519         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
32520         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
32521         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
32522         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
32523         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
32524         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
32525
32526         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
32527         string.h any more.
32528
32529         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
32530         not the default value.
32531
32532         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
32533         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
32534         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
32535         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
32536         Also check for iswcntrl, used for wcwidth fallback.
32537         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
32538         to Autoconf 2.13.
32539
32540 2001-08-03  Jim Meyering  <meyering@lucent.com>
32541
32542         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
32543         as it was in the original.  Reported by Paul Eggert.
32544
32545 2001-07-16  Jim Meyering  <meyering@lucent.com>
32546
32547         * m4/gettimeofday.m4: New file.
32548         Prompted by a report from Bernhard Baehr.
32549
32550 2001-07-15  Jim Meyering  <meyering@lucent.com>
32551
32552         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
32553         stuff. Now it's in ../Makefile.cfg.
32554
32555 2001-07-15  Jim Meyering  <meyering@lucent.com>
32556
32557         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
32558         (BUILT_SOURCES): Add unlocked-io.h.
32559         (io_functions): Define.
32560         (unlocked-io.h): New rule.
32561         (DISTCLEANFILES): Add unlocked-io.h.
32562         (all-local): Depend on unlocked-io.h, to ensure it is created.
32563
32564         * lib/unlocked-io.hin: New file
32565
32566         * lib/regex.c: Update from glibc.
32567
32568 2001-07-05  Jim Meyering  <meyering@lucent.com>
32569
32570         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
32571         recommendation.
32572         (libfetish_a_SOURCES): Put all .h files here instead.
32573         Remove a thus-exposed (better checks in automake) duplicate and
32574         two unnecessary .h files.
32575
32576 2001-07-04  Jim Meyering  <meyering@lucent.com>
32577
32578         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
32579         that generates jm-glibc-io.m4 so that it doesn't trigger any make
32580         distcheck failure.
32581
32582 2001-07-02  Jim Meyering  <meyering@lucent.com>
32583
32584         The following changes were prompted by suggestions from Bruno Haible.
32585
32586         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
32587         is now generated.
32588         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
32589         definition of EXTRA_DIST.
32590         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
32591         ensure that the generated file is created/updated whenever the list
32592         of $(unlocked_functions) is changed.
32593         (jm-glibc-io.m4): New rule.
32594         (unlocked-io.h): New rule -- currently unused.
32595
32596 2001-06-24  Jim Meyering  <meyering@lucent.com>
32597
32598         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
32599         unmatched right bracket, rather than kludging it with an extra,
32600         falsely-matching quote in a comment.  Patch by Akim Demaille.
32601
32602 2001-06-11  Jim Meyering  <meyering@lucent.com>
32603
32604         * lib/regex.c: Update from GNU libc.
32605
32606 2001-05-27  Jim Meyering  <meyering@lucent.com>
32607
32608         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
32609         Check for ut_type in struct utmp.
32610
32611 2001-05-27  Jim Meyering  <meyering@lucent.com>
32612
32613         * lib/readutmp.h (UT_TYPE): Define.
32614
32615 2001-05-24  Jim Meyering  <meyering@lucent.com>
32616
32617         * lib/argmatch.c: Include "quote.h".
32618         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
32619         quote function.  Reported by Göran Uddeborg.
32620
32621 2001-05-22  Jim Meyering  <meyering@lucent.com>
32622
32623         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
32624         now that we use the package-supplied version unconditionally.
32625         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
32626
32627 2001-05-21  Jim Meyering  <meyering@lucent.com>
32628
32629         * m4/regex.m4: Change a couple backticks to single quotes to avoid
32630         shell syntax errors.
32631
32632 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
32633
32634         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
32635
32636 2001-05-20  Paul Eggert  <eggert@twinsun.com>
32637
32638         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
32639         Don't bother to check library strftime, since
32640         we'll be using our own my_strftime function anyway.
32641         Define my_strftime instead of strftime.
32642
32643 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
32644
32645         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
32646         which is not yet declared.
32647
32648 2001-05-15  Jim Meyering  <meyering@lucent.com>
32649
32650         * m4/regex.m4: Use proper quoting so brackets appear in the test
32651         program.
32652         Reported by, and with help from, Bruno Haible.
32653
32654 2001-05-13  Jim Meyering  <meyering@lucent.com>
32655
32656         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
32657         undefined.
32658
32659 2001-05-11  Paul Eggert  <eggert@twinsun.com>
32660
32661         dirname code cleanup.  base_name now behaves more compatibly
32662         with POSIX basename when given file names that have trailing
32663         slashes, and similarly for dir_name.  Add new primitives
32664         base_len and dir_len.  Put the directory-name-related decls
32665         into dirname.h.
32666
32667         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
32668         * lib/backupfile.c (base_name): Likewise.
32669         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
32670         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
32671         * lib/makepath.c (strip_trailing_slashes): Likewise.
32672         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
32673         ISSLASH): Likewise.
32674         * lib/rename.c (strip_trailing_slashes): Likewise.
32675         * lib/same.c (base_name): Likewise.
32676         * lib/stripslash.c (ISSLASH): Likewise.
32677
32678         * lib/addext.c: Include <dirname.h> after size_t is defined.
32679         * lib/backupfile.c: Likewise.
32680
32681         * lib/addext.c (addext): Use base_len to trim redundant
32682         trailing slashes instead of doing it ourselves.
32683         But do not trim the last slash if it is not redundant.
32684
32685         * lib/backupfile.c (find_backup_file_name,
32686         max_backup_version): Use base_len instead of rolling it ourselves.
32687         Handle the case of "" and (on DOS) "C:" correctly.
32688
32689         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
32690         needed. Include <string.h>, <dirname.h>.
32691         (base_name): Allow file names ending in slashes, other than names
32692         that are all slashes.  In this case, return the basename followed
32693         by the slashes.  This is more general, and can be used in places
32694         where the original base_name purposely had an assertion failure.
32695         (base_len): New function.
32696
32697         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
32698         Do not include <assert.h>; no longer needed.
32699         Include xalloc.h.
32700         (memrchr): Remove decl.
32701         (dir_name_r): Remove.
32702         (dir_len): Renamed from dirlen.  All callers changed.
32703         Rewrite in terms of base_name, for simplicity and consistency.
32704         (dir_name): Never return NULL.  All callers changed.
32705         Do not include <stdlib.h> in test program; no longer needed.
32706         return 0; is fine for test program.
32707
32708         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
32709         New macros.
32710         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
32711
32712         * lib/path-concat.c (path_concat): Use base_len to compute
32713         base length, not strlen; this means we cannot rely on memcpy
32714         to null-terminate.
32715
32716         * lib/same.c (STREQ): Remove.
32717         (same_name): Handle the case where the basename ends in trailing '/'.
32718
32719         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
32720         a slash was stripped.  Do not strip the last slash after a
32721         file system prefix.
32722
32723 2001-05-11  Paul Eggert  <eggert@twinsun.com>
32724
32725         * lib/Makefile.am (libfetish_a_SOURCES):
32726         Add strftime.c, since we now compile it on all hosts.
32727
32728         * lib/strftime.c (my_strftime):
32729         Define to nstrftime if emacs, but only if my_strftime is not defined.
32730         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
32731         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
32732         Add one more extra argument: a nanoseconds value.
32733         All uses changed.
32734         (ns): New macro.
32735         (my_strftime function): Add %N format.
32736         (emacs_strftimeu): Renamed from emacs_strftime,
32737         with extra ut argument.
32738
32739 2001-05-09  Paul Eggert  <eggert@twinsun.com>
32740
32741         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
32742
32743 2001-04-21  Jim Meyering  <meyering@lucent.com>
32744
32745         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
32746         doesn't interfere.
32747
32748 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
32749
32750         * m4/ftruncate.m4: Check for chsize.
32751         Link with ftruncate.o unconditionally if ftruncate is missing.
32752         This was required when cross-compiling to i586-mingw32msvc.
32753
32754 2001-04-08  Jim Meyering  <meyering@lucent.com>
32755
32756         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
32757         recomputed; that's necessary when the offset spans a DST transition.
32758         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
32759
32760 2001-04-02  Jim Meyering  <meyering@lucent.com>
32761
32762         * lib/regex.h, regex.c: Update from GNU libc.
32763
32764 2001-03-24  Jim Meyering  <meyering@lucent.com>
32765
32766         * m4/jm-macros.m4: Require autoconf-2.49d.
32767
32768 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
32769
32770         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
32771
32772 2001-03-19  Paul Eggert  <eggert@twinsun.com>
32773
32774         * lib/version-etc.c (version_etc_copyright): Update to 2001.
32775
32776 2001-03-17  Jim Meyering  <meyering@lucent.com>
32777
32778         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
32779         now that the version in autoconf is equivalent.
32780         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
32781
32782         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
32783         Suggestion from Akim Demaille.
32784
32785         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
32786         (jm_PREREQ_TEMPNAME): New function.
32787
32788 2001-03-16  Paul Eggert  <eggert@twinsun.com>
32789
32790         * lib/tempname.c (uint64_t): Define to uintmax_t if
32791         not defined, and if UINT64_MAX is not defined.
32792         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
32793         Reported by John David Anglin.
32794
32795 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
32796
32797         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
32798         resolve alias if codeset is empty.
32799         * lib/config.charset (BeOS): Use wildcard syntax.
32800
32801 2001-03-13  Jim Meyering  <meyering@lucent.com>
32802
32803         * lib/path-concat.c (path_concat)
32804         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
32805         concatenating e.g., `C:' and `foo'.
32806         From Bruno Haible.
32807
32808 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
32809
32810         * lib/localcharset.c (locale_charset): Don't use
32811         setlocale(LC_CTYPE,NULL). Don't return NULL.
32812         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
32813
32814 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
32815
32816         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
32817         support for DOS/DJGPP.
32818
32819 2001-03-01  Paul Eggert  <eggert@twinsun.com>
32820
32821         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
32822         lacks mkstemp.  Compile our own tempname.c if we compile our own
32823         mkstemp.c, as mkstemp relies on tempname.
32824
32825 2001-03-01  Jim Meyering  <meyering@lucent.com>
32826
32827         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
32828         AH_VERBATIM really does output its argument verbatim.
32829
32830 2001-02-28  Paul Eggert  <eggert@twinsun.com>
32831
32832         * lib/Makefile.am (libfetish_a_SOURCES):
32833         Add dup-safer.c, fopen-safer.c.
32834         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
32835
32836         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
32837         * lib/unistd-safer.h: New files.
32838
32839 2001-02-25  Paul Eggert  <eggert@twinsun.com>
32840
32841         The mkstemp replacement is taken from glibc 2.2.2, with some
32842         portability fixes for use outside glibc, as follows:
32843
32844         * lib/tempname.c (struct_stat64): New macro.
32845         (direxists, __gen_tempname): Use it.
32846         This avoids a portability problem with Solaris 8.
32847
32848         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
32849         (<stddef.h>, <stdint.h>, <string.h>):
32850         Include only if STDC_HEADERS || _LIBC.
32851         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
32852         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
32853         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
32854         (__set_errno): Define this macro if <errno.h> doesn't.
32855         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
32856         Define these macros if <stdio.h> doesn't.
32857         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
32858         Define these macros if <sys/stat.h>
32859         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
32860         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
32861         __xstat64): Define if not _LIBC.
32862         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
32863         (__gen_tempname): Invoke gettimeofday only if
32864         HAVE_GETTIMEOFDAY || _LIBC;
32865         otherwise, fall back on plain "time".
32866         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
32867
32868         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
32869
32870         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
32871
32872 2001-02-18  Paul Eggert  <eggert@twinsun.com>
32873
32874         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
32875
32876 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32877
32878         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
32879         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
32880         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
32881         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
32882
32883 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32884
32885         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
32886         Remove workaround macros for hosts that have mbrtowc but not
32887         mbstate_t, as we now insist on proper declarations for both
32888         before using mbrtowc.
32889
32890 2001-02-17  Jim Meyering  <meyering@lucent.com>
32891
32892         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
32893         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
32894         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
32895         UnixWare 7.1.1.
32896
32897         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
32898         rather than AC_CACHE_VAL.
32899
32900 2001-02-17  Jim Meyering  <meyering@lucent.com>
32901
32902         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
32903         around included file name.
32904
32905         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
32906
32907         * lib/strftime.c: Update from GNU libc (the only changes were to
32908         comments).
32909
32910 2001-02-17  Jim Meyering  <meyering@lucent.com>
32911
32912         * lib/regex.c: Update from libc.
32913
32914 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
32915
32916         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
32917         clash.
32918
32919 2001-02-16  Paul Eggert  <eggert@twinsun.com>
32920
32921         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
32922         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
32923         Reported by Mark Hounschell via Paul Eggert.
32924
32925 2001-02-07  Jim Meyering  <meyering@lucent.com>
32926
32927         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
32928
32929 2001-02-05  Jim Meyering  <meyering@lucent.com>
32930
32931         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
32932         it includes the patch required for `large file' support with at least
32933         HP-UX's 10.20 /bin/cc.
32934
32935 2001-02-03  Jim Meyering  <meyering@lucent.com>
32936
32937         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
32938         AS_IF, now that it works once again (mysteriously).
32939         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32940
32941 2001-01-30  Jim Meyering  <meyering@lucent.com>
32942
32943         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
32944         * m4/chown.m4: Rename conftestchown to conftest.chown.
32945         * m4/rename.m4: s/conftestdir/conftest.d1/ and
32946         s/conftestdir2/conftest.d2/.
32947         * m4/utimes.m4: s/conftestdata/conftest.data/
32948         Inspired by Pavel Roskin's change in autoconf.
32949
32950 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
32951
32952         * lib/config.charset: Update for FreeBSD 4.2.
32953
32954 2001-01-27  Jim Meyering  <meyering@lucent.com>
32955
32956         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
32957         a use of AS_IF.
32958         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32959
32960 2001-01-26  Jim Meyering  <meyering@lucent.com>
32961
32962         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
32963         quotearg.c includes it.
32964
32965 2001-01-26  Jim Meyering  <meyering@lucent.com>
32966
32967         * lib/quotearg.c: Include stddef.h.
32968         * lib/quote.c: Include stddef.h.
32969         Reported by Axel Kittenberger.
32970
32971         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
32972         line in double quotes so that it evokes a better diagnostic.
32973         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
32974         Reported by Axel Kittenberger.
32975
32976 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
32977
32978         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
32979         as if it was a `charset'.
32980
32981 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32982
32983         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
32984         has const.
32985
32986 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32987
32988         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
32989         to avoid a warning.  Add back 'const' to inptr.
32990
32991 2001-01-20  Jim Meyering  <meyering@lucent.com>
32992
32993         Be sure that headers are checked before used in code compiled
32994         for the type checks.
32995         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
32996         In place of that, invoke jm_CHECK_ALL_TYPES.
32997         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
32998         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
32999         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
33000         The check for ssize_t was mistakenly run before the test for unistd.h.
33001
33002         The configure-time check for stdbool.h was missing.
33003         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
33004         (jm_PREREQ_HASH): New function.
33005
33006 2001-01-17  Jim Meyering  <meyering@lucent.com>
33007
33008         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
33009         for autoconf-2.49c.
33010         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
33011
33012 2001-01-16  Jim Meyering  <meyering@lucent.com>
33013
33014         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
33015         From Bruno Haible.
33016
33017 2001-01-14  Jim Meyering  <meyering@lucent.com>
33018
33019         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
33020         foo and bar.  Create conftestdir/ in the script, not in the C code.
33021         Remove directories in the script, not in the C code.
33022         Remove conftestdir{,2} before trying to create the directory.
33023         Make the entire configure script fail if the mkdir fails.
33024
33025 2001-01-14  Jim Meyering  <meyering@lucent.com>
33026
33027         * lib/rename.c: New file.  From Volker Borchert.
33028         Include stdlib.h, string.h or strings.h, and xalloc.h.
33029         Use strip_trailing_slashes rather than open-coding it.
33030
33031 2001-01-03  Paul Eggert  <eggert@twinsun.com>
33032
33033         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
33034
33035 2001-01-03  Jim Meyering  <meyering@lucent.com>
33036
33037         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
33038         of local `inptr' to avoid warning with some system declarations of
33039         iconv.
33040
33041 2001-01-02  Volker Borchert  <bt@teknon.de>
33042
33043         * m4/rename.m4: New file.
33044         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
33045
33046 2001-01-01  Jim Meyering  <meyering@lucent.com>
33047
33048         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
33049         even on systems with utmpx.h.  It's necessary for the declaration of
33050         utmp's ut_user member.  Reported by Andreas Jaeger.
33051
33052         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
33053         available. They are required for the declarations of getgrgid and
33054         getpwuid resp.
33055         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
33056         Reported by Andreas Jaeger.
33057
33058 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
33059
33060         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
33061         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
33062         so `make install' also works in VPATH builds.
33063
33064 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
33065
33066         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
33067         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
33068         can be used in subdirectories.
33069
33070 2000-12-29  Paul Eggert  <eggert@twinsun.com>
33071
33072         * lib/modechange.c: Do not assume that mode_t uses the
33073         traditional octal encoding.  E.g. "chmod 1 FOO" should set
33074         the other-execute bit of FOO even if S_IXOTH != 1.
33075
33076         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
33077         WOTH, XOTH, ALLM): New macros.
33078         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
33079          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
33080         Use them.
33081         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
33082         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
33083         (mode_compile):
33084         No need to use uintmax_t; unsigned long is long enough.
33085         Don't bother to get suffix since we don't use it.
33086
33087 2000-12-26  Jim Meyering  <meyering@lucent.com>
33088
33089         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
33090         better with autoheader.
33091
33092 2000-12-24  Jim Meyering  <meyering@lucent.com>
33093
33094         * lib/hash.c (is_prime): Return explicit boolean values.
33095         (hash_get_first): Return NULL to appease Irix5.6's 89.
33096         Reported by Nelson Beebe.
33097
33098 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
33099
33100         * lib/localcharset.c (locale_charset): Add support for Win32.
33101
33102 2000-12-18  Paul Eggert  <eggert@twinsun.com>
33103
33104         * lib/physmem.h, lib/physmem.c: New files.
33105
33106         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
33107         (noinst_HEADERS): Add physmem.h.
33108
33109         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
33110         't' for compatibility with Solaris 8 sort.
33111
33112 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
33113
33114         * lib/config.charset: Add support for BeOS.
33115
33116 2000-12-17  Jim Meyering  <meyering@lucent.com>
33117
33118         * m4/dos.m4 (jm_AC_DOS): New file and macro.
33119         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
33120
33121 2000-12-16  Jim Meyering  <meyering@lucent.com>
33122
33123         This bug had a serious impact on chown: `chown N:M FILE' (for integer
33124         N and M) would have treated it like `chown N:N FILE'.
33125
33126         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
33127
33128 2000-12-16  Jim Meyering  <meyering@lucent.com>
33129
33130         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
33131         SHELLS_FILE to a file name that's useful on djgpp systems.
33132         Include stdlib.h.
33133         (ADDITIONAL_DEFAULT_SHELLS): Define.
33134         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
33135         Based mostly on a patch from Prashant TR.
33136
33137 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
33138
33139         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
33140         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
33141         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
33142
33143 2000-12-08  Andreas Schwab  <schwab@suse.de>
33144
33145         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
33146         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
33147
33148 2000-12-07  Jim Meyering  <meyering@lucent.com>
33149
33150         * lib/stripslash.c (ISSLASH): Define.
33151         (strip_trailing_slashes): Use ISSLASH rather than comparing against
33152         `/'.
33153         From Prashant TR.
33154
33155         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
33156         (dir_name_r): Declare this function as static.
33157         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
33158         manifest itself on a name containing a mix of slashes and
33159         backslashes.
33160         Make this function work with names starting with a DOS-style
33161         drive letter and colon prefix.
33162         (dir_name): Append `.' if necessary.
33163         Based mostly on patches from Prashant TR and Eli Zaretskii.
33164
33165         * lib/dirname.h (dir_name_r): Remove prototype.
33166
33167 2000-12-06  Paul Eggert  <eggert@twinsun.com>
33168
33169         * m4/off_t-format.m4: Remove this file.
33170         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
33171
33172 2000-12-06  Jim Meyering  <meyering@lucent.com>
33173
33174         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
33175         replacement strtoull, we may well need the replacement strtoul, too.
33176         Check for declarations of strtoul and strtoull.
33177         Check for strtol.  Mainly as a cue to cause automake to include
33178         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
33179         Check for limits.h -- strtol.c needs it.
33180
33181 2000-12-05  Jim Meyering  <meyering@lucent.com>
33182
33183         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
33184
33185 2000-12-04  Jim Meyering  <meyering@lucent.com>
33186
33187         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
33188         Also include memory.h, stdlib.h, unistd.h if appropriate.
33189         Reported by Andreas Jaeger (conflicting declaration of malloc).
33190
33191 2000-12-02  Jim Meyering  <meyering@lucent.com>
33192
33193         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
33194         * m4/jm-macros.m4 (jm_MACROS): require it.
33195
33196 2000-12-02  Jim Meyering  <meyering@lucent.com>
33197
33198         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
33199
33200 2000-12-01  Paul Eggert  <eggert@twinsun.com>
33201
33202         * lib/memrchr.c: Include <config.h> before any system include file.
33203
33204 2000-11-30  Jim Meyering  <meyering@lucent.com>
33205
33206         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
33207
33208 2000-11-30  Jim Meyering  <meyering@lucent.com>
33209
33210         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
33211
33212 2000-11-29  Paul Eggert  <eggert@twinsun.com>
33213
33214         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
33215
33216 2000-11-26  Jim Meyering  <meyering@lucent.com>
33217
33218         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
33219
33220 2000-11-22  Paul Eggert  <eggert@twinsun.com>
33221
33222         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
33223         size of (size_t) -1; it's not portable.
33224
33225 2000-11-17  Jim Meyering  <meyering@lucent.com>
33226
33227         * lib/strstr.c: Update from GNU libc.
33228
33229 2000-11-17  Akim Demaille  <akim@epita.fr>
33230
33231         * lib/obstack.h: Formatting changes.
33232         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
33233         prevent type checking.
33234         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
33235         cast the value to (void *): assigning a `foo *' to a `void *'
33236         variable is valid.
33237         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
33238
33239 2000-11-16  Jim Meyering  <meyering@lucent.com>
33240
33241         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
33242
33243 2000-11-11  Jim Meyering  <meyering@lucent.com>
33244
33245         * lib/error.c: Add a couple #includes, merging from GNU libc version.
33246
33247 2000-11-10  Jim Meyering  <meyering@lucent.com>
33248
33249         * lib/obstack.h: Update from GNU libc.
33250         * lib/obstack.c: Likewise.
33251
33252 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
33253
33254         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
33255
33256 2000-11-06  Paul Eggert  <eggert@twinsun.com>
33257
33258         * lib/getusershell.c (setusershell): Use rewind rather than
33259         fseek/fseeko, to avoid configuration hassles with fseeko.
33260         Don't bother opening SHELLS_FILE if shellstream is NULL;
33261         it's not necessary.
33262
33263 2000-11-05  Jim Meyering  <meyering@lucent.com>
33264
33265         * lib/makepath.h (make_dir): Declare.
33266         * lib/makepath.c (make_dir): Remove `static' attribute.
33267         Tweak a comment.
33268
33269 2000-11-04  Jim Meyering  <meyering@lucent.com>
33270
33271         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
33272
33273 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
33274
33275         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
33276         last one in a bucket, advance to the next bucket.
33277
33278 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
33279
33280         * lib/fnmatch.c: Do not comment out all the code if we are using
33281         the GNU C library, because in some cases we are replacing buggy
33282         code in the GNU C library itself.
33283
33284 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
33285
33286         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
33287         (regex_compile): Catch bogus \(\1\).
33288
33289 2000-10-30  Paul Eggert  <eggert@twinsun.com>
33290
33291         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
33292         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
33293         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
33294
33295 2000-10-30  Paul Eggert  <eggert@twinsun.com>
33296
33297         * lib/error.h, getline.h, modechange.h:
33298         Remove "2000" from Copyright line, as the file hasn't been
33299         changed this year other than in the copyright notice.
33300
33301         * lib/xalloc.h: Add "2000" to Copyright line, as this file
33302         was changed this year.
33303
33304 2000-10-29  Jim Meyering  <meyering@lucent.com>
33305
33306         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
33307         renaming.
33308         * m4/ls-mntd-fs.m4: Likewise
33309
33310 2000-10-29  Jim Meyering  <meyering@lucent.com>
33311
33312         * lib/xstat.in: Fix grammar in comment.
33313
33314 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
33315
33316         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
33317         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
33318         doesn't define __restrict_arr.
33319
33320 2000-10-28  Jim Meyering  <meyering@lucent.com>
33321
33322         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
33323         (jm_PREREQ_MEMCHR): New function.
33324
33325 2000-10-28  Jim Meyering  <meyering@lucent.com>
33326
33327         * lib/memchr.c: Update from libc.
33328         Adjust for portability:
33329         [HAVE_STDLIB_H]: Include stdlib.h.
33330         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
33331         Undef __memchr, too.
33332         [!weak_alias]: Define __memchr to memchr.
33333
33334         * lib/regex.c: Update from libc.
33335         * lib/regex.h: Likewise.
33336         * lib/getopt1.c: Likewise.
33337         * lib/memcmp.c: Likewise.
33338
33339         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
33340         Avoid using fseek, when possible -- it's broken by design.
33341         Patch by Ulrich Drepper.
33342
33343 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
33344
33345         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
33346         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
33347         Giving in to popular pressure to shut up the compiler with casts.
33348
33349 2000-10-26  Jim Meyering  <meyering@lucent.com>
33350
33351         * lib/strftime.c: Update from libc.
33352
33353 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
33354
33355         * regex.c: More `unsigned char' -> `re_char' changes.
33356         Also change several `int' into `re_wchar_t'.
33357         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
33358         (PUSH_FAILURE_POINTER): Don't cast any more.
33359         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
33360         We want GCC to complain, since this piece of code makes
33361         re_match non-reentrant, which *should* be fixed.
33362         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
33363         (EXTEND_BUFFER): Use RETALLOC.
33364         (SET_LIST_BIT): Don't cast.
33365         (re_wchar_t): New type.
33366         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
33367         that those two functions will always properly return.
33368         (IMMEDIATE_QUIT_CHECK): Cast to void.
33369         (analyse_first): Use recursion rather than an explicit stack.
33370         (re_compile_fastmap): Can't fail anymore.
33371         (re_search_2): Don't check re_compile_fastmap for failure.
33372         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
33373         Now also sets the new value (passed in a new argument).
33374         (re_match_2_internal): Use it.
33375         Also, use a new var `reg' of type size_t when looping through regs
33376         rather than reuse the inappropriate `mcnt'.
33377
33378 2000-10-25  Jim Meyering  <meyering@lucent.com>
33379
33380         * lib/obstack.c: Update from libc.
33381
33382 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
33383
33384         * regex.c (regex_compile): Change the way of handling a range from
33385         a char less than 256 to a char not less than 256.
33386
33387 2000-10-24  Andrew Innes  <andrewi@gnu.org>
33388
33389         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
33390         NT-Emacs only.
33391         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
33392         so that re_search functions only quit when callers expect them to.
33393
33394 2000-10-23  Jim Meyering  <meyering@lucent.com>
33395
33396         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
33397         wrong.  That set_locale call must not have any side effects.
33398         From Paul Eggert.
33399
33400 2000-10-22  Jim Meyering  <meyering@lucent.com>
33401
33402         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
33403         [CYCLIC]: Remove now-unused definition.
33404
33405         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
33406         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
33407         Suggestion from Ulrich Drepper.
33408
33409 2000-10-21  Jim Meyering  <meyering@lucent.com>
33410
33411         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
33412         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
33413         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
33414
33415 2000-10-21  Jim Meyering  <meyering@lucent.com>
33416
33417         * lib/dirname.c (memrchr): Declare if necessary.
33418         (dir_name): Remove the restriction that there be no
33419         trailing slashes.  Now, this code skips past them, effectively
33420         ignoring them.
33421         [TEST_DIRNAME] (main): New unit tests.
33422
33423         * lib/memrchr.c: New file from GNU libc.
33424         Undef __memrchr, too.
33425         [!weak_alias]: Define __memrchr to memrchr.
33426         Guard weak_alias use with `#ifdef weak_alias'.
33427
33428 2000-10-21  Jim Meyering  <meyering@lucent.com>
33429
33430         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
33431         (dir_name): Use dir_name_r.
33432         * lib/dirname.h (dir_name_r): Declare it.
33433
33434 2000-10-17  Jim Meyering  <meyering@lucent.com>
33435
33436         * lib/quote.h (PARAMS): Define and use.
33437         Reported by Akim Demaille.
33438
33439         * lib/getopt.c: Update from libc.
33440
33441 2000-10-16  Jim Meyering  <meyering@lucent.com>
33442
33443         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
33444         setlocale.
33445         From Jan Fedak.
33446
33447 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
33448
33449         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
33450
33451 2000-09-25  Jim Meyering  <meyering@lucent.com>
33452
33453         * lib/md5.h (rol): Define (from GnuPG).
33454
33455         * lib/sha.c: Give credit (GnuPG) where due.
33456         (M): Use rol rather than open-coding it.
33457         Add a FIXME comment.
33458
33459 2000-09-21  Jim Meyering  <meyering@lucent.com>
33460
33461         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
33462         Reported by Michael Stone.
33463
33464 2000-09-20  Jim Meyering  <meyering@lucent.com>
33465
33466         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
33467         (noinst_HEADERS): Add sha.h.
33468         Based on code from Scott G. Miller and from GnuPG.
33469
33470 2000-09-18  Jim Meyering  <meyering@lucent.com>
33471
33472         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
33473         LIBS. Otherwise, everyone ends up linking with -lelf for some
33474         configurations.
33475         Reported by Mike Stone.
33476
33477 2000-09-15  Jim Meyering  <meyering@lucent.com>
33478
33479         * lib/regex.c: Update from libc.
33480
33481 2000-09-10  Jim Meyering  <meyering@lucent.com>
33482
33483         * lib/getopt.c (_getopt_internal): Update from glibc.
33484
33485 2000-09-09  Jim Meyering  <meyering@lucent.com>
33486
33487         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
33488         think it should be used as a general replacement for isascii.
33489         * lib/fnmatch.c: Likewise.
33490         * lib/mbswidth.c: Likewise
33491         * lib/regex.c: Likewise.
33492
33493         Don't use atoi.
33494         * lib/userspec.c: Include sys/param.h and limits.h.
33495         Include xstrtol.h.
33496         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
33497         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
33498         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
33499         UID, GID.  Check range.
33500
33501 2000-09-06  Jim Meyering  <meyering@lucent.com>
33502
33503         * lib/getopt.c (_getopt_internal): Update from glibc.
33504
33505 2000-08-30  Jim Meyering  <meyering@lucent.com>
33506
33507         * lib/strftime.c: Merge in changes from GNU libc.
33508
33509 2000-08-26  Jim Meyering  <meyering@lucent.com>
33510
33511         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
33512         * m4/fpending.m4: New file.
33513
33514 2000-08-26  Jim Meyering  <meyering@lucent.com>
33515
33516         * lib/closeout.c: Include "__fpending.h".
33517         (close_stdout_status): Return right away if there's nothing to flush.
33518
33519         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
33520         * lib/__fpending.c: New file.
33521         * lib/__fpending.h: New file.
33522
33523 2000-08-20  Jim Meyering  <meyering@lucent.com>
33524
33525         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
33526         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
33527         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
33528
33529 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
33530
33531         Improve fileutils installation on systems where running
33532         programs (like install) can't be unlinked.
33533         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
33534         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
33535
33536 2000-08-07  Paul Eggert  <eggert@twinsun.com>
33537
33538         Standardize on "memory exhausted" instead of "Memory exhausted"
33539         or "virtual memory exhausted".
33540         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
33541         "virtual memory exhausted".
33542         * lib/same.c (same_name): Invoke xalloc_die instead of printing
33543         our own message.
33544         * lib/userspec.c (parse_user_spec): Likewise.
33545         * lib/bumpalloc.h: comment fix
33546         * lib/same.c, userspec.c: Include xalloc.h.
33547
33548         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
33549         not char *const and pointing to a constant array.
33550         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
33551         (xrealloc): Comment fix.
33552
33553         * lib/userspec.c (parse_user_spec):
33554         Don't translate a message until just before returning,
33555         to avoid unnecessary translation.
33556
33557 2000-08-07  Jim Meyering  <meyering@lucent.com>
33558
33559         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
33560         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
33561         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
33562         getgroups.c, gethostname.c, getopt.h, group-member.c,
33563         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
33564         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
33565         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
33566         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
33567         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
33568         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
33569         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
33570         yesno.c: Back out Copyright date changes for each file with no change
33571         this year.  This eases coordination with other programs using the same
33572         source code modules.  From Paul Eggert.
33573
33574 2000-08-06  Paul Eggert  <eggert@twinsun.com>
33575
33576         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
33577         not char, for compatibility with glibc 2.1.3 strftime.c.
33578
33579 2000-08-03  Greg McGary  <greg@mcgary.org>
33580
33581         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
33582         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
33583         (EXTEND_BUFFER): Use them.
33584
33585 2000-08-01  Jim Meyering  <meyering@lucent.com>
33586
33587         * lib/dirname.c (ISSLASH): Define.
33588         (BACKSLASH_IS_PATH_SEPARATOR): Define.
33589         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
33590         both `\' and `/' may be use as path separators.
33591         Based on a patch from Prashant TR.
33592
33593 2000-07-31  Paul Eggert  <eggert@twinsun.com>
33594
33595         * lib/quotearg.c (quotearg_n_options): Don't make the initial
33596         slot vector a constant, since it might get modified.
33597
33598 2000-07-31  Jim Meyering  <meyering@lucent.com>
33599
33600         * lib/xmalloc.c: Use `virtual memory exhausted', not
33601         `Memory exhausted'.
33602         * lib/obstack.c (print_and_abort): Likewise.
33603
33604 2000-07-30  Paul Eggert  <eggert@twinsun.com>
33605
33606         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
33607         buffer, so that the caller can always quote one small
33608         component of a "memory exhausted" message in slot 0.
33609         From a suggestion by Jim Meyering.
33610
33611 2000-07-30  Jim Meyering  <meyering@lucent.com>
33612
33613         * lib/makepath.c (make_path): Quote the other instance, too.
33614
33615         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
33616         (STATIC_BUF_SIZE): Define.
33617         (quotearg_n_options): Use only statically allocated storage when
33618         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
33619         than STATIC_BUF_SIZE.
33620
33621 2000-07-29  Jim Meyering  <meyering@lucent.com>
33622
33623         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
33624         * lib/dirname.c (dir_name): Likewise.
33625
33626         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
33627         `/'.
33628
33629         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
33630         (dir_name): Assert that there are no trailing slashes.
33631
33632 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
33633
33634         * lib/mbswidth.h (mbswidth): Add a flags argument.
33635         (mbswidth): New declaration.
33636         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
33637         * lib/mbswidth.c (mbswidth): Add a flags argument.
33638         (mbsnwidth): New function.
33639
33640 2000-07-24  Jim Meyering  <meyering@lucent.com>
33641
33642         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
33643
33644 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33645
33646         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
33647
33648 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33649
33650         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
33651         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
33652         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
33653         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
33654         invoke multibyte primitives.
33655
33656 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33657
33658         * lib/quotearg.c:
33659         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
33660         so that mbstate_t is always defined.
33661
33662         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
33663         be 1 in at least one GCC installation, and this configuration
33664         error is likely to be common.  Ignoring MB_LEN_MAX hurts
33665         performance on hosts that have mbrtowc but have only unibyte
33666         locales, but I assume these hosts are rare.
33667
33668 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33669
33670         * lib/mbswidth.c (_XOPEN_SOURCE):
33671         Don't define; this causes problems on Solaris 7.
33672         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
33673
33674 2000-07-23  Jim Meyering  <meyering@lucent.com>
33675
33676         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
33677         too: getgrgid, getpwuid, getuid.
33678
33679 2000-07-23  Jim Meyering  <meyering@lucent.com>
33680
33681         * lib/basename.c (base_name): Add an assertion.
33682
33683 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
33684
33685         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
33686         shadow its mbsinit function.
33687
33688 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
33689
33690         * lib/mbswidth.h: New file.
33691         * lib/mbswidth.c: New file.
33692         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
33693         (noinst_HEADERS): Add mbswidth.h.
33694
33695 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
33696
33697         * lib/config.charset: Add support for FreeBSD. Improve support for
33698         HP-UX and IRIX 6.
33699
33700 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
33701
33702         * m4/mbswidth.m4: New file.
33703         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
33704
33705 2000-07-15  Jim Meyering  <meyering@lucent.com>
33706
33707         * lib/makepath.c: Include quote.h.
33708         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
33709         corresponding argument in a `quote (...)' call.
33710         Give better diagnostics.
33711
33712         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
33713         (noinst_HEADERS): Add quote.h.
33714
33715         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
33716         from tar's src/misc.c.
33717         * lib/quote.h: New file.  Prototypes for same.
33718
33719 2000-07-14  Paul Eggert  <eggert@twinsun.com>
33720
33721         From a suggestion by Bruno Haible.
33722         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
33723         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
33724         to decide whether to define the BeOS workaround macro;
33725         this adjusts to the change to AC_MBSTATE_T.
33726
33727 2000-07-14  Jim Meyering  <meyering@lucent.com>
33728
33729         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
33730         jm_AC_TYPE_UINTMAX_T.
33731
33732 2000-07-13  Paul Eggert  <eggert@twinsun.com>
33733
33734         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
33735
33736         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
33737         quotearg_buffer_restyled): Add support for
33738         clocale_quoting_style.  Undo previous change to
33739         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
33740         and "{RIGHT QUOTATION MARK}" msgids.
33741
33742 2000-07-10  Paul Eggert  <eggert@twinsun.com>
33743
33744         From a suggestion by Bruno Haible.
33745         * m4/mbstate_t.m4 (AC_MBSTATE_T):
33746         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
33747         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
33748         and mbstate_t, to a single-part test that simply defines mbstate_t.
33749         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
33750         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
33751
33752 2000-07-10  Jim Meyering  <meyering@lucent.com>
33753
33754         * m4/strerror_r.m4: Mirror the correction made in autoconf.
33755
33756         * m4/gnu-source.m4: Output to confdefs.h directly.
33757         Suggestion from Akim Demaille.
33758
33759 2000-07-09  Paul Eggert  <eggert@twinsun.com>
33760
33761         The old behavior of quoting `like this' doesn't look good with
33762         newer, ISO-style fonts.  See:
33763         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
33764
33765         Instead, quote "like this" by default.  Let the translator
33766         tailor the locale-specific quoting behavior by providing
33767         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
33768
33769         * lib/quotearg.c (N_): New macro.
33770         (gettext_default): New function.
33771         (quotearg_buffer_restyled): Use
33772         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
33773         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
33774
33775 2000-07-09  Jim Meyering  <meyering@lucent.com>
33776
33777         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
33778         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
33779
33780         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
33781         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
33782
33783 2000-07-09  Jim Meyering  <meyering@lucent.com>
33784
33785         * lib/Most files: Update copyright dates to include 2000.
33786
33787 2000-07-08  Jim Meyering  <meyering@lucent.com>
33788
33789         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
33790         if not defined.
33791         (xgethostname): Remove now-unnecessary #ifdef.
33792         Move declaration of `err' into loop where it's used.
33793
33794 2000-07-05  Paul Eggert  <eggert@twinsun.com>
33795         and Bruno Haible  <haible@clisp.cons.org>
33796
33797         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
33798         only if the test for an object-type mbstate_t fails.  This
33799         prevents us from mistakenly reporting that mbstate_t is a
33800         system object type after we "#define mbstate_t int" to work
33801         around its lack.
33802
33803 2000-07-05  Paul Eggert  <eggert@twinsun.com>
33804         and Bruno Haible  <haible@clisp.cons.org>
33805
33806         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
33807
33808 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33809
33810         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
33811         to strerror_r.
33812         Include <ctype.h> for use of isalpha.
33813
33814 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33815
33816         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
33817         by allocating a larger buffer. Test the gethostname return value for
33818         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
33819         returns an error and ENAMETOOLONG isn't defined.
33820
33821 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33822
33823         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
33824         dimension.
33825
33826 2000-07-04  Jim Meyering  <meyering@lucent.com>
33827
33828         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
33829         of the deprecated AC_CHECKING.
33830
33831 2000-07-04  Jim Meyering  <meyering@lucent.com>
33832
33833         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
33834         Reported by Bruno Haible.
33835
33836 2000-07-04  Jim Meyering  <meyering@lucent.com>
33837
33838         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
33839         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
33840         lacks mbrtowc.
33841
33842 2000-07-03  Paul Eggert  <eggert@twinsun.com>
33843
33844         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
33845         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
33846
33847 2000-07-03  Paul Eggert  <eggert@twinsun.com>
33848         and Bruno Haible  <haible@clisp.cons.org>
33849
33850         * lib/quotearg.c (mbrtowc):
33851         Assign to *pwc, and return 1 only if result is nonzero.
33852         (iswprint): Use ISPRINT when substituting our own mbrtowc.
33853
33854 2000-07-03  Jim Meyering  <meyering@lucent.com>
33855
33856         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
33857
33858 2000-07-03  Jim Meyering  <meyering@lucent.com>
33859
33860         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
33861         This is necessary to get a definition of e.g., UTMP_FILE on
33862         HP-UX 10.20.
33863         From Bob Proulx.
33864
33865 2000-07-02  Jim Meyering  <meyering@lucent.com>
33866
33867         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
33868
33869         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
33870         AC_LIBOBJ(function_name).
33871         * m4/chown.m4: Likewise.
33872         * m4/fnmatch.m4: Likewise.
33873         * m4/ftruncate.m4: Likewise.
33874         * m4/getgroups.m4: Likewise.
33875         * m4/getline.m4: Likewise.
33876         * m4/group-member.m4: Likewise.
33877         * m4/jm-macros.m4: Likewise.
33878         * m4/lstat.m4: Likewise.
33879         * m4/malloc.m4: Likewise.
33880         * m4/memcmp.m4: Likewise.
33881         * m4/nanosleep.m4: Likewise.
33882         * m4/putenv.m4: Likewise.
33883         * m4/realloc.m4: Likewise.
33884         * m4/regex.m4: Likewise.
33885         * m4/stat.m4: Likewise.
33886         * m4/strftime.m4: Likewise.
33887
33888 2000-07-02  Jim Meyering  <meyering@lucent.com>
33889
33890         * lib/quotearg.c (mbstate_t): Don't define here.
33891
33892 2000-07-02  Jim Meyering  <meyering@lucent.com>
33893
33894         * lib/nanosleep.c (SIGCONT): Define if not already defined.
33895
33896 2000-07-01  Jim Meyering  <meyering@lucent.com>
33897
33898         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
33899
33900 2000-07-01  Jim Meyering  <meyering@lucent.com>
33901
33902         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
33903         problem.
33904
33905 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33906
33907         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
33908         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
33909
33910 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33911
33912         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
33913         per change in ../m4/ls-mntd-fs.m4.
33914         (read_filesystem_list): Ignore symbolic links.
33915
33916 2000-06-29  Jim Meyering  <meyering@lucent.com>
33917
33918         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
33919         for declaration of strcmp.
33920
33921         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
33922
33923         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
33924         Avoid warning by casting result to `char *' to remove `const'.
33925
33926 2000-06-28  Jim Meyering  <meyering@lucent.com>
33927
33928         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
33929         included by quotearg.c, for which we perform this test.  From
33930         Bruno Haible.
33931
33932 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33933
33934         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
33935         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
33936         <utmpx.h> exists, put readutmp.o into LIBOBJS.
33937
33938 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33939
33940         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
33941
33942 2000-06-26  Paul Eggert  <eggert@twinsun.com>
33943
33944         savedir now sets errno on failure and invokes xmalloc to get memory.
33945         Fix a couple of other minor bugs while we're at it.
33946
33947         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
33948         (NAMLEN): Remove macro.
33949         (malloc, realloc): Remove decls.
33950         (stpcpy): Likewise.
33951         ("xalloc.h"): Include.
33952         (NAME_SIZE_DEFAULT): New macro.
33953         (savedir): Use xmalloc / xrealloc to allocate memory.
33954         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
33955         Skip "" directory entries.
33956         Use strlen to calculate directory entry length, since the old method
33957         is rarely used these days and isn't worth supporting.
33958         Don't use a pointer after freeing it.
33959         Check for integer overflow when calculating allocation size.
33960         Use memcpy to copy entries, instead of stpcpy.
33961         Set errno properly when returning NULL.
33962         Check for readdir error.
33963
33964 2000-06-26  Jim Meyering  <meyering@lucent.com>
33965
33966         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
33967
33968 2000-06-25  Jim Meyering  <meyering@lucent.com>
33969
33970         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
33971         Linux header bug when _XOPEN_SOURCE is defined to 500.
33972
33973 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33974
33975         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
33976         deficiency.
33977
33978 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33979
33980         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
33981         Include xalloc.h.
33982         Don't include <stdlib.h>.  Don't declare malloc, realloc.
33983
33984 2000-06-24  Jim Meyering  <meyering@lucent.com>
33985
33986         * m4/strerror_r.m4: Revive this file -- to try out an experimental
33987         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
33988         for which strerror does return char*, but which lacks a conveniently
33989         accessible declaration of the function.  If the compile-test says
33990         strerror_r doesn't work, then resort to a `run'-test that works on
33991         BeOS and segfaults on DEC Unix.
33992
33993 2000-06-24  Jim Meyering  <meyering@lucent.com>
33994
33995         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
33996
33997 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33998
33999         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
34000         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
34001
34002 2000-06-23  Paul Eggert  <eggert@twinsun.com>
34003
34004         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
34005         (mbrtowc, mbstate_t): Define substitutes if
34006         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
34007         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
34008         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
34009
34010 2000-06-23  Jim Meyering  <meyering@lucent.com>
34011
34012         * m4/afs.m4: Add missing AC_MSG_RESULT.
34013         Reported by Bruno Haible.
34014
34015         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
34016         Suggestion from Bruno Haible.
34017
34018 2000-06-23  Jim Meyering  <meyering@lucent.com>
34019
34020         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
34021
34022 2000-06-21  Jim Meyering  <meyering@lucent.com>
34023
34024         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
34025
34026 2000-06-21  Jim Meyering  <meyering@lucent.com>
34027
34028         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
34029         (noinst_HEADERS): Add getstr.h.
34030
34031         * lib/getline.c (getstr): Move into a separate file.
34032         * lib/getstr.c (getstr): New file, extracted from getline.c, with
34033         the following changes: new parameter, delim2; both delim[12]
34034         parameters have type `int', not `char'.  The latter would lose
34035         with 8-bit delimiters.
34036         * lib/getstr.h: New file.
34037
34038 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
34039
34040         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
34041         than 1024, return a memory chunk of least possible size, instead
34042         of size PATH_MAX + 2. In the loop, increment the size proportionally.
34043         Use free/xmalloc instead of xrealloc to avoid copying for very long
34044         paths.
34045
34046 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
34047
34048         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
34049         the empty string.
34050
34051 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
34052
34053         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
34054         address, not strdup.  Include <stdlib.h> and don't declare free().
34055
34056 2000-06-19  Jim Meyering  <meyering@lucent.com>
34057
34058         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
34059
34060 2000-06-18  Jim Meyering  <meyering@lucent.com>
34061
34062         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
34063
34064         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
34065         `checking whether...' message to be consistent with that of the
34066         lstat test.
34067
34068 2000-06-18  Jim Meyering  <meyering@lucent.com>
34069
34070         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
34071         Besides, these days every porting target provides a mkdir function.
34072
34073         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
34074         needed. (this snippet comes from src/system.h).
34075
34076 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
34077
34078         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
34079
34080 2000-06-15  Paul Eggert  <eggert@twinsun.com>
34081
34082         * lib/human.c (adjust_value): New function.
34083         (human_readable_inexact): Apply rounding style even when
34084         printing approximate values.
34085
34086 2000-06-14  Paul Eggert  <eggert@twinsun.com>
34087
34088         * lib/human.c (human_readable_inexact): Allow an input block
34089         size that is not a multiple of the output block size, and vice versa.
34090         Reported by Piergiorgio Sartor.
34091
34092 2000-06-14  Paul Eggert  <eggert@twinsun.com>
34093
34094         * lib/getdate.y (get_date): Apply relative times after time
34095         zone indicator, not before.  Reported by Todd A. Jacobs.
34096
34097 2000-06-13  Jim Meyering  <meyering@lucent.com>
34098
34099         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
34100
34101         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
34102
34103 2000-06-12  Paul Eggert  <eggert@twinsun.com>
34104
34105         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
34106
34107 2000-06-12  Jim Meyering  <meyering@lucent.com>
34108
34109         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
34110         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
34111         optional argument.
34112         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
34113         the optional argument, `lib'.
34114
34115 2000-06-08  Jim Meyering  <meyering@lucent.com>
34116
34117         * m4/largefile.m4: Remove file (now that it's part of autoconf).
34118
34119 2000-06-04  Paul Eggert  <eggert@twinsun.com>
34120
34121         Rewrite largefile configuration so that we don't need to run
34122         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
34123         AC_CANONICAL_HOST in configure.in -- jmm]
34124
34125         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
34126         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
34127         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
34128         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
34129         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
34130         All uses changed.
34131         Instead of inspecting the output of getconf, try to compile the
34132         test program without and with the macro definition.
34133         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
34134         for getconf.  Instead, check for the needed flags by compiling
34135         test programs.
34136
34137 2000-06-04  Paul Eggert  <eggert@twinsun.com>
34138
34139         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
34140
34141 2000-06-04  Jim Meyering  <meyering@lucent.com>
34142
34143         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
34144         SunOS 4.1.4 for which gid_t is an unsigned type.
34145
34146 2000-06-03  Jim Meyering  <meyering@lucent.com>
34147
34148         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
34149         now that autoconf requires that.
34150
34151         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
34152         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
34153         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
34154
34155 2000-06-03  Jim Meyering  <meyering@lucent.com>
34156
34157         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
34158
34159 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
34160
34161         * m4/glibc21.m4: New file.
34162         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
34163
34164 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
34165
34166         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
34167         newer, don't install charset.alias.
34168         * lib/config.charset: Change the Linux/glibc rules so they become empty
34169         on glibc-2.1 or newer.
34170
34171 2000-06-02  Jim Meyering  <meyering@lucent.com>
34172
34173         * lib/mountlist.c: Back out last change.  Instead, do this...
34174         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
34175         me_dummy member using the same `ignore'-testing code.
34176         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
34177         fs_type strings.
34178         From Mark D. Roth.
34179
34180 2000-05-29  Jim Meyering  <meyering@lucent.com>
34181
34182         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
34183         mounts with the `ignore' attribute.  Based on a patch from
34184         Mark D. Roth.
34185
34186 2000-05-28  Jim Meyering  <meyering@lucent.com>
34187
34188         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
34189         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34190         * m4/stat.m4: Likewise.
34191         * m4/lstat.m4: Likewise.
34192         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
34193
34194         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
34195         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
34196
34197 2000-05-26  Jim Meyering  <meyering@lucent.com>
34198
34199         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
34200
34201 2000-05-24  Jim Meyering  <meyering@lucent.com>
34202
34203         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
34204         autoconf requires that.
34205         * m4/lib-check.m4: Likewise.
34206         * m4/jm-macros.m4: Likewise.
34207         * m4/strftime.m4: Likewise.
34208
34209         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
34210         AC_CHECK_DECLS, now that autoconf requires that.
34211
34212 2000-05-22  Jim Meyering  <meyering@lucent.com>
34213
34214         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34215         * m4/lstat.m4: Likewise.
34216
34217 2000-05-22  Jim Meyering  <meyering@lucent.com>
34218
34219         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
34220
34221 2000-05-20  Jim Meyering  <meyering@lucent.com>
34222
34223         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
34224         (jm_PREREQ): Use it.
34225
34226 2000-05-18  Jim Meyering  <meyering@lucent.com>
34227
34228         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
34229         back, too, since it may have been modified by allocate_entry.
34230         (hash_delete): Rewrite to use neither the assignment operator
34231         nor the comma operator in an if-expression.
34232
34233 2000-05-15  Paul Eggert  <eggert@twinsun.com>
34234
34235         * lib/closeout.c:
34236         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
34237         Remove; no longer needed.
34238         "quotearg.h": Add include.
34239         (file_name): Do not bother to explicitly initialize to NULL; it's less
34240         efficient on some hosts.
34241         (close_stdout_status): Remove test as to whether stdout was already
34242         closed; it breaks for the case "echo x | sort >&-".
34243         Quote file name colons.
34244         Do not assume that _("write error") lacks format strings.
34245
34246 2000-05-15  Jim Meyering  <meyering@lucent.com>
34247
34248         * lib/version-etc.c (version_etc_copyright): Update the copyright
34249         string used in all --version output.
34250
34251 2000-05-14  Jim Meyering  <meyering@lucent.com>
34252
34253         * lib/closeout.c (close_stdout_set_file_name): New function.
34254         (close_stdout_status): Use new file-scoped global.
34255         Return right away if fstat says the stdout file descriptor is invalid.
34256         * lib/closeout.h (close_stdout_set_file_name): Declare.
34257
34258 2000-05-10  Jim Meyering  <meyering@lucent.com>
34259
34260         * lib/closeout.c [default_exit_status]: New file-scoped variable.
34261         (close_stdout_set_status): New function.
34262         * lib/closeout.h (close_stdout_set_status): Declare.
34263
34264 2000-05-09  Jim Meyering  <meyering@lucent.com>
34265
34266         * m4/gettext.m4: Rename this...
34267         * m4/libintl.m4: ...to this.
34268
34269 2000-05-08  Jim Meyering  <meyering@lucent.com>
34270
34271         * lib/long-options.c: Don't include closeout.h.
34272         (parse_long_options): Don't call close_stdout for --version.
34273
34274 2000-05-06  Paul Eggert  <eggert@twinsun.com>
34275
34276         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
34277         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
34278         2.1.3 bug.  This avoids a clash when files like regex.c define
34279         _GNU_SOURCE.
34280
34281 2000-05-06  Jim Meyering  <meyering@lucent.com>
34282
34283         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
34284         (AC_REPLACE_FUNCS): Add strnlen.
34285
34286         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
34287         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
34288
34289         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
34290         AC_SEARCH_LIBS call for nanosleep.
34291         (LIB_NANOSLEEP): Set and AC_SUBST.
34292
34293 2000-05-06  Jim Meyering  <meyering@lucent.com>
34294
34295         * lib/strnlen.c: Undefine __strnlen and strnlen.
34296         [!weak_alias]: Define __strnlen to strnlen.
34297
34298         * lib/atexit.c: New file, from libiberty.
34299
34300 2000-05-06  Jim Meyering  <meyering@lucent.com>
34301
34302         * lib/closeout.c (close_stdout_status): Also check for errors on the
34303         stderr stream.
34304
34305 2000-05-05  Jim Meyering  <meyering@lucent.com>
34306
34307         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
34308         AC_SEARCH_LIBS call for clock_gettime.
34309         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
34310
34311         * m4/search-libs.m4: Update from autoconf.
34312
34313         su doesn't work on Solaris 2.6.
34314         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
34315         <shadow.h>.  Reported by Dragos Harabor.
34316
34317 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
34318
34319         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
34320         memcpy instead of xmalloc, xrealloc, path_concat.
34321         (locale_charset): Treat empty environment variables as absent.
34322         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
34323
34324 2000-05-04  Jim Meyering  <meyering@lucent.com>
34325
34326         * lib/getopt.c: Update from glibc.
34327         * lib/obstack.c: Likewise.
34328         * lib/obstack.h: Likewise.
34329         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
34330         file
34331
34332         * lib/regex.h: Likewise.
34333         * lib/strndup.c: Likewise.
34334         * lib/strnlen.c: New file, from glibc.
34335
34336 2000-05-03  Jim Meyering  <meyering@lucent.com>
34337
34338         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
34339
34340 2000-05-02  Paul Eggert  <eggert@twinsun.com>
34341
34342         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
34343         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
34344         compile-time test, rather than inspecting host and OS, to
34345         decide whether to define _LARGEFILE_SOURCE.
34346
34347 2000-05-01  Jim Meyering  <meyering@lucent.com>
34348
34349         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
34350
34351         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
34352         Based on a patch from Bruno Haible.
34353
34354 2000-05-01  Jim Meyering  <meyering@lucent.com>
34355
34356         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
34357
34358 2000-04-29  Jim Meyering  <meyering@lucent.com>
34359
34360         * lib/path-concat.c: Declare strdup only if it's not defined.
34361         * lib/canon-host.c: Likewise.
34362
34363 2000-04-28  Jim Meyering  <meyering@lucent.com>
34364
34365         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
34366         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
34367         is included first, then limits.h is included by locale.h by libintl.h.
34368         From John David Anglin.
34369
34370 2000-04-25  Jim Meyering  <meyering@lucent.com>
34371
34372         * lib/makepath.c (S_IRWXUGO): Define.
34373         (make_path): Always perform explicit chmod if MODE specifies any
34374         of the `special' permission bits.  Prompted by a bug report against
34375         install from Mate Wierdl and Joost van Baal.
34376
34377 2000-04-18  Jim Meyering  <meyering@lucent.com>
34378
34379         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
34380         (jm_PREREQ): Use it.
34381
34382 2000-04-18  Jim Meyering  <meyering@lucent.com>
34383
34384         * lib/README: New file.
34385
34386         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
34387         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
34388
34389 2000-04-17  Jim Meyering  <meyering@lucent.com>
34390
34391         Get it right :-)
34392         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
34393         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
34394         Suggestion from Akim Demaille.
34395
34396 2000-04-17  Jim Meyering  <meyering@lucent.com>
34397
34398         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
34399         the definition of it to rpl_strftime also defined-away the system's
34400         declaration.
34401
34402 2000-04-15  Jim Meyering  <meyering@lucent.com>
34403
34404         Use `C' to denote so-called `contiguous' files, the same way
34405         that tar does.
34406         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
34407         (ftypelet): Use S_ISCTG.
34408         From Michael Deutschmann.
34409
34410 2000-04-14  Jim Meyering  <meyering@lucent.com>
34411
34412         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
34413         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
34414         clobbered.
34415
34416 2000-04-14  Jim Meyering  <meyering@lucent.com>
34417
34418         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
34419
34420 2000-04-13  Jim Meyering  <meyering@lucent.com>
34421
34422         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
34423         AH_VERBATIM to insert required #ifndef into config.h.in.
34424         Suggestion from Akim Demaille.
34425
34426 2000-04-12  Jim Meyering  <meyering@lucent.com>
34427
34428         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
34429         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
34430         Christian Krackowizer.
34431
34432         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
34433         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
34434         (AC_SYS_LARGEFILE): Require.
34435         (AM_C_PROTOTYPES): Require.
34436
34437 2000-04-08  Jim Meyering  <meyering@lucent.com>
34438
34439         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
34440         names don't conflict.  Reported by Eli Zaretskii.
34441
34442 2000-04-07  Jim Meyering  <meyering@lucent.com>
34443
34444         * lib/putenv.c: Move inclusion of errno.h so it follows that of
34445         sys/types.h, to work around system header problems on AIX 3.2.5.
34446         From Bruno Haible.
34447
34448 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
34449
34450         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
34451         bug.  Deal with the different error behavior of Irix iconv.
34452
34453 2000-04-05  Paul Eggert  <eggert@twinsun.com>
34454
34455         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
34456         IRIX if the installer said otherwise.
34457
34458 2000-04-05  Jim Meyering  <meyering@lucent.com>
34459
34460         Portability tweaks required for ultrix4.3.
34461         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
34462         (jm_CHECK_DECLS): Add getutent to the list of functions.
34463         (_jm_DECL_HEADERS): Add utmpx.h.
34464         From John David Anglin.
34465
34466         * m4/strftime.m4: Back out the 2000-04-02 change.
34467         Instead of that change, simply undefine putenv in the test program.
34468
34469 2000-04-05  Jim Meyering  <meyering@lucent.com>
34470
34471         Portability tweaks required for ultrix4.3.
34472         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
34473         getutent.
34474         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
34475         * lib/canon-host.c: Declare strdup.
34476         * lib/path-concat.c: Likewise.
34477         From John David Anglin.
34478
34479 2000-04-04  Jim Meyering  <meyering@lucent.com>
34480
34481         Be more DOS 8.3-friendly.
34482         * lib/ref-add.sin: Renamed from ref-add.sed.in.
34483         * lib/ref-del.sin: Renamed from ref-del.sed.in.
34484         * lib/Makefile.am: Reflect renaming.
34485         Reported by Eli Zaretskii.
34486
34487         Use a temporary file name that won't clash with `charset.alias'
34488         in the DOS 8.3 name space.
34489         * lib/Makefile.am (charset_tmp): Define.
34490         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
34491         (uninstall-local): Likewise.
34492         Reported by Eli Zaretskii.
34493
34494 2000-04-03  Jim Meyering  <meyering@lucent.com>
34495
34496         * m4/gettext.m4: Fix typo in comment.
34497
34498         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
34499         textutils/configure.in).  Suggestion from Paul Eggert.
34500         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
34501
34502 2000-04-02  Paul Eggert  <eggert@twinsun.com>
34503
34504         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
34505         variable in the shell rather than using putenv, which isn't
34506         portable.  This avoids the configure-time inter-test dependency
34507         on the potentially-renamed putenv function.
34508
34509 2000-03-30  Paul Eggert  <eggert@twinsun.com>
34510
34511         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
34512         before checking struct stat.st_blksize, so that
34513         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
34514
34515 2000-03-29  Paul Eggert  <eggert@twinsun.com>
34516
34517         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
34518         since strftime.c uses HAVE_STRFTIME to decide whether to use
34519         the underlying strftime.
34520
34521 2000-03-29  Paul Eggert  <eggert@twinsun.com>
34522
34523         * lib/time/strftime.c (my_strftime): Make sure we call the system
34524         strftime, not ourselves, when invoking the underlying strftime.
34525
34526 2000-03-24  Jim Meyering  <meyering@lucent.com>
34527
34528         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
34529         (charset_alias): Define.
34530         (install-exec-local): Factor out common code.
34531         (uninstall-local): Split lines longer than 80.
34532         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
34533         (SUFFIXES): Define.
34534         (.sed.in.sed): New rule.  Don't redirect directly to $@.
34535         (CLEANFILES): Add ref-add.sed and ref-del.sed.
34536
34537 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
34538
34539         * lib/config.charset: Output a line containing "Packages using this
34540         file".
34541         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
34542         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
34543         ref-del.sed): New rules.
34544
34545 2000-03-17  Jim Meyering  <meyering@lucent.com>
34546
34547         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
34548         Otherwise, include <strings.h>
34549
34550 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
34551
34552         * lib/unicodeio.c (utf8_wctomb): New function.
34553         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
34554         format instead of in UCS-4 with platform dependent endianness.
34555
34556 2000-03-10  Jim Meyering  <meyering@lucent.com>
34557
34558         * m4/lib-check.m4: Look for getspnam in -lgen, too.
34559         From Marco Franzen.
34560
34561 2000-03-07  Paul Eggert  <eggert@twinsun.com>
34562
34563         * lib/savedir.c (savedir): Work even if directory size is
34564         negative; this can happen with some screwy NFS configurations.
34565
34566 2000-03-06  Jim Meyering  <meyering@lucent.com>
34567
34568         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
34569         if it's NULL (because we ran out of memory).  From Bruno Haible.
34570
34571 2000-03-05  Jim Meyering  <meyering@lucent.com>
34572
34573         * lib/localcharset.c ("path-concat.h"): Include.
34574         (get_charset_aliases): Use path_concat instead of ANSI string
34575         concatenation.
34576
34577         * lib/unicodeio.h (PARAMS): Define.
34578         Use it to guard prototype.
34579
34580 2000-03-04  Jim Meyering  <meyering@lucent.com>
34581
34582         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
34583         for lib/localcharset.c.
34584
34585 2000-03-04  Jim Meyering  <meyering@lucent.com>
34586
34587         * lib/Makefile.am (install-exec-local): Create $(libdir) before
34588         installing into it.
34589         (uninstall-local): Uncomment this rule so `make distcheck' works
34590         once again.
34591
34592         * lib/unicodeio.c (<errno.h>): Include it.
34593         (errno): Declare if not defined.
34594
34595         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
34596
34597         * lib/config.charset: New version, incorporating remarks from a linux
34598         i18n mailing list.  From Bruno Haible.
34599
34600 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
34601
34602         * m4/codeset.m4: New file.
34603         * m4/iconv.m4: New file.
34604         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
34605
34606 2000-03-03  Jim Meyering  <meyering@lucent.com>
34607
34608         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
34609
34610 2000-03-02  Jim Meyering  <meyering@lucent.com>
34611
34612         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
34613         the messages come out on separate lines.
34614
34615         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
34616         rather than jm_CHECK_DECLARATIONS.
34617         * m4/decl.m4: Remove now-unused file.
34618
34619         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
34620         geteuid.
34621
34622 2000-03-02  Jim Meyering  <meyering@lucent.com>
34623
34624         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
34625
34626 2000-03-01  Jim Meyering  <meyering@lucent.com>
34627
34628         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
34629         * lib/unicodeio.c: Likewise.
34630
34631 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
34632
34633         * lib/config.charset: New file.
34634         * lib/localcharset.c: New file.
34635         * lib/unicodeio.h, lib/unicodeio.c: New files.
34636         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
34637         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
34638         (noinst_HEADERS): Add unicodeio.h.
34639         (all-local, install-exec-local, charset.alias): New targets.
34640
34641 2000-02-28  Paul Eggert  <eggert@twinsun.com>
34642
34643         * lib/quotearg.c (ALERT_CHAR): New macro.
34644         (quotearg_buffer_restyled): Use it.
34645
34646 2000-02-27  Jim Meyering  <meyering@lucent.com>
34647
34648         * m4/check-decl.m4: Add getenv to the list.
34649
34650 2000-02-27  Jim Meyering  <meyering@lucent.com>
34651
34652         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
34653         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
34654
34655         * lib/backupfile.c: Guard inclusion of stdlib.h with
34656         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
34657         Declare malloc if needed.
34658
34659         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
34660         `#ifndef HAVE_DECL..'
34661         now that autoconf always defines the HAVE_DECL_ symbols.
34662         * lib/human.c: Likewise.
34663         * lib/same.c: Likewise.
34664         * lib/strtoumax.c: Likewise.
34665
34666         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
34667         declaration check was not run.
34668         * lib/hash.c: Likewise.
34669         * lib/human.c: Likewise.
34670         * lib/same.c: Likewise.
34671         * lib/strtoumax.c: Likewise.
34672
34673         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
34674         `.', then first look up the entire `.'-containing string as a login
34675         name.
34676
34677 2000-02-23  Jim Meyering  <meyering@lucent.com>
34678
34679         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
34680         in place of my hack.
34681
34682 2000-02-18  Paul Eggert  <eggert@twinsun.com>
34683
34684         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
34685         (textint): New typedef.
34686         (parser_control): Member year changed from int to textint.
34687         All uses changed.
34688         (YYSTYPE): Removed; replaced by %union with int and textint members.
34689         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
34690         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
34691         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
34692         (tSNUMBER, tUNUMBER): Now of type <textintval>.
34693         (date, number, to_year): Use width of number in digits, not its value,
34694         to determine whether it's a 2-digit year, or a 2-digit time.
34695         (yylex): Store number of digits of numeric tokens.
34696         Reported by John Kendall.
34697
34698         (parser_control): Changed from struct parser_control to typedef (for
34699         consistency).  All uses changed.
34700
34701         (tID): Removed; not used.
34702         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
34703
34704 2000-02-14  Paul Eggert  <eggert@twinsun.com>
34705
34706         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
34707         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
34708
34709 2000-02-12  Jim Meyering  <meyering@lucent.com>
34710
34711         * lib/userspec.c (ISDIGIT): Define it.
34712         (isdigit): Remove definition.
34713         (is_number): Use ISDIGIT, not isdigit.
34714         <libintl.h>: Include.
34715         (_ and N_): Define.
34716         (parse_user_spec): Mark translatable strings.
34717
34718 2000-02-10  Jim Meyering  <meyering@lucent.com>
34719
34720         With these changes, nanosleep.[ch] are finally enough like the other
34721         lib/* replacement files to compile on a few more losing systems.
34722
34723         * lib/nanosleep.h: Don't include config.h.
34724         Remove prototype from declaration of nanosleep.
34725         (PARAMS): Remove now-unneeded definition.
34726         * lib/nanosleep.c: #undef nanosleep.
34727         (rpl_nanosleep): Rename from nanosleep.
34728
34729 2000-02-10  Jim Meyering  <meyering@lucent.com>
34730
34731         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
34732         gnu_nanosleep to rpl_nanosleep.
34733
34734 2000-02-09  Jim Meyering  <meyering@lucent.com>
34735
34736         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
34737         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
34738
34739 2000-02-08  Akim Demaille  <akim@epita.fr>
34740
34741         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
34742         `[' and `]' and remove uses of `changequote'.
34743         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
34744         (AC_SYS_LARGEFILE): Likewise.
34745         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
34746         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
34747         of changequote.
34748         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
34749         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
34750         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
34751         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
34752
34753 2000-02-05  Jim Meyering  <meyering@lucent.com>
34754
34755         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
34756         Remove explicit use of AC_HEADER_TIME.  It is required by
34757         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
34758         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
34759         in autoconf whereby the expansion of the latter ended up preceding
34760         the expansion of its prerequisite, AC_HEADER_TIME.
34761         Reported by Volker Borchert.
34762
34763 2000-02-03  Jim Meyering  <meyering@lucent.com>
34764
34765         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
34766
34767 2000-02-03  Jim Meyering  <meyering@lucent.com>
34768
34769         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
34770         rather than with `#if HAVE_UTMPNAME'.
34771
34772 2000-02-02  Jim Meyering  <meyering@lucent.com>
34773
34774         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
34775         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
34776         Reported by Eli Zaretskii.
34777
34778 2000-02-01  Jim Meyering  <meyering@lucent.com>
34779
34780         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
34781
34782 2000-01-31  Jim Meyering  <meyering@lucent.com>
34783
34784         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
34785         functions.  Add the time.h and sys/time.h headers along with the
34786         AC_REQUIRE'ment of AC_HEADER_TIME.
34787
34788 2000-01-31  Jim Meyering  <meyering@lucent.com>
34789
34790         * lib/nanosleep.h (nanosleep): Guard declaration with
34791         `#if ! HAVE_DECL_NANOSLEEP'.
34792         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
34793         the declaration in that vendor's sys/timers.h.
34794         Reported by Christian Krackowizer.
34795
34796         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
34797         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
34798         (ISPRINT): Likewise.
34799         Reported by Tom Tromey.
34800
34801 2000-01-30  Jim Meyering  <meyering@lucent.com>
34802
34803         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
34804
34805         * m4/prereq.m4 (utmp_includes): Define.
34806         Check for ut_user and ut_name members in both struct utmpx
34807         and struct utmp.
34808
34809 2000-01-30  Jim Meyering  <meyering@lucent.com>
34810
34811         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
34812         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
34813         header files where only utmpx.ut_user is declared.
34814
34815         * lib/readutmp.h (UT_USER): Define.
34816
34817 2000-01-29  Jim Meyering  <meyering@lucent.com>
34818
34819         * m4/lib-check.m4: New file containing library-related checks from
34820         fileutils and sh-utils (textutils had none).
34821
34822 2000-01-28  Jim Meyering  <meyering@lucent.com>
34823
34824         * m4/perl.m4: Change format of warning message to look more like that
34825         from the missing script.  Suggestion from François Pinard.
34826
34827 2000-01-25  Jim Meyering  <meyering@lucent.com>
34828
34829         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
34830         well as time.h in the compile check.
34831         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
34832         Fix typo in cross-compiling case: s/yes/no/.
34833
34834 2000-01-23  Jim Meyering  <meyering@lucent.com>
34835
34836         * m4/jm-macros.m4: Move df-related tests here from
34837         fileutils/configure.in
34838
34839         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
34840         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
34841
34842         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
34843         s/space/ac_fsusage_space/.
34844         (jm_FILE_SYSTEM_USAGE): Take two parameters.
34845
34846         * m4/ftruncate.m4: New file (derived from part of
34847         fileutils/configure.in).
34848         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
34849         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
34850
34851         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
34852         AC_SUBST these here, rather than just in sh-util/configure.in, so
34853         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
34854         all the same.
34855         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
34856         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
34857         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
34858         (AC_SUBST(POW_LIBM)): Likewise.
34859         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
34860
34861 2000-01-23  Jim Meyering  <meyering@lucent.com>
34862
34863         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
34864         obstack.c.
34865
34866 2000-01-22  Jim Meyering  <meyering@lucent.com>
34867
34868         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
34869
34870         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
34871
34872         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
34873         configure.in
34874         (AC_CHECK_HEADERS): Likewise for sh-utils.
34875         (AC_CHECK_HEADERS): Likewise for textutils.
34876         Merge the three lists of headers.
34877
34878         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
34879         from fileutils' configure.in.
34880
34881         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
34882         code. Moved tests into their own function (_jm_DECL_HEADERS) in
34883         check-decl.m4.
34884
34885         * m4/check-decl.m4: Use #if rather than #ifdef.
34886         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
34887         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
34888         (_jm_DECL_HEADERS): Define new function.
34889         (jm_CHECK_DECLARATIONS): Require it.
34890
34891 2000-01-22  Jim Meyering  <meyering@lucent.com>
34892
34893         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
34894         [! HAVE_DECL_STRTOULL]: Declare strtoull.
34895         Required for some AIX systems.  Reported by Christian Krackowizer.
34896         [TESTING] (main): New function.
34897
34898         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
34899         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
34900         letters.
34901
34902         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
34903         iswprint.
34904
34905         * lib/strverscmp.c (ISDIGIT): Define.
34906         (strverscmp): Use ISDIGIT, not isdigit.
34907
34908 2000-01-19  Jim Meyering  <meyering@lucent.com>
34909
34910         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
34911         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
34912         defines `struct timespec' in <sys/time.h>
34913
34914         * m4/c-bs-a.m4: Remove uses of changequote altogether.
34915         Thanks to Akim for explaining.
34916
34917 2000-01-17  Paul Eggert  <eggert@twinsun.com>
34918
34919         * lib/nanosleep.c (nanosleep):
34920         Don't use SA_INTERRUPT to decide whether to call sigaction, as
34921         POSIX.1 doesn't require SA_INTERRUPT and some systems
34922         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
34923         it's been part of POSIX.1 since day 1 (in 1988).
34924
34925 2000-01-17  Jim Meyering  <meyering@lucent.com>
34926
34927         * lib/interlock: Remove unused file.  Reported by François Pinard.
34928
34929 2000-01-16  Paul Eggert  <eggert@twinsun.com>
34930
34931         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
34932         alert, backslash, formfeed, and vertical tab unnecessarily in
34933         shell quoting style.
34934
34935 2000-01-16  Jim Meyering  <meyering@lucent.com>
34936
34937         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
34938         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
34939         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
34940         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
34941
34942 2000-01-16  Jim Meyering  <meyering@lucent.com>
34943
34944         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
34945         because the latter didn't work.
34946
34947 2000-01-15  Jim Meyering  <meyering@lucent.com>
34948
34949         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
34950         (AC_REPLACE_FUNCS): Add memcpy and memset.
34951         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
34952         Add strpbrk.
34953         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
34954
34955 2000-01-12  Jim Meyering  <meyering@lucent.com>
34956
34957         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
34958         (jm_PREREQ): Use it.
34959         (jm_PREREQ_READUTMP): New macro.
34960         (jm_PREREQ): Use it.
34961
34962 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34963
34964         Quote multibyte characters correctly.
34965         * m4/c-bs-a.m4: New file.
34966         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
34967         (jm_PREREQ): Use it.
34968
34969 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34970
34971         * m4/uintmax_t.m4: Port to autoconf 2.13.
34972
34973 2000-01-08  Jim Meyering  <meyering@ascend.com>
34974
34975         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
34976         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
34977
34978 2000-01-04  Jim Meyering  <meyering@ascend.com>
34979
34980         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
34981         jm_STRUCT_DIRENT_D_TYPE.
34982         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
34983         jm_STRUCT_DIRENT_D_INO.
34984         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
34985         jm_STRUCT_UTIMBUF.
34986         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
34987         renamings.
34988         * m4/utime.m4: Likewise.
34989
34990         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
34991         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
34992
34993 2000-01-03  Paul Eggert  <eggert@twinsun.com>
34994
34995         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
34996         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
34997
34998 2000-01-02  Jim Meyering  <meyering@ascend.com>
34999
35000         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
35001         remember if this is necessary.
35002
35003 1999-12-26  Jim Meyering  <meyering@ascend.com>
35004
35005         * m4/jm-macros.m4: Use it here.
35006         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
35007
35008 1999-12-23  Jim Meyering  <meyering@ascend.com>
35009
35010         * m4/jm-macros.m4: Check for clock_gettime (moved from
35011         fileutils/configure.in)
35012         Check for gettimeofday.
35013
35014 1999-12-20  Jim Meyering  <meyering@ascend.com>
35015
35016         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
35017         autoconf-2.14a-1999-12-20.
35018
35019 1999-12-19  Jim Meyering  <meyering@ascend.com>
35020
35021         * m4/lstat-slash.m4: New file.
35022         * m4/jm-macros.m4: Use the new macro:
35023         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
35024
35025 1999-12-07  Jim Meyering  <meyering@ascend.com>
35026
35027         * m4/perl.m4: Require that File::Compare be available, too.
35028         Too many systems seem to lack it.
35029
35030         * m4/strftime.m4: Add checks for most of the cpp macros tested in
35031         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
35032
35033 1999-11-18  Paul Eggert  <eggert@twinsun.com>
35034
35035         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
35036         problem with the QNX 4.25 shell, which doesn't propagate exit
35037         status of failed commands inside shell assignments.
35038
35039 1999-11-17  Jim Meyering  <meyering@ascend.com>
35040
35041         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
35042
35043 1999-11-07  Jim Meyering  <meyering@ascend.com>
35044
35045         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
35046
35047 1999-11-06  Jim Meyering  <meyering@ascend.com>
35048
35049         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
35050         * m4/jm-macros.m4 (jm_MACROS): Use it here.
35051
35052 1999-11-05  Jim Meyering  <meyering@ascend.com>
35053
35054         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
35055         configure.in of textutils, fileutils, and sh-utils into this one
35056         (shared between those packages) file.
35057         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
35058         AC_STRUCT_ST_BLKSIZE.
35059
35060 1999-11-03  Jim Meyering  <meyering@ascend.com>
35061
35062         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
35063         of AC_CHECK_TYPE checks includes unistd.h.
35064         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
35065         Suggestion from Akim Demaille.
35066
35067 1999-10-30  Jim Meyering  <meyering@ascend.com>
35068
35069         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
35070         m4-quoted string.
35071         * m4/ls-mntd-fs.m4: Likewise.
35072         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
35073         * m4/jm-winsz1.m4: Likewise.
35074
35075         * m4/const.m4: Remove file, since the fix made it into the experimental
35076         version of autoconf.
35077         * m4/mktime.m4: Likewise.
35078
35079         * m4/check-type.m4: Remove file, now that the latest version of
35080         AC_CHECK_TYPE takes a third arg to specify additional #includes.
35081
35082         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
35083         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
35084         AC_CHECK_TYPE.
35085
35086 1999-10-04  Jim Meyering  <meyering@ascend.com>
35087
35088         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
35089
35090 1999-09-22  Paul Eggert  <eggert@twinsun.com>
35091
35092         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
35093         2.95.1 bug with HP-UX 10.20.
35094
35095 1999-09-17  Jim Meyering  <meyering@ascend.com>
35096
35097         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
35098         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
35099         due to missing strdup (against sh-utils-2.0).
35100
35101 1999-08-29  Jim Meyering  <meyering@ascend.com>
35102
35103         * m4/jm-macros.m4: Require jm_BISON.
35104         * m4/bison.m4: New file.
35105
35106 1999-08-17  Paul Eggert  <eggert@twinsun.com>
35107
35108         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
35109         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
35110
35111 1999-08-05  Jim Meyering  <meyering@ascend.com>
35112
35113         * m4/getline.m4: Rename test file from conftestdata to conftest.data
35114         to avoid conflicts with `conftest' on 8+3 filesystems.
35115         Suggestion from Eli Zaretskii.
35116
35117 1999-08-04  Jim Meyering  <meyering@ascend.com>
35118
35119         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
35120         fileutils and sh-utils (textutils's getline test was inadequate).
35121         (AM_FUNC_GETLINE): Run this test.
35122         (AC_CHECK_FUNCS): Check for getdelim.
35123         Reported by Bob Proulx.
35124
35125 1999-08-02  Jim Meyering  <meyering@ascend.com>
35126
35127         * m4/jm-macros.m4: Add a comment.
35128
35129 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35130
35131         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
35132         <inttypes.h> defines strtoumax as a macro (and not as a
35133         function).
35134
35135 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35136
35137         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
35138         that we can shift, multiply and divide unsigned long long
35139         values; Ultrix cc can't do it.
35140
35141 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35142
35143         * m4/mktime.m4: New file, which is a preview of what should appear
35144         in the next public autoconf release.
35145
35146 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35147
35148         * m4/lfs.m4: Remove this file.
35149         * m4/largefile.m4: New file.  It contains the old contents of
35150         lfs.m4, except that all names with prefix AC_LFS have been
35151         changed to use the prefix AC_SYS_LARGEFILE instead, to be
35152         compatible with future autoconf versions.  Also, some minor m4
35153         quoting problems have been fixed.
35154
35155 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35156
35157         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
35158         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
35159         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
35160         and simplify the shell code.
35161
35162 1999-08-01  Jim Meyering  <meyering@ascend.com>
35163
35164         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
35165         m4.
35166
35167 1999-07-20  Jim Meyering  <meyering@ascend.com>
35168
35169         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
35170
35171 1999-07-15  Jim Meyering  <meyering@ascend.com>
35172
35173         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
35174
35175 1999-05-22  Jim Meyering  <meyering@ascend.com>
35176
35177         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
35178
35179 1999-05-20  Jim Meyering  <meyering@ascend.com>
35180
35181         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
35182         Add a colon after each `then' in case $4 is empty.
35183
35184 1999-05-16  Jim Meyering  <meyering@ascend.com>
35185
35186         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
35187
35188 1999-05-10  Jim Meyering  <meyering@ascend.com>
35189
35190         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
35191
35192         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
35193         AC_FUNC_MKTIME.
35194
35195 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
35196
35197         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
35198
35199 1999-05-04  Paul Eggert  <eggert@twinsun.com>
35200
35201         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
35202         not CPPFLAGS, so that linking works correctly in IRIX.
35203
35204 1999-04-30  Paul Eggert  <eggert@twinsun.com>
35205
35206         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
35207
35208 1999-04-20  Paul Eggert  <eggert@twinsun.com>
35209
35210         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
35211         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
35212         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
35213         jm_AC_TYPE_UNSIGNED_LONG_LONG.
35214         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
35215
35216         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
35217
35218 1999-04-20  Jim Meyering  <meyering@ascend.com>
35219
35220         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
35221         AC_REPLACE xstroull if necessary.  From Paul Eggert.
35222         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
35223
35224 1999-04-18  Jim Meyering  <meyering@ascend.com>
35225
35226         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
35227         * m4/jm-macros.m4: Use it.
35228
35229 1999-04-06  Jim Meyering  <meyering@ascend.com>
35230
35231         * m4/strftime.m4: Remove test for %f.
35232
35233 1999-03-29  Jim Meyering  <meyering@ascend.com>
35234
35235         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
35236         superset of the AC_TYPE_* checks in the textutils, fileutils,
35237         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
35238         AC_TYPE_PID_T.
35239
35240 1999-03-28  Jim Meyering  <meyering@ascend.com>
35241
35242         * m4/jm-macros.m4: Define GNU_PACKAGE here.
35243         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
35244         replaced e.g., in the *.sh files of the sh-utils.
35245
35246 1999-03-20  Jim Meyering  <meyering@ascend.com>
35247
35248         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
35249         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
35250         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
35251
35252 1999-03-19  Jim Meyering  <meyering@ascend.com>
35253
35254         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
35255
35256 1999-03-12  Jim Meyering  <meyering@ascend.com>
35257
35258         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
35259
35260 1999-03-07  Jim Meyering  <meyering@ascend.com>
35261
35262         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
35263         declared.
35264
35265 1999-02-17  Jim Meyering  <meyering@ascend.com>
35266
35267         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
35268         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
35269
35270 1999-02-07  Jim Meyering  <meyering@ascend.com>
35271
35272         * m4/group-member.m4: New file -- extracted from sh-utils'
35273         configure.in.
35274
35275         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
35276         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
35277
35278 1999-02-06  Jim Meyering  <meyering@ascend.com>
35279
35280         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
35281         * m4/fnmatch.m4: Likewise.
35282         * m4/getgroups.m4: Likewise.
35283         * m4/lstat.m4: Likewise.
35284         * m4/malloc.m4: Likewise.
35285         * m4/putenv.m4: Likewise.
35286         * m4/realloc.m4: Likewise.
35287         * m4/regex.m4: Likewise.
35288         * m4/stat.m4: Likewise.
35289         * m4/strftime.m4: Likewise.
35290         Suggestion from Alain Magloire.
35291
35292         * m4/chown.m4: Use `.$ac_objext', not `.o'.
35293         * m4/fnmatch.m4: Likewise.
35294         * m4/getgroups.m4: Likewise.
35295         * m4/getline.m4: Likewise.
35296         * m4/lstat.m4: Likewise.
35297         * m4/malloc.m4: Likewise.
35298         * m4/memcmp.m4: Likewise.
35299         * m4/putenv.m4: Likewise.
35300         * m4/realloc.m4: Likewise.
35301         * m4/regex.m4: Likewise.
35302         * m4/stat.m4: Likewise.
35303         * m4/strftime.m4: Likewise.
35304         Suggestion from Alain Magloire.
35305
35306         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
35307         an argument.
35308
35309         * m4/regex.m4: Add a run-time Test for proper operation of
35310         re_compile_pattern.
35311
35312 1999-01-31  Jim Meyering  <meyering@ascend.com>
35313
35314         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
35315
35316 1999-01-30  Jim Meyering  <meyering@ascend.com>
35317
35318         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
35319
35320         * m4/jm-mktime.m4: Make this a wrapper around the official
35321         AM_FUNC_MKTIME rather than my private copy, now that the official one
35322         is up to date.
35323         * m4/mktime.m4: Remove file.
35324
35325         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
35326         * m4/uptime.m4: Likewise.
35327         * m4/uintmax_t.m4: Likewise.
35328
35329 1999-01-28  Jim Meyering  <meyering@ascend.com>
35330
35331         * m4/jm-macros.m4: Use jm_AFS.
35332         * m4/afs.m4: New file (from fileutils' configure.in).
35333
35334         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
35335         * m4/chown.m4: Likewise.
35336         * m4/d-ino.m4: Likewise.
35337         * m4/d-type.m4: Likewise.
35338         * m4/fnmatch.m4: Likewise.
35339         * m4/getgroups.m4: Likewise.
35340         * m4/gettext.m4: Likewise.
35341         * m4/jm-mktime.m4: Likewise.
35342         * m4/jm-winsz2.m4: Likewise.
35343         * m4/lcmessage.m4: Likewise.
35344         * m4/ls-mntd-fs.m4: Likewise.
35345         * m4/malloc.m4: Likewise.
35346         * m4/memcmp.m4: Likewise.
35347         * m4/putenv.m4: Likewise.
35348         * m4/realloc.m4: Likewise.
35349         * m4/st_mtim.m4: Likewise.
35350         * m4/strftime.m4: Likewise.
35351
35352 1999-01-16  Jim Meyering  <meyering@ascend.com>
35353
35354         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
35355         (ARGMATCH_DIE_DECL): Define.
35356
35357 1999-01-12  Jim Meyering  <meyering@ascend.com>
35358
35359         * m4/Makefile.am.in: Rewrite to avoid using fmt.
35360         Reported by Lars Hecking.
35361
35362 1999-01-10  Jim Meyering  <meyering@ascend.com>
35363
35364         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
35365         gross kludge.
35366         * m4/inttypes_h.m4: Likewise.
35367         * m4/lstat.m4: Likewise.
35368         * m4/malloc.m4: Likewise.
35369         * m4/readdir.m4: Likewise.
35370         * m4/realloc.m4: Likewise.
35371         * m4/st_dm_mode.m4: Likewise.
35372         * m4/stat.m4: Likewise.
35373         * m4/utimbuf.m4: Likewise.
35374         * m4/utimes.m4: Likewise.
35375
35376         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
35377         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
35378         comments in config.h.in are meaningful.
35379
35380         * m4/jm-macros.m4: Require autoconf-2.13 here.
35381
35382         * m4/regex.m4: By default, don't use the included regex.c on systems
35383         with glibc 2.  Suggestion from Uli Drepper.
35384
35385 1999-01-02  Jim Meyering  <meyering@ascend.com>
35386
35387         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
35388
35389 1998-12-18  Jim Meyering  <meyering@ascend.com>
35390
35391         * m4/Makefile.am.in (Makefile.am): Simplify rule.
35392         Based on a suggestion from Lars Hecking.
35393
35394 1998-11-16  Paul Eggert  <eggert@twinsun.com>
35395
35396         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
35397
35398 1998-11-16  Jim Meyering  <meyering@ascend.com>
35399
35400         * m4/lfs.m4: Double-quote the `uname...` expression.
35401
35402 1998-11-14  Jim Meyering  <meyering@ascend.com>
35403
35404         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
35405         * m4/stat.m4: Likewise.
35406
35407 1998-11-03  Jim Meyering  <meyering@ascend.com>
35408
35409         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
35410         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
35411
35412 1998-10-18  Jim Meyering  <meyering@ascend.com>
35413
35414         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
35415
35416 1998-10-17  Jim Meyering  <meyering@ascend.com>
35417
35418         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
35419         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
35420         calls for those previously hard-coded headers.  Instead, take a new
35421         parameter.
35422         (jm_CHECK_DECLARATIONS): Reflect interface change.
35423         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
35424         (jm_CHECK_DECL_LOCALTIME_R): New macro.
35425
35426         * m4/mktime.m4: Test for spring-forward gap before long-running test.
35427
35428 1998-10-14  Jim Meyering  <meyering@ascend.com>
35429
35430         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
35431         instead of "TZ=America/Vancouver".  From Paul Eggert.
35432
35433 1998-10-11  Jim Meyering  <meyering@ascend.com>
35434
35435         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
35436         This adds a test for a recently added compatibility fix for mktime.c.
35437         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
35438
35439 1998-09-27  Jim Meyering  <meyering@ascend.com>
35440
35441         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
35442
35443         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
35444         ../configure.in, including a change from Gordon Matzigkeit to allow
35445         cross-compiling for the Hurd.
35446
35447         * m4/glibc.m4: New file/macro to test for the GNU C Library
35448         versions 1 and 2.  From Gordon Matzigkeit.
35449         Indent.
35450
35451 1998-09-21  Jim Meyering  <meyering@ascend.com>
35452
35453         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
35454
35455 1998-08-18  Paul Eggert  <eggert@twinsun.com>
35456
35457         Port nanosecond-resolution times to UnixWare 2.1.2 and
35458         pedantic Solaris 2.6.
35459
35460         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
35461         AC_STRUCT_ST_MTIM.
35462         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
35463         Generate name of ns member, instead of just 1 or undef.
35464         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
35465
35466 1998-08-15  Jim Meyering  <meyering@ascend.com>
35467
35468         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
35469         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
35470         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
35471         instead of jm_TYPE_SSIZE_T.
35472
35473 1998-08-12  Jim Meyering  <meyering@ascend.com>
35474
35475         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
35476
35477 1998-08-02  Jim Meyering  <meyering@ascend.com>
35478
35479         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
35480         in acconfig.h manually.
35481
35482 1998-07-31  Paul Eggert  <eggert@twinsun.com>
35483
35484         * m4/st_mtim.m4: New file.
35485
35486 1998-07-28  Jim Meyering  <meyering@ascend.com>
35487
35488         * m4/utimes.m4: Undef stat.
35489
35490 1998-07-25  Jim Meyering  <meyering@ascend.com>
35491
35492         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
35493         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
35494
35495 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
35496
35497         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
35498         uid and gid actually remain unchanged.
35499
35500 1998-07-07  Jim Meyering  <meyering@ascend.com>
35501
35502         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
35503
35504 1998-07-04  Jim Meyering  <meyering@ascend.com>
35505
35506         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
35507         to prove that this macro can be used in packages without regex.c.
35508
35509 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
35510
35511         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
35512         is to be used.
35513
35514 1998-07-03  Jim Meyering  <meyering@ascend.com>
35515
35516         * m4/gettext.m4: Add -lintl if it's found to be necessary.
35517
35518         * m4/gettext.m4: New file -- from gettext-0.10.35.
35519         * m4/lcmessage.m4: Likewise.
35520         * m4/progtest.m4: Likewise.
35521
35522         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
35523         * m4/jm-macros.m4: Require the new macro.
35524
35525 1998-06-29  Jim Meyering  <meyering@ascend.com>
35526
35527         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
35528         for the definition of NGROUPS (used in a system header included
35529         by sys/mount.h).
35530
35531 1998-06-28  Jim Meyering  <meyering@ascend.com>
35532
35533         * m4/ls-mntd-fs.m4: New file.
35534         * m4/fstypename.m4: New file.
35535
35536         * m4/jm-macros.m4: Require the new macro.
35537         * m4/jm-glibc-io.m4: New file.
35538
35539 1998-05-19  Jim Meyering  <meyering@ascend.com>
35540
35541         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
35542         * m4/lchown.m4: New file.
35543
35544         * m4/Makefile.am.in: New file.
35545         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
35546
35547 1998-05-14  Jim Meyering  <meyering@ascend.com>
35548
35549         * m4/Makefile.am (EXTRA_DIST): Add them.
35550         * m4/jm-macros.m4: New file.
35551         * m4/utimbuf.m4: New file.
35552
35553 1998-05-12  Jim Meyering  <meyering@ascend.com>
35554
35555         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
35556
35557 1998-05-11  Jim Meyering  <meyering@ascend.com>
35558
35559         * m4/isc-posix.m4: New file.
35560
35561 1998-05-10  Jim Meyering  <meyering@ascend.com>
35562
35563         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
35564
35565 1998-05-09  Jim Meyering  <meyering@ascend.com>
35566
35567         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
35568         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
35569         with automake.
35570
35571         * m4/ssize_t.m4: New file.
35572         * m4/mktime.m4: Remove file -- the new automake has this now.
35573
35574 1998-04-26  Jim Meyering  <meyering@ascend.com>
35575
35576         * m4/assert.m4: New file.
35577         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
35578
35579 1998-04-05  Jim Meyering  <meyering@ascend.com>
35580
35581         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
35582         (jm_PREREQ): Use it here.
35583
35584 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
35585
35586         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
35587         in acconfig.h.
35588
35589 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
35590
35591         * m4/prereq.m4: New file.
35592         * m4/error.m4: New file.
35593         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
35594
35595 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
35596
35597         * m4/getline.m4: Don't set am_cv_func_working_getline before the
35598         cache-check for the same variable -- that defeated the purpose of
35599         the test; the test program was never run.  This was a problem only
35600         on systems with losing getline functions -- HP-UX 10.20 is one.
35601         Reported by Bjorn Helgaas.
35602
35603 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
35604
35605         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
35606
35607 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
35608
35609         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
35610
35611         * m4/const.m4: New file.  Use an initializer in this declaration
35612         typedef int charset[2]; const charset x;
35613         Reported by Bob Glickstein.
35614
35615 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
35616
35617         * m4/chown.m4: Fix reversed types on -1 args to chown.
35618         From Kaveh Ghazi.
35619
35620 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
35621
35622         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
35623         Add lseek and memchr.
35624
35625         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
35626         T.E.Dickey <dickey@clark.net> said that some older preprocessors
35627         have a 20-character limit on names.
35628
35629 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
35630
35631         * m4/inttypes_h.m4: New file.
35632         * m4/uintmax_t.m4: New file.
35633         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
35634
35635 Copyright (C) 1997-2007 Free Software Foundation, Inc.
35636 Copying and distribution of this file, with or without modification,
35637 are permitted provided the copyright notice and this notice are preserved.