Fix a compilation error of realloc.c on OSF/1 4.0d and similar bugs.
[gnulib.git] / ChangeLog
1 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2             Bruno Haible  <bruno@clisp.org>
3
4         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
5         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
6         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
7         (malloc): Undefine also before including <stdlib.h>.
8         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
9         Needed on OSF/1 4.0.
10
11 2007-11-05  Jim Meyering  <meyering@redhat.com>
12
13         git-version-gen: sync from coreutils.
14         * build-aux/git-version-gen: Add comments.
15         Change the first '-' to '.' in the snapshot version string,
16         e.g., 6.9-377-08144 -> 6.9.377-08144
17         Remove first parameter.
18         Don't declare a version "-dirty" merely because a time
19         stamp has changed.
20
21 2007-11-04  Bruno Haible  <bruno@clisp.org>
22
23         * lib/lock.h: Protect all macro definitions containing an 'if'
24         statement through a "do { ... } while (0)".
25         * lib/tls.h: Likewise.
26
27 2007-11-04  Bruno Haible  <bruno@clisp.org>
28
29         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
30
31 2007-11-04  Bruno Haible  <bruno@clisp.org>
32
33         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
34         * modules/fprintf-posix (Depends-on): Add nocrash.
35         * modules/snprintf-posix (Depends-on): Likewise.
36         * modules/sprintf-posix (Depends-on): Likewise.
37         * modules/vasnprintf-posix (Depends-on): Likewise.
38         * modules/vasprintf-posix (Depends-on): Likewise.
39         * modules/vfprintf-posix (Depends-on): Likewise.
40         * modules/vsnprintf-posix (Depends-on): Likewise.
41         * modules/vsprintf-posix (Depends-on): Likewise.
42         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
43         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
44         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
45         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
46         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
47         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
48         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
49
50 2007-11-04  Bruno Haible  <bruno@clisp.org>
51
52         * modules/nocrash: New file.
53         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
54         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
55
56 2007-11-04  Bruno Haible  <bruno@clisp.org>
57
58         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
59         precision handling.
60         * tests/test-vasprintf-posix.c (test_function): Likewise.
61         * tests/test-snprintf-posix.h (test_function): Likewise.
62         * tests/test-sprintf-posix.h (test_function): Likewise.
63
64         Fix *printf behaviour for large precisions on mingw and BeOS.
65         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
66         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
67         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
68         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
69         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
70         gl_PRINTF_PRECISION and test its result. Invoke
71         gl_PREREQ_VASNPRINTF_PRECISION.
72         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
73         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
74         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
75         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
76         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
77         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
78         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
79         * doc/functions/fprintf.texi: Update.
80         * doc/functions/printf.texi: Update.
81         * doc/functions/snprintf.texi: Update.
82         * doc/functions/sprintf.texi: Update.
83         * doc/functions/vfprintf.texi: Update.
84         * doc/functions/vprintf.texi: Update.
85         * doc/functions/vsnprintf.texi: Update.
86         * doc/functions/vsprintf.texi: Update.
87
88 2007-11-04  Bruno Haible  <bruno@clisp.org>
89
90         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
91
92 2007-11-04  Bruno Haible  <bruno@clisp.org>
93
94         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
95         Reported by Sylvain Beucler <beuc@gnu.org>.
96
97 2007-11-03  Bruno Haible  <bruno@clisp.org>
98
99         * tests/test-fprintf-posix2.sh: New file.
100         * tests/test-fprintf-posix2.c: New file.
101         * modules/fprintf-posix-tests (Files): Add them.
102         (TESTS): Add test-fprintf-posix2.sh.
103         (configure.ac): Check for getrlimit and setrlimit.
104         (check_PROGRAMS): Add test-fprintf-posix2.
105
106         * tests/test-printf-posix2.sh: New file.
107         * tests/test-printf-posix2.c: New file.
108         * modules/printf-posix-tests (Files): Add them.
109         (TESTS): Add test-printf-posix2.sh.
110         (configure.ac): Check for getrlimit and setrlimit.
111         (check_PROGRAMS): Add test-printf-posix2.
112
113         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
114         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
115         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
116         (decode_double): New function, copied from decode_long_double.
117         (scale10_round_decimal_decoded): New function, extracted from
118         scale10_round_decimal_long_double.
119         (scale10_round_decimal_long_double): Use it.
120         (scale10_round_decimal_double): New function.
121         (floorlog10): New function.
122         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
123         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
124         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
125         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
126         gl_PRINTF_ENOMEM and test its result. Invoke
127         gl_PREREQ_VASNPRINTF_ENOMEM.
128         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
129         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
130         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
131         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
132         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
133         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
134         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
135         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
136         * modules/snprintf-posix (Depends-on): Likewise.
137         * modules/sprintf-posix (Depends-on): Likewise.
138         * modules/vasnprintf-posix (Depends-on): Likewise.
139         * modules/vasprintf-posix (Depends-on): Likewise.
140         * modules/vfprintf-posix (Depends-on): Likewise.
141         * modules/vsnprintf-posix (Depends-on): Likewise.
142         * modules/vsprintf-posix (Depends-on): Likewise.
143         * doc/functions/fprintf.texi: Update.
144         * doc/functions/printf.texi: Update.
145         * doc/functions/snprintf.texi: Update.
146         * doc/functions/sprintf.texi: Update.
147         * doc/functions/vfprintf.texi: Update.
148         * doc/functions/vprintf.texi: Update.
149         * doc/functions/vsnprintf.texi: Update.
150         * doc/functions/vsprintf.texi: Update.
151
152 2007-11-03  Bruno Haible  <bruno@clisp.org>
153
154         * modules/frexp-nolibm-tests: New file.
155
156         * modules/frexp-nolibm: New file.
157         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
158
159 2007-11-03  Bruno Haible  <bruno@clisp.org>
160
161         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
162         value is C99 compliant.
163         Needed for OSF/1 5.1.
164
165 2007-11-03  Bruno Haible  <bruno@clisp.org>
166
167         Fix out-of-memory handling of vasnprintf.
168         * lib/printf-parse.c: Include <errno.h>.
169         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
170         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
171         is already set.
172
173 2007-11-02  Eric Blake  <ebb9@byu.net>
174
175         Fix tests on cygwin.
176         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
177
178 2007-11-01  Bruno Haible  <bruno@clisp.org>
179
180         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
181         warning.
182         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
183         needed for POSIX compatibility.
184
185 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
186
187         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
188         for compatibility with GNU.
189
190 2007-11-01  Bruno Haible  <bruno@clisp.org>
191
192         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
193         (putenv): Renamed from rpl_putenv. Change argument type from
194         'const char *' to 'char *'.
195         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
196         of defining putenv in config.h, just set REPLACE_PUTENV.
197         * modules/putenv (Depends-on): Add stdlib.
198         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
199         (Include): Use <stdlib.h>.
200         * lib/stdlib.in.h (putenv): New declaration.
201         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
202         REPLACE_PUTENV.
203         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
204         REPLACE_PUTENV.
205         Needed for MacOS X 10.5.0.
206         Reported by Peter O'Gorman <peter@pogma.com>.
207
208 2007-11-01  Jim Meyering  <meyering@redhat.com>
209
210         Treat an empty date string exactly like "0".
211         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
212         if the remaining date string (to be parsed) is empty, use "0".
213         Reported by Mischa Molhoek and discussed in this thread:
214         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
215
216 2007-10-31  Bruno Haible  <bruno@clisp.org>
217
218         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
219         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
220         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
221         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
222         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
223         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
224
225 2007-10-31  Bruno Haible  <bruno@clisp.org>
226
227         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
228         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
229         (AC_TYPE_LONG_LONG_INT): Use it.
230         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
231         it as well.
232         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
233         to m4/longlong.m4.
234         * modules/stdint (Files): Remove m4/ulonglong.m4.
235         * modules/strtoull (Files): Use m4/longlong.m4 instead of
236         m4/ulonglong.m4.
237         * modules/strtoumax (Files): Likewise.
238
239 2007-10-30  Bruno Haible  <bruno@clisp.org>
240
241         * modules/xvasprintf-posix: New file.
242         Suggested by Eric Blake.
243
244 2007-10-30  Bruno Haible  <bruno@clisp.org>
245
246         * modules/xprintf-posix-tests: New file.
247         * tests/test-xprintf-posix.sh: New file.
248         * tests/test-xprintf-posix.c: New file.
249         * tests/test-xfprintf-posix.c: New file.
250
251         * modules/xprintf-posix: New file.
252
253 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
254
255         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
256         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
257         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
258
259 2007-10-29  Bruno Haible  <bruno@clisp.org>
260
261         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
262         contain the special marker '_cv_'.
263         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
264         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
265         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
266         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
267         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
268         Reported by Ralf Wildenhues.
269
270 2007-10-29  Bruno Haible  <bruno@clisp.org>
271
272         * gnulib-tool (func_import): When --lgpl is not specified, set
273         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
274         GPLv3.
275         Reported by Simon Josefsson.
276
277 2007-10-28  Bruno Haible  <bruno@clisp.org>
278
279         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
280         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
281         HAVE_DECL_ISFINITE.
282         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
283         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
284         HAVE_DECL_ISFINITE.
285
286 2007-10-28  Bruno Haible  <bruno@clisp.org>
287
288         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
289         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
290
291 2007-10-28  Bruno Haible  <bruno@clisp.org>
292
293         Fix link errors with Sun C 5.0 on Solaris 10.
294         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
295         function is declared but not present in the compiler's libm.
296         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
297         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
298         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
299         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
300         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
301         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
302         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
303         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
304         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
305         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
306         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
307         HAVE_DECL_FLOORL.
308
309 2007-10-28  Bruno Haible  <bruno@clisp.org>
310
311         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
312         gl_FUNC_FLOORL. Cache the result.
313         (gl_FUNC_FLOORL): Use it.
314         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
315         gl_FUNC_CEILL. Cache the result.
316         (gl_FUNC_CEILL): Use it.
317
318         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
319         gl_FUNC_FLOOR. Cache the result.
320         (gl_FUNC_FLOOR): Use it.
321         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
322         gl_FUNC_CEIL. Cache the result.
323         (gl_FUNC_CEIL): Use it.
324
325         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
326         gl_FUNC_FLOORF. Cache the result.
327         (gl_FUNC_FLOORF): Use it.
328         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
329         gl_FUNC_CEILF. Cache the result.
330         (gl_FUNC_CEILF): Use it.
331
332 2007-10-28  Bruno Haible  <bruno@clisp.org>
333
334         * gnulib-tool: Allow specifying the LGPL version number through
335         --lgpl=2 or --lgpl=3.
336         (func_usage): Document --lgpl with argument.
337         Handle --lgpl=... arguments.
338         (func_import): Recognize also gl_LGPL calls with an argument. When
339         --lgpl=2 is used and the module's license is just LGPL, report an
340         error. Set sed_transform_lib_file according to the lgpl variable. In
341         the generated files, use --lgpl or gl_LGPL invocations with argument,
342         if necessary.
343         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
344         an LGPv2+ license.
345         * doc/gnulib-tool.texi (Modified imports): Update explanation of
346         gl_LGPL macro.
347
348 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
349             Bruno Haible  <bruno@clisp.org>
350
351         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
352         (u16_uctomb_aux): Likewise.
353         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
354         !HAVE_INLINE.
355         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
356
357 2007-10-28  Bruno Haible  <bruno@clisp.org>
358
359         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
360         Invoke AM_GETTEXT_OPTION if it exists.
361         * modules/vasprintf: Likewise.
362         * modules/verror: Likewise.
363         * modules/xprintf: Likewise.
364         * modules/xvasprintf: Likewise.
365
366 2007-10-27  Ben Pfaff  <blp@gnu.org>
367
368         * lib/math.in.h: Define isfinite macro and prototypes for
369         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
370         implementations.
371         * m4/math_h.m4: New substitutions for isfinite module.
372         * lib/isfinite.c: New file.
373         * m4/isfinite.m4: New file.
374         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
375         * modules/isfinite: New file.
376         * modules/isfinite-tests: New file.
377         * tests/tests-isfinite.c: New file.
378         * doc/functions/isfinite.texi: Mention isfinite module.
379         * MODULES.html.sh: Mention new module.
380
381 2007-10-27  Ben Pfaff  <blp@gnu.org>
382
383         Ralf Wildenhues reported that Tru64 4.0D declares the round
384         functions but does not have definitions.
385         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
386         cannot be found in any library, set the output variable to
387         "missing" instead of "".
388         * m4/round.m4: Also use our substitute if we cannot find round in
389         any library, even if it is declared.
390         * m4/roundf.m4: Likewise for roundf.
391         * m4/roundl.m4: Likewise for roundl.
392         * lib/math.in.h: Undefine roundf, round, roundl before defining
393         their replacements, to allow for hypothetical systems where these
394         may be defined as macros but not available in libraries.
395
396 2007-10-27  Bruno Haible  <bruno@clisp.org>
397
398         * doc/gnulib.texi: Invoke @firstparagraphindent.
399         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
400         changes in gnulib.
401         (Source changes): New section.
402
403 2007-10-26  Bruno Haible  <bruno@clisp.org>
404
405         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
406         borrowed from autoconf.
407
408 2007-10-26  Bruno Haible  <bruno@clisp.org>
409
410         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
411         strerror returned the empty string. Needed on HP-UX 11.00.
412
413 2007-10-24  Micah Cowan  <micah@cowan.name>
414
415         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
416         * build-aux/bootstrap: Remove support for now-unnecessary option,
417         --cvs-user, and envvars CVS_USER, CVS_RSH.
418
419 2007-10-24  Jim Meyering  <meyering@redhat.com>
420
421         Avoid diagnostics from sha1sum when there is no cached checksum.
422         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
423         if the po.s1 file hasn't been created yet.
424
425         * build-aux/bootstrap: Sync from coreutils:
426         2007-10-24  Jim Meyering  <meyering@redhat.com>
427         Get gnulib from the git repository, not from an obsolete cvs one.
428         * build-aux/bootstrap: Suggestion from Micah Cowan.
429         2007-10-04  Jim Meyering  <jim@meyering.net>
430         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
431         (update_po_files): Work also when there are no .po files in po/.
432
433 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
434
435         * README: Append ".git" to git and cg examples.
436         Problem reported by Benoit Sigoure.
437
438 2007-10-23  Micah Cowan  <micah@cowan.name>
439
440         * users.txt: Add wget.
441
442 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
443
444         Fix linking of some unistdio tests on FreeBSD.
445         * modules/unistdio/u16-vsnprintf-tests
446         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
447         * modules/unistdio/u16-vsprintf-tests
448         (test_u16_vsnprintf1_LDADD): Likewise.
449         * modules/unistdio/u32-vsnprintf-tests
450         (test_u32_vsnprintf1_LDADD): Likewise.
451         * modules/unistdio/u32-vsprintf-tests
452         (test_u32_vsprintf1_LDADD): Likewise.
453         * modules/unistdio/u8-vsnprintf-tests
454         (test_u8_vsnprintf1_LDADD): Likewise.
455         * modules/unistdio/u8-vsprintf-tests
456         (test_u8_vsprintf1_LDADD): Likewise.
457         * modules/unistdio/ulc-vsnprintf-tests
458         (test_ulc_vsnprintf1_LDADD): Likewise.
459         * modules/unistdio/ulc-vsprintf-tests
460         (test_ulc_vsprintf1_LDADD): Likewise.
461
462         Fix linking of some uniconv tests on FreeBSD.
463         * modules/uniconv/u16-conv-from-enc-tests
464         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
465         * modules/uniconv/u16-conv-to-enc-tests
466         (test_u16_conv_to_enc_LDADD): Likewise.
467         * modules/uniconv/u16-strconv-from-enc-tests
468         (test_u16_strconv_from_enc_LDADD): Likewise.
469         * modules/uniconv/u16-strconv-to-enc-tests
470         (test_u16_strconv_to_enc_LDADD): Likewise.
471         * modules/uniconv/u32-conv-from-enc-tests
472         (test_u32_conv_from_enc_LDADD): Likewise.
473         * modules/uniconv/u32-conv-to-enc-tests
474         (test_u32_conv_to_enc_LDADD): Likewise.
475         * modules/uniconv/u32-strconv-from-enc-tests
476         (test_u32_strconv_from_enc_LDADD): Likewise.
477         * modules/uniconv/u32-strconv-to-enc-tests
478         (test_u32_strconv_to_enc_LDADD): Likewise.
479         * modules/uniconv/u8-conv-from-enc-tests
480         (test_u8_conv_from_enc_LDADD): Likewise.
481         * modules/uniconv/u8-conv-to-enc-tests
482         (test_u8_conv_to_enc_LDADD): Likewise.
483         * modules/uniconv/u8-strconv-from-enc-tests
484         (test_u8_strconv_from_enc_LDADD): Likewise.
485         * modules/uniconv/u8-strconv-to-enc-tests
486         (test_u8_strconv_to_enc_LDADD): Likewise.
487
488 2007-10-22  Bruno Haible  <bruno@clisp.org>
489
490         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
491         size.
492
493 2007-10-22  Eric Blake  <ebb9@byu.net>
494
495         Tweak x*printf documentation.
496         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
497         variable name and comments.
498         Suggested by Bruno Haible.
499
500 2007-10-22  Bruno Haible  <bruno@clisp.org>
501
502         * lib/acl.c (copy_acl): Fix file name in comment.
503
504 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
505
506         Fix Tru64 problem with stdbool.h.
507         * lib/stdbool.in.h (false, true):
508         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
509         Don't declare as an enum in this situation; it runs afoul of Tru64.
510         Problem reported by Steven M. Schweda in
511         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
512
513 2007-10-22  Eric Blake  <ebb9@byu.net>
514
515         Also wrap vf?printf.
516         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
517         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
518         (xvprintf, xvfprintf): New functions.
519
520 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
521
522         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
523         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
524
525         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
526         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
527
528 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
529
530         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
531         by Bruno Haible.
532
533 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
534
535         * lib/getloadavg.c
536         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
537         Undef `sys' after including sys/table.h, for Tru64 4.0D.
538
539         * tests/test-i-ring.c: Work for C89.
540
541 2007-10-22  Bruno Haible  <bruno@clisp.org>
542
543         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
544         -1u, in preprocessor expression, so that we don't test for the bug
545         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
546         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
547
548 2007-10-22  Eric Blake  <ebb9@byu.net>
549
550         * tests/test-yesno.sh: Silence stderr during test.
551
552 2007-10-22  Simon Josefsson  <simon@josefsson.org>
553
554         * modules/crypto/gc-camellia: New file.
555
556         * m4/gc-camellia.m4: New file.
557
558         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
559
560         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
561
562 2007-10-22  Simon Josefsson  <simon@josefsson.org>
563
564         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
565         --help to stdout.  Reported by sms@antinode.org (Steven
566         M. Schweda).
567
568 2007-10-22  Simon Josefsson  <simon@josefsson.org>
569
570         * users.txt: Fix link to libksba.
571
572 2007-10-21  Ben Pfaff  <blp@gnu.org>
573
574         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
575         round.c roundf implementation that depends on floorf and ceilf to
576         be tested unconditionally.
577
578 2007-10-21  Ben Pfaff  <blp@gnu.org>
579
580         * m4/check-libm-func.m4: Removed.
581         * m4/check-math-lib.m4: New file.
582         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
583         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
584         definition and lack of AC_LIBOBJ([roundf]).
585         * m4/roundl.m4: Ditto, and similarly for roundl.
586         * modules/round: Reference new m4 file.
587         * modules/roundf: Ditto.
588         * modules/roundl: Ditto.
589         * tests/test-round2.c (main): Use ROUND instead of round.
590         Bug report from Bruno Haible.
591
592 2007-10-21  Bruno Haible  <bruno@clisp.org>
593
594         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
595         context.
596
597 2007-10-21  Bruno Haible  <bruno@clisp.org>
598
599         * tests/test-wcwidth.c (main): Allow negative result for some control
600         characters.
601
602         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
603         Needed on OSF/1 5.1.
604
605 2007-10-21  Bruno Haible  <bruno@clisp.org>
606
607         * tests/test-floorf1.c: Include isnanf.h.
608         (main): Use isnanf() instead of isnan().
609         * tests/test-ceilf1.c: Include isnanf.h.
610         (main): Use isnanf() instead of isnan().
611         * tests/test-truncf1.c: Include isnanf.h.
612         (main): Use isnanf() instead of isnan().
613         * tests/test-roundf1.c: Include isnanf.h.
614         (main): Use isnanf() instead of isnan().
615
616 2007-10-21  Eric Blake  <ebb9@byu.net>
617
618         * users.txt: Update URL for m4.
619
620 2007-10-21  Bruno Haible  <bruno@clisp.org>
621
622         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
623
624 2007-10-21  Bruno Haible  <bruno@clisp.org>
625
626         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
627         Git's management files if the CVS files are not present.
628
629 2007-10-20  Bruno Haible  <bruno@clisp.org>
630
631         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
632         gcc-3.4.x.
633
634 2007-10-20  Ben Pfaff  <blp@gnu.org>
635
636         * lib/math.in.h: Declare round, roundf, roundl if we are providing
637         implementations.
638         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
639         * lib/round.c: New file.
640         * lib/roundf.c: New file.
641         * lib/roundl.c: New file.
642         * m4/round.m4: New file.
643         * m4/roundf.m4: New file.
644         * m4/roundl.m4: New file.
645         * m4/check-libm-func-m4: New file.
646         * modules/math: Replace round, roundf, roundl related @VARS@ in
647         math.in.h.
648         * modules/round: New file.
649         * modules/round-tests: New file.
650         * modules/roundf: New file.
651         * modules/roundf-tests: New file.
652         * modules/roundl: New file.
653         * modules/roundl-tests: New file.
654         * tests/test-round1.c: New file.
655         * tests/test-round2.c: New file.
656         * tests/test-roundf1.c: New file.
657         * tests/test-roundf2.c: New file.
658         * tests/test-roundl.c: New file.
659         * doc/functions/round.texi: Mention round module.
660         * doc/functions/roundf.texi: Mention roundf module.
661         * doc/functions/roundl.texi: Mention roundl module.
662         * MODULES.html.sh: Mention new modules.
663         Thanks to Bruno Haible for suggestions.
664
665 2007-10-20  Jim Meyering  <meyering@redhat.com>
666
667         * lib/xprintf.c: Include <config.h> unconditionally.
668
669         Change xprintf's license to GPL.
670         * modules/xprintf (License): s/LGPL/GPL/, since this module
671         depends on modules (exit and exitfail) which are GPL.
672         Suggestion from Bruno Haible.
673
674         xprintf fixes.
675         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
676         Use a clearer diagnostic.
677         Patch from Bruno Haible.
678
679 2007-10-20  Bruno Haible  <bruno@clisp.org>
680
681         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
682         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
683         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
684
685 2007-10-20  Bruno Haible  <bruno@clisp.org>
686
687         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
688         precision in the comparison result > x - 1 or similar.
689         * tests/test-ceilf2.c (correct_result_p): Likewise.
690         * tests/test-truncf2.c (correct_result_p): Likewise.
691         * tests/test-trunc2.c (correct_result_p): Likewise.
692         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
693
694 2007-10-20  Bruno Haible  <bruno@clisp.org>
695
696         * modules/ceil: New file.
697         * m4/ceil.m4: New file.
698         * doc/functions/ceil.texi: Mention the 'ceil' module.
699
700 2007-10-20  Bruno Haible  <bruno@clisp.org>
701
702         * modules/floor: New file.
703         * m4/floor.m4: New file.
704         * doc/functions/floor.texi: Mention the 'floor' module.
705
706 2007-10-20  Bruno Haible  <bruno@clisp.org>
707
708         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
709         of %a.
710         * modules/floorf-tests (Depends-on): Likewise.
711         * modules/truncf-tests (Depends-on): Likewise.
712         * modules/trunc-tests (Depends-on): Likewise.
713         Reported by Ben Pfaff.
714
715 2007-10-19  Jim Meyering  <meyering@redhat.com>
716
717         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
718         Don't bother testing specific errno values.  Just test ferror.
719
720         New module: xprintf
721         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
722
723 2007-10-19  Bruno Haible  <bruno@clisp.org>
724
725         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
726         syntax.
727         * modules/javaexec (Makefile.am): Likewise.
728         * modules/relocatable-prog (Makefile.am): Likewise.
729         Suggested by Jim Meyering.
730
731 2007-10-18  Bruno Haible  <bruno@clisp.org>
732
733         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
734         Reported by Jim Meyering.
735
736 2007-10-18  Eric Blake  <ebb9@byu.net>
737
738         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
739
740 2007-10-18  Bruno Haible  <bruno@clisp.org>
741
742         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
743         the format string into writable memory. Needed in Fortify conditions.
744
745 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
746             Bruno Haible  <bruno@clisp.org>
747
748         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
749         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
750         * modules/trim (Depends-on): Add mbchar.
751         (configure.ac): Add gl_FUNC_MBRTOWC.
752         (Makefile.am): Augment lib_SOURCES.
753
754 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
755
756         Modify glob.c to use fstatat and dirfd, to simplify it.
757         Suggested by Eric Blake.
758         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
759         Don't include <stdbool.h>; not used.
760         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
761         (link_exists_p): Simplify implementation, since we can now assume
762         dirfd and fstatat.
763         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
764
765 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
766
767         * gnulib-tool (func_get_dependencies): Fix sed script to
768         match only tests.
769
770 2007-10-17  Bruno Haible  <bruno@clisp.org>
771
772         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
773         allow locale names without encoding suffix.
774         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
775         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
776
777 2007-10-16  Bruno Haible  <bruno@clisp.org>
778
779         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
780         * lib/getgroups.c (getgroups): Likewise.
781         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
782
783 2007-10-16  Bruno Haible  <bruno@clisp.org>
784
785         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
786         * modules/malloc-posix (License): Likewise.
787         * modules/realloc-posix (License): Likewise.
788         * modules/calloc-posix (License): Likewise.
789         * modules/intprops (License): Change from GPL to LGPL, with
790         Paul Eggert's approval.
791
792 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
793
794         Merge glibc changes into lib/glob.c.
795
796         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
797         2007-10-15 04:59:03 UTC.  Here are the changes:
798
799         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
800
801         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
802
803         * lib/glob.c: Add some branch prediction throughout.
804
805         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
806
807         [BZ #5103]
808         * lib/glob.c (glob): Recognize patterns starting \/.
809
810         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
811
812         [BZ #3996]
813         * lib/glob.c (attribute_hidden): Define if not defined.
814         (glob): Unescape dirname, filename or username when needed and not
815         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
816         is NULL.  Handle unescaped [ in pattern without closing ].
817         Don't pass GLOB_CHECK down to recursive glob for directories.
818         (__glob_pattern_type): New function.
819         (__glob_pattern_p): Implement using __glob_pattern_type.
820         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
821         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
822         Remove unreachable code.
823
824         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
825
826         * lib/glob.c (glob_in_dir): Add some comments and asserts to
827         explain why there are no leaks.
828
829         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
830
831         [BZ #3253]
832         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
833         time, rather allocate increasingly bigger arrays of pointers, if
834         possible with alloca, if too large with malloc.
835
836 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
837
838         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
839         Problem reported by H.Merijn Brand in
840         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
841         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
842         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
843
844 2007-10-15  Bruno Haible  <bruno@clisp.org>
845
846         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
847         with explicit rpl_ prefix.
848         * lib/fopen.c (fopen): Likewise.
849         * lib/freopen.c (freopen): Likewise.
850         * lib/iconv.c (iconv): Likewise.
851         * lib/iconv_close.c (iconv_close): Likewise.
852
853 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
854
855         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
856
857 2007-10-15  Bruno Haible  <bruno@clisp.org>
858
859         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
860         <stddef.h> instead of <stdlib.h> since we only need NULL.
861         Reported by Ben Pfaff <blp@cs.stanford.edu>.
862
863 2007-10-15  Bruno Haible  <bruno@clisp.org>
864
865         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
866         Replace paragraph talking about LIBOBJS.
867         Reported by Colin Watson <cjwatson@debian.org>.
868
869 2007-10-15  Bruno Haible  <bruno@clisp.org>
870
871         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
872         <stdlib.h> before using NULL.
873
874 2007-10-15  Simon Josefsson  <simon@josefsson.org>
875
876         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
877         Reported by Albert Chin <china@thewrittenword.com>.
878
879 2007-10-14  Bruno Haible  <bruno@clisp.org>
880
881         * modules/iconv_open-utf-tests: New file.
882         * tests/test-iconv-utf.c: New file.
883
884         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
885         * modules/iconv_open-utf: New file.
886         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
887         (iconv, iconv_close): New declarations.
888         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
889         be defined.
890         (iconv_open): Add special handling of conversion between UTF-8 and
891         UTF-{16,32}{BE,LE}.
892         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
893         * lib/iconv_close.c: New file.
894         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
895         gl_FUNC_ICONV_OPEN.
896         (gl_FUNC_ICONV_OPEN): Use it.
897         (gl_FUNC_ICONV_OPEN_UTF): New macro.
898         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
899         and REPLACE_ICONV_UTF.
900         * modules/iconv_open (Depends-on): Add c-strcase.
901         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
902         ICONV_CONST.
903         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
904
905 2007-10-13  Albert Chin  <china@thewrittenword.com>
906             Bruno Haible  <bruno@clisp.org>
907
908         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
909         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
910
911 2007-10-13  Bruno Haible  <bruno@clisp.org>
912
913         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
914         defined, use the ISO C99 inline semantics.
915         * lib/argp.h (ARGP_EI): Likewise.
916
917 2007-10-13  Bruno Haible  <bruno@clisp.org>
918
919         Handle 'inline' change in gcc 4.3.0.
920         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
921         argp_fmtstream_write, argp_fmtstream_set_lmargin,
922         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
923         argp_fmtstream_point): Disable 'extern' declaration if the function
924         definition is going to be provided inline.
925         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
926         semantics, not the ISO C99 inline semantics.
927         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
928         'extern' declaration if the function definition is going to be provided
929         inline.
930         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
931         the GNU C inline semantics, not the ISO C99 inline semantics. With
932         GCC 4.2, avoid a warning.
933
934 2007-10-13  Bruno Haible  <bruno@clisp.org>
935
936         * lib/freading.h (freading): Enable the use of __freading for
937         glibc >= 2.7.
938         * lib/freading.c (freading): Likewise.
939
940 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
941
942         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
943         "warning: C99 inline functions are not supported; using GNU89".
944
945 2007-10-12  Bruno Haible  <bruno@clisp.org>
946
947         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
948         of 2.
949         * tests/test-ceilf2.c: New file.
950         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
951
952         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
953         * modules/ceilf-tests: Update.
954
955 2007-10-12  Bruno Haible  <bruno@clisp.org>
956
957         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
958         of 2.
959         * tests/test-floorf2.c: New file.
960         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
961
962         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
963         * modules/floorf-tests: Update.
964
965 2007-10-12  Bruno Haible  <bruno@clisp.org>
966
967         * tests/test-trunc2.c: New file.
968         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
969
970         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
971         * modules/trunc-tests: Update.
972
973 2007-10-12  Bruno Haible  <bruno@clisp.org>
974
975         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
976         of 2.
977         * tests/test-truncf2.c: New file.
978         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
979
980         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
981         * modules/truncf-tests: Update.
982
983 2007-10-11  Eric Blake  <ebb9@byu.net>
984
985         Don't claim strerror is broken on Interix.
986         * doc/functions/strerror.texi (strerror): Known broken systems are
987         now Solaris 8, and not Interix.
988         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
989         Interix on cross-compile.
990         Reported by Martin Koeppe in
991         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
992
993 2007-10-11  Bruno Haible  <bruno@clisp.org>
994
995         * modules/i-ring-tests: New file.
996         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
997         instead of assert.
998
999 2007-10-11  Bruno Haible  <bruno@clisp.org>
1000
1001         * modules/filenamecat-tests: New file.
1002         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
1003         * lib/filenamecat.c: Remove test code.
1004
1005 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
1006
1007         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
1008
1009         * lib/strerror.c: Include <string.h> always, to test interface,
1010         and to remove the need for the dummy.
1011         Include intprops.h to compute width instead of doing it ourselves
1012         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
1013         (strerror): Define it to return NULL if there's no system strerror.
1014         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
1015         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
1016         ancient pre-strerror Unix systems well any more.  Saying "unknown
1017         system error" is enough.
1018         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
1019         simpler strerror.c implementation.
1020         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
1021         Simplify the tests to reflect the simpler strerror implementation.
1022         * modules/strerror (Depends-on): Add intprops.
1023
1024 2007-10-09  Eric Blake  <ebb9@byu.net>
1025
1026         Silence test-fpending.
1027         * modules/fpending-tests (Files): Add wrapper script.
1028         * tests/test-fpending.sh: New file.
1029
1030 2007-10-09  Bruno Haible  <bruno@clisp.org>
1031
1032         * MODULES.html.sh (func_module): Don't create a hyperlink for
1033         function names like 'printf_frexp'.
1034         (Misc): Add crc, memxor.
1035         (Characteristics of floating types): New section.
1036         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
1037         isnanf-nolibm, signbit, trunc, truncf, truncl.
1038         (Enhancements for ISO C 99 functions): New subsection Input/output.
1039         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
1040         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
1041         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
1042         (Compatibility checks for POSIX:2001 functions): Add clock-time.
1043         (Enhancements for POSIX:2001 functions): Add chdir-long.
1044         (File system functions): Add areadlink, chdir-safer, read-file.
1045         Remove cycle-check.
1046         (File system as inode set): New section.
1047         (Date and time): Add gethrxtime.
1048         (Multithreading): Add openmp.
1049         (Internationalization functions): Add localename.
1050         (Unicode string functions): Add unistr/u*-mbsnlen.
1051         (Support for maintaining and releasing projects): Add git-version-gen.
1052         (Lone files): Remove directories.
1053
1054 2007-10-08  Ben Pfaff  <blp@gnu.org>
1055
1056         * lib/xmalloca.h: Fix typo in comment.
1057
1058 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
1059
1060         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
1061         when avoiding problems with integer overflow.  Use a portable test
1062         instead.
1063
1064 2007-10-08  Simon Josefsson  <simon@josefsson.org>
1065
1066         * modules/dummy (License): Change to LGPLv2+.
1067         * modules/float (License): Likewise
1068         * modules/realloc (License): Likewise
1069         * modules/stdlib (License): Likewise
1070
1071 2007-10-07  Bruno Haible  <bruno@clisp.org>
1072
1073         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
1074         * floor.c (TWO_MANT_DIG): Likewise.
1075         * ceil.c (TWO_MANT_DIG): Likewise.
1076         Reported by Ben Pfaff.
1077
1078 2007-10-07  Bruno Haible  <bruno@clisp.org>
1079
1080         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
1081         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
1082         * lib/frexp.c (FUNC): Likewise.
1083         * lib/printf-frexp.h (printf_frexp): Likewise.
1084         * lib/printf-frexpl.h (printf_frexpl): Likewise.
1085         * lib/printf-frexp.c (FUNC): Likewise.
1086         Suggested by Jim Meyering.
1087
1088 2007-10-07  Jim Meyering  <meyering@redhat.com>
1089
1090         Make xnanosleep's integer overflow test more robust.
1091         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
1092         so that gcc-4.3.0 doesn't optimize away this test for overflow.
1093
1094 2007-10-07  Bruno Haible  <bruno@clisp.org>
1095
1096         * NEWS: Mention the license change.
1097
1098         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
1099         abbreviations in the modules files.
1100
1101         Change copyright notice from GPLv2+ to GPLv3+.
1102         * README: Change copyright notice.
1103         * MODULES.html.sh: Likewise.
1104         * build-aux/bootstrap.conf: Likewise.
1105         * build-aux/config.libpath: Likewise.
1106         * build-aux/csharpcomp.sh.in: Likewise.
1107         * build-aux/csharpexec.sh.in: Likewise.
1108         * build-aux/install-reloc: Likewise.
1109         * build-aux/javacomp.sh.in: Likewise.
1110         * build-aux/javaexec.sh.in: Likewise.
1111         * build-aux/ldd.sh.in: Likewise.
1112         * build-aux/reloc-ldflags: Likewise.
1113         * build-aux/relocatable.sh.in: Likewise.
1114         * build-aux/x-to-1.in: Likewise.
1115         * check-module: Likewise.
1116         * config/srclistvars.sh: Likewise.
1117         * gnulib-tool: Likewise.
1118         * lib/acl-internal.h: Likewise.
1119         * lib/acl.c: Likewise.
1120         * lib/acl.h: Likewise.
1121         * lib/acl_entries.c: Likewise.
1122         * lib/areadlink-with-size.c: Likewise.
1123         * lib/areadlink.c: Likewise.
1124         * lib/areadlink.h: Likewise.
1125         * lib/argmatch.c: Likewise.
1126         * lib/argmatch.h: Likewise.
1127         * lib/argp-ba.c: Likewise.
1128         * lib/argp-eexst.c: Likewise.
1129         * lib/argp-fmtstream.c: Likewise.
1130         * lib/argp-fmtstream.h: Likewise.
1131         * lib/argp-fs-xinl.c: Likewise.
1132         * lib/argp-help.c: Likewise.
1133         * lib/argp-namefrob.h: Likewise.
1134         * lib/argp-parse.c: Likewise.
1135         * lib/argp-pin.c: Likewise.
1136         * lib/argp-pv.c: Likewise.
1137         * lib/argp-pvh.c: Likewise.
1138         * lib/argp-xinl.c: Likewise.
1139         * lib/argp.h: Likewise.
1140         * lib/at-func.c: Likewise.
1141         * lib/atanl.c: Likewise.
1142         * lib/backupfile.c: Likewise.
1143         * lib/backupfile.h: Likewise.
1144         * lib/basename.c: Likewise.
1145         * lib/binary-io.h: Likewise.
1146         * lib/byteswap.in.h: Likewise.
1147         * lib/c-stack.c: Likewise.
1148         * lib/c-stack.h: Likewise.
1149         * lib/c-strcasestr.c: Likewise.
1150         * lib/c-strcasestr.h: Likewise.
1151         * lib/c-strstr.c: Likewise.
1152         * lib/c-strstr.h: Likewise.
1153         * lib/c-strtod.c: Likewise.
1154         * lib/calloc.c: Likewise.
1155         * lib/canon-host.c: Likewise.
1156         * lib/canon-host.h: Likewise.
1157         * lib/canonicalize-lgpl.c: Likewise.
1158         * lib/canonicalize.c: Likewise.
1159         * lib/canonicalize.h: Likewise.
1160         * lib/ceil.c: Likewise.
1161         * lib/ceilf.c: Likewise.
1162         * lib/ceill.c: Likewise.
1163         * lib/chdir-long.c: Likewise.
1164         * lib/chdir-long.h: Likewise.
1165         * lib/chdir-safer.c: Likewise.
1166         * lib/chdir-safer.h: Likewise.
1167         * lib/chown.c: Likewise.
1168         * lib/classpath.c: Likewise.
1169         * lib/classpath.h: Likewise.
1170         * lib/clean-temp.c: Likewise.
1171         * lib/clean-temp.h: Likewise.
1172         * lib/cloexec.c: Likewise.
1173         * lib/close-stream.c: Likewise.
1174         * lib/closein.c: Likewise.
1175         * lib/closein.h: Likewise.
1176         * lib/closeout.c: Likewise.
1177         * lib/closeout.h: Likewise.
1178         * lib/concat-filename.c: Likewise.
1179         * lib/copy-file.c: Likewise.
1180         * lib/copy-file.h: Likewise.
1181         * lib/count-one-bits.h: Likewise.
1182         * lib/crc.c: Likewise.
1183         * lib/crc.h: Likewise.
1184         * lib/creat-safer.c: Likewise.
1185         * lib/csharpcomp.c: Likewise.
1186         * lib/csharpcomp.h: Likewise.
1187         * lib/csharpexec.c: Likewise.
1188         * lib/csharpexec.h: Likewise.
1189         * lib/cycle-check.c: Likewise.
1190         * lib/cycle-check.h: Likewise.
1191         * lib/diacrit.c: Likewise.
1192         * lib/diacrit.h: Likewise.
1193         * lib/diffseq.h: Likewise.
1194         * lib/dirchownmod.c: Likewise.
1195         * lib/dirent.in.h: Likewise.
1196         * lib/dirfd.c: Likewise.
1197         * lib/dirfd.h: Likewise.
1198         * lib/dirname.c: Likewise.
1199         * lib/dirname.h: Likewise.
1200         * lib/dummy.c: Likewise.
1201         * lib/dup-safer.c: Likewise.
1202         * lib/dup2.c: Likewise.
1203         * lib/eealloc.h: Likewise.
1204         * lib/error.c: Likewise.
1205         * lib/error.h: Likewise.
1206         * lib/euidaccess.c: Likewise.
1207         * lib/exclude.c: Likewise.
1208         * lib/exclude.h: Likewise.
1209         * lib/execute.c: Likewise.
1210         * lib/execute.h: Likewise.
1211         * lib/exitfail.c: Likewise.
1212         * lib/exitfail.h: Likewise.
1213         * lib/expl.c: Likewise.
1214         * lib/fatal-signal.c: Likewise.
1215         * lib/fatal-signal.h: Likewise.
1216         * lib/fbufmode.c: Likewise.
1217         * lib/fbufmode.h: Likewise.
1218         * lib/fchdir.c: Likewise.
1219         * lib/fchmodat.c: Likewise.
1220         * lib/fchownat.c: Likewise.
1221         * lib/fcntl--.h: Likewise.
1222         * lib/fcntl-safer.h: Likewise.
1223         * lib/fcntl.in.h: Likewise.
1224         * lib/fd-safer.c: Likewise.
1225         * lib/fflush.c: Likewise.
1226         * lib/file-has-acl.c: Likewise.
1227         * lib/file-set.c: Likewise.
1228         * lib/file-type.c: Likewise.
1229         * lib/file-type.h: Likewise.
1230         * lib/fileblocks.c: Likewise.
1231         * lib/filemode.c: Likewise.
1232         * lib/filemode.h: Likewise.
1233         * lib/filename.h: Likewise.
1234         * lib/filenamecat.c: Likewise.
1235         * lib/filenamecat.h: Likewise.
1236         * lib/findprog.c: Likewise.
1237         * lib/findprog.h: Likewise.
1238         * lib/float.in.h: Likewise.
1239         * lib/floor.c: Likewise.
1240         * lib/floorf.c: Likewise.
1241         * lib/floorl.c: Likewise.
1242         * lib/fopen-safer.c: Likewise.
1243         * lib/fopen.c: Likewise.
1244         * lib/fpending.c: Likewise.
1245         * lib/fpending.h: Likewise.
1246         * lib/fprintf.c: Likewise.
1247         * lib/fprintftime.h: Likewise.
1248         * lib/fpucw.h: Likewise.
1249         * lib/fpurge.c: Likewise.
1250         * lib/fpurge.h: Likewise.
1251         * lib/freadable.c: Likewise.
1252         * lib/freadable.h: Likewise.
1253         * lib/freadahead.c: Likewise.
1254         * lib/freadahead.h: Likewise.
1255         * lib/freading.c: Likewise.
1256         * lib/freading.h: Likewise.
1257         * lib/free.c: Likewise.
1258         * lib/freopen.c: Likewise.
1259         * lib/frexp.c: Likewise.
1260         * lib/frexpl.c: Likewise.
1261         * lib/fseek.c: Likewise.
1262         * lib/fseterr.c: Likewise.
1263         * lib/fseterr.h: Likewise.
1264         * lib/fstatat.c: Likewise.
1265         * lib/fstrcmp.c: Likewise.
1266         * lib/fstrcmp.h: Likewise.
1267         * lib/fsusage.c: Likewise.
1268         * lib/fsusage.h: Likewise.
1269         * lib/ftell.c: Likewise.
1270         * lib/ftello.c: Likewise.
1271         * lib/fts-cycle.c: Likewise.
1272         * lib/fts.c: Likewise.
1273         * lib/fts_.h: Likewise.
1274         * lib/full-read.c: Likewise.
1275         * lib/full-read.h: Likewise.
1276         * lib/full-write.c: Likewise.
1277         * lib/full-write.h: Likewise.
1278         * lib/fwritable.c: Likewise.
1279         * lib/fwritable.h: Likewise.
1280         * lib/fwriteerror.c: Likewise.
1281         * lib/fwriteerror.h: Likewise.
1282         * lib/fwriting.c: Likewise.
1283         * lib/fwriting.h: Likewise.
1284         * lib/gcd.c: Likewise.
1285         * lib/gcd.h: Likewise.
1286         * lib/getcwd.c: Likewise.
1287         * lib/getdate.h: Likewise.
1288         * lib/getdate.y: Likewise.
1289         * lib/getdomainname.c: Likewise.
1290         * lib/getdomainname.h: Likewise.
1291         * lib/getgroups.c: Likewise.
1292         * lib/gethostname.c: Likewise.
1293         * lib/gethrxtime.c: Likewise.
1294         * lib/gethrxtime.h: Likewise.
1295         * lib/getloadavg.c: Likewise.
1296         * lib/getndelim2.c: Likewise.
1297         * lib/getndelim2.h: Likewise.
1298         * lib/getnline.c: Likewise.
1299         * lib/getnline.h: Likewise.
1300         * lib/getopt.c: Likewise.
1301         * lib/getopt.in.h: Likewise.
1302         * lib/getopt1.c: Likewise.
1303         * lib/getopt_int.h: Likewise.
1304         * lib/getpagesize.h: Likewise.
1305         * lib/getsubopt.c: Likewise.
1306         * lib/gettime.c: Likewise.
1307         * lib/getugroups.c: Likewise.
1308         * lib/getugroups.h: Likewise.
1309         * lib/getusershell.c: Likewise.
1310         * lib/gl_anyavltree_list1.h: Likewise.
1311         * lib/gl_anyavltree_list2.h: Likewise.
1312         * lib/gl_anyhash_list1.h: Likewise.
1313         * lib/gl_anyhash_list2.h: Likewise.
1314         * lib/gl_anylinked_list1.h: Likewise.
1315         * lib/gl_anylinked_list2.h: Likewise.
1316         * lib/gl_anyrbtree_list1.h: Likewise.
1317         * lib/gl_anyrbtree_list2.h: Likewise.
1318         * lib/gl_anytree_list1.h: Likewise.
1319         * lib/gl_anytree_list2.h: Likewise.
1320         * lib/gl_anytree_oset.h: Likewise.
1321         * lib/gl_anytreehash_list1.h: Likewise.
1322         * lib/gl_anytreehash_list2.h: Likewise.
1323         * lib/gl_array_list.c: Likewise.
1324         * lib/gl_array_list.h: Likewise.
1325         * lib/gl_array_oset.c: Likewise.
1326         * lib/gl_array_oset.h: Likewise.
1327         * lib/gl_avltree_list.c: Likewise.
1328         * lib/gl_avltree_list.h: Likewise.
1329         * lib/gl_avltree_oset.c: Likewise.
1330         * lib/gl_avltree_oset.h: Likewise.
1331         * lib/gl_avltreehash_list.c: Likewise.
1332         * lib/gl_avltreehash_list.h: Likewise.
1333         * lib/gl_carray_list.c: Likewise.
1334         * lib/gl_carray_list.h: Likewise.
1335         * lib/gl_linked_list.c: Likewise.
1336         * lib/gl_linked_list.h: Likewise.
1337         * lib/gl_linkedhash_list.c: Likewise.
1338         * lib/gl_linkedhash_list.h: Likewise.
1339         * lib/gl_list.c: Likewise.
1340         * lib/gl_list.h: Likewise.
1341         * lib/gl_oset.c: Likewise.
1342         * lib/gl_oset.h: Likewise.
1343         * lib/gl_rbtree_list.c: Likewise.
1344         * lib/gl_rbtree_list.h: Likewise.
1345         * lib/gl_rbtree_oset.c: Likewise.
1346         * lib/gl_rbtree_oset.h: Likewise.
1347         * lib/gl_rbtreehash_list.c: Likewise.
1348         * lib/gl_rbtreehash_list.h: Likewise.
1349         * lib/gl_sublist.c: Likewise.
1350         * lib/gl_sublist.h: Likewise.
1351         * lib/group-member.c: Likewise.
1352         * lib/group-member.h: Likewise.
1353         * lib/hard-locale.c: Likewise.
1354         * lib/hard-locale.h: Likewise.
1355         * lib/hash-pjw.c: Likewise.
1356         * lib/hash-pjw.h: Likewise.
1357         * lib/hash-triple.c: Likewise.
1358         * lib/hash.c: Likewise.
1359         * lib/hash.h: Likewise.
1360         * lib/human.c: Likewise.
1361         * lib/human.h: Likewise.
1362         * lib/i-ring.c: Likewise.
1363         * lib/i-ring.h: Likewise.
1364         * lib/idcache.c: Likewise.
1365         * lib/imaxabs.c: Likewise.
1366         * lib/imaxdiv.c: Likewise.
1367         * lib/inet_pton.c: Likewise.
1368         * lib/inet_pton.h: Likewise.
1369         * lib/intprops.h: Likewise.
1370         * lib/inttostr.c: Likewise.
1371         * lib/inttostr.h: Likewise.
1372         * lib/inttypes.in.h: Likewise.
1373         * lib/isapipe.c: Likewise.
1374         * lib/isdir.c: Likewise.
1375         * lib/isnan.c: Likewise.
1376         * lib/isnan.h: Likewise.
1377         * lib/isnanf.c: Likewise.
1378         * lib/isnanf.h: Likewise.
1379         * lib/isnanl-nolibm.h: Likewise.
1380         * lib/isnanl.c: Likewise.
1381         * lib/isnanl.h: Likewise.
1382         * lib/javacomp.c: Likewise.
1383         * lib/javacomp.h: Likewise.
1384         * lib/javaexec.c: Likewise.
1385         * lib/javaexec.h: Likewise.
1386         * lib/javaversion.c: Likewise.
1387         * lib/javaversion.h: Likewise.
1388         * lib/javaversion.java: Likewise.
1389         * lib/lbrkprop.h: Likewise.
1390         * lib/lchmod.h: Likewise.
1391         * lib/lchown.c: Likewise.
1392         * lib/ldexpl.c: Likewise.
1393         * lib/linebreak.c: Likewise.
1394         * lib/linebreak.h: Likewise.
1395         * lib/linebuffer.c: Likewise.
1396         * lib/linebuffer.h: Likewise.
1397         * lib/locale.in.h: Likewise.
1398         * lib/logl.c: Likewise.
1399         * lib/long-options.c: Likewise.
1400         * lib/long-options.h: Likewise.
1401         * lib/lstat.c: Likewise.
1402         * lib/lstat.h: Likewise.
1403         * lib/math.in.h: Likewise.
1404         * lib/mbchar.c: Likewise.
1405         * lib/mbchar.h: Likewise.
1406         * lib/mbfile.h: Likewise.
1407         * lib/mbiter.h: Likewise.
1408         * lib/mbscasecmp.c: Likewise.
1409         * lib/mbscasestr.c: Likewise.
1410         * lib/mbschr.c: Likewise.
1411         * lib/mbscspn.c: Likewise.
1412         * lib/mbslen.c: Likewise.
1413         * lib/mbsncasecmp.c: Likewise.
1414         * lib/mbsnlen.c: Likewise.
1415         * lib/mbspbrk.c: Likewise.
1416         * lib/mbspcasecmp.c: Likewise.
1417         * lib/mbsrchr.c: Likewise.
1418         * lib/mbssep.c: Likewise.
1419         * lib/mbsspn.c: Likewise.
1420         * lib/mbsstr.c: Likewise.
1421         * lib/mbstok_r.c: Likewise.
1422         * lib/mbswidth.c: Likewise.
1423         * lib/mbswidth.h: Likewise.
1424         * lib/mbuiter.h: Likewise.
1425         * lib/memcasecmp.c: Likewise.
1426         * lib/memcasecmp.h: Likewise.
1427         * lib/memchr.c: Likewise.
1428         * lib/memcmp.c: Likewise.
1429         * lib/memcoll.c: Likewise.
1430         * lib/memcoll.h: Likewise.
1431         * lib/memcpy.c: Likewise.
1432         * lib/memrchr.c: Likewise.
1433         * lib/mkancesdirs.c: Likewise.
1434         * lib/mkdir-p.c: Likewise.
1435         * lib/mkdir-p.h: Likewise.
1436         * lib/mkdir.c: Likewise.
1437         * lib/mkdirat.c: Likewise.
1438         * lib/mkdtemp.c: Likewise.
1439         * lib/mkstemp-safer.c: Likewise.
1440         * lib/mkstemp.c: Likewise.
1441         * lib/modechange.c: Likewise.
1442         * lib/modechange.h: Likewise.
1443         * lib/mountlist.c: Likewise.
1444         * lib/mountlist.h: Likewise.
1445         * lib/mpsort.c: Likewise.
1446         * lib/nanosleep.c: Likewise.
1447         * lib/obstack.c: Likewise.
1448         * lib/obstack.h: Likewise.
1449         * lib/open-safer.c: Likewise.
1450         * lib/open.c: Likewise.
1451         * lib/openat-die.c: Likewise.
1452         * lib/openat-priv.h: Likewise.
1453         * lib/openat-proc.c: Likewise.
1454         * lib/openat.c: Likewise.
1455         * lib/openat.h: Likewise.
1456         * lib/pagealign_alloc.c: Likewise.
1457         * lib/pagealign_alloc.h: Likewise.
1458         * lib/physmem.c: Likewise.
1459         * lib/physmem.h: Likewise.
1460         * lib/pipe-safer.c: Likewise.
1461         * lib/pipe.c: Likewise.
1462         * lib/pipe.h: Likewise.
1463         * lib/posixtm.c: Likewise.
1464         * lib/posixtm.h: Likewise.
1465         * lib/posixver.c: Likewise.
1466         * lib/printf-frexp.c: Likewise.
1467         * lib/printf-frexp.h: Likewise.
1468         * lib/printf-frexpl.c: Likewise.
1469         * lib/printf-frexpl.h: Likewise.
1470         * lib/printf.c: Likewise.
1471         * lib/progname.c: Likewise.
1472         * lib/progname.h: Likewise.
1473         * lib/progreloc.c: Likewise.
1474         * lib/putenv.c: Likewise.
1475         * lib/quote.c: Likewise.
1476         * lib/quote.h: Likewise.
1477         * lib/quotearg.c: Likewise.
1478         * lib/quotearg.h: Likewise.
1479         * lib/raise.c: Likewise.
1480         * lib/readline.c: Likewise.
1481         * lib/readline.h: Likewise.
1482         * lib/readlink.c: Likewise.
1483         * lib/readtokens.c: Likewise.
1484         * lib/readtokens.h: Likewise.
1485         * lib/readtokens0.c: Likewise.
1486         * lib/readtokens0.h: Likewise.
1487         * lib/readutmp.c: Likewise.
1488         * lib/readutmp.h: Likewise.
1489         * lib/realloc.c: Likewise.
1490         * lib/relocwrapper.c: Likewise.
1491         * lib/rename-dest-slash.c: Likewise.
1492         * lib/rename.c: Likewise.
1493         * lib/rmdir.c: Likewise.
1494         * lib/rpmatch.c: Likewise.
1495         * lib/safe-read.c: Likewise.
1496         * lib/safe-read.h: Likewise.
1497         * lib/safe-write.c: Likewise.
1498         * lib/safe-write.h: Likewise.
1499         * lib/same-inode.h: Likewise.
1500         * lib/same.c: Likewise.
1501         * lib/same.h: Likewise.
1502         * lib/save-cwd.c: Likewise.
1503         * lib/save-cwd.h: Likewise.
1504         * lib/savedir.c: Likewise.
1505         * lib/savedir.h: Likewise.
1506         * lib/savewd.c: Likewise.
1507         * lib/savewd.h: Likewise.
1508         * lib/search.in.h: Likewise.
1509         * lib/setenv.c: Likewise.
1510         * lib/setenv.h: Likewise.
1511         * lib/settime.c: Likewise.
1512         * lib/sh-quote.c: Likewise.
1513         * lib/sh-quote.h: Likewise.
1514         * lib/sig2str.c: Likewise.
1515         * lib/sig2str.h: Likewise.
1516         * lib/signal.in.h: Likewise.
1517         * lib/signbitd.c: Likewise.
1518         * lib/signbitf.c: Likewise.
1519         * lib/signbitl.c: Likewise.
1520         * lib/sigprocmask.c: Likewise.
1521         * lib/sincosl.c: Likewise.
1522         * lib/sleep.c: Likewise.
1523         * lib/sprintf.c: Likewise.
1524         * lib/sqrtl.c: Likewise.
1525         * lib/stat-time.h: Likewise.
1526         * lib/stdio--.h: Likewise.
1527         * lib/stdio-safer.h: Likewise.
1528         * lib/stdlib--.h: Likewise.
1529         * lib/stdlib-safer.h: Likewise.
1530         * lib/stdlib.in.h: Likewise.
1531         * lib/stpcpy.c: Likewise.
1532         * lib/stpncpy.c: Likewise.
1533         * lib/strchrnul.c: Likewise.
1534         * lib/strcspn.c: Likewise.
1535         * lib/strerror.c: Likewise.
1536         * lib/strftime.c: Likewise.
1537         * lib/strftime.h: Likewise.
1538         * lib/striconveh.c: Likewise.
1539         * lib/striconveh.h: Likewise.
1540         * lib/striconveha.c: Likewise.
1541         * lib/striconveha.h: Likewise.
1542         * lib/stripslash.c: Likewise.
1543         * lib/strnlen1.c: Likewise.
1544         * lib/strnlen1.h: Likewise.
1545         * lib/strtod.c: Likewise.
1546         * lib/strtoimax.c: Likewise.
1547         * lib/strtok_r.c: Likewise.
1548         * lib/strtol.c: Likewise.
1549         * lib/strtoll.c: Likewise.
1550         * lib/strtoul.c: Likewise.
1551         * lib/strtoull.c: Likewise.
1552         * lib/sysexits.in.h: Likewise.
1553         * lib/tempname.c: Likewise.
1554         * lib/tempname.h: Likewise.
1555         * lib/timespec.h: Likewise.
1556         * lib/tls.c: Likewise.
1557         * lib/tls.h: Likewise.
1558         * lib/tmpdir.c: Likewise.
1559         * lib/tmpdir.h: Likewise.
1560         * lib/tmpfile-safer.c: Likewise.
1561         * lib/tmpfile.c: Likewise.
1562         * lib/trigl.c: Likewise.
1563         * lib/trigl.h: Likewise.
1564         * lib/trim.c: Likewise.
1565         * lib/trim.h: Likewise.
1566         * lib/trunc.c: Likewise.
1567         * lib/truncf.c: Likewise.
1568         * lib/truncl.c: Likewise.
1569         * lib/tsearch.c: Likewise.
1570         * lib/unicodeio.c: Likewise.
1571         * lib/unicodeio.h: Likewise.
1572         * lib/unistd--.h: Likewise.
1573         * lib/unistd-safer.h: Likewise.
1574         * lib/unistdio/ulc-fprintf.c: Likewise.
1575         * lib/unistdio/ulc-vfprintf.c: Likewise.
1576         * lib/unlinkdir.c: Likewise.
1577         * lib/unlinkdir.h: Likewise.
1578         * lib/unlocked-io.h: Likewise.
1579         * lib/unsetenv.c: Likewise.
1580         * lib/userspec.c: Likewise.
1581         * lib/utime.c: Likewise.
1582         * lib/utimecmp.c: Likewise.
1583         * lib/utimecmp.h: Likewise.
1584         * lib/utimens.c: Likewise.
1585         * lib/verify.h: Likewise.
1586         * lib/verror.c: Likewise.
1587         * lib/verror.h: Likewise.
1588         * lib/version-etc-fsf.c: Likewise.
1589         * lib/version-etc.c: Likewise.
1590         * lib/version-etc.h: Likewise.
1591         * lib/vfprintf.c: Likewise.
1592         * lib/vprintf.c: Likewise.
1593         * lib/vsprintf.c: Likewise.
1594         * lib/w32spawn.h: Likewise.
1595         * lib/wait-process.c: Likewise.
1596         * lib/wait-process.h: Likewise.
1597         * lib/wcwidth.c: Likewise.
1598         * lib/write-any-file.c: Likewise.
1599         * lib/xalloc-die.c: Likewise.
1600         * lib/xalloc.h: Likewise.
1601         * lib/xasprintf.c: Likewise.
1602         * lib/xgetcwd.c: Likewise.
1603         * lib/xgetcwd.h: Likewise.
1604         * lib/xgetdomainname.c: Likewise.
1605         * lib/xgetdomainname.h: Likewise.
1606         * lib/xgethostname.c: Likewise.
1607         * lib/xmalloc.c: Likewise.
1608         * lib/xmalloca.c: Likewise.
1609         * lib/xmalloca.h: Likewise.
1610         * lib/xmemcoll.c: Likewise.
1611         * lib/xnanosleep.c: Likewise.
1612         * lib/xreadlink.c: Likewise.
1613         * lib/xreadlink.h: Likewise.
1614         * lib/xsetenv.c: Likewise.
1615         * lib/xsetenv.h: Likewise.
1616         * lib/xstriconv.c: Likewise.
1617         * lib/xstriconv.h: Likewise.
1618         * lib/xstrndup.c: Likewise.
1619         * lib/xstrndup.h: Likewise.
1620         * lib/xstrtod.c: Likewise.
1621         * lib/xstrtod.h: Likewise.
1622         * lib/xstrtol-error.c: Likewise.
1623         * lib/xstrtol.c: Likewise.
1624         * lib/xstrtol.h: Likewise.
1625         * lib/xtime.h: Likewise.
1626         * lib/xvasprintf.c: Likewise.
1627         * lib/xvasprintf.h: Likewise.
1628         * lib/yesno.c: Likewise.
1629         * lib/yesno.h: Likewise.
1630         * posix-modules: Likewise.
1631         * tests/test-alloca-opt.c: Likewise.
1632         * tests/test-arcfour.c: Likewise.
1633         * tests/test-arctwo.c: Likewise.
1634         * tests/test-argmatch.c: Likewise.
1635         * tests/test-argp-2.sh: Likewise.
1636         * tests/test-argp.c: Likewise.
1637         * tests/test-arpa_inet.c: Likewise.
1638         * tests/test-array_list.c: Likewise.
1639         * tests/test-array_oset.c: Likewise.
1640         * tests/test-atexit.c: Likewise.
1641         * tests/test-avltree_list.c: Likewise.
1642         * tests/test-avltree_oset.c: Likewise.
1643         * tests/test-avltreehash_list.c: Likewise.
1644         * tests/test-base64.c: Likewise.
1645         * tests/test-binary-io.c: Likewise.
1646         * tests/test-byteswap.c: Likewise.
1647         * tests/test-c-ctype.c: Likewise.
1648         * tests/test-c-strcasecmp.c: Likewise.
1649         * tests/test-c-strcasestr.c: Likewise.
1650         * tests/test-c-strncasecmp.c: Likewise.
1651         * tests/test-c-strstr.c: Likewise.
1652         * tests/test-canonicalize-lgpl.c: Likewise.
1653         * tests/test-canonicalize.c: Likewise.
1654         * tests/test-carray_list.c: Likewise.
1655         * tests/test-ceilf.c: Likewise.
1656         * tests/test-ceill.c: Likewise.
1657         * tests/test-count-one-bits.c: Likewise.
1658         * tests/test-crc.c: Likewise.
1659         * tests/test-dirname.c: Likewise.
1660         * tests/test-fbufmode.c: Likewise.
1661         * tests/test-fcntl.c: Likewise.
1662         * tests/test-fflush.c: Likewise.
1663         * tests/test-floorf.c: Likewise.
1664         * tests/test-floorl.c: Likewise.
1665         * tests/test-fopen.c: Likewise.
1666         * tests/test-fprintf-posix.c: Likewise.
1667         * tests/test-fprintf-posix.h: Likewise.
1668         * tests/test-fpurge.c: Likewise.
1669         * tests/test-freadable.c: Likewise.
1670         * tests/test-freadahead.c: Likewise.
1671         * tests/test-freading.c: Likewise.
1672         * tests/test-freopen.c: Likewise.
1673         * tests/test-frexp.c: Likewise.
1674         * tests/test-frexpl.c: Likewise.
1675         * tests/test-fseek.c: Likewise.
1676         * tests/test-fseeko.c: Likewise.
1677         * tests/test-fseterr.c: Likewise.
1678         * tests/test-fstrcmp.c: Likewise.
1679         * tests/test-ftell.c: Likewise.
1680         * tests/test-ftello.c: Likewise.
1681         * tests/test-fwritable.c: Likewise.
1682         * tests/test-fwriting.c: Likewise.
1683         * tests/test-getaddrinfo.c: Likewise.
1684         * tests/test-getpass.c: Likewise.
1685         * tests/test-gettimeofday.c: Likewise.
1686         * tests/test-hmac-md5.c: Likewise.
1687         * tests/test-hmac-sha1.c: Likewise.
1688         * tests/test-iconv.c: Likewise.
1689         * tests/test-iconvme.c: Likewise.
1690         * tests/test-inttypes.c: Likewise.
1691         * tests/test-isnan.c: Likewise.
1692         * tests/test-isnanf.c: Likewise.
1693         * tests/test-isnanl-nolibm.c: Likewise.
1694         * tests/test-isnanl.c: Likewise.
1695         * tests/test-isnanl.h: Likewise.
1696         * tests/test-ldexpl.c: Likewise.
1697         * tests/test-linked_list.c: Likewise.
1698         * tests/test-linkedhash_list.c: Likewise.
1699         * tests/test-locale.c: Likewise.
1700         * tests/test-localename.c: Likewise.
1701         * tests/test-lock.c: Likewise.
1702         * tests/test-lseek.c: Likewise.
1703         * tests/test-malloca.c: Likewise.
1704         * tests/test-math.c: Likewise.
1705         * tests/test-mbscasecmp.c: Likewise.
1706         * tests/test-mbscasestr1.c: Likewise.
1707         * tests/test-mbscasestr2.c: Likewise.
1708         * tests/test-mbscasestr3.c: Likewise.
1709         * tests/test-mbscasestr4.c: Likewise.
1710         * tests/test-mbschr.c: Likewise.
1711         * tests/test-mbscspn.c: Likewise.
1712         * tests/test-mbsncasecmp.c: Likewise.
1713         * tests/test-mbspbrk.c: Likewise.
1714         * tests/test-mbspcasecmp.c: Likewise.
1715         * tests/test-mbsrchr.c: Likewise.
1716         * tests/test-mbsspn.c: Likewise.
1717         * tests/test-mbsstr1.c: Likewise.
1718         * tests/test-mbsstr2.c: Likewise.
1719         * tests/test-mbsstr3.c: Likewise.
1720         * tests/test-md5.c: Likewise.
1721         * tests/test-memmem.c: Likewise.
1722         * tests/test-netinet_in.c: Likewise.
1723         * tests/test-open.c: Likewise.
1724         * tests/test-printf-frexp.c: Likewise.
1725         * tests/test-printf-frexpl.c: Likewise.
1726         * tests/test-printf-posix.c: Likewise.
1727         * tests/test-printf-posix.h: Likewise.
1728         * tests/test-rbtree_list.c: Likewise.
1729         * tests/test-rbtree_oset.c: Likewise.
1730         * tests/test-rbtreehash_list.c: Likewise.
1731         * tests/test-read-file.c: Likewise.
1732         * tests/test-rijndael.c: Likewise.
1733         * tests/test-search.c: Likewise.
1734         * tests/test-signbit.c: Likewise.
1735         * tests/test-sleep.c: Likewise.
1736         * tests/test-snprintf-posix.c: Likewise.
1737         * tests/test-snprintf-posix.h: Likewise.
1738         * tests/test-snprintf.c: Likewise.
1739         * tests/test-sprintf-posix.c: Likewise.
1740         * tests/test-sprintf-posix.h: Likewise.
1741         * tests/test-stat-time.c: Likewise.
1742         * tests/test-stdbool.c: Likewise.
1743         * tests/test-stdint.c: Likewise.
1744         * tests/test-stdio.c: Likewise.
1745         * tests/test-stdlib.c: Likewise.
1746         * tests/test-stpncpy.c: Likewise.
1747         * tests/test-strcasestr.c: Likewise.
1748         * tests/test-striconv.c: Likewise.
1749         * tests/test-striconveh.c: Likewise.
1750         * tests/test-striconveha.c: Likewise.
1751         * tests/test-string.c: Likewise.
1752         * tests/test-sys_select.c: Likewise.
1753         * tests/test-sys_socket.c: Likewise.
1754         * tests/test-sys_stat.c: Likewise.
1755         * tests/test-sys_time.c: Likewise.
1756         * tests/test-sysexits.c: Likewise.
1757         * tests/test-time.c: Likewise.
1758         * tests/test-tls.c: Likewise.
1759         * tests/test-trunc.c: Likewise.
1760         * tests/test-truncf.c: Likewise.
1761         * tests/test-truncl.c: Likewise.
1762         * tests/test-unistd.c: Likewise.
1763         * tests/test-vasnprintf-posix.c: Likewise.
1764         * tests/test-vasnprintf-posix2.c: Likewise.
1765         * tests/test-vasnprintf.c: Likewise.
1766         * tests/test-vasprintf-posix.c: Likewise.
1767         * tests/test-vasprintf.c: Likewise.
1768         * tests/test-verify.c: Likewise.
1769         * tests/test-vfprintf-posix.c: Likewise.
1770         * tests/test-vprintf-posix.c: Likewise.
1771         * tests/test-vsnprintf-posix.c: Likewise.
1772         * tests/test-vsnprintf.c: Likewise.
1773         * tests/test-vsprintf-posix.c: Likewise.
1774         * tests/test-wchar.c: Likewise.
1775         * tests/test-wctype.c: Likewise.
1776         * tests/test-wcwidth.c: Likewise.
1777         * tests/test-xstrtol.c: Likewise.
1778         * tests/test-xvasprintf.c: Likewise.
1779         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
1780         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
1781         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
1782         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
1783         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
1784         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
1785         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
1786         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
1787         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
1788         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
1789         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
1790         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
1791         * tests/uniname/test-uninames.c: Likewise.
1792         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
1793         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
1794         * tests/unistdio/test-u16-printf1.h: Likewise.
1795         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
1796         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
1797         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
1798         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
1799         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
1800         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
1801         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
1802         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
1803         * tests/unistdio/test-u32-printf1.h: Likewise.
1804         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
1805         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
1806         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
1807         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
1808         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
1809         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
1810         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
1811         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
1812         * tests/unistdio/test-u8-printf1.h: Likewise.
1813         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
1814         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
1815         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
1816         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
1817         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
1818         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
1819         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
1820         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
1821         * tests/unistdio/test-ulc-printf1.h: Likewise.
1822         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
1823         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
1824         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
1825         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
1826         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
1827         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
1828         * tests/uniwidth/test-u16-strwidth.c: Likewise.
1829         * tests/uniwidth/test-u16-width.c: Likewise.
1830         * tests/uniwidth/test-u32-strwidth.c: Likewise.
1831         * tests/uniwidth/test-u32-width.c: Likewise.
1832         * tests/uniwidth/test-u8-strwidth.c: Likewise.
1833         * tests/uniwidth/test-u8-width.c: Likewise.
1834         * tests/uniwidth/test-uc_width.c: Likewise.
1835         * config/srclist-update: Likewise.
1836         (fixlicense): Update to GPLv3+.
1837
1838         Change copyright notice from LGPLv2.1+ to LGPLv3+.
1839         * tests/test-tsearch.c: Change copyright notice.
1840
1841         Change copyright notice from LGPLv2.0+ to LGPLv3+.
1842         * lib/c-strcaseeq.h: Change copyright notice.
1843         * lib/streq.h: Likewise.
1844         * lib/uniconv.h: Likewise.
1845         * lib/uniconv/u-conv-from-enc.h: Likewise.
1846         * lib/uniconv/u-conv-to-enc.h: Likewise.
1847         * lib/uniconv/u-strconv-from-enc.h: Likewise.
1848         * lib/uniconv/u-strconv-to-enc.h: Likewise.
1849         * lib/uniconv/u16-conv-from-enc.c: Likewise.
1850         * lib/uniconv/u16-conv-to-enc.c: Likewise.
1851         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
1852         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
1853         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
1854         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
1855         * lib/uniconv/u32-conv-from-enc.c: Likewise.
1856         * lib/uniconv/u32-conv-to-enc.c: Likewise.
1857         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
1858         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
1859         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
1860         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
1861         * lib/uniconv/u8-conv-from-enc.c: Likewise.
1862         * lib/uniconv/u8-conv-to-enc.c: Likewise.
1863         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
1864         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
1865         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
1866         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
1867         * lib/uniname.h: Likewise.
1868         * lib/uniname/uniname.c: Likewise.
1869         * lib/unistdio.h: Likewise.
1870         * lib/unistdio/u-asnprintf.h: Likewise.
1871         * lib/unistdio/u-asprintf.h: Likewise.
1872         * lib/unistdio/u-printf-args.c: Likewise.
1873         * lib/unistdio/u-printf-args.h: Likewise.
1874         * lib/unistdio/u-printf-parse.h: Likewise.
1875         * lib/unistdio/u-snprintf.h: Likewise.
1876         * lib/unistdio/u-sprintf.h: Likewise.
1877         * lib/unistdio/u-vasprintf.h: Likewise.
1878         * lib/unistdio/u-vsnprintf.h: Likewise.
1879         * lib/unistdio/u-vsprintf.h: Likewise.
1880         * lib/unistdio/u16-asnprintf.c: Likewise.
1881         * lib/unistdio/u16-asprintf.c: Likewise.
1882         * lib/unistdio/u16-printf-parse.c: Likewise.
1883         * lib/unistdio/u16-snprintf.c: Likewise.
1884         * lib/unistdio/u16-sprintf.c: Likewise.
1885         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
1886         * lib/unistdio/u16-u16-asprintf.c: Likewise.
1887         * lib/unistdio/u16-u16-snprintf.c: Likewise.
1888         * lib/unistdio/u16-u16-sprintf.c: Likewise.
1889         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
1890         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
1891         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
1892         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
1893         * lib/unistdio/u16-vasnprintf.c: Likewise.
1894         * lib/unistdio/u16-vasprintf.c: Likewise.
1895         * lib/unistdio/u16-vsnprintf.c: Likewise.
1896         * lib/unistdio/u16-vsprintf.c: Likewise.
1897         * lib/unistdio/u32-asnprintf.c: Likewise.
1898         * lib/unistdio/u32-asprintf.c: Likewise.
1899         * lib/unistdio/u32-printf-parse.c: Likewise.
1900         * lib/unistdio/u32-snprintf.c: Likewise.
1901         * lib/unistdio/u32-sprintf.c: Likewise.
1902         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
1903         * lib/unistdio/u32-u32-asprintf.c: Likewise.
1904         * lib/unistdio/u32-u32-snprintf.c: Likewise.
1905         * lib/unistdio/u32-u32-sprintf.c: Likewise.
1906         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
1907         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
1908         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
1909         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
1910         * lib/unistdio/u32-vasnprintf.c: Likewise.
1911         * lib/unistdio/u32-vasprintf.c: Likewise.
1912         * lib/unistdio/u32-vsnprintf.c: Likewise.
1913         * lib/unistdio/u32-vsprintf.c: Likewise.
1914         * lib/unistdio/u8-asnprintf.c: Likewise.
1915         * lib/unistdio/u8-asprintf.c: Likewise.
1916         * lib/unistdio/u8-printf-parse.c: Likewise.
1917         * lib/unistdio/u8-snprintf.c: Likewise.
1918         * lib/unistdio/u8-sprintf.c: Likewise.
1919         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
1920         * lib/unistdio/u8-u8-asprintf.c: Likewise.
1921         * lib/unistdio/u8-u8-snprintf.c: Likewise.
1922         * lib/unistdio/u8-u8-sprintf.c: Likewise.
1923         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
1924         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
1925         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
1926         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
1927         * lib/unistdio/u8-vasnprintf.c: Likewise.
1928         * lib/unistdio/u8-vasprintf.c: Likewise.
1929         * lib/unistdio/u8-vsnprintf.c: Likewise.
1930         * lib/unistdio/u8-vsprintf.c: Likewise.
1931         * lib/unistdio/ulc-asnprintf.c: Likewise.
1932         * lib/unistdio/ulc-asprintf.c: Likewise.
1933         * lib/unistdio/ulc-printf-parse.c: Likewise.
1934         * lib/unistdio/ulc-snprintf.c: Likewise.
1935         * lib/unistdio/ulc-sprintf.c: Likewise.
1936         * lib/unistdio/ulc-vasnprintf.c: Likewise.
1937         * lib/unistdio/ulc-vasprintf.c: Likewise.
1938         * lib/unistdio/ulc-vsnprintf.c: Likewise.
1939         * lib/unistdio/ulc-vsprintf.c: Likewise.
1940         * lib/unistr.h: Likewise.
1941         * lib/unistr/u-cpy-alloc.h: Likewise.
1942         * lib/unistr/u-cpy.h: Likewise.
1943         * lib/unistr/u-endswith.h: Likewise.
1944         * lib/unistr/u-move.h: Likewise.
1945         * lib/unistr/u-set.h: Likewise.
1946         * lib/unistr/u-startswith.h: Likewise.
1947         * lib/unistr/u-stpcpy.h: Likewise.
1948         * lib/unistr/u-stpncpy.h: Likewise.
1949         * lib/unistr/u-strcat.h: Likewise.
1950         * lib/unistr/u-strcpy.h: Likewise.
1951         * lib/unistr/u-strcspn.h: Likewise.
1952         * lib/unistr/u-strdup.h: Likewise.
1953         * lib/unistr/u-strlen.h: Likewise.
1954         * lib/unistr/u-strncat.h: Likewise.
1955         * lib/unistr/u-strncpy.h: Likewise.
1956         * lib/unistr/u-strnlen.h: Likewise.
1957         * lib/unistr/u-strpbrk.h: Likewise.
1958         * lib/unistr/u-strspn.h: Likewise.
1959         * lib/unistr/u-strstr.h: Likewise.
1960         * lib/unistr/u-strtok.h: Likewise.
1961         * lib/unistr/u16-check.c: Likewise.
1962         * lib/unistr/u16-chr.c: Likewise.
1963         * lib/unistr/u16-cmp.c: Likewise.
1964         * lib/unistr/u16-cpy-alloc.c: Likewise.
1965         * lib/unistr/u16-cpy.c: Likewise.
1966         * lib/unistr/u16-endswith.c: Likewise.
1967         * lib/unistr/u16-mblen.c: Likewise.
1968         * lib/unistr/u16-mbsnlen.c: Likewise.
1969         * lib/unistr/u16-mbtouc-aux.c: Likewise.
1970         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
1971         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
1972         * lib/unistr/u16-mbtouc.c: Likewise.
1973         * lib/unistr/u16-mbtoucr.c: Likewise.
1974         * lib/unistr/u16-move.c: Likewise.
1975         * lib/unistr/u16-next.c: Likewise.
1976         * lib/unistr/u16-prev.c: Likewise.
1977         * lib/unistr/u16-set.c: Likewise.
1978         * lib/unistr/u16-startswith.c: Likewise.
1979         * lib/unistr/u16-stpcpy.c: Likewise.
1980         * lib/unistr/u16-stpncpy.c: Likewise.
1981         * lib/unistr/u16-strcat.c: Likewise.
1982         * lib/unistr/u16-strchr.c: Likewise.
1983         * lib/unistr/u16-strcmp.c: Likewise.
1984         * lib/unistr/u16-strcpy.c: Likewise.
1985         * lib/unistr/u16-strcspn.c: Likewise.
1986         * lib/unistr/u16-strdup.c: Likewise.
1987         * lib/unistr/u16-strlen.c: Likewise.
1988         * lib/unistr/u16-strmblen.c: Likewise.
1989         * lib/unistr/u16-strmbtouc.c: Likewise.
1990         * lib/unistr/u16-strncat.c: Likewise.
1991         * lib/unistr/u16-strncmp.c: Likewise.
1992         * lib/unistr/u16-strncpy.c: Likewise.
1993         * lib/unistr/u16-strnlen.c: Likewise.
1994         * lib/unistr/u16-strpbrk.c: Likewise.
1995         * lib/unistr/u16-strrchr.c: Likewise.
1996         * lib/unistr/u16-strspn.c: Likewise.
1997         * lib/unistr/u16-strstr.c: Likewise.
1998         * lib/unistr/u16-strtok.c: Likewise.
1999         * lib/unistr/u16-to-u32.c: Likewise.
2000         * lib/unistr/u16-to-u8.c: Likewise.
2001         * lib/unistr/u16-uctomb-aux.c: Likewise.
2002         * lib/unistr/u16-uctomb.c: Likewise.
2003         * lib/unistr/u32-check.c: Likewise.
2004         * lib/unistr/u32-chr.c: Likewise.
2005         * lib/unistr/u32-cmp.c: Likewise.
2006         * lib/unistr/u32-cpy-alloc.c: Likewise.
2007         * lib/unistr/u32-cpy.c: Likewise.
2008         * lib/unistr/u32-endswith.c: Likewise.
2009         * lib/unistr/u32-mblen.c: Likewise.
2010         * lib/unistr/u32-mbsnlen.c: Likewise.
2011         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
2012         * lib/unistr/u32-mbtouc.c: Likewise.
2013         * lib/unistr/u32-mbtoucr.c: Likewise.
2014         * lib/unistr/u32-move.c: Likewise.
2015         * lib/unistr/u32-next.c: Likewise.
2016         * lib/unistr/u32-prev.c: Likewise.
2017         * lib/unistr/u32-set.c: Likewise.
2018         * lib/unistr/u32-startswith.c: Likewise.
2019         * lib/unistr/u32-stpcpy.c: Likewise.
2020         * lib/unistr/u32-stpncpy.c: Likewise.
2021         * lib/unistr/u32-strcat.c: Likewise.
2022         * lib/unistr/u32-strchr.c: Likewise.
2023         * lib/unistr/u32-strcmp.c: Likewise.
2024         * lib/unistr/u32-strcpy.c: Likewise.
2025         * lib/unistr/u32-strcspn.c: Likewise.
2026         * lib/unistr/u32-strdup.c: Likewise.
2027         * lib/unistr/u32-strlen.c: Likewise.
2028         * lib/unistr/u32-strmblen.c: Likewise.
2029         * lib/unistr/u32-strmbtouc.c: Likewise.
2030         * lib/unistr/u32-strncat.c: Likewise.
2031         * lib/unistr/u32-strncmp.c: Likewise.
2032         * lib/unistr/u32-strncpy.c: Likewise.
2033         * lib/unistr/u32-strnlen.c: Likewise.
2034         * lib/unistr/u32-strpbrk.c: Likewise.
2035         * lib/unistr/u32-strrchr.c: Likewise.
2036         * lib/unistr/u32-strspn.c: Likewise.
2037         * lib/unistr/u32-strstr.c: Likewise.
2038         * lib/unistr/u32-strtok.c: Likewise.
2039         * lib/unistr/u32-to-u16.c: Likewise.
2040         * lib/unistr/u32-to-u8.c: Likewise.
2041         * lib/unistr/u32-uctomb.c: Likewise.
2042         * lib/unistr/u8-check.c: Likewise.
2043         * lib/unistr/u8-chr.c: Likewise.
2044         * lib/unistr/u8-cmp.c: Likewise.
2045         * lib/unistr/u8-cpy-alloc.c: Likewise.
2046         * lib/unistr/u8-cpy.c: Likewise.
2047         * lib/unistr/u8-endswith.c: Likewise.
2048         * lib/unistr/u8-mblen.c: Likewise.
2049         * lib/unistr/u8-mbsnlen.c: Likewise.
2050         * lib/unistr/u8-mbtouc-aux.c: Likewise.
2051         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
2052         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
2053         * lib/unistr/u8-mbtouc.c: Likewise.
2054         * lib/unistr/u8-mbtoucr.c: Likewise.
2055         * lib/unistr/u8-move.c: Likewise.
2056         * lib/unistr/u8-next.c: Likewise.
2057         * lib/unistr/u8-prev.c: Likewise.
2058         * lib/unistr/u8-set.c: Likewise.
2059         * lib/unistr/u8-startswith.c: Likewise.
2060         * lib/unistr/u8-stpcpy.c: Likewise.
2061         * lib/unistr/u8-stpncpy.c: Likewise.
2062         * lib/unistr/u8-strcat.c: Likewise.
2063         * lib/unistr/u8-strchr.c: Likewise.
2064         * lib/unistr/u8-strcmp.c: Likewise.
2065         * lib/unistr/u8-strcpy.c: Likewise.
2066         * lib/unistr/u8-strcspn.c: Likewise.
2067         * lib/unistr/u8-strdup.c: Likewise.
2068         * lib/unistr/u8-strlen.c: Likewise.
2069         * lib/unistr/u8-strmblen.c: Likewise.
2070         * lib/unistr/u8-strmbtouc.c: Likewise.
2071         * lib/unistr/u8-strncat.c: Likewise.
2072         * lib/unistr/u8-strncmp.c: Likewise.
2073         * lib/unistr/u8-strncpy.c: Likewise.
2074         * lib/unistr/u8-strnlen.c: Likewise.
2075         * lib/unistr/u8-strpbrk.c: Likewise.
2076         * lib/unistr/u8-strrchr.c: Likewise.
2077         * lib/unistr/u8-strspn.c: Likewise.
2078         * lib/unistr/u8-strstr.c: Likewise.
2079         * lib/unistr/u8-strtok.c: Likewise.
2080         * lib/unistr/u8-to-u16.c: Likewise.
2081         * lib/unistr/u8-to-u32.c: Likewise.
2082         * lib/unistr/u8-uctomb-aux.c: Likewise.
2083         * lib/unistr/u8-uctomb.c: Likewise.
2084         * lib/unitypes.h: Likewise.
2085         * lib/uniwidth.h: Likewise.
2086         * lib/uniwidth/cjk.h: Likewise.
2087         * lib/uniwidth/u16-strwidth.c: Likewise.
2088         * lib/uniwidth/u16-width.c: Likewise.
2089         * lib/uniwidth/u32-strwidth.c: Likewise.
2090         * lib/uniwidth/u32-width.c: Likewise.
2091         * lib/uniwidth/u8-strwidth.c: Likewise.
2092         * lib/uniwidth/u8-width.c: Likewise.
2093         * lib/uniwidth/width.c: Likewise.
2094
2095 2007-10-07  Bruno Haible  <bruno@clisp.org>
2096
2097         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
2098         The file is still under LGPL (see modules/inttypes).
2099
2100 2007-10-06  Bruno Haible  <bruno@clisp.org>
2101
2102         * modules/trunc (Dependencies): Add 'extensions'.
2103         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
2104         Reported by Ben Pfaff <blp@gnu.org>.
2105
2106 2007-10-06  Bruno Haible  <bruno@clisp.org>
2107
2108         * modules/freopen-tests: New file.
2109         * tests/test-freopen.c: New file.
2110
2111         * modules/fopen-tests: New file.
2112         * tests/test-fopen.c: New file.
2113
2114         * modules/fopen: New file.
2115         * lib/fopen.c: New file.
2116         * m4/fopen.m4: New file.
2117         * modules/freopen: New file.
2118         * lib/freopen.c: New file.
2119         * m4/freopen.m4: New file.
2120         * lib/stdio.in.h (fopen, freopen): New declarations.
2121         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
2122         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
2123         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
2124         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
2125         * doc/functions/fopen.texi: Mention the 'fopen' module.
2126         * doc/functions/freopen.texi: Mention the 'freopen' module.
2127
2128 2007-10-06  Bruno Haible  <bruno@clisp.org>
2129
2130         * modules/open-tests: New file.
2131         * tests/test-open.c: New file.
2132
2133         * modules/open: New file.
2134         * lib/open.c: New file.
2135         * m4/open.m4: New file.
2136         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
2137         lib/open.c does.
2138         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
2139         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
2140         macros.
2141         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
2142         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
2143         REPLACE_OPEN.
2144         * doc/functions/open.texi: Mention the 'open' module.
2145
2146 2007-10-04  Bruno Haible  <bruno@clisp.org>
2147
2148         * modules/ceill-tests: New file.
2149         * tests/test-ceill.c: New file.
2150
2151         * modules/ceill: New file.
2152         * lib/ceill.c: Replace entire file.
2153         * m4/ceill.m4: New file.
2154         * lib/math.in.h (ceill): Replace declaration.
2155         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
2156         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
2157         * doc/functions/ceill.texi: Mention the 'ceill' module.
2158         * modules/mathl (Files): Remove lib/ceill.c.
2159         (Depends-on): Add ceill.
2160
2161 2007-10-04  Bruno Haible  <bruno@clisp.org>
2162
2163         * modules/ceilf-tests: New file.
2164         * tests/test-ceilf.c: New file.
2165
2166         * modules/ceilf: New file.
2167         * lib/ceil.c: New file.
2168         * lib/ceilf.c: New file.
2169         * m4/ceilf.m4: New file.
2170         * lib/math.in.h (ceilf): New declaration.
2171         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
2172         HAVE_DECL_CEILF.
2173         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
2174         HAVE_DECL_CEILF.
2175         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
2176
2177 2007-10-04  Bruno Haible  <bruno@clisp.org>
2178
2179         * modules/floorl-tests: New file.
2180         * tests/test-floorl.c: New file.
2181
2182         * modules/floorl: New file.
2183         * lib/floorl.c: Replace entire file.
2184         * m4/floorl.m4: New file.
2185         * lib/math.in.h (floorl): Replace declaration.
2186         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
2187         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
2188         * doc/functions/floorl.texi: Mention the 'floorl' module.
2189         * modules/mathl (Files): Remove lib/floorl.c.
2190         (Depends-on): Add floorl.
2191
2192 2007-10-04  Bruno Haible  <bruno@clisp.org>
2193
2194         * modules/floorf-tests: New file.
2195         * tests/test-floorf.c: New file.
2196
2197         * modules/floorf: New file.
2198         * lib/floor.c: New file.
2199         * lib/floorf.c: New file.
2200         * m4/floorf.m4: New file.
2201         * lib/math.in.h (floorf): New declaration.
2202         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
2203         HAVE_DECL_FLOORF.
2204         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
2205         HAVE_DECL_FLOORF.
2206         * doc/functions/floorf.texi: Mention the 'floorf' module.
2207
2208 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
2209             Bruno Haible  <bruno@clisp.org>
2210
2211         Advertise for the Git server instead of the CVS server.
2212         * doc/gnulib-intro.texi (Steady Development): Mention the Git
2213         repository instead of the CVS one.
2214         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
2215         about all VCS systems generically.
2216         * doc/gnulib.texi (Introduction): Capitalize `Git'.
2217
2218 2007-10-04  Bruno Haible  <bruno@clisp.org>
2219
2220         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
2221         means.
2222         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
2223
2224 2007-10-04  Bruno Haible  <bruno@clisp.org>
2225
2226         * modules/truncl-tests: New file.
2227         * tests/test-truncl.c: New file.
2228
2229         * modules/truncl: New file.
2230         * lib/truncl.c: New file.
2231         * m4/truncl.m4: New file.
2232         * lib/math.in.h (truncl): New declaration.
2233         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
2234         HAVE_DECL_TRUNCL.
2235         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
2236         HAVE_DECL_TRUNCL.
2237         * doc/functions/truncl.texi: Mention the 'truncl' module.
2238
2239 2007-10-04  Bruno Haible  <bruno@clisp.org>
2240
2241         * modules/truncf-tests: New file.
2242         * tests/test-truncf.c: New file.
2243
2244         * modules/truncf: New file.
2245         * lib/trunc.c: Make paramerizable through USE_* macros.
2246         * lib/truncf.c: New file.
2247         * m4/truncf.m4: New file.
2248         * lib/math.in.h (truncf): New declaration.
2249         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
2250         HAVE_DECL_TRUNCF.
2251         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
2252         HAVE_DECL_TRUNCF.
2253         * doc/functions/truncf.texi: Mention the 'truncf' module.
2254
2255 2007-10-03  Bruno Haible  <bruno@clisp.org>
2256
2257         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
2258         augmentation also for tests modules.
2259         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
2260         * modules/atexit-tests (Makefile.am): Likewise.
2261         * modules/binary-io-tests (Makefile.am): Likewise.
2262         * modules/c-strcase-tests (Makefile.am): Likewise.
2263         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
2264         * modules/canonicalize-tests (Makefile.am): Likewise.
2265         * modules/closein-tests (Makefile.am): Likewise.
2266         * modules/fprintf-posix-tests (Makefile.am): Likewise.
2267         * modules/freadahead-tests (Makefile.am): Likewise.
2268         * modules/fseek-tests (Makefile.am): Likewise.
2269         * modules/fseeko-tests (Makefile.am): Likewise.
2270         * modules/ftell-tests (Makefile.am): Likewise.
2271         * modules/ftello-tests (Makefile.am): Likewise.
2272         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
2273         * modules/isnanl-tests (Makefile.am): Likewise.
2274         * modules/lseek-tests (Makefile.am): Likewise.
2275         * modules/mbscasecmp-tests (Makefile.am): Likewise.
2276         * modules/mbscasestr-tests (Makefile.am): Likewise.
2277         * modules/mbschr-tests (Makefile.am): Likewise.
2278         * modules/mbscspn-tests (Makefile.am): Likewise.
2279         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
2280         * modules/mbspbrk-tests (Makefile.am): Likewise.
2281         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
2282         * modules/mbsrchr-tests (Makefile.am): Likewise.
2283         * modules/mbsspn-tests (Makefile.am): Likewise.
2284         * modules/mbsstr-tests (Makefile.am): Likewise.
2285         * modules/printf-posix-tests (Makefile.am): Likewise.
2286         * modules/snprintf-posix-tests (Makefile.am): Likewise.
2287         * modules/sprintf-posix-tests (Makefile.am): Likewise.
2288         * modules/tsearch-tests (Makefile.am): Likewise.
2289         * modules/uniname/uniname-tests (Makefile.am): Likewise.
2290         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
2291         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
2292         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
2293         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
2294         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
2295         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
2296         * modules/vprintf-posix-tests (Makefile.am): Likewise.
2297         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
2298         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
2299         * modules/xstrtoimax-tests (Makefile.am): Likewise.
2300         * modules/xstrtol-tests (Makefile.am): Likewise.
2301         * modules/xstrtoumax-tests (Makefile.am): Likewise.
2302         * modules/yesno-tests (Makefile.am): Likewise.
2303
2304 2007-10-03  Bruno Haible  <bruno@clisp.org>
2305
2306         * modules/trunc-tests: New file.
2307         * tests/test-trunc.c: New file.
2308
2309         * modules/trunc: New file.
2310         * lib/trunc.c: New file.
2311         * m4/trunc.m4: New file.
2312         * lib/math.in.h (trunc): New declaration.
2313         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
2314         HAVE_DECL_TRUNC.
2315         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
2316         HAVE_DECL_TRUNC.
2317         * doc/functions/trunc.texi: Mention the 'trunc' module.
2318
2319 2007-10-03  Bruno Haible  <bruno@clisp.org>
2320
2321         * tests/test-fpending.c: New file, mostly copied
2322         from coreutils/lib/t-fpending.c.
2323         * modules/fpending-tests: New file.
2324
2325 2007-10-03  Bruno Haible  <bruno@clisp.org>
2326
2327         Port the stdio extensions to QNX (untested).
2328         * lib/fseterr.c (fseterr): Add support for QNX.
2329         * lib/fbufmode.c (fbufmode): Likewise.
2330         * lib/freadable.c (freadable): Likewise.
2331         * lib/fwritable.c (fwritable): Likewise.
2332         * lib/freading.c (freading): Likewise.
2333         * lib/fwriting.c (fwriting): Likewise.
2334         * lib/freadahead.c (freadahed): Likewise.
2335         * lib/fpurge.c (fpurge): Likewise.
2336         * lib/fseeko.c (rpl_fseeko): Likewise.
2337
2338 2007-10-03  Bruno Haible  <bruno@clisp.org>
2339             Jim Meyering  <jim@meyering.net>
2340             Eric Blake  <ebb9@byu.net>
2341
2342         * doc/relocatable.texi: Use @command instead of @program.
2343
2344 2007-10-02  Jim Meyering  <jim@meyering.net>
2345
2346         Perform one more "_.h" -> ".in.h" substitution.
2347         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
2348         instead of unistd_.h here, too.
2349
2350 2007-10-01  Bruno Haible  <bruno@clisp.org>
2351
2352         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
2353         Needed for the alloca-opt module.
2354
2355 2007-09-30  Bruno Haible  <bruno@clisp.org>
2356
2357         * lib/alloca.in.h: Renamed from lib/alloca_.h.
2358         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
2359         alloca_.h.
2360         * lib/argz.in.h: Renamed from lib/argz_.h.
2361         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
2362         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
2363         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
2364         byteswap_.h.
2365         * lib/dirent.in.h: Renamed from lib/dirent_.h.
2366         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
2367         dirent_.h.
2368         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
2369         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
2370         fcntl_.h.
2371         * lib/float.in.h: Renamed from lib/float_.h.
2372         * modules/float (Files, Makefile.am): Use float.in.h instead of
2373         float_.h.
2374         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
2375         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
2376         fnmatch_.h.
2377         * lib/getopt.in.h: Renamed from lib/getopt_.h.
2378         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
2379         getopt_.h.
2380         * lib/glob.in.h: Renamed from lib/glob_.h.
2381         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
2382         * lib/iconv.in.h: Renamed from lib/iconv_.h.
2383         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
2384         iconv_.h.
2385         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
2386         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
2387         inttypes_.h.
2388         * lib/locale.in.h: Renamed from lib/locale_.h.
2389         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
2390         locale_.h.
2391         * lib/math.in.h: Renamed from lib/math_.h.
2392         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
2393         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
2394         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
2395         of netinet_in_.h. Add dependency.
2396         * lib/poll.in.h: Renamed from lib/poll_.h.
2397         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
2398         * lib/search.in.h: Renamed from lib/search_.h.
2399         * modules/search (Files, Makefile.am): Use search.in.h instead of
2400         search_.h.
2401         * lib/signal.in.h: Renamed from lib/signal_.h.
2402         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
2403         _signal.h.
2404         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
2405         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
2406         stdbool_.h.
2407         * lib/stdint.in.h: Renamed from lib/stdint_.h.
2408         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
2409         stdint_.h.
2410         * lib/stdio.in.h: Renamed from lib/stdio_.h.
2411         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
2412         stdio_.h.
2413         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
2414         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
2415         stdlib_.h.
2416         * lib/string.in.h: Renamed from lib/string_.h.
2417         * modules/string (Files, Makefile.am): Use string.in.h instead of
2418         string_.h.
2419         * doc/gnulib-tool.texi (Initial import): Update.
2420         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
2421         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
2422         of sys_select_.h. Add dependency.
2423         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
2424         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
2425         of sys_socket_.h.
2426         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
2427         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
2428         sys_stat_.h.
2429         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
2430         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
2431         sys_time_.h.
2432         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
2433         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
2434         sysexits_.h.
2435         * lib/time.in.h: Renamed from lib/time_.h.
2436         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
2437         * lib/unistd.in.h: Renamed from lib/unistd_.h.
2438         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
2439         unistd_.h.
2440         * lib/wchar.in.h: Renamed from lib/wchar_.h.
2441         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
2442         wchar_.h.
2443         * lib/wctype.in.h: Renamed from lib/wctype_.h.
2444         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
2445         wctype_.h.
2446         * build-aux/bootstrap (slurp): Update.
2447         * lib/.cppi-disable: Update.
2448
2449 2007-09-30  Bruno Haible  <bruno@clisp.org>
2450
2451         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
2452         Needed on BeOS.
2453
2454 2007-09-30  Bruno Haible  <bruno@clisp.org>
2455
2456         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
2457
2458 2007-09-29  Bruno Haible  <bruno@clisp.org>
2459
2460         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
2461
2462 2007-09-29  Bruno Haible  <bruno@clisp.org>
2463
2464         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
2465         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
2466         * build-aux/install-reloc: Compile also areadlink.c.
2467         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
2468
2469 2007-09-29  Bruno Haible  <bruno@clisp.org>
2470
2471         * gnulib-tool (func_emit_initmacro_done): Indentation.
2472
2473 2007-09-29  Bruno Haible  <bruno@clisp.org>
2474
2475         * README: Add CVS checkout update instructions.
2476         Info from Bob Proulx <bob@proulx.com>.
2477
2478 2007-09-28  Eric Blake  <ebb9@byu.net>
2479
2480         Provide move-if-change.
2481         * build-aux/move-if-change: New file, based on best practice
2482         rather than any canonical upstream location.
2483
2484 2007-09-28  Jim Meyering  <jim@meyering.net>
2485
2486         Fix canonicalize loop-detection corner case.
2487         Do not attempt to stat the symlink values stored via seen_triple.
2488         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
2489         on linux-2.6.18, (but not 2.6.22).
2490         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
2491         triple_compare.  The former compares dev,ino,filename, while the latter
2492         would actually stat dirname(filename) when dev and ino were equal.
2493         * lib/hash-triple.c: Install <string.h>.
2494         (STREQ): Define.
2495         (triple_compare_ino_str): New function.
2496         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
2497
2498 2007-09-28  Eric Blake  <ebb9@byu.net>
2499
2500         Enforce that AC_REPLACE_FUNCS files exist.
2501         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
2502         override check for typos.
2503
2504         Fix test-closein on Solaris 10.
2505         * tests/test-closein.c (main): Don't assume stdin can be inherited
2506         closed on all systems.
2507         * tests/test-closein.sh: Likewise.
2508         Reported by Piotr Tarnowski.
2509
2510 2007-09-28  Jim Meyering  <jim@meyering.net>
2511
2512         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
2513
2514 2007-09-27  Jim Meyering  <jim@meyering.net>
2515
2516         canonicalize: Avoid a false-positive cycle failure.
2517         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
2518         Sort.  Remove cycle-check.
2519         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
2520         not cycle-check.h.
2521         (seen_triple): New function.
2522         (canonicalize_filename_mode): Use it instead of cycle-check.
2523         * tests/test-canonicalize.c: Add a test for this bug.
2524         * tests/test-canonicalize.sh: Set up and run the test.
2525
2526         New module, file-set, from coreutils.
2527         * modules/file-set: Define it.
2528         * lib/file-set.c, lib/file-set.h: Implement.
2529
2530         New module, hash-triple, from coreutils.
2531         * modules/hash-triple: Define it.
2532         * lib/hash-triple.c, lib/hash-triple.h: Implement.
2533
2534 2007-09-25  Eric Blake  <ebb9@byu.net>
2535
2536         Fix strerror on Interix.
2537         * lib/string_.h (strerror): Declare replacement.
2538         * doc/functions/strerror.texi (strerror): Document the Interix
2539         shortcoming.
2540         * modules/string (Makefile.am): Support new hooks.
2541         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
2542         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
2543         gl_FUNC_STRERROR_SEPARATE.
2544         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
2545         * lib/strerror.c (rpl_strerror): Provide replacement.
2546         * modules/strerror (Depends-on): Add string.
2547         (configure.ac): Detect use of module.
2548         * tests/test-strerror.c: New file.
2549         * modules/strerror-tests: New test module.
2550         * modules/argp (Depends-on): Add strerror.
2551         * modules/error (Depends-on): Likewise.
2552         Reported by Martin Koeppe.
2553
2554 2007-09-24  Bruno Haible  <bruno@clisp.org>
2555
2556         * README: Update git instructions.
2557
2558 2007-09-24  Eric Blake  <ebb9@byu.net>
2559
2560         Revert fpending breakage from 2007-09-08.
2561         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
2562         __fpending.c.
2563
2564 2007-09-24  Jim Meyering  <jim@meyering.net>
2565
2566         filenamecat.c: Add a test.
2567         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
2568         showing how the function works when DIR is the empty string.
2569
2570 2007-09-21  Simon Josefsson  <simon@josefsson.org>
2571
2572         * tests/test-canonicalize.sh: Turn on executable bit.
2573
2574 2007-09-19  Eric Blake  <ebb9@byu.net>
2575
2576         * README: Update CVS instructions.
2577
2578 2007-09-18  Bruno Haible  <bruno@clisp.org>
2579
2580         * modules/areadlink: New file.
2581         * lib/areadlink.h (areadlink): New declaration.
2582         * lib/areadlink.c: New file, based on lib/xreadlink.c.
2583
2584 2007-09-17  Jim Meyering  <jim@meyering.net>
2585
2586         * lib/savewd.c (ESTALE) [!defined]: Define.
2587         Reported to be required on Interix by Martin Koeppe.
2588
2589 2007-09-17  Bruno Haible  <bruno@clisp.org>
2590
2591         * gnulib-tool (func_version): Use $version.
2592
2593 2007-09-16  Bruno Haible  <bruno@clisp.org>
2594
2595         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
2596         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
2597         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
2598         Reported by Greg Schafer <gschafer@zip.com.au>.
2599
2600 2007-09-15  Bruno Haible  <bruno@clisp.org>
2601
2602         * gnulib-tool (sed): Try a little harder to make bash understand the
2603         alias.
2604         Reported by Bruce Korb <bruce.korb@gmail.com>.
2605
2606 2007-09-13  Eric Blake  <ebb9@byu.net>
2607
2608         * ChangeLog: Remove conflict markers.
2609
2610 2007-09-13  Simon Josefsson  <simon@josefsson.org>
2611
2612         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
2613         Reported by Bruno Haible <bruno@clisp.org>.
2614
2615 2007-09-12  Bruno Haible  <bruno@clisp.org>
2616
2617         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
2618         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
2619         is not defined.
2620
2621 2007-09-12  Eric Blake  <ebb9@byu.net>
2622
2623         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
2624         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
2625         Autoconf definition.
2626         * modules/euidaccess (Depends-on): Add extensions, for
2627         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
2628         * modules/fnmatch (Depends-on): Likewise.
2629         * modules/getaddrinfo (Depends-on): Likewise.
2630         * modules/getdelim (Depends-on): Likewise.
2631         * modules/getline (Depends-on): Likewise.
2632         * modules/getsubopt (Depends-on): Likewise.
2633         * modules/gettext (Depends-on): Likewise.
2634         * modules/group-member (Depends-on): Likewise.
2635         * modules/mbchar (Depends-on): Likewise.
2636         * modules/memmem (Depends-on): Likewise.
2637         * modules/mempcpy (Depends-on): Likewise.
2638         * modules/memrchr (Depends-on): Likewise.
2639         * modules/pagealign_alloc (Depends-on): Likewise.
2640         * modules/readutmp (Depends-on): Likewise.
2641         * modules/stpcpy (Depends-on): Likewise.
2642         * modules/stpncpy (Depends-on): Likewise.
2643         * modules/strchrnul (Depends-on): Likewise.
2644         * modules/strndup (Depends-on): Likewise.
2645         * modules/strsep (Depends-on): Likewise.
2646         * modules/strverscmp (Depends-on): Likewise.
2647         * modules/vasprintf (Depends-on): Likewise.
2648         * modules/wcwidth (Depends-on): Likewise.
2649         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
2650         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
2651         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
2652         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
2653         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
2654         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2655         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
2656         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
2657         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
2658         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
2659         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
2660         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
2661         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
2662         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
2663         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
2664         * m4/readutmp.m4 (gl_READUTMP): Likewise.
2665         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
2666         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
2667         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
2668         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
2669         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
2670         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
2671         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
2672         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
2673         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
2674         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
2675         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
2676         so that lock.m4 can be used in gettext without extensions module.
2677
2678 2007-09-11  Bruno Haible  <bruno@clisp.org>
2679
2680         * m4/isc-posix.m4: Remove file.
2681         Suggested by Eric Blake.
2682
2683 2007-09-11  Eric Blake  <ebb9@byu.net>
2684
2685         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
2686
2687 2007-09-10  Bruno Haible  <bruno@clisp.org>
2688
2689         * posix-modules: Fix typo in error message.
2690         Reported by Matt <mkraai@beckman.com>.
2691
2692 2007-09-09  Bruno Haible  <bruno@clisp.org>
2693
2694         * doc/functions/getdelim.texi: Update list of platforms lacking the
2695         function.
2696         * doc/functions/getline.texi: Likewise.
2697
2698 2007-09-09  Jim Meyering  <jim@meyering.net>
2699
2700         * lib/hash.c (hash_initialize): Detect calloc failure.
2701         Reported by Bruno Haible.
2702
2703 2007-09-09  Bruno Haible  <bruno@clisp.org>
2704
2705         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
2706         malloc or realloc fails.
2707
2708 2007-09-09  Bruno Haible  <bruno@clisp.org>
2709
2710         * modules/getcwd (Depends-on): Add malloc-posix.
2711         * modules/glob (Depends-on): Likewise.
2712         * modules/putenv (Depends-on): Likewise.
2713         * modules/strdup (Depends-on): Likewise.
2714         * modules/getdelim (Depends-on): Add realloc-posix.
2715         * modules/read-file (Depends-on): Likewise.
2716
2717 2007-09-09  Bruno Haible  <bruno@clisp.org>
2718
2719         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
2720         (gl_FUNC_MALLOC_POSIX): Require it.
2721         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
2722         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
2723         * modules/realloc (Files): Add m4/malloc.m4.
2724         * modules/calloc (Files): Likewise.
2725
2726 2007-09-09  Bruno Haible  <bruno@clisp.org>
2727
2728         * modules/malloc-posix: New file.
2729         * modules/malloc (Depends-on): Add malloc-posix.
2730         * lib/malloc.c: Include errno.h.
2731         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
2732         and a POSIX-compatible malloc into a single function. Set ENOMEM
2733         when returning NULL.
2734         * m4/malloc.m4: New file.
2735         * doc/functions/malloc.texi: Mention the malloc-posix module.
2736         * lib/stdlib_.h (malloc): New declaration.
2737         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2738         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
2739         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
2740         and HAVE_MALLOC_POSIX.
2741
2742 2007-09-09  Bruno Haible  <bruno@clisp.org>
2743
2744         * modules/realloc-posix: New file.
2745         * modules/realloc (Depends-on): Add realloc-posix.
2746         * lib/realloc.c: Include errno.h.
2747         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
2748         and a POSIX-compatible realloc into a single function. Set ENOMEM
2749         when returning NULL.
2750         * m4/realloc.m4: New file.
2751         * doc/functions/realloc.texi: Mention the realloc-posix module.
2752         * lib/stdlib_.h (realloc): New declaration.
2753         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2754         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
2755         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
2756         and HAVE_REALLOC_POSIX.
2757
2758 2007-09-09  Bruno Haible  <bruno@clisp.org>
2759
2760         * modules/calloc-posix: New file.
2761         * modules/calloc (Depends-on): Add calloc-posix.
2762         * lib/calloc.c: Include errno.h.
2763         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
2764         and a POSIX-compatible calloc into a single function. Set ENOMEM
2765         when returning NULL.
2766         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
2767         * doc/functions/calloc.texi: Mention the calloc-posix module.
2768         * lib/stdlib_.h (calloc): New declaration.
2769         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2770         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
2771         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
2772         and HAVE_CALLOC_POSIX.
2773
2774 2007-09-09  Bruno Haible  <bruno@clisp.org>
2775
2776         Allow for modules to show an arbitrary notice.
2777         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
2778         * gnulib-tool: New option --extract-notice.
2779         (func_usage): Document it.
2780         (sed_extract_prog): Update.
2781         (func_get_notice): New function.
2782         (func_modules_notice): New function.
2783         (func_import, func_create_testdir): Invoke it.
2784         Suggested by Jim Meyering.
2785
2786 2007-09-09  Bruno Haible  <bruno@clisp.org>
2787
2788         * gnulib-tool: New options --verbose, --quiet.
2789         (func_usage): Document them.
2790         (verbose): New variable.
2791         (func_execute_command): New function.
2792         (func_import): Don't show the module list and the file list if
2793         $verbose < 0.
2794         (func_create_testdir): Likewise. Use func_execute_command.
2795         (func_create_megatestdir): Use func_execute_command.
2796
2797 2007-09-08  Bruno Haible  <bruno@clisp.org>
2798
2799         * gnulib-tool (func_import): Prefer rsync over wget when available,
2800         for fetching the PO files.
2801
2802 2007-09-08  Bruno Haible  <bruno@clisp.org>
2803
2804         * posix-modules: New file. Portions copied from gnulib-tool.
2805         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
2806
2807 2007-09-08  Jim Meyering  <jim@meyering.net>
2808
2809         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
2810         * lib/fpending.h: Rename from __fpending.h.
2811         * lib/fpending.c: Rename from __fpending.c.
2812         Include "fpending.h", not "__fpending.h".
2813         * lib/__fpending.h, lib/__fpending.c: Remove files.
2814         * modules/fpending (Files): Reflect new file names.
2815         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
2816
2817 2007-09-08  Bruno Haible  <bruno@clisp.org>
2818
2819         * m4/inttypes-h.m4: Remove stub file.
2820
2821 2007-09-07  Simon Josefsson  <simon@josefsson.org>
2822
2823         * doc/headers/stdint.texi: Discuss #include_next issue.
2824
2825 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
2826
2827         * build-aux/bootstrap: Remove obsolete comment about wget --help.
2828
2829 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2830
2831         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
2832         in variable name.
2833
2834 2007-09-03  Jim Meyering  <jim@meyering.net>
2835
2836         New module: git-version-gen.
2837         * modules/git-version-gen: New file.
2838
2839         Import changes from coreutils for bootstrap script.
2840
2841         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
2842
2843         bootstrap: uses rsync to download the .po files
2844         * build-aux/bootstrap (po_download_command_format): New global.
2845         (download_po_files): Use rsync.
2846         (update_po_files): Don't remove .po files after download,
2847         so future rsync runs can take advantage of the copies.
2848
2849         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
2850
2851         Solve the unnecessary-.po-file-regeneration problem once and for all.
2852         * build-aux/bootstrap (download_po_files): New function, renamed from
2853         get_translations.  Now, downloads, but doesn't update LINGUAS.
2854         (update_po_files): New function.
2855
2856         bootstrap: Ignore more.
2857         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
2858         uniwidth to e.g., lib/.gitignore.
2859         (slurp): Handle the sys_stat_.h -> sys mapping, too.
2860
2861         * build-aux/bootstrap: New setting: vc_ignore.
2862         (insert_sorted_if_absent): Create $file if absent.
2863         Adapt to new, possibly empty, list: $vc_ignore.
2864
2865         bootstrap: generate more ignorable names
2866         * build-aux/bootstrap (slurp): When generating ignorable names,
2867         also map .sin to .sed, .gperf to .c, and .y to .c.
2868
2869 2007-09-03  Jim Meyering  <jim@meyering.net>
2870
2871         * build-aux/git-version-gen: New file, from coreutils.  For details, see
2872         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
2873
2874 2007-09-02  Bruno Haible  <bruno@clisp.org>
2875
2876         Fix mis-recognition of 'mcs' on QNX 6.
2877         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
2878         output contains the string "Mono".
2879         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
2880         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
2881
2882 2007-09-01  Bruno Haible  <bruno@clisp.org>
2883
2884         Fix collision between uniwidth/* and linebreak modules.
2885         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
2886         u32_width): Remove declarations.
2887         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
2888         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
2889         streq3, streq2, streq1, streq0): Remove functions.
2890         (STREQ): Remove macro.
2891         (is_cjk_encoding): Remove function.
2892         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
2893         (uc_width, u8_width, u16_width, u32_width): Remove functions.
2894         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
2895         * NEWS: Document the change.
2896
2897 2007-09-01  Bruno Haible  <bruno@clisp.org>
2898
2899         * lib/streq.h: Add double-inclusion guard.
2900
2901 2007-09-01  Karl Berry  <karl@gnu.org>
2902
2903         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
2904
2905 2007-08-28  Jim Meyering  <jim@meyering.net>
2906
2907         Rename mreadlink_with_size to areadlink_with_size.
2908         * NEWS: Document the change.
2909         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
2910         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
2911         * lib/mreadlink.h: Rename this to...
2912         * lib/areadlink.h: ...this.
2913         * modules/mreadlink-with-size: Rename this to...
2914         * modules/areadlink-with-size: ...this.
2915         * lib/canonicalize.c: Reflect the renaming.
2916         * modules/canonicalize: Likewise.
2917
2918 2007-08-26  Bruno Haible  <bruno@clisp.org>
2919
2920         * gnulib-tool (func_import): When deciding which files to remove,
2921         consider also dangling symbolic links.
2922         Reported by Eric Blake.
2923
2924 2007-08-26  Bruno Haible  <bruno@clisp.org>
2925
2926         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
2927
2928 2007-08-23  Simon Josefsson  <simon@josefsson.org>
2929
2930         * lib/readline.c: Don't include getline.h, the prototype is now
2931         found in stdio.h.
2932
2933 2007-08-23  Jim Meyering  <jim@meyering.net>
2934
2935         Getdelim touchup.
2936         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
2937         around the funlockfile call, since funlockfile never sets errno.
2938         Don't set errno upon failed realloc.
2939
2940 2007-08-22  Eric Blake  <ebb9@byu.net>
2941
2942         Getline touchups.
2943         * lib/getdelim.c (getdelim): Revert regression that required *n to
2944         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
2945         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
2946         getdelim, rather than whether implementation is missing.
2947         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
2948         * lib/stdio_.h (getline): Also declare if replacement is
2949         required.
2950         * doc/functions/getdelim.texi: New file.
2951         * doc/functions/getline.texi: Likewise.
2952         * doc/gnulib.texi (Function Substitutes): Add new files.
2953         Reported by Bruno Haible.
2954
2955 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
2956
2957         * users.txt: Add Guile.
2958
2959 2007-08-22  Eric Blake  <ebb9@byu.net>
2960
2961         * tests/test-getdelim.c (main): Use remove, not unlink.
2962         * tests/test-getline.c (main): Likewise.
2963
2964         Move getline and getdelim into stdio.h, per POSIX 200x.
2965         * modules/getline (Files): Remove getline.h.
2966         (Depends-on): Add stdio.
2967         (configure.ac): Add module indicator.
2968         * modules/getdelim (Files): Remove getdelim.h.
2969         (Depends-on): Add stdio.
2970         (configure.ac): Add module indicator.
2971         * modules/stdio (Makefile.am): Work with new indicators.
2972         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
2973         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
2974         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2975         * lib/getdelim.h: Delete.
2976         * lib/getline.h: Delete.
2977         * lib/stdio_.h (getdelim, getline): Declare.
2978         * modules/getdelim-tests: New module.
2979         * modules/getline-tests: Likewise.
2980         * tests/test-getdelim.c: New file.
2981         * tests/test-getline.c: Likewise.
2982         * NEWS: Document the change.
2983         * lib/getline.c: Update choice of header.
2984         * lib/csharpcomp.c: Likewise.
2985         * lib/getpass.c: Likewise.
2986         * lib/javacomp.c: Likewise.
2987         * lib/javaversion.c: Likewise.
2988         * lib/yesno.c: Likewise.
2989         * lib/getdelim.c: Likewise.
2990         (getdelim): Set errno on failure, and avoid memory leak.
2991
2992 2007-08-19  Bruno Haible  <bruno@clisp.org>
2993
2994         * modules/closein (Depends-on): Add freadahead.
2995         * lib/closein.c: Include freadahead.h.
2996         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
2997         is zero.
2998
2999 2007-08-19  Bruno Haible  <bruno@clisp.org>
3000
3001         * modules/freadahead-tests: New file.
3002         * tests/test-freadahead.sh: New file.
3003         * tests/test-freadahead.c: New file.
3004
3005         * modules/freadahead: New file.
3006         * lib/freadahead.h: New file.
3007         * lib/freadahead.c: New file.
3008         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
3009         fbufmode, fpurge, freadable, fwritable.
3010
3011 2007-08-19  Eric Blake  <ebb9@byu.net>
3012
3013         Test yesno in combination with closein.
3014         * lib/yesno.c (yesno): Document use of stdin.
3015         * modules/yesno-tests (Files): New module.
3016         * tests/test-yesno.c (main): New file.
3017         * tests/test-yesno.sh: Likewise.
3018
3019 2007-08-19  Bruno Haible  <bruno@clisp.org>
3020
3021         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
3022         * lib/fseeko.c (rpl_fseeko): Likewise.
3023         * lib/fseterr.c (fseterr): Likewise.
3024
3025 2007-08-19  Bruno Haible  <bruno@clisp.org>
3026
3027         * tests/test-lseek.c (main): Disable a test for BeOS.
3028         * doc/functions/lseek.texi: Document the BeOS bug.
3029
3030 2007-08-19  Bruno Haible  <bruno@clisp.org>
3031             Eric Blake  <ebb9@byu.net>
3032
3033         * lib/lseek.c: Include <sys/stat.h>.
3034         (rpl_lseek): Add workaround code also for Unix platforms.
3035         Needed for BeOS.
3036         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
3037         * doc/functions/lseek.texi: Document BeOS definiency.
3038
3039 2007-08-18  Bruno Haible  <bruno@clisp.org>
3040
3041         * modules/fstrcmp-tests: New file.
3042         * tests/test-fstrcmp.c: New file.
3043
3044 2007-08-18  Bruno Haible  <bruno@clisp.org>
3045
3046         * modules/fstrcmp: New file, from GNU gettext with modifications.
3047         * lib/fstrcmp.h: New file, from GNU gettext.
3048         * lib/fstrcmp.c: New file, from GNU gettext.
3049         * MODULES.html.sh (String handling): Add fstrcmp.
3050
3051 2007-08-18  Bruno Haible  <bruno@clisp.org>
3052
3053         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
3054         'bool'.
3055         (diag, compareseq): Remove const from the ctxt argument.
3056         (USE_HEURISTIC): Undefine at the end.
3057
3058 2007-08-18  Jim Meyering  <jim@meyering.net>
3059
3060         New file: lib/idcache.h
3061         * NEWS: Mention the addition.
3062         * modules/idcache (Files): Add lib/idcache.h
3063         * lib/idcache.c: Include "idcache.h".
3064         Don't include <sys/types.h>.
3065         Add a FIXME comment.
3066         Move file-scoped "static" declarations to the top.
3067         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
3068
3069 2007-08-17  Bruno Haible  <bruno@clisp.org>
3070         and Paul Eggert  <eggert@cs.ucla.edu>
3071
3072         * MODULES.html.sh: Add diffseq.
3073         * modules/diffseq: New file.
3074         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
3075         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
3076
3077 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
3078
3079         Import changes from coreutils for bootstrap script.
3080
3081         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
3082
3083         * build-aux/bootstrap (slurp): Work even in environments where
3084         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
3085         current code does not slurp files whose names start with ".", and
3086         this looks like it might be a troublesome area.
3087
3088         2007-07-11  Jim Meyering  <jim@meyering.net>
3089
3090         If there's a GPL vN copyright comment, require that N == 3.
3091
3092         2007-07-08  Jim Meyering  <jim@meyering.net>
3093
3094         Run the coreutils-specific code only if tests/Makefile.am.in exists.
3095         * build-aux/bootstrap (mam_template): Move definition out of loop.
3096
3097         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
3098
3099         * build-aux/bootstrap (symlink_to_dir): Rename function from
3100         symlink_to_gnulib.  Add a directory parameter.  Update all
3101         callers.
3102         (cp_mark_as_generated): Also check for -- and link to -- files in
3103         gl/.
3104
3105         2007-07-08  Jim Meyering  <jim@meyering.net>
3106
3107         Adapt to deeper hierarchy in gnulib.
3108         * build-aux/bootstrap (symlink_to_dir): If the destination
3109         directory doesn't exist, create it. This is required at least for
3110         "lib/uniwidth/cjk.h".
3111
3112         2007-05-15  Jim Meyering  <jim@meyering.net>
3113
3114         * build-aux/bootstrap: Now that generated Makefile.am files
3115         are no longer under version control, they must be created at
3116         bootstrap time.
3117
3118 2007-08-14  Ben Pfaff  <blp@gnu.org>
3119
3120         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
3121
3122 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
3123
3124         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
3125         given the changes below.
3126         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
3127         even on hosts that have padding bits beyond the supported 64.
3128
3129 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
3130
3131         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
3132         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
3133         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
3134         depends on it.
3135         (xstrtol_error): Remove.
3136         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
3137         but with a different signature.
3138         (ATTRIBUTE_NORETURN, __attribute__): New macros.
3139         * lib/xstrtol-error.c: Include exitfail.h.
3140         (xstrtol_fatal): New function, with a different signature from the
3141         old xstrtol_error, so that the caller need not worry about passing
3142         in an exit status, or about storage management of the option argument.
3143         (xstrtol_error): Now a static function.  Redo signature to
3144         implement xstrtol_fatal.  Output the correct number of hyphens in
3145         front of the option so that the caller need not worry about
3146         storage management.
3147         (N_): New macro.
3148         (_): Remove; not used now.
3149         * modules/xstrtol: Depend on getopt.
3150         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
3151         of old STRTOL_FATAL_ERROR macro.
3152         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
3153         of test program.
3154         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
3155         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
3156
3157 2007-08-08  Eric Blake  <ebb9@byu.net>
3158
3159         * lib/xstrtol-error.c: Add missing include.
3160
3161         Move xstrtol messages into gnulib domain, when --pobase is used.
3162         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
3163         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
3164         * modules/xstrtol (Files): Distribute new file.
3165         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
3166         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
3167         * tests/test-xstrtol.c: ...into new file.
3168         * tests/test-xstrtoul.c: Also test xstrtoul.
3169         * tests/test-xstrtoimax.c: Also test xstrtoimax.
3170         * tests/test-xstrtoumax.c: Also test xstrtoumax.
3171         * tests/test-xstrtol.sh: Drive the tests.
3172         * tests/test-xstrtoimax.sh: Likewise.
3173         * tests/test-xstrtoumax.sh: Likewise.
3174         * modules/xstrtol-tests: New module.
3175         * modules/xstrtoimax-tests: Likewise.
3176         * modules/xstrtoumax-tests: Likewise.
3177
3178 2007-08-08  Jim Meyering  <jim@meyering.net>
3179
3180         New function: mfile_name_concat.
3181         * lib/filenamecat.c (mfile_name_concat): New function, just like
3182         file_name_concat, but return NULL upon failure rather than exiting
3183         with a diagnostic.
3184         * lib/filenamecat.h: Declare it.
3185
3186 2007-08-07  Bruno Haible  <bruno@clisp.org>
3187
3188         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
3189         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
3190         warning from gcc.
3191         Reported by Eric Blake.
3192
3193 2007-08-07  Simon Josefsson  <simon@josefsson.org>
3194
3195         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
3196         * modules/crypto/arcfour (License): Likewise.
3197         * modules/crypto/des-tests (License): Likewise.
3198         * modules/crypto/gc-arctwo-tests (License): Likewise.
3199         * modules/crypto/gc-des-tests (License): Likewise.
3200         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
3201         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
3202         * modules/crypto/gc-md2-tests (License): Likewise.
3203         * modules/crypto/gc-md4-tests (License): Likewise.
3204         * modules/crypto/gc-md5-tests (License): Likewise.
3205         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
3206         * modules/crypto/gc-rijndael-tests (License): Likewise.
3207         * modules/crypto/gc-sha1-tests (License): Likewise.
3208         * modules/crypto/gc-tests (License): Likewise.
3209         * modules/crypto/hmac-md5 (License): Likewise.
3210         * modules/crypto/hmac-sha1 (License): Likewise.
3211         * modules/crypto/md2-tests (License): Likewise.
3212         * modules/crypto/md4-tests (License): Likewise.
3213         * modules/crypto/md5 (License): Likewise.
3214         * modules/crypto/rijndael (License): Likewise.
3215         * modules/crypto/sha1 (License): Likewise.
3216         * modules/memxor (License): Likewise.
3217
3218 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
3219         and Bruno Haible  <bruno@clisp.org>
3220
3221         * NEWS: Describe interface changes to human, xstrtol.
3222         * lib/human.h: Include <xstrtol.h>.
3223         (human_options): Return enum strtol_error, not int.  Remove
3224         bool arg; take int * instead.
3225         * lib/human.c: Don't include "gettext.h".
3226         (_): Remove; no longer used.
3227         Don't include <xstrtol.h>, since human.h does it.
3228         (human_options): Adjust to abovementioned interface changes.
3229         Do not report error to stderr; that's now the caller's
3230         responsibility.
3231         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
3232         interface change.
3233         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
3234         Str, Argument_type_string.  All uses changed.  Put " argument"
3235         in diagnostics to make them clearer.  Change wording of suffix
3236         message for clarity.
3237         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
3238         Argument_type_string.
3239         (STRTOL_FATAL_WARN): Remove; no longer used.
3240         * modules/human (Depends-on): Remove gettext-h.
3241
3242 2007-08-06  Simon Josefsson  <simon@josefsson.org>
3243
3244         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
3245
3246 2007-07-31  Bruno Haible  <bruno@clisp.org>
3247
3248         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
3249         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
3250         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
3251
3252 2007-07-31  Bruno Haible  <bruno@clisp.org>
3253
3254         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
3255         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
3256
3257 2007-07-30  Bruno Haible  <bruno@clisp.org>
3258
3259         * modules/base64 (License): Use the synonymous term "LGPLv2+".
3260         * modules/c-ctype (License): Likewise.
3261         * modules/c-strcase (License): Likewise.
3262         * modules/check-version (License): Likewise.
3263         * modules/iconv (License): Likewise.
3264         * modules/iconv_open (License): Likewise.
3265         * modules/read-file (License): Likewise.
3266         * modules/striconv (License): Likewise.
3267         * modules/strverscmp (License): Likewise.
3268         * modules/vasprintf (License): Likewise.
3269         * modules/crypto/des (License): Likewise.
3270         * modules/crypto/gc (License): Likewise.
3271         * modules/crypto/gc-arcfour (License): Likewise.
3272         * modules/crypto/gc-arctwo (License): Likewise.
3273         * modules/crypto/gc-des (License): Likewise.
3274         * modules/crypto/gc-hmac-md5 (License): Likewise.
3275         * modules/crypto/gc-hmac-sha1 (License): Likewise.
3276         * modules/crypto/gc-md2 (License): Likewise.
3277         * modules/crypto/gc-md4 (License): Likewise.
3278         * modules/crypto/gc-md5 (License): Likewise.
3279         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
3280         * modules/crypto/gc-random (License): Likewise.
3281         * modules/crypto/gc-rijndael (License): Likewise.
3282         * modules/crypto/gc-sha1 (License): Likewise.
3283         * modules/crypto/md2 (License): Likewise.
3284         * modules/crypto/md4 (License): Likewise.
3285
3286 2007-07-30  Jim Meyering  <jim@meyering.net>
3287
3288         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
3289         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
3290         it has valid stat data.  This bug would cause du not to count the
3291         sizes of inaccessible directories.
3292         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
3293         in <http://bugzilla.redhat.com/250077>.
3294
3295 2007-07-25  Peter O'Gorman  <peter@pogma.com>
3296             Bruno Haible  <bruno@clisp.org>
3297
3298         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
3299         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
3300         #include_next, gives a diagnostic about it, but reports no error in
3301         the exit code.
3302         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
3303
3304 2007-07-24  Ben Pfaff  <blp@gnu.org>
3305
3306         Improve name: "count-one-bits" is better than "popcount".
3307         * MODULES.html.sh: Update name.
3308         * lib/popcount.h: Renamed lib/count-one-bits.h.
3309         (popcount): Renamed count_one_bits.
3310         (popcountl): Renamed count_one_bits_l.
3311         (popcountll): Renamed count_one_bits_ll.
3312         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
3313         * modules/popcount: Renamed module/count-one-bits.
3314         * modules/popcount-tests: Renamed module/count-one-bits-tests.
3315         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
3316
3317 2007-07-23  Ben Pfaff  <blp@gnu.org>
3318
3319         * lib/popcount.h (popcount32): Reduce size of constants, to allow
3320         better code generation, and add U to large constants to avoid
3321         warnings, in non-GCC case.
3322         Suggested by Bruno Haible.
3323
3324 2007-07-23  Ben Pfaff  <blp@gnu.org>
3325
3326         * lib/popcount.h: Use verify_true instead of if...abort.
3327         * modules/popcount: Depend on verify module.
3328         Suggested by Jim Meyering.
3329
3330 2007-07-23  Bruno Haible  <bruno@clisp.org>
3331
3332         * gnulib-tool (func_import): Create a .cvsignore file also when the
3333         directory is not yet in CVS but the toplevel directory is. When
3334         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
3335         Reported by Karl Berry.
3336
3337 2007-07-22  Ben Pfaff  <blp@gnu.org>
3338
3339         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
3340         case.
3341         Suggested by Eric Blake.
3342
3343 2007-07-22  Ben Pfaff  <blp@gnu.org>
3344
3345         New module: popcount.
3346         * MODULES.html.sh: Add popcount.
3347         * modules/popcount: New file.
3348         * modules/popcount-tests: New file.
3349         * tests/test-popcount.c: New file.
3350         * lib/popcount.h: New file.
3351         * m4/popcount.m4: New file.
3352
3353 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
3354
3355         * build-aux/announce-gen: Update to GPLv3.
3356
3357         * build-aux/config.guess: Update from config.
3358
3359 2007-07-21  Bruno Haible  <bruno@clisp.org>
3360
3361         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
3362         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
3363
3364 2007-07-20  Jim Meyering  <jim@meyering.net>
3365
3366         * check-module: Diagnose a self-dependency.
3367
3368 2007-07-19  Bruno Haible  <bruno@clisp.org>
3369
3370         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
3371         empty.
3372         Reported by Eric Blake.
3373
3374 2007-07-18  Bruno Haible  <bruno@clisp.org>
3375
3376         * gnulib-tool: New options --po-base, --po-domain.
3377         (func_usage): Document them.
3378         (pobase, po_domain): New variables.
3379         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
3380         DEFAULT_TEXT_DOMAIN.
3381         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
3382         (func_import): Consider pobase and po_domain. Create a po/ directory.
3383         (func_create_testdir): Set pobase and po_domain to empty.
3384         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
3385         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
3386
3387 2007-07-18  Bruno Haible  <bruno@clisp.org>
3388
3389         * gnulib-tool (func_get_automake_snippet): Synthesize also an
3390         EXTRA_DIST augmentation for files in build-aux/.
3391
3392 2007-07-16  Bruno Haible  <bruno@clisp.org>
3393
3394         * modules/lseek (License): Use the synonymous term "LGPLv2+".
3395         * modules/getdelim (License): Likewise.
3396
3397 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3398
3399         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
3400         * modules/d-type (License): Likewise.
3401         * modules/extensions (License): Likewise.
3402         * modules/fnmatch (License): Likewise.
3403         * modules/fseeko (License): Likewise.
3404         * modules/getaddrinfo (License): Likewise.
3405         * modules/getline (License): Likewise.
3406         * modules/getlogin_r (License): Likewise.
3407         * modules/getpass (License): Likewise.
3408         * modules/gettimeofday (License): Likewise.
3409         * modules/glob (License): Likewise.
3410         * modules/inet_ntop (License): Likewise.
3411         * modules/malloc (License): Likewise.
3412         * modules/malloca (License): Likewise.
3413         * modules/memmem (License): Likewise.
3414         * modules/mempcpy (License): Likewise.
3415         * modules/memset (License): Likewise.
3416         * modules/minmax (License): Likewise.
3417         * modules/mktime (License): Likewise.
3418         * modules/netinet_in (License): Likewise.
3419         * modules/pathmax (License): Likewise.
3420         * modules/poll (License): Likewise.
3421         * modules/regex (License): Likewise.
3422         * modules/snprintf (License): Likewise.
3423         * modules/stdbool (License): Likewise.
3424         * modules/stdint (License): Likewise.
3425         * modules/stdio (License): Likewise.
3426         * modules/strcase (License): Likewise.
3427         * modules/strcasestr (License): Likewise.
3428         * modules/strdup (License): Likewise.
3429         * modules/string (License): Likewise.
3430         * modules/strndup (License): Likewise.
3431         * modules/strnlen (License): Likewise.
3432         * modules/strpbrk (License): Likewise.
3433         * modules/strptime (License): Likewise.
3434         * modules/strsep (License): Likewise.
3435         * modules/sys_select (License): Likewise.
3436         * modules/sys_socket (License): Likewise.
3437         * modules/sys_stat (License): Likewise.
3438         * modules/sys_time (License): Likewise.
3439         * modules/time (License): Likewise.
3440         * modules/time_r (License): Likewise.
3441         * modules/timegm (License): Likewise.
3442         * modules/unistd (License): Likewise.
3443         * modules/vsnprintf (License): Likewise.
3444         * modules/wctype (License): Likewise.
3445
3446 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3447
3448         * modules/argz (License): LGPLv2+.
3449
3450 2007-07-15  Karl Berry  <karl@gnu.org>
3451
3452         * doc/gnulib.texi: revise node structure per new fdl.texi.
3453
3454 2007-07-14  Bruno Haible  <bruno@clisp.org>
3455
3456         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
3457         the output file.
3458         * lib/uniname/uninames.h: Regenerated.
3459
3460 2007-07-14  Karl Berry  <karl@gnu.org>
3461
3462         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
3463         omitting sectioning and index commands.
3464
3465 2007-07-13  Bruno Haible  <bruno@clisp.org>
3466
3467         New gnulib-tool option --more-symlinks.
3468         * gnulib-tool (func_usage): Document --more-symlinks.
3469         (do_copyrights): New variable.
3470         Recognize option --more-symlinks.
3471         (func_import): Don't add a copyright notice transform to
3472         sed_transform_lib_file if do_copyrights is empty.
3473
3474 2007-07-13  Bruno Haible  <bruno@clisp.org>
3475
3476         * lib/vasnprintf.c (decimal_point_char): Define also if
3477         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
3478         && !NEED_PRINTF_DIRECTIVE_A.
3479         Reported by Clemens Koller <clemens.koller@anagramm.de> via
3480         Gary V. Vaughan <gary@gnu.org>.
3481
3482 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
3483
3484         * lib/inttypes_.h: Undo previous change, since it was fixed
3485         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
3486
3487 2007-07-13  Bruno Haible  <bruno@clisp.org>
3488
3489         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
3490         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
3491
3492 2007-07-13  Jim Meyering  <jim@meyering.net>
3493
3494         df: Don't fail for Tru64's "file-on-file mount".
3495         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
3496         so we fall through and use statfs instead.  Details here:
3497         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
3498         Reported by Albert Chin.
3499
3500 2007-07-13  Bruno Haible  <bruno@clisp.org>
3501
3502         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
3503         * modules/configmake (License): Likewise.
3504         * modules/gettext (License): Likewise.
3505         * modules/gettext-h (License): Likewise.
3506         * modules/include_next (License): Likewise.
3507         * modules/link-warning (License): Likewise.
3508         * modules/localcharset (License): Likewise.
3509         * modules/localename (License): Likewise.
3510         * modules/lock (License): Likewise.
3511         * modules/relocatable-lib-lgpl (License): Likewise.
3512         * modules/size_max (License): Likewise.
3513         * modules/vasnprintf (License): Likewise.
3514         * modules/wchar (License): Likewise.
3515         * modules/xsize (License): Likewise.
3516
3517 2007-07-13  Bruno Haible  <bruno@clisp.org>
3518
3519         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
3520         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
3521
3522 2007-07-12  Bruno Haible  <bruno@clisp.org>
3523
3524         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
3525         in the modules files.
3526
3527 2007-07-11  Karl Berry  <karl@gnu.org>
3528
3529         * MODULES.html.sh (func_module): use
3530          sed -e '\|^'"${includefile}"'$|d'
3531          instead of /.../d, to avoid errors on $includefile's containing /.
3532
3533 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
3534
3535         * gnulib-tool (func_import): Avoid duplication of --avoid
3536         statements
3537         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
3538         names to `_' in variable names.
3539
3540 2007-07-10  Eric Blake  <ebb9@byu.net>
3541
3542         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
3543         * NEWS: Document this change.
3544
3545 2007-07-08  Bruno Haible  <bruno@clisp.org>
3546
3547         Update to Unicode 5.0.
3548         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
3549         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
3550         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
3551         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
3552         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
3553         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
3554         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
3555         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
3556         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
3557         U+10A3F, U+1D242..U+1D244.
3558         (nonspacing_table_ind): Update.
3559         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
3560         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
3561
3562 2007-07-08  Bruno Haible  <bruno@clisp.org>
3563
3564         Update to Unicode 5.0.
3565         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
3566         code transform. Extend the name index field of unicode_name_to_code and
3567         unicode_code_to_name from 16 to 24 bits.
3568         * lib/uniname/uniname.c (unicode_character_name,
3569         unicode_name_character): Add the range 0x12xxx to the code transform.
3570         * lib/uniname/uninames.h: Regenerated.
3571         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
3572
3573 2007-07-07  Bruno Haible  <bruno@clisp.org>
3574
3575         * modules/wcwidth-tests: New file.
3576         * tests/test-wcwidth.c: New file.
3577
3578         Work around MacOS X wcwidth() bug.
3579         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
3580         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
3581         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
3582         original wcwidth in non-UTF-8 locales.
3583         * modules/wcwidth (Depends-on): Add localcharset, streq,
3584         uniwidth/width.
3585         * doc/functions/wcwidth.texi: Update.
3586
3587 2007-07-07  Bruno Haible  <bruno@clisp.org>
3588
3589         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
3590         (wcwidth): New declaration.
3591         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
3592         macros.
3593         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
3594         here. Prepare for creating <wchar.h> unconditionally.
3595         * modules/wchar (Depends-on): Add link-warning.
3596         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
3597         REPLACE_WCWIDTH, and GL_LINK_WARNING.
3598         * lib/wcwidth.h: Remove file.
3599         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
3600         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
3601         * modules/wcwidth (Files): Remove lib/wcwidth.h.
3602         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
3603         (Include): Replace wcwidth.h with <wchar.h>.
3604         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
3605         * lib/mbchar.h: Don't include wcwidth.h.
3606         * lib/mbswidth.c: Likewise.
3607         * NEWS: Mention the change.
3608
3609 2007-07-07  Bruno Haible  <bruno@clisp.org>
3610
3611         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
3612         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
3613         definition with an external declaration.
3614         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
3615         defined as a function. Remove AC_C_INLINE requirement.
3616         * modules/wcwidth (Files): Add lib/wcwidth.c.
3617         (Makefile.am): Remove redundant statement.
3618
3619 2007-07-07  Bruno Haible  <bruno@clisp.org>
3620
3621         * MODULES.html.sh (Unicode string functions): Add the new modules.
3622
3623         * tests/uniwidth/test-u32-strwidth.c: New file.
3624         * modules/uniwidth/u32-strwidth-tests: New file.
3625
3626         * lib/uniwidth/u32-strwidth.c: New file.
3627         * modules/uniwidth/u32-strwidth: New file.
3628
3629         * tests/uniwidth/test-u16-strwidth.c: New file.
3630         * modules/uniwidth/u16-strwidth-tests: New file.
3631
3632         * lib/uniwidth/u16-strwidth.c: New file.
3633         * modules/uniwidth/u16-strwidth: New file.
3634
3635         * tests/uniwidth/test-u8-strwidth.c: New file.
3636         * modules/uniwidth/u8-strwidth-tests: New file.
3637
3638         * lib/uniwidth/u8-strwidth.c: New file.
3639         * modules/uniwidth/u8-strwidth: New file.
3640
3641         * tests/uniwidth/test-u32-width.c: New file.
3642         * modules/uniwidth/u32-width-tests: New file.
3643
3644         * lib/uniwidth/u32-width.c: New file.
3645         * modules/uniwidth/u32-width: New file.
3646
3647         * tests/uniwidth/test-u16-width.c: New file.
3648         * modules/uniwidth/u16-width-tests: New file.
3649
3650         * lib/uniwidth/u16-width.c: New file.
3651         * modules/uniwidth/u16-width: New file.
3652
3653         * tests/uniwidth/test-u8-width.c: New file.
3654         * modules/uniwidth/u8-width-tests: New file.
3655
3656         * lib/uniwidth/u8-width.c: New file.
3657         * modules/uniwidth/u8-width: New file.
3658
3659         * tests/uniwidth/test-uc_width.c: New file.
3660         * modules/uniwidth/width-tests: New file.
3661
3662         * lib/uniwidth/width.c: New file, from GNU libiconv.
3663         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
3664         * modules/uniwidth/width: New file.
3665
3666         * lib/uniwidth.h: New file, from GNU libiconv.
3667         * modules/uniwidth/base: New file.
3668
3669 2007-07-07  Bruno Haible  <bruno@clisp.org>
3670
3671         * lib/uniname.h: New file, from GNU gettext.
3672         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
3673         * lib/uniname/uninames.h: New file, from GNU gettext.
3674         * lib/uniname/uniname.c: New file, from GNU gettext.
3675         * tests/uniname/test-uninames.sh: New file.
3676         * tests/uniname/test-uninames.c: New file, from GNU gettext.
3677         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
3678         * modules/uniname/base: New file.
3679         * modules/uniname/uniname: New file.
3680         * modules/uniname/uniname-tests: New file.
3681         * MODULES.html.sh (Unicode string functions): Add the new modules.
3682
3683 2007-07-06  Bruno Haible  <bruno@clisp.org>
3684
3685         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
3686
3687 2007-07-06  Bruno Haible  <bruno@clisp.org>
3688
3689         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
3690         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
3691         includes <cygwin/sys_time.h> which includes <sys/select.h> which
3692         include <sys/time.h>.
3693         Reported by Eric Blake.
3694
3695 2007-07-06  Eric Blake  <ebb9@byu.net>
3696
3697         Fix testing canonicalize on cygwin.
3698         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
3699         Revert patch from 2007-06-19.
3700         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
3701         canonicalize module is also in use.
3702         * tests/test-canonicalize.c: New file.
3703         * tests/test-canonicalize.sh: Likewise.
3704         * modules/canonicalize-tests: Likewise.
3705
3706 2007-07-06  Jim Meyering  <jim@meyering.net>
3707
3708         * lib/getugroups.c (getugroups): Detect getgrent failure.
3709         Adjust comment to reflect reality: this function may return -1.
3710
3711 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
3712
3713         * build-aux/bootstrap (TP_URL,get_translations): Update to use
3714         the new TP address.
3715         (usage): Fix typo
3716         (gnulib_mk): New variable.
3717
3718 2007-07-05  Jim Meyering  <jim@meyering.net>
3719
3720         Don't let endgrent clobber errno, no matter how improbable.
3721         * lib/getugroups.c (getugroups): Save and restore errno around
3722         endgrent call.
3723
3724         Close the group DB even when failing with 2^31 or more members.
3725         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
3726
3727 2007-07-04  Jim Meyering  <jim@meyering.net>
3728
3729         * lib/getugroups.h: New file.
3730         * lib/getugroups.c: Include "getugroups.h".
3731         Remove uses of "register" keyword.
3732         Move local variable, "cp", down into scope where used.
3733         Give "username" parameter the "const" attribute.
3734         * modules/getugroups (Files): Add lib/getugroups.h
3735
3736 2007-07-04  Karl Berry  <karl@gnu.org>
3737
3738         * MODULES.html.sh (func_all_modules): Complete rename of
3739         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
3740
3741 2007-07-02  Bruno Haible  <bruno@clisp.org>
3742
3743         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
3744         mode, when inttypes.h comes from gnulib.
3745         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
3746
3747 2007-07-02  Simon Josefsson  <simon@josefsson.org>
3748
3749         * NEWS: Mention lgpl module name change.
3750
3751         * modules/lgpl-2.1: Renamed from lgpl.
3752
3753         * NEWS: Mention gpl module name change.
3754
3755         * modules/gpl-3.0: New file, based on gpl-2.0.
3756
3757         * modules/gpl-2.0: Renamed from gpl.
3758
3759         * modules/gpl: Fix filename, doc/gpl.texi is now found at
3760         doc/gpl-2.0.texi.
3761
3762 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
3763
3764         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
3765         #define __STDC_LIMIT_MACROS temporarily while including
3766         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
3767         Problem reported by Joel E. Denny in
3768         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
3769
3770 2007-07-01  Bruno Haible  <bruno@clisp.org>
3771
3772         * lib/unistdio.h: New file.
3773         * lib/unistdio/u-asnprintf.h: New file.
3774         * lib/unistdio/u-asprintf.h: New file.
3775         * lib/unistdio/u-printf-args.c: New file.
3776         * lib/unistdio/u-printf-args.h: New file.
3777         * lib/unistdio/u-printf-parse.h: New file.
3778         * lib/unistdio/u-snprintf.h: New file.
3779         * lib/unistdio/u-sprintf.h: New file.
3780         * lib/unistdio/u-vasprintf.h: New file.
3781         * lib/unistdio/u-vsnprintf.h: New file.
3782         * lib/unistdio/u-vsprintf.h: New file.
3783         * lib/unistdio/ulc-asnprintf.c: New file.
3784         * lib/unistdio/ulc-asprintf.c: New file.
3785         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
3786         * lib/unistdio/ulc-printf-parse.c: New file.
3787         * lib/unistdio/ulc-snprintf.c: New file.
3788         * lib/unistdio/ulc-sprintf.c: New file.
3789         * lib/unistdio/ulc-vasnprintf.c: New file.
3790         * lib/unistdio/ulc-vasprintf.c: New file.
3791         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
3792         * lib/unistdio/ulc-vsnprintf.c: New file.
3793         * lib/unistdio/ulc-vsprintf.c: New file.
3794         * lib/unistdio/u8-asnprintf.c: New file.
3795         * lib/unistdio/u8-asprintf.c: New file.
3796         * lib/unistdio/u8-printf-parse.c: New file.
3797         * lib/unistdio/u8-snprintf.c: New file.
3798         * lib/unistdio/u8-sprintf.c: New file.
3799         * lib/unistdio/u8-vasnprintf.c: New file.
3800         * lib/unistdio/u8-vasprintf.c: New file.
3801         * lib/unistdio/u8-vsnprintf.c: New file.
3802         * lib/unistdio/u8-vsprintf.c: New file.
3803         * lib/unistdio/u8-u8-asnprintf.c: New file.
3804         * lib/unistdio/u8-u8-asprintf.c: New file.
3805         * lib/unistdio/u8-u8-snprintf.c: New file.
3806         * lib/unistdio/u8-u8-sprintf.c: New file.
3807         * lib/unistdio/u8-u8-vasnprintf.c: New file.
3808         * lib/unistdio/u8-u8-vasprintf.c: New file.
3809         * lib/unistdio/u8-u8-vsnprintf.c: New file.
3810         * lib/unistdio/u8-u8-vsprintf.c: New file.
3811         * lib/unistdio/u16-asnprintf.c: New file.
3812         * lib/unistdio/u16-asprintf.c: New file.
3813         * lib/unistdio/u16-printf-parse.c: New file.
3814         * lib/unistdio/u16-snprintf.c: New file.
3815         * lib/unistdio/u16-sprintf.c: New file.
3816         * lib/unistdio/u16-vasnprintf.c: New file.
3817         * lib/unistdio/u16-vasprintf.c: New file.
3818         * lib/unistdio/u16-vsnprintf.c: New file.
3819         * lib/unistdio/u16-vsprintf.c: New file.
3820         * lib/unistdio/u16-u16-asnprintf.c: New file.
3821         * lib/unistdio/u16-u16-asprintf.c: New file.
3822         * lib/unistdio/u16-u16-snprintf.c: New file.
3823         * lib/unistdio/u16-u16-sprintf.c: New file.
3824         * lib/unistdio/u16-u16-vasnprintf.c: New file.
3825         * lib/unistdio/u16-u16-vasprintf.c: New file.
3826         * lib/unistdio/u16-u16-vsnprintf.c: New file.
3827         * lib/unistdio/u16-u16-vsprintf.c: New file.
3828         * lib/unistdio/u32-asnprintf.c: New file.
3829         * lib/unistdio/u32-asprintf.c: New file.
3830         * lib/unistdio/u32-printf-parse.c: New file.
3831         * lib/unistdio/u32-snprintf.c: New file.
3832         * lib/unistdio/u32-sprintf.c: New file.
3833         * lib/unistdio/u32-vasnprintf.c: New file.
3834         * lib/unistdio/u32-vasprintf.c: New file.
3835         * lib/unistdio/u32-vsnprintf.c: New file.
3836         * lib/unistdio/u32-vsprintf.c: New file.
3837         * lib/unistdio/u32-u32-asnprintf.c: New file.
3838         * lib/unistdio/u32-u32-asprintf.c: New file.
3839         * lib/unistdio/u32-u32-snprintf.c: New file.
3840         * lib/unistdio/u32-u32-sprintf.c: New file.
3841         * lib/unistdio/u32-u32-vasnprintf.c: New file.
3842         * lib/unistdio/u32-u32-vasprintf.c: New file.
3843         * lib/unistdio/u32-u32-vsnprintf.c: New file.
3844         * lib/unistdio/u32-u32-vsprintf.c: New file.
3845         * tests/unistdio/test-ulc-asnprintf1.c: New file.
3846         * tests/unistdio/test-ulc-asnprintf1.h: New file.
3847         * tests/unistdio/test-ulc-printf1.h: New file.
3848         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
3849         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
3850         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
3851         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
3852         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
3853         * tests/unistdio/test-ulc-vasprintf1.c: New file.
3854         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
3855         * tests/unistdio/test-ulc-vsprintf1.c: New file.
3856         * tests/unistdio/test-u8-asnprintf1.c: New file.
3857         * tests/unistdio/test-u8-asnprintf1.h: New file.
3858         * tests/unistdio/test-u8-printf1.h: New file.
3859         * tests/unistdio/test-u8-vasnprintf1.c: New file.
3860         * tests/unistdio/test-u8-vasnprintf2.c: New file.
3861         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
3862         * tests/unistdio/test-u8-vasnprintf3.c: New file.
3863         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
3864         * tests/unistdio/test-u8-vasprintf1.c: New file.
3865         * tests/unistdio/test-u8-vsnprintf1.c: New file.
3866         * tests/unistdio/test-u8-vsprintf1.c: New file.
3867         * tests/unistdio/test-u16-asnprintf1.c: New file.
3868         * tests/unistdio/test-u16-asnprintf1.h: New file.
3869         * tests/unistdio/test-u16-printf1.h: New file.
3870         * tests/unistdio/test-u16-vasnprintf1.c: New file.
3871         * tests/unistdio/test-u16-vasnprintf2.c: New file.
3872         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
3873         * tests/unistdio/test-u16-vasnprintf3.c: New file.
3874         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
3875         * tests/unistdio/test-u16-vasprintf1.c: New file.
3876         * tests/unistdio/test-u16-vsnprintf1.c: New file.
3877         * tests/unistdio/test-u16-vsprintf1.c: New file.
3878         * tests/unistdio/test-u32-asnprintf1.c: New file.
3879         * tests/unistdio/test-u32-asnprintf1.h: New file.
3880         * tests/unistdio/test-u32-printf1.h: New file.
3881         * tests/unistdio/test-u32-vasnprintf1.c: New file.
3882         * tests/unistdio/test-u32-vasnprintf2.c: New file.
3883         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
3884         * tests/unistdio/test-u32-vasnprintf3.c: New file.
3885         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
3886         * tests/unistdio/test-u32-vasprintf1.c: New file.
3887         * tests/unistdio/test-u32-vsnprintf1.c: New file.
3888         * tests/unistdio/test-u32-vsprintf1.c: New file.
3889         * modules/unistdio/base: New file.
3890         * modules/unistdio/u-printf-args: New file.
3891         * modules/unistdio/ulc-asnprintf: New file.
3892         * modules/unistdio/ulc-asprintf: New file.
3893         * modules/unistdio/ulc-fprintf: New file.
3894         * modules/unistdio/ulc-printf-parse: New file.
3895         * modules/unistdio/ulc-snprintf: New file.
3896         * modules/unistdio/ulc-sprintf: New file.
3897         * modules/unistdio/ulc-vasnprintf: New file.
3898         * modules/unistdio/ulc-vasprintf: New file.
3899         * modules/unistdio/ulc-vfprintf: New file.
3900         * modules/unistdio/ulc-vsnprintf: New file.
3901         * modules/unistdio/ulc-vsprintf: New file.
3902         * modules/unistdio/u8-asnprintf: New file.
3903         * modules/unistdio/u8-asprintf: New file.
3904         * modules/unistdio/u8-printf-parse: New file.
3905         * modules/unistdio/u8-snprintf: New file.
3906         * modules/unistdio/u8-sprintf: New file.
3907         * modules/unistdio/u8-vasnprintf: New file.
3908         * modules/unistdio/u8-vasprintf: New file.
3909         * modules/unistdio/u8-vsnprintf: New file.
3910         * modules/unistdio/u8-vsprintf: New file.
3911         * modules/unistdio/u8-u8-asnprintf: New file.
3912         * modules/unistdio/u8-u8-asprintf: New file.
3913         * modules/unistdio/u8-u8-snprintf: New file.
3914         * modules/unistdio/u8-u8-sprintf: New file.
3915         * modules/unistdio/u8-u8-vasnprintf: New file.
3916         * modules/unistdio/u8-u8-vasprintf: New file.
3917         * modules/unistdio/u8-u8-vsnprintf: New file.
3918         * modules/unistdio/u8-u8-vsprintf: New file.
3919         * modules/unistdio/u16-asnprintf: New file.
3920         * modules/unistdio/u16-asprintf: New file.
3921         * modules/unistdio/u16-printf-parse: New file.
3922         * modules/unistdio/u16-snprintf: New file.
3923         * modules/unistdio/u16-sprintf: New file.
3924         * modules/unistdio/u16-vasnprintf: New file.
3925         * modules/unistdio/u16-vasprintf: New file.
3926         * modules/unistdio/u16-vsnprintf: New file.
3927         * modules/unistdio/u16-vsprintf: New file.
3928         * modules/unistdio/u16-u16-asnprintf: New file.
3929         * modules/unistdio/u16-u16-asprintf: New file.
3930         * modules/unistdio/u16-u16-snprintf: New file.
3931         * modules/unistdio/u16-u16-sprintf: New file.
3932         * modules/unistdio/u16-u16-vasnprintf: New file.
3933         * modules/unistdio/u16-u16-vasprintf: New file.
3934         * modules/unistdio/u16-u16-vsnprintf: New file.
3935         * modules/unistdio/u16-u16-vsprintf: New file.
3936         * modules/unistdio/u32-asnprintf: New file.
3937         * modules/unistdio/u32-asprintf: New file.
3938         * modules/unistdio/u32-printf-parse: New file.
3939         * modules/unistdio/u32-snprintf: New file.
3940         * modules/unistdio/u32-sprintf: New file.
3941         * modules/unistdio/u32-vasnprintf: New file.
3942         * modules/unistdio/u32-vasprintf: New file.
3943         * modules/unistdio/u32-vsnprintf: New file.
3944         * modules/unistdio/u32-vsprintf: New file.
3945         * modules/unistdio/u32-u32-asnprintf: New file.
3946         * modules/unistdio/u32-u32-asprintf: New file.
3947         * modules/unistdio/u32-u32-snprintf: New file.
3948         * modules/unistdio/u32-u32-sprintf: New file.
3949         * modules/unistdio/u32-u32-vasnprintf: New file.
3950         * modules/unistdio/u32-u32-vasprintf: New file.
3951         * modules/unistdio/u32-u32-vsnprintf: New file.
3952         * modules/unistdio/u32-u32-vsprintf: New file.
3953         * modules/unistdio/ulc-asnprintf-tests: New file.
3954         * modules/unistdio/ulc-vasnprintf-tests: New file.
3955         * modules/unistdio/ulc-vasprintf-tests: New file.
3956         * modules/unistdio/ulc-vsnprintf-tests: New file.
3957         * modules/unistdio/ulc-vsprintf-tests: New file.
3958         * modules/unistdio/u8-asnprintf-tests: New file.
3959         * modules/unistdio/u8-vasnprintf-tests: New file.
3960         * modules/unistdio/u8-vasprintf-tests: New file.
3961         * modules/unistdio/u8-vsnprintf-tests: New file.
3962         * modules/unistdio/u8-vsprintf-tests: New file.
3963         * modules/unistdio/u16-asnprintf-tests: New file.
3964         * modules/unistdio/u16-vasnprintf-tests: New file.
3965         * modules/unistdio/u16-vasprintf-tests: New file.
3966         * modules/unistdio/u16-vsnprintf-tests: New file.
3967         * modules/unistdio/u16-vsprintf-tests: New file.
3968         * modules/unistdio/u32-asnprintf-tests: New file.
3969         * modules/unistdio/u32-vasnprintf-tests: New file.
3970         * modules/unistdio/u32-vasprintf-tests: New file.
3971         * modules/unistdio/u32-vsnprintf-tests: New file.
3972         * modules/unistdio/u32-vsprintf-tests: New file.
3973         * MODULES.html.sh (Unicode string functions): Add the new modules.
3974
3975 2007-07-01  Bruno Haible  <bruno@clisp.org>
3976
3977         * lib/sprintf.c (sprintf): Limit the available length estimation,
3978         to avoid address wraparound.
3979         * lib/vsprintf.c (vsprintf): Likewise.
3980         * modules/sprintf-posix (Dependencies): Add stdint.
3981         * modules/vsprintf-posix (Dependencies): Likewise.
3982
3983 2007-07-01  Bruno Haible  <bruno@clisp.org>
3984
3985         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
3986         Windows PATH as well. Conservative double-quoting. Comments.
3987
3988 2007-07-01  Bruno Haible  <bruno@clisp.org>
3989             Eric Blake  <ebb9@byu.net>
3990             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3991
3992         * gnulib-tool (self_abspathname): Fix algorithm to cope with
3993         empty components in $PATH, denoting '.'.
3994
3995 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3996
3997         * gnulib-tool: Fix indentation.
3998         (func_create_megatestdir): Likewise.
3999         Report by Bruno Haible.
4000
4001 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4002
4003         Sync from Automake.
4004         * build-aux/gnupload: Fix shell portability issues with for loops.
4005         Report by Karl Berry.
4006
4007 2007-06-29  Simon Josefsson  <simon@josefsson.org>
4008
4009         * build-aux/maint.mk (POURL): Use translationproject.org.
4010
4011 2007-06-27  Simon Josefsson  <simon@josefsson.org>
4012             Bruno Haible  <bruno@clisp.org>
4013
4014         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
4015         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
4016         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
4017         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
4018         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
4019
4020 2007-06-27  Bruno Haible  <bruno@clisp.org>
4021
4022         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
4023         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
4024
4025 2007-06-26  Karl Berry  <karl@gnu.org>
4026
4027         * MODULES.html.sh: remove xreadlink-with-size.
4028
4029 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
4030
4031         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
4032         method that I hope also handles the double-include problem noted
4033         by Bruno Haible in
4034         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
4035
4036 2007-06-23  Bruno Haible  <bruno@clisp.org>
4037
4038         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
4039         Don't let the 'mostlyclean' target fail if the last subdirectory could
4040         not be removed.
4041         Reported by Karl Berry.
4042
4043 2007-06-23  Bruno Haible  <bruno@clisp.org>
4044
4045         * gnulib-tool (echo): Add a speedier workaround for ksh.
4046         * tests/test-echo.sh: Likewise.
4047
4048 2007-06-23  Bruno Haible  <bruno@clisp.org>
4049
4050         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
4051         * tests/test-echo.sh: Likewise.
4052
4053 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4054
4055         * gnulib-tool (IFS): Initialize early, so we don't set it to
4056         empty later.
4057         (self_abspathname): Rewrite algorithm to set it, reindent.
4058         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
4059         (func_create_megatestdir): Merge some sed scripts.
4060
4061 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
4062
4063         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
4064         exposed by Sun Studio 11 cc on Solaris 8.
4065
4066 2007-06-22  Bruno Haible  <bruno@clisp.org>
4067
4068         * gnulib-tool (echo): Ensure the echo primitive does not interpret
4069         backslashes.
4070         * tests/test-echo.sh: New file.
4071
4072 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4073
4074         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
4075         simplify `sed_replace_build_aux' scripts, they are portable but
4076         echoing them with `echo' is not.
4077         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
4078
4079 2007-06-21  Karl Berry  <karl@gnu.org>
4080
4081         * config/srclist.txt: guess we can't handle the licenses via
4082         srclist at the moment.
4083
4084 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
4085
4086         * MODULES.html.sh: Add include_next.
4087         * modules/include_next: New file.
4088
4089 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
4090
4091         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
4092         INCLUDE_NEXT.
4093         (gl_CHECK_NEXT_HEADERS): New macro.
4094         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
4095         the obsolescent gl_ABSOLUTE_HEADER.
4096         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
4097         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
4098         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
4099         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
4100         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
4101         * m4/math_h.m4 (gl_MATH_H): Likewise.
4102         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
4103         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
4104         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
4105         * m4/stdint.m4 (gl_STDINT_H): Likewise.
4106         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
4107         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
4108         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
4109         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
4110         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
4111         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
4112         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
4113         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
4114         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
4115         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
4116         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
4117         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
4118         * m4/inttypes.m4 (gl_INTTYPES_H): Define
4119         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
4120         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
4121         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
4122         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
4123         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
4124         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
4125         * lib/float_.h: Likewise.
4126         * lib/inttypes_.h: Likewise.
4127         * lib/math_.h: Likewise.
4128         * lib/search_.h: Likewise.
4129         * lib/signal_.h: Likewise.
4130         * lib/stdint_.h: Likewise.
4131         * lib/stdio_.h: Likewise.
4132         * lib/stdlib_.h: Likewise.
4133         * lib/string_.h: Likewise.
4134         * lib/sys_stat_.h: Likewise.
4135         * lib/sys_time_.h: Likewise.
4136         * lib/time_.h: Likewise.
4137         * lib/unistd_.h: Likewise.
4138         * lib/wchar_.h: Likewise.
4139         * lib/wctype_.h: Likewise.
4140         * lib/dirent_.h: Likewise.
4141         * lib/iconv_.h: Likewise.
4142         * lib/locale_.h: Likewise.
4143         * lib/netinet_in_.h: Likewise.
4144         * lib/sys_select_.h: Likewise.
4145         * lib/sys_socket_.h: Likewise.
4146         * lib/sysexits_.h: Likewise.
4147         * modules/fcntl (Depends-on): Depend on include_next, not
4148         absolute_header.
4149         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
4150         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
4151         * modules/fchdir: Likewise.
4152         * modules/float: Likewise.
4153         * modules/iconv_open: Likewise.
4154         * modules/inttypes: Likewise.
4155         * modules/locale: Likewise.
4156         * modules/math: Likewise.
4157         * modules/netinet_in: Likewise.
4158         * modules/search: Likewise.
4159         * modules/signal: Likewise.
4160         * modules/stdint: Likewise.
4161         * modules/stdio: Likewise.
4162         * modules/stdlib: Likewise.
4163         * modules/string: Likewise.
4164         * modules/sys_select: Likewise.
4165         * modules/sys_socket: Likewise.
4166         * modules/sys_stat: Likewise.
4167         * modules/sys_time: Likewise.
4168         * modules/sysexits: Likewise.
4169         * modules/time: Likewise.
4170         * modules/unistd: Likewise.
4171         * modules/wchar: Likewise.
4172         * modules/wctype: Likewise.
4173         * modules/sys_stat: Change maintainer to "all".
4174         * modules/unistd: Likewise.
4175
4176 2007-06-20  Karl Berry  <karl@gnu.org>
4177
4178         * config/srclist.txt: track www changes in license files.
4179
4180 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
4181
4182         * build-aux/bootstrap: Remove stray dot.
4183         Make sure build_aux settings are honored when linking
4184         gnulib_extra_files.
4185
4186 2007-06-19  Eric Blake  <ebb9@byu.net>
4187
4188         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
4189         Allow compilation on cygwin.
4190
4191 2007-06-19  Jim Meyering  <jim@meyering.net>
4192
4193         xreadlink-with-size: Remove module.  No longer used.
4194         Ex-callers now use xreadlink or mreadlink-with-size.
4195         * modules/xreadlink-with-size: Remove module.
4196         * lib/xreadlink-with-size.c: Remove file.
4197         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
4198         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
4199         just before the function definition *is* accurate.
4200
4201         Eliminate one way canonicalize_filename_mode could exit.
4202         * lib/canonicalize.c (canonicalize_filename_mode):
4203         Use mreadlink_with_size, not xreadlink_with_size.
4204
4205 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
4206
4207         Detect porting problems to FreeBSD/arm, which has time_t wider than
4208         long int.  Original problem reported for GNU diff by Xin Li in
4209         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
4210         * modules/getdate (Depends-on): Add intprops, verify.
4211         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
4212         is an integer type no wider than long int.
4213
4214 2007-06-18  Jim Meyering  <jim@meyering.net>
4215
4216         New module: mreadlink-with-size.
4217         * MODULES.html.sh: Add mreadlink-with-size.
4218         * modules/mreadlink-with-size: New module
4219         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
4220         not xreadlink-with-size.
4221         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
4222
4223 2007-06-16  Bruno Haible  <bruno@clisp.org>
4224
4225         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
4226         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
4227         Reported by Gary V. Vaughan <gary@gnu.org>.
4228
4229 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
4230
4231         Revamp lchown so that it lives in unistd.h where it belongs.
4232         * lib/lchown.h: Remove.
4233         * lib/dirchownmod.c: Don't include lib/lchown.h.
4234         * lib/fchownat.c: Likewise.
4235         * lib/openat.c: Likewise.
4236         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
4237         does not follow symlinks.
4238         (EOPNOTSUPP): Define if not defined.
4239         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
4240         is defined to 0.
4241         (lchown): New decl.
4242         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
4243         Do not check for lchown decl.
4244         Set REPLACE_LCHOWN.
4245         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
4246         REPLACE_LCHOWN.
4247         * modules/chown: Make it clear it follows symlinks.
4248         * modules/lchown: Make it clear it doesn't follow symlinks.
4249         (Files): Remove lib/lchown.h
4250         (Depends-on): Add unistd.
4251         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
4252         (Include): Include <unistd.h>, not "lchown.h".
4253         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
4254         REPLACE_LCHOWN.
4255
4256 2007-06-15  Jim Meyering  <jim@meyering.net>
4257
4258         Change license (GPL to LGPL) of fsusage and dependents.
4259         * modules/fsusage (License): Change to LGPL.
4260         * modules/full-read (License): Likewise.
4261         * modules/full-write (License): Likewise.
4262         * modules/safe-read (License): Likewise.
4263         * modules/safe-write (License): Likewise.
4264
4265 2007-06-14  Ben Pfaff  <blp@gnu.org>
4266
4267         Missing part of allocsa -> malloca transition.
4268         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
4269         gl_MALLOCA.
4270
4271 2007-06-12  Bruno Haible  <bruno@clisp.org>
4272
4273         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
4274         to ia64, x86_64, i386.
4275         Reported by Eric Blake.
4276
4277 2007-06-12  Bruno Haible  <bruno@clisp.org>
4278
4279         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
4280         cross-compiling to x86_64.
4281
4282 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
4283
4284         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
4285         glitch reported by Ralf Wildenhues in
4286         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
4287
4288         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
4289         Vin Shelton.
4290
4291 2007-06-11  Bruno Haible  <bruno@clisp.org>
4292
4293         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
4294         replacement string.
4295         Reported by Eric Blake.
4296
4297 2007-06-10  Bruno Haible  <bruno@clisp.org>
4298
4299         Prepare vasnprintf code for use with Unicode strings.
4300         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
4301         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
4302         TYPE_U32_STRING.
4303         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
4304         a_u32_string variants.
4305         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
4306         * lib/printf-args.c: Don't include config.h and the specification
4307         header if PRINTF_FETCHARGS is already defined.
4308         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
4309         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
4310         TYPE_U16_STRING, TYPE_U32_STRING.
4311         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
4312         u16_directive, u16_directives, u32_directive, u32_directives): New
4313         types.
4314         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
4315         New declarations.
4316         * lib/printf-parse.c: Don't include config.h and the specification
4317         header if PRINTF_PARSE is already defined. Eliminate the set of
4318         parameters for WIDE_CHAR_VERSION; the user of this file must provide
4319         them now. Include c-ctype.h.
4320         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
4321         directive and CHAR_T_ONLY_ASCII.
4322         * lib/vasnprintf.c: Don't include config.h and the specification header
4323         if VASNPRINTF is already defined.
4324         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
4325         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
4326         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
4327         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
4328         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
4329         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
4330         code accordingly.
4331         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
4332         pad_ourselves also in this case, with the 'c' and 's' directives, and
4333         with a different notion of "width".
4334         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
4335
4336 2007-06-10  Bruno Haible  <bruno@clisp.org>
4337
4338         * modules/unistr/u32-mbsnlen: New file.
4339         * lib/unistr/u32-mbsnlen.c: New file.
4340
4341         * modules/unistr/u16-mbsnlen: New file.
4342         * lib/unistr/u16-mbsnlen.c: New file.
4343
4344         * modules/unistr/u8-mbsnlen: New file.
4345         * lib/unistr/u8-mbsnlen.c: New file.
4346
4347         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
4348         declarations.
4349
4350 2007-06-10  Bruno Haible  <bruno@clisp.org>
4351
4352         * lib/string_.h (mbsnlen): New declaration.
4353         * lib/mbsnlen.c: New file.
4354         * m4/mbsnlen.m4: New file.
4355         * modules/mbsnlen: New file.
4356         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
4357         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
4358         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
4359
4360 2007-06-10  Bruno Haible  <bruno@clisp.org>
4361
4362         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
4363
4364 2007-06-10  Bruno Haible  <bruno@clisp.org>
4365
4366         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
4367         * lib/mbuiter.h: Likewise.
4368
4369 2007-06-10  Bruno Haible  <bruno@clisp.org>
4370
4371         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
4372         declaration.
4373
4374 2007-06-10  Karl Berry  <karl@gnu.org>
4375
4376         * config/srclist.txt: remove gettext entries, Bruno prefers
4377         to update individually.
4378
4379 2007-06-10  Bruno Haible  <bruno@clisp.org>
4380
4381         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
4382         'maxlen'. Ensure only length + width bytes are allocated, not
4383         length + 1 + width.
4384
4385 2007-06-09  Bruno Haible  <bruno@clisp.org>
4386
4387         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
4388         (CHAR_T): Remove macro.
4389         (VASNPRINTF): Update.
4390
4391 2007-06-09  Bruno Haible  <bruno@clisp.org>
4392
4393         * MODULES.html.sh (Unicode string functions): Add the new modules.
4394
4395         * modules/uniconv/u32-conv-to-enc: New file.
4396         * lib/uniconv/u32-conv-to-enc.c: New file.
4397         * modules/uniconv/u32-conv-to-enc-tests: New file.
4398         * tests/uniconv/test-u32-conv-to-enc.c: New file.
4399
4400         * modules/uniconv/u16-conv-to-enc: New file.
4401         * lib/uniconv/u16-conv-to-enc.c: New file.
4402         * lib/uniconv/u-conv-to-enc.h: New file.
4403         * modules/uniconv/u16-conv-to-enc-tests: New file.
4404         * tests/uniconv/test-u16-conv-to-enc.c: New file.
4405
4406         * modules/uniconv/u8-conv-to-enc: New file.
4407         * lib/uniconv/u8-conv-to-enc.c: New file.
4408         * modules/uniconv/u8-conv-to-enc-tests: New file.
4409         * tests/uniconv/test-u8-conv-to-enc.c: New file.
4410
4411         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
4412         u32_conv_to_encoding): New declarations.
4413
4414 2007-06-09  Bruno Haible  <bruno@clisp.org>
4415
4416         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
4417
4418 2007-06-09  Bruno Haible  <bruno@clisp.org>
4419
4420         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
4421         * modules/malloca: Renamed from modules/allocsa, updated.
4422         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
4423         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
4424         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
4425         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
4426         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
4427         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
4428         * modules/xmalloca: Renamed from modules/xallocsa, updated.
4429         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
4430         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
4431         * modules/c-strcasestr (Depends-on): Update.
4432         * lib/c-strcasestr.c: Update.
4433         * modules/c-strstr (Depends-on): Update.
4434         * lib/c-strstr.c: Update.
4435         * modules/canonicalize-lgpl (Depends-on): Update.
4436         * lib/canonicalize-lgpl.c: Update.
4437         * modules/clean-temp (Depends-on): Update.
4438         * lib/clean-temp.c: Update.
4439         * modules/csharpcomp (Depends-on): Update.
4440         * lib/csharpcomp.c: Update.
4441         * modules/csharpexec (Depends-on): Update.
4442         * lib/csharpexec.c: Update.
4443         * modules/javacomp (Depends-on): Update.
4444         * lib/javacomp.c: Update.
4445         * modules/javaexec (Depends-on): Update.
4446         * lib/javaexec.c: Update.
4447         * modules/mbscasestr (Depends-on): Update.
4448         * lib/mbscasestr.c: Update.
4449         * modules/mbsstr (Depends-on): Update.
4450         * lib/mbsstr.c: Update.
4451         * modules/setenv (Depends-on): Update.
4452         * lib/setenv.c: Update.
4453         * modules/strcasestr (Depends-on): Update.
4454         * lib/strcasestr.c: Update.
4455         * modules/striconveha (Depends-on): Update.
4456         * lib/striconveha.c: Update.
4457         * modules/relocatable-prog-wrapper (Files): Update.
4458         * lib/relocwrapper.c: Update.
4459         * build-aux/install-reloc: Update.
4460         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
4461
4462 2007-06-08  Bruno Haible  <bruno@clisp.org>
4463
4464         Port to uClibc.
4465         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
4466         * lib/fpurge.c (fpurge): Likewise.
4467         * lib/freading.c (freading): Likewise.
4468         * lib/fseeko.c (rpl_fseeko): Likewise.
4469         * lib/fseterr.c (fseterr): Likewise.
4470         * lib/fwriting.c (fwriting): Likewise.
4471         * tests/test-fflush.c (main): Avoid a failure on uClibc.
4472
4473 2007-06-08  Bruno Haible  <bruno@clisp.org>
4474
4475         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
4476         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
4477         * modules/gettext (Files): Add m4/intlmacosx.m4.
4478
4479 2007-06-07  Bruno Haible  <bruno@clisp.org>
4480
4481         * modules/localename-tests: New file.
4482         * tests/test-localename.c: New file.
4483
4484         New module 'localename'.
4485         * lib/localename.h: New file.
4486         * lib/localename.c: New file, from GNU gettext.
4487         * m4/localename.m4: New file.
4488         * modules/localename: New file.
4489
4490 2007-06-07  Bruno Haible  <bruno@clisp.org>
4491
4492         Work around the lack of <wchar.h> on some builds of uClibc.
4493         * doc/headers/wchar.texi: Update.
4494         * lib/wchar_.h: Include <wchar.h> only if it exists.
4495         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
4496         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
4497         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
4498         doesn't exist.
4499         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
4500         * modules/mbfile (Depends-on): Add wchar.
4501         * modules/mbiter (Depends-on): Likewise.
4502         * modules/mbuiter (Depends-on): Likewise.
4503         Reported by Simon Josefsson.
4504
4505 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
4506
4507         Work around problem reported by Steven M. Schweda in
4508         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
4509         Tru64 5.1B with the Compaq compiler environment installed declares
4510         an 'isblank' function but does not define it in the C library.
4511         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
4512         * lib/regex_internal.h (isblank): Likewise.
4513         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
4514         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
4515
4516 2007-06-05  Bruno Haible  <bruno@clisp.org>
4517
4518         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
4519         ia64.
4520         * modules/printf-safe: New file.
4521         * modules/fprintf-posix (Depends-on): Add printf-safe.
4522         * modules/printf-posix (Depends-on): Likewise.
4523         * modules/snprintf-posix (Depends-on): Likewise.
4524         * modules/sprintf-posix (Depends-on): Likewise.
4525         * modules/vasnprintf-posix (Depends-on): Likewise.
4526         * modules/vasprintf-posix (Depends-on): Likewise.
4527         * modules/vfprintf-posix (Depends-on): Likewise.
4528         * modules/vprintf-posix (Depends-on): Likewise.
4529         * modules/vsnprintf-posix (Depends-on): Likewise.
4530         * modules/vsprintf-posix (Depends-on): Likewise.
4531         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
4532         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
4533         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
4534         "no" on i386, x86_64, ia64.
4535         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
4536         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4537         on i386, x86_64, ia64.
4538         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
4539         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4540         on i386, x86_64, ia64.
4541         * tests/test-vasnprintf-posix.c: Include float.h.
4542         (LDBL80_WORDS): New macro.
4543         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4544         on i386, x86_64, ia64.
4545         * tests/test-vasprintf-posix.c: Include float.h.
4546         (LDBL80_WORDS): New macro.
4547         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4548         on i386, x86_64, ia64.
4549         * tests/test-snprintf-posix.c: Include float.h.
4550         * tests/test-sprintf-posix.c: Likewise.
4551         * tests/test-vsnprintf-posix.c: Likewise.
4552         * tests/test-vsprintf-posix.c: Likewise.
4553
4554 2007-06-05  Bruno Haible  <bruno@clisp.org>
4555
4556         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
4557         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
4558         non-IEEE numbers on i386, x86_64, ia64.
4559         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
4560         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
4561         * tests/test-isnanl.h: Include float.h.
4562         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
4563
4564 2007-06-05  Bruno Haible  <bruno@clisp.org>
4565
4566         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
4567         also the %a / %A. Handle the %a / %A code before this extra handling.
4568
4569 2007-06-05  Bruno Haible  <bruno@clisp.org>
4570
4571         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
4572         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
4573
4574 2007-06-05  Bruno Haible  <bruno@clisp.org>
4575
4576         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
4577         typo in variable name.
4578
4579 2007-06-05  Eric Blake  <ebb9@byu.net>
4580
4581         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
4582         Reported by Simon Josefsson.
4583
4584 2007-06-04  Bruno Haible  <bruno@clisp.org>
4585
4586         Avoid test failures on some PowerPC platforms.
4587         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
4588         Define differently for PowerPC.
4589         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
4590         Reported by Gary V. Vaughan <gary@gnu.org>.
4591
4592 2007-06-02  Bruno Haible  <bruno@clisp.org>
4593
4594         Fix test-stdint failure on FreeBSD/ia64.
4595         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
4596         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
4597         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
4598         * doc/headers/stdint.texi: Update.
4599
4600 2007-06-01  Bruno Haible  <bruno@clisp.org>
4601
4602         * tests/test-binary-io.c (main): Pass a third argument to open().
4603         Reported by Gary V. Vaughan <gary@gnu.org>.
4604
4605 2007-06-01  Bruno Haible  <bruno@clisp.org>
4606
4607         * doc/functions/frexpl.texi: Update for mingw.
4608
4609 2007-06-01  Bruno Haible  <bruno@clisp.org>
4610
4611         * tests/test-lseek.c (main): Disable test of errno for invalid third
4612         argument.
4613         * doc/functions/lseek.texi: Update.
4614         Reported by Gary V. Vaughan <gary@gnu.org>.
4615
4616 2007-05-28  Bruno Haible  <bruno@clisp.org>
4617
4618         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
4619
4620 2007-05-31  Eric Blake  <ebb9@byu.net>
4621
4622         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
4623         cross compiling.
4624
4625 2007-05-30  Eric Blake  <ebb9@byu.net>
4626         and Bruno Haible  <bruno@clisp.org>
4627
4628         Work around mingw test failures exposed by m4-1.4.9b.
4629         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
4630         * tests/test-unistd.c: Disable uid_t and git_t tests for the
4631         moment.
4632
4633 2007-05-30  Bruno Haible  <bruno@clisp.org>
4634
4635         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
4636         assuming that they are closed. Needed on HP-UX 11.
4637
4638 2007-05-29  Bruno Haible  <bruno@clisp.org>
4639
4640         Fix a problem with #include_next.
4641         * lib/dirent_.h: Split the double-inclusion guard.
4642         * lib/fcntl_.h: Likewise.
4643         * lib/float_.h: Likewise.
4644         * lib/iconv_.h: Likewise.
4645         * lib/inttypes_.h: Likewise.
4646         * lib/locale_.h: Likewise.
4647         * lib/math_.h: Likewise.
4648         * lib/netinet_in_.h: Likewise.
4649         * lib/search_.h: Likewise.
4650         * lib/signal_.h: Likewise.
4651         * lib/stdint_.h: Likewise.
4652         * lib/stdio_.h: Likewise.
4653         * lib/stdlib_.h: Likewise.
4654         * lib/string_.h: Likewise.
4655         * lib/sys_select_.h: Likewise.
4656         * lib/sys_socket_.h: Likewise.
4657         * lib/sys_stat_.h: Likewise.
4658         * lib/sys_time_.h: Likewise.
4659         * lib/sysexits_.h: Likewise.
4660         * lib/time_.h: Likewise.
4661         * lib/unistd_.h: Likewise.
4662         * lib/wchar_.h: Likewise.
4663         * lib/wctype_.h: Likewise.
4664
4665 2007-05-29  Bruno Haible  <bruno@clisp.org>
4666
4667         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
4668         for the moment.
4669
4670 2007-05-29  Bruno Haible  <bruno@clisp.org>
4671
4672         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
4673         invocation.
4674         Reported by Eric Blake.
4675
4676 2007-05-29  Bruno Haible  <bruno@clisp.org>
4677
4678         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
4679         compiling case.
4680
4681 2007-05-29  Eric Blake  <ebb9@byu.net>
4682             Bruno Haible  <bruno@clisp.org>
4683
4684         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
4685         cross compiles.
4686
4687 2007-05-28  Eric Blake  <ebb9@byu.net>
4688
4689         * modules/closein-tests (test_closein_LDADD): Support test on
4690         cygwin with libtool.
4691
4692 2007-05-28  Bruno Haible  <bruno@clisp.org>
4693
4694         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
4695         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
4696         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
4697         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
4698         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
4699         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
4700         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
4701         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
4702         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
4703
4704 2007-05-28  Eric Blake  <ebb9@byu.net>
4705
4706         Unconditionally include <config.h> in unit tests.
4707         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
4708         * tests/test-allocsa.c, tests/test-arcfour.c,
4709         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
4710         tests/test-array_list.c, tests/test-array_oset.c,
4711         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
4712         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
4713         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
4714         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
4715         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
4716         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
4717         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
4718         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
4719         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
4720         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
4721         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
4722         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
4723         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
4724         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
4725         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
4726         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
4727         test-md5.c, test-memmem.c, test-printf-posix.c,
4728         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
4729         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
4730         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
4731         test-strcasestr.c, test-striconv.c, test-striconveh.c,
4732         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
4733         test-vasnprintf-posix2.c, test-vasnprintf.c,
4734         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
4735         test-vfprintf-posix.c, test-vprintf-posix.c,
4736         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
4737         test-xvasprintf.c: Likewise.
4738
4739 2007-05-28  Bruno Haible  <bruno@clisp.org>
4740
4741         * gnulib-tool (func_import): Remember the --with-tests command-line
4742         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
4743         Reported by Eric Blake.
4744
4745 2007-05-28  Bruno Haible  <bruno@clisp.org>
4746
4747         * modules/ftell-tests: New file.
4748         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
4749         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
4750
4751         * lib/ftell.c: New file.
4752         * modules/ftell: New file.
4753         * m4/ftell.m4: New file.
4754         * doc/functions/ftell.texi: Update.
4755         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
4756         REPLACE_FTELL.
4757         * lib/stdio_.h (rpl_ftell): New declaration.
4758         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
4759         REPLACE_FTELL.
4760
4761 2007-05-28  Eric Blake  <ebb9@byu.net>
4762
4763         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
4764
4765 2007-05-28  Bruno Haible  <bruno@clisp.org>
4766
4767         * modules/fseek-tests: New file.
4768         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
4769         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
4770
4771         * lib/fseek.c: New file.
4772         * modules/fseek: New file.
4773         * m4/fseek.m4: New file.
4774         * doc/functions/fseek.texi: Update.
4775         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
4776         REPLACE_FSEEK.
4777         * lib/stdio_.h (rpl_fseek): New declaration.
4778         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
4779         REPLACE_FSEEK.
4780
4781 2007-05-28  Bruno Haible  <bruno@clisp.org>
4782
4783         * lib/stdio_.h (fflush): More comments.
4784
4785 2007-05-28  Bruno Haible  <bruno@clisp.org>
4786
4787         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
4788         runtime test.
4789
4790 2007-05-28  Eric Blake  <ebb9@byu.net>
4791
4792         Improve lseek module.
4793         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
4794         * lib/unistd_.h (lseek): Scale back link warning message.
4795         * tests/test-lseek.c: Beef up test.
4796         * tests/test-lseek.sh: Exercise more facets of lseek.
4797         Reported by Bruno Haible.
4798
4799 2007-05-28  Bruno Haible  <bruno@clisp.org>
4800
4801         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
4802         to define.
4803
4804 2007-05-27  Bruno Haible  <bruno@clisp.org>
4805
4806         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
4807
4808 2007-05-27  Bruno Haible  <bruno@clisp.org>
4809
4810         * modules/openmp: New file.
4811         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
4812         Noah Misch.
4813
4814 2007-05-26  Bruno Haible  <bruno@clisp.org>
4815
4816         * modules/chdir-long (Depends-on): Add fchdir.
4817         * modules/chdir-safer (Depends-on): Likewise.
4818         * modules/fts (Depends-on): Likewise.
4819         * modules/fts-lgpl (Depends-on): Likewise.
4820         * modules/openat (Depends-on): Likewise.
4821         * modules/savewd (Depends-on): Likewise.
4822
4823 2007-05-24  Eric Blake  <ebb9@byu.net>
4824
4825         Fix lseek on mingw.
4826         * modules/lseek: New module.
4827         * m4/lseek.m4: New file.
4828         * lib/lseek.c: New file.
4829         * modules/lseek-tests: New file.
4830         * tests/test-lseek.c: New file.
4831         * tests/test-lseek.sh: New file.
4832         * MODULES.html.sh: Document lseek module.
4833         * modules/fflush (Depends-on): Add lseek, fseeko.
4834         * modules/fseeko (Depends-on): Likewise.
4835         * modules/ftello (Depends-on): Likewise.
4836         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
4837         broken.
4838         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
4839         broken.
4840         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
4841         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
4842         * lib/ftello.c (rpl_ftello): Likewise.
4843         * tests/test-fseeko.c (main): Test this.
4844         * tests/test-fseeko.sh: Likewise.
4845         * tests/test-ftello.c (main): Likewise.
4846         * tests/test-ftello.sh: Likewise.
4847         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
4848         implies replacing fseek.
4849         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
4850         HAVE_FTELLO.
4851         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
4852         * modules/unistd (Makefile.am): Likewise.
4853         * lib/unistd_.h (lseek): Declare a replacement.
4854         * doc/functions/lseek.texi (lseek): Document this fix.
4855         * doc/functions/fseek.texi (fseek): Likewise.
4856         * doc/functions/ftell.texi (ftell): Likewise.
4857
4858 2007-05-24  Bruno Haible  <bruno@clisp.org>
4859
4860         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
4861         in the printed representation of a NaN.
4862         * tests/test-vasprintf-posix.c (test_function): Likewise.
4863         * tests/test-snprintf-posix.h (test_function): Likewise.
4864         * tests/test-sprintf-posix.h (test_function): Likewise.
4865         Reported by Eric Blake.
4866
4867 2007-05-23  Eric Blake  <ebb9@byu.net>
4868
4869         Fix fseeko/ftello on cygwin 1.5.24.
4870         * doc/functions/fseeko.texi (fseeko): Document the fix.
4871         * doc/functions/ftello.texi (ftello): Document the fix.
4872         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
4873         * doc/functions/stdout.text (stdout): New file.
4874         * doc/functions/stderr.text (stderr): New file.
4875         * doc/gnulib.texi (Function Substitutes): Use new files.
4876         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
4877         prior to 1.7.0.
4878         * tests/test-ftello.c (main): Likewise for ftello.
4879         * tests/test-fseeko.sh: New file.
4880         * tests/test-ftello.sh: New file.
4881         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
4882         with seekable stdin.
4883         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
4884         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
4885         (gl_REPLACE_FSEEKO): New macro.
4886         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
4887         * modules/fseeko (Files): Distribute fseeko.c.
4888         * modules/ftello (Files): Distribute ftello.c.
4889         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
4890         mode.
4891         * lib/ftello.c (rpl_ftello): New file.
4892         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
4893         fseeko, ftello.
4894         (gl_STDIN_LARGE_OFFSET): New macro.
4895         * modules/stdio (Makefile.am): Perform the replacement.
4896         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
4897
4898 2007-05-23  Bruno Haible  <bruno@clisp.org>
4899
4900         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
4901         GNULIB_POSIXCHECK is defined.
4902
4903 2007-05-21  Bruno Haible  <bruno@clisp.org>
4904
4905         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
4906         Check also the output for NaN arguments. When cross-compiling, guess
4907         no on IRIX.
4908         * lib/vasnprintf.c: Update comments.
4909         * tests/test-vasnprintf-posix.c (strisnan): New function.
4910         (test_function): Use it.
4911         * tests/test-vasprintf-posix.c (strisnan): New function.
4912         (test_function): Use it.
4913         * tests/test-snprintf-posix.h (strisnan): New function.
4914         (test_function): Use it.
4915         * tests/test-sprintf-posix.h (strisnan): New function.
4916         (test_function): Use it.
4917         Reported by Eric Blake.
4918
4919 2007-05-20  Bruno Haible  <bruno@clisp.org>
4920
4921         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
4922         numbers that fails on BeOS.
4923         * doc/functions/frexpl.texi: Update.
4924
4925 2007-05-20  Jim Meyering  <jim@meyering.net>
4926
4927         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
4928         forced upon us by glibc-2.6.
4929
4930 2007-05-20  Bruno Haible  <bruno@clisp.org>
4931
4932         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
4933         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
4934         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
4935         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
4936         NEED_PRINTF_INFINITE.
4937         (is_infinitel): New function.
4938         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
4939         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
4940         gl_PREREQ_VASNPRINTF_INFINITE.
4941         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
4942         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4943         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
4944         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
4945         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
4946         gl_PREREQ_VASNPRINTF_INFINITE.
4947         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4948         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4949         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4950         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4951         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4952         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4953         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4954         * doc/functions/fprintf.texi: Update.
4955         * doc/functions/printf.texi: Update.
4956         * doc/functions/snprintf.texi: Update.
4957         * doc/functions/sprintf.texi: Update.
4958         * doc/functions/vfprintf.texi: Update.
4959         * doc/functions/vprintf.texi: Update.
4960         * doc/functions/vsnprintf.texi: Update.
4961         * doc/functions/vsprintf.texi: Update.
4962
4963 2007-05-20  Bruno Haible  <bruno@clisp.org>
4964
4965         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
4966         was not found in libc.
4967         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
4968
4969 2007-05-20  Bruno Haible  <bruno@clisp.org>
4970
4971         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4972         printed as "-nan" instead of "nan".
4973         * tests/test-vasprintf-posix.c (test_function): Likewise.
4974         * tests/test-snprintf-posix.h (test_function): Likewise.
4975         * tests/test-sprintf-posix.h (test_function): Likewise.
4976         Needed for HP-UX 11.
4977
4978 2007-05-20  Jim Meyering  <jim@meyering.net>
4979
4980         Fix buggy test for the fchownat-deref bug.
4981         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
4982         symlink required for the run-test.  Without it, this test would
4983         always declare that fchownat doesn't work, and client code would
4984         unnecessarily use the replacement function with fixed libc.
4985         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
4986         Reported by Greg Schafer.
4987
4988 2007-05-19  Bruno Haible  <bruno@clisp.org>
4989
4990         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
4991         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
4992         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
4993         Needed for IRIX 6.5 and Solaris 2.5.1.
4994
4995 2007-05-19  Bruno Haible  <bruno@clisp.org>
4996
4997         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
4998         (test_function): Skip tests involving -0.0 on platforms where
4999         -0.0 = 0.0.
5000         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
5001         (test_function): Skip tests involving -0.0 on platforms where
5002         -0.0 = 0.0.
5003         * tests/test-snprintf-posix.h (have_minus_zero): New function.
5004         (test_function): Skip tests involving -0.0 on platforms where
5005         -0.0 = 0.0.
5006         * tests/test-sprintf-posix.h (have_minus_zero): New function.
5007         (test_function): Skip tests involving -0.0 on platforms where
5008         -0.0 = 0.0.
5009         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
5010         tests.
5011         * tests/test-printf-posix.h (test_function): Likewise.
5012         * tests/test-printf-posix.output: Remove all -0.0 related results.
5013         Needed for IRIX 6.5.
5014
5015 2007-05-19  Bruno Haible  <bruno@clisp.org>
5016
5017         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
5018         printed as "nan0x7fffffff" instead of "nan".
5019         * tests/test-vasprintf-posix.c (test_function): Likewise.
5020         * tests/test-snprintf-posix.h (test_function): Likewise.
5021         * tests/test-sprintf-posix.h (test_function): Likewise.
5022         * tests/test-fprintf-posix.h (NaN): Remove macro.
5023         (test_function): Remove all NaN related tests.
5024         * tests/test-printf-posix.h (NaN): Remove macro.
5025         (test_function): Remove all NaN related tests.
5026         * tests/test-printf-posix.output: Remove all NaN related results.
5027         Needed for IRIX 6.5.
5028
5029 2007-05-19  Bruno Haible  <bruno@clisp.org>
5030
5031         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
5032         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
5033
5034 2007-05-19  Bruno Haible  <bruno@clisp.org>
5035
5036         * lib/float_.h: New file.
5037         * m4/float_h.m4: New file.
5038         * modules/float: New file.
5039         * modules/isnanl (Dependencies): Add float.
5040         * modules/isnanl-nolibm (Dependencies): Likewise.
5041         * modules/mathl (Dependencies): Likewise.
5042         * modules/printf-frexpl (Dependencies): Likewise.
5043         * modules/signbit (Dependencies): Likewise.
5044         * modules/vasnprintf (Dependencies): Likewise.
5045         * doc/headers/float.texi: Update.
5046
5047 2007-05-19  Jim Meyering  <jim@meyering.net>
5048
5049         * lib/utimens.c (gl_futimens): Rename from futimens,
5050         now that glibc-2.6 declares futimens.
5051         * lib/utimens.h: Likewise.
5052
5053 2007-05-19  Bruno Haible  <bruno@clisp.org>
5054
5055         Avoid test failures on mingw.
5056         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
5057         * tests/test-printf-posix.sh: Likewise.
5058         * tests/test-vfprintf-posix.sh: Likewise.
5059         * tests/test-vprintf-posix.sh: Likewise.
5060
5061 2007-05-19  Bruno Haible  <bruno@clisp.org>
5062
5063         Fix *printf result for NaN, Inf, -0.0 on mingw.
5064         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
5065         * lib/vasnprintf.c: Include math.h and isnan.h.
5066         (is_infinite_or_zero): New function.
5067         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
5068         values in the %f, %F, %e, %E, %g, %G directives.
5069         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
5070         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5071         gl_PRINTF_INFINITE and test its result. Invoke
5072         gl_PREREQ_VASNPRINTF_INFINITE.
5073         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5074         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5075         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5076         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5077         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5078         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5079         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5080         * doc/functions/fprintf.texi: Update.
5081         * doc/functions/printf.texi: Update.
5082         * doc/functions/snprintf.texi: Update.
5083         * doc/functions/sprintf.texi: Update.
5084         * doc/functions/vfprintf.texi: Update.
5085         * doc/functions/vprintf.texi: Update.
5086         * doc/functions/vsnprintf.texi: Update.
5087         * doc/functions/vsprintf.texi: Update.
5088
5089 2007-05-19  Bruno Haible  <bruno@clisp.org>
5090
5091         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
5092         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
5093         Instead of multiplying with 10^k, set extra_zeroes to k.
5094         (scale10_round_long_double): Remove function.
5095
5096 2007-05-18  Bruno Haible  <bruno@clisp.org>
5097
5098         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
5099         introduced on 2007-05-06.
5100
5101 2007-05-18  Bruno Haible  <bruno@clisp.org>
5102
5103         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
5104         %g directives.
5105         * tests/test-vasprintf-posix.c (test_function): Likewise.
5106         * tests/test-snprintf-posix.h (test_function): Likewise.
5107         * tests/test-sprintf-posix.h (test_function): Likewise.
5108
5109 2007-05-18  Bruno Haible  <bruno@clisp.org>
5110
5111         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
5112         (strmatch): New function.
5113         (test_function): Test the %f directive on numbers of various exponents.
5114         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
5115         (strmatch): New function.
5116         (test_function): Test the %f directive on numbers of various exponents.
5117         * tests/test-snprintf-posix.h (strmatch): New function.
5118         (test_function): Test the %f directive on numbers of various exponents.
5119         * tests/test-sprintf-posix.h (strmatch): New function.
5120         (test_function): Test the %f directive on numbers of various exponents.
5121         * tests/test-snprintf-posix.c (SIZEOF): New macro.
5122         * tests/test-sprintf-posix.c (SIZEOF): New macro.
5123         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
5124         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
5125
5126 2007-05-18  Bruno Haible  <bruno@clisp.org>
5127
5128         Add support for 'long double' number output.
5129         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
5130         * lib/vasnprintf.c: Include math.h and float+.h.
5131         (mp_limb_t): New type.
5132         (GMP_LIMB_BITS): New macro.
5133         (mp_twolimb_t): New type.
5134         (GMP_TWOLIMB_BITS): New macro.
5135         (mpn_t): New type.
5136         (multiply, divide, convert_to_decimal, decode_long_double,
5137         scale10_round_long_double, scale10_round_decimal_long_double,
5138         floorlog10l): New functions.
5139         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
5140         for the %f, %F, %e, %E, %g, %G directives.
5141         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
5142         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5143         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
5144         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
5145         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
5146         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5147         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5148         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5149         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5150         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5151         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5152         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
5153         * modules/snprintf-posix (Depends-on): Likewise.
5154         * modules/sprintf-posix (Depends-on): Likewise.
5155         * modules/vasnprintf-posix (Depends-on): Likewise.
5156         * modules/vasprintf-posix (Depends-on): Likewise.
5157         * modules/vfprintf-posix (Depends-on): Likewise.
5158         * modules/vsnprintf-posix (Depends-on): Likewise.
5159         * modules/vsprintf-posix (Depends-on): Likewise.
5160         * modules/vasnprintf (Files): Add lib/float+.h.
5161         * doc/functions/fprintf.texi: Update.
5162         * doc/functions/printf.texi: Update.
5163         * doc/functions/snprintf.texi: Update.
5164         * doc/functions/sprintf.texi: Update.
5165         * doc/functions/vfprintf.texi: Update.
5166         * doc/functions/vprintf.texi: Update.
5167         * doc/functions/vsnprintf.texi: Update.
5168         * doc/functions/vsprintf.texi: Update.
5169
5170 2007-05-18  Bruno Haible  <bruno@clisp.org>
5171
5172         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
5173
5174 2007-05-18  Bruno Haible  <bruno@clisp.org>
5175
5176         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
5177         for printing 64-bit integers. Needed for mingw.
5178
5179 2007-05-18  Bruno Haible  <bruno@clisp.org>
5180
5181         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
5182         gl_FUNC_FREXPL_WORKS.
5183         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
5184
5185 2007-05-18  Bruno Haible  <bruno@clisp.org>
5186
5187         * modules/frexpl-nolibm-tests: New file.
5188
5189         * modules/frexpl-nolibm: New file.
5190         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
5191
5192 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
5193
5194         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
5195         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
5196         GCC 4.2, which otherwise issues a lot of warnings.
5197         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
5198         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
5199         Likewise.
5200         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
5201         * modules/iconv_open (iconv.h): Likewise.
5202         * modules/locale (locale.h): Likewise.
5203         * modules/netinet_in (netinet/in.h): Likewise.
5204         * modules/sys_select (sys_select.h): Likewise.
5205         * modules/sys_socket (sys/socket.h): Likewise.
5206         * modules/sys_stat (sys/stat.h): Likewise.
5207         * modules/sysexits (sysexits.h): Likewise.
5208         * modules/unistd (unistd.h): Likewise.
5209
5210 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5211
5212         * modules/closein-tests (Makefile.am): Distribute
5213         `test-closein.sh'.
5214
5215 2007-05-17  Bruno Haible  <bruno@clisp.org>
5216
5217         * tests/test-printf-posix.output: Renamed from
5218         tests/test-fprintf-posix.out.
5219         * modules/fprintf-posix-tests: Update.
5220         * modules/printf-posix-tests: Update.
5221         * modules/vfprintf-posix-tests: Update.
5222         * modules/vprintf-posix-tests: Update.
5223         * tests/test-fprintf-posix.sh: Update.
5224         * tests/test-printf-posix.sh: Update.
5225         * tests/test-vfprintf-posix.sh: Update.
5226         * tests/test-vprintf-posix.sh: Update.
5227         Reported by Ralf Wildenhues.
5228
5229 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
5230
5231         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
5232         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
5233         GCC 4.2, which otherwise issues a lot of warnings.
5234         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
5235         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
5236         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
5237         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
5238         it should no longer be needed.
5239         * lib/string_.h: Likewise.
5240         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
5241         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
5242         * modules/inttypes (inttypes.h): Likewise.
5243         * modules/math (math.h): Likewise.
5244         * modules/search (search.h): Likewise.
5245         * modules/signal (signal.h): Likewise.
5246         * modules/stdint (stdint.h): Likewise.
5247         * modules/stdio (stdio.h): Likewise.
5248         * modules/stdlib (stdlib.h): Likewise.
5249         * modules/string (string.h): Likewise.
5250         * modules/sys_time (sys/time.h): Likewise.
5251         * modules/time (time.h): Likewise.
5252         * modules/wchar (wchar.h): Likewise.
5253         * modules/wctype (wtype.h): Likewise.
5254
5255 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
5256
5257         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
5258
5259 2007-05-13  Bruno Haible  <bruno@clisp.org>
5260
5261         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
5262         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
5263         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
5264         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
5265         (gl_PREREQ_STRTOK_R): Don't require it here.
5266
5267 2007-05-13  Bruno Haible  <bruno@clisp.org>
5268
5269         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
5270         when used in C++ mode.
5271
5272 2007-05-12  Bruno Haible  <bruno@clisp.org>
5273
5274         * lib/linebuffer.h: Tweak doc.
5275         * lib/linebuffer.c: Likewise.
5276
5277 2007-05-12  James Youngman  <jay@gnu.org>
5278
5279         * lib/linebuffer.c (readlinebuffer_delim): New function,
5280         like readlinebuffer, but use a caller-specified delimiter.
5281         (readlinebuffer): Just call readlinebuffer_delim with '\n'
5282         as the delimiter.
5283         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
5284
5285 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
5286
5287         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
5288         * modules/openat (Files): Remove openat-die.c.
5289         (Depends-on): Add openat-die.
5290         * modules/openat-die: New module.
5291
5292 2007-05-06  Bruno Haible  <bruno@clisp.org>
5293
5294         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
5295         Update with info about Cygwin.
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         Reported by Eric Blake.
5305
5306 2007-05-06  Bruno Haible  <bruno@clisp.org>
5307
5308         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
5309         padding ourselves for the floating-point directives.
5310         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
5311         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
5312         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5313         gl_PRINTF_FLAG_ZERO and test its result. Invoke
5314         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
5315         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5316         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
5317         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5318         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5319         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5320         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5321         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5322         * tests/test-snprintf-posix.h (test_function): Also check the width
5323         and some flags in the %f directive.
5324         * tests/test-sprintf-posix.h (test_function): Likewise.
5325         * tests/test-vasnprintf-posix.c (test_function): Likewise.
5326         * tests/test-vasprintf-posix.c (test_function): Likewise.
5327         * doc/functions/fprintf.texi: Update.
5328         * doc/functions/printf.texi: Update.
5329         * doc/functions/snprintf.texi: Update.
5330         * doc/functions/sprintf.texi: Update.
5331         * doc/functions/vfprintf.texi: Update.
5332         * doc/functions/vprintf.texi: Update.
5333         * doc/functions/vsnprintf.texi: Update.
5334         * doc/functions/vsprintf.texi: Update.
5335
5336 2007-05-06  Bruno Haible  <bruno@clisp.org>
5337
5338         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
5339         pass the ' flag character to sprintf or snprintf.
5340         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
5341         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
5342         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5343         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
5344         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
5345         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
5346         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
5347         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
5348         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
5349         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
5350         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5351         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
5352         * tests/test-snprintf-posix.h (test_function): Also check the grouping
5353         flag.
5354         * tests/test-sprintf-posix.h (test_function): Likewise.
5355         * tests/test-vasnprintf-posix.c (test_function): Likewise.
5356         * tests/test-vasprintf-posix.c (test_function): Likewise.
5357         * doc/functions/fprintf.texi: Update.
5358         * doc/functions/printf.texi: Update.
5359         * doc/functions/snprintf.texi: Update.
5360         * doc/functions/sprintf.texi: Update.
5361         * doc/functions/vfprintf.texi: Update.
5362         * doc/functions/vprintf.texi: Update.
5363         * doc/functions/vsnprintf.texi: Update.
5364         * doc/functions/vsprintf.texi: Update.
5365
5366 2007-05-01  Bruno Haible  <bruno@clisp.org>
5367
5368         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
5369
5370 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
5371
5372         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
5373         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
5374
5375 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
5376
5377         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
5378         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
5379         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
5380
5381 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
5382
5383         * lib/argp-help.c (struct hol_entry): New member `ord'.
5384         (HOL_ENTRY_PTRCMP): Use ord for comparison
5385         (hol_sort): Initialize ord.
5386
5387 2007-05-01  Bruno Haible  <bruno@clisp.org>
5388
5389         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
5390         Reported by Eric Blake.
5391         * doc/gnulib.texi (Function Substitutes): Update.
5392
5393 2007-05-01  Bruno Haible  <bruno@clisp.org>
5394
5395         * doc/functions.texi: Remove file, now redundant through
5396         doc/functions/*.texi.
5397
5398 2007-05-01  Bruno Haible  <bruno@clisp.org>
5399
5400         * modules/argp (Depends-on): Add sleep.
5401
5402 2007-05-01  Bruno Haible  <bruno@clisp.org>
5403
5404         * modules/sleep-tests: New file.
5405         * tests/test-sleep.c: New file.
5406
5407         * modules/sleep: New file.
5408         * lib/sleep.c: New file.
5409         * m4/sleep.m4: New file.
5410         * lib/unistd_.h (sleep): New declaration.
5411         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
5412         HAVE_SLEEP.
5413         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
5414         * doc/functions/sleep.texi: Document the sleep module.
5415
5416 2007-05-01  Bruno Haible  <bruno@clisp.org>
5417
5418         * lib/sigprocmask.h: Remove file.
5419         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
5420         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
5421         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
5422         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
5423         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
5424         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
5425         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
5426         HAVE_SIGSET_T as a shell variable.
5427         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
5428         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
5429         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
5430         (Depends-on): Add signal. Remove verify.
5431         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
5432         (Include): Mention <signal.h> instead of sigprocmask.h.
5433         * NEWS: Mention the change.
5434         * lib/fatal-signal.c: Don't include sigprocmask.h.
5435
5436 2007-05-01  Bruno Haible  <bruno@clisp.org>
5437
5438         * modules/signal: New file.
5439         * lib/signal_.h: New file.
5440         * m4/signal_h.m4: New file.
5441
5442 2007-05-01  Bruno Haible  <bruno@clisp.org>
5443
5444         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
5445         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
5446         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
5447         HAVE_WCTYPE_CTMP_BUG into wctype.h.
5448
5449 2007-05-01  Bruno Haible  <bruno@clisp.org>
5450
5451         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
5452         configure time.
5453         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
5454         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
5455         * modules/sys_stat (Makefile.am): Substitute their values into
5456         sys/stat.h.
5457
5458 2007-05-01  Bruno Haible  <bruno@clisp.org>
5459
5460         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
5461         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
5462         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
5463
5464 2007-05-01  Bruno Haible  <bruno@clisp.org>
5465
5466         * doc/header/assert.texi: Undo last change: don't mention the gnulib
5467         'assert' module here.
5468
5469 2007-05-01  Bruno Haible  <bruno@clisp.org>
5470
5471         * doc/functions/*.texi: New files.
5472         * doc/functions/google-ranking.txt: New file.
5473         * doc/gnulib.texi (Function Substitutes): New chapter.
5474         (ctime, inet_ntoa): Remove sections.
5475         * doc/ctime.texi: Remove file.
5476         * doc/inet_ntoa.texi: Remove file.
5477         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
5478         dependencies.
5479         (%.info): New rule, specifying a --reference-limit.
5480
5481 2007-05-01  Bruno Haible  <bruno@clisp.org>
5482
5483         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
5484
5485 2007-05-01  Bruno Haible  <bruno@clisp.org>
5486
5487         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
5488         the portability of 'mkdir' to mingw systems.
5489
5490 2007-05-01  Bruno Haible  <bruno@clisp.org>
5491
5492         * doc/headers/google-ranking.txt: New file.
5493
5494 2007-04-30  Eric Blake  <ebb9@byu.net>
5495
5496         Prefer fseeko to fseek.
5497         * modules/getpass (Depends-on): Add fseeko.
5498         * lib/getpass.c (getpass): Use fseeko, not fseek.
5499
5500 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
5501
5502         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
5503         assumes the sorting is stable, while most qsort implementations
5504         are not.  Use argument addresses to ensure they never compare as
5505         equal.
5506
5507         * tests/test-argp-2.sh (usage-indent test): Fix output
5508         (func_compare): Restore diff options
5509         * tests/test-argp.c: Restore #include "progname.h"
5510
5511 2007-04-29  Bruno Haible  <bruno@clisp.org>
5512
5513         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
5514         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5515         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
5516         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
5517         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
5518         (configure.ac): Define CHECK_SNPRINTF_POSIX.
5519         (TESTS, check_PROGRAMS): Add test-snprintf.
5520         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
5521         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
5522         (TESTS, check_PROGRAMS): Add test-vsnprintf.
5523         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
5524         assertions that fail on HP-UX, OSF/1, or IRIX.
5525         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
5526
5527 2007-04-29  Bruno Haible  <bruno@clisp.org>
5528
5529         * MODULES.html.sh (posix_functions): Remove 'contents'.
5530
5531 2007-04-29  Karl Berry  <karl@gnu.org>
5532
5533         * config/srclist.txt (gendocs_template_min): new entry.
5534
5535 2007-04-29  Bruno Haible  <bruno@clisp.org>
5536
5537         Work around fpurge bug on BSD systems.
5538         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
5539         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
5540         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
5541         fpurge to rpl_fpurge if the system already has this function.
5542         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
5543         the case where the system already has this function. Correct invariants
5544         on BSD systems.
5545         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
5546         BSD systems.
5547
5548 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
5549
5550         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
5551         proposed by Sven Verdoolaege.
5552
5553         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
5554         options.
5555         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
5556         (usage and help tests): Update
5557
5558 2007-04-29  Bruno Haible  <bruno@clisp.org>
5559
5560         * tests/test-fflush.c (main): Use a file of size 17, not 10.
5561         Print more information in case of failure. Disable a test on BeOS.
5562
5563 2007-04-29  Bruno Haible  <bruno@clisp.org>
5564
5565         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
5566         This helps debugging on systems on which no gdb is available.
5567
5568 2007-04-29  Bruno Haible  <bruno@clisp.org>
5569
5570         * lib/freading.h: Improve comments.
5571         * lib/fwriting.h: Likewise.
5572         * tests/test-freading.c (main): Don't check freading immediately after
5573         repositioning. Needed for glibc.
5574
5575 2007-04-29  Bruno Haible  <bruno@clisp.org>
5576
5577         * lib/freading.c (freading): Trivial simplification.
5578
5579 2007-04-28  Bruno Haible  <bruno@clisp.org>
5580
5581         * tests/test-fwriting.c (main): Also test the interaction between
5582         fflush and fwriting.
5583         * modules/fwriting-tests (Depends-on): Add fflush.
5584
5585         * tests/test-freading.c (main): Also test the interaction between
5586         fflush and freading.
5587         * modules/freading-tests (Depends-on): Add fflush.
5588
5589 2007-04-28  Bruno Haible  <bruno@clisp.org>
5590
5591         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
5592         fseeko and ftello.
5593         Suggested by Eric Blake.
5594
5595 2007-04-28  Jim Meyering  <jim@meyering.net>
5596
5597         Avoid false-negative in gl_STDINT_H's C99 conformance test.
5598         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
5599         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
5600
5601 2007-04-27  Eric Blake  <ebb9@byu.net>
5602
5603         * doc/headers/assert.texi (assert.h): Document assert module use.
5604
5605 2007-04-27  Bruno Haible  <bruno@clisp.org>
5606
5607         * doc/headers/*.texi: New files.
5608         * doc/gnulib.texi (Header File Substitutes): New chapter.
5609         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
5610         dependencies.
5611         (standards.info ,standards.html, standards.dvi): Update dependencies.
5612         (mostlyclean, clean): New targets.
5613
5614 2007-04-27  Bruno Haible  <bruno@clisp.org>
5615
5616         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
5617         * modules/sysexits (Files, Makefile.am): Update.
5618
5619         * lib/sys_socket_.h: Renamed from lib/socket_.h.
5620         * modules/sys_socket (Files, Makefile.am): Update.
5621
5622         * lib/sys_stat_.h: Renamed from lib/stat_.h.
5623         * modules/sys_stat (Files, Makefile.am): Update.
5624
5625 2007-04-27  Eric Blake  <ebb9@byu.net>
5626
5627         * lib/freading.h: Improve comments.
5628         * lib/fwriting.h: Likewise.
5629         * lib/fflush.c: Likewise.
5630
5631         Fix closein for mingw.
5632         * modules/closein-tests: Add tests for closein.
5633         * tests/test-closein.c: New file.
5634         * tests/test-closein.sh: Likewise.
5635         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
5636         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
5637
5638 2007-04-27  Bruno Haible  <bruno@clisp.org>
5639
5640         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
5641         version is < 6.
5642         * lib/math_.h [__DECC]: Likewise.
5643         * lib/stdio_.h [__DECC]: Likewise.
5644         * lib/stdlib_.h [__DECC]: Likewise.
5645         * lib/string_.h [__DECC]: Likewise.
5646         * lib/time_.h [__DECC]: Likewise.
5647         * lib/wchar_.h [__DECC]: Likewise.
5648         * lib/wctype_.h [__DECC]: Likewise.
5649
5650 2007-04-27  Bruno Haible  <bruno@clisp.org>
5651
5652         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
5653
5654 2007-04-27  Bruno Haible  <bruno@clisp.org>
5655
5656         * lib/fflush.c: Add comments.
5657         * modules/fpurge-tests (Depends-on): Add fflush.
5658         * modules/freadable-tests (Depends-on): Likewise.
5659         * modules/fwritable-tests (Depends-on): Likewise.
5660
5661 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
5662
5663         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
5664         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
5665         Report by Bruno Haible <bruno@clisp.org>.
5666
5667 2007-04-26  Eric Blake  <ebb9@byu.net>
5668
5669         Fix fflush on mingw.
5670         * modules/fflush (Depends-on): Add freading.
5671         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
5672         but unread data.
5673
5674 2007-04-26  Eric Blake  <ebb9@byu.net>
5675         and Bruno Haible  <bruno@clisp.org>
5676
5677         Implement freading and fwriting.
5678         * lib/freading.c: New file.
5679         * lib/freading.h: Likewise.
5680         * m4/freading.m4: Likewise.
5681         * modules/freading: Likewise.
5682         * modules/freading-tests: Likewise.
5683         * tests/test-freading.c: Likewise.
5684         * lib/fwriting.c: New file.
5685         * lib/fwriting.h: Likewise.
5686         * m4/fwriting.m4: Likewise.
5687         * modules/fwriting: Likewise.
5688         * modules/fwriting-tests: Likewise.
5689         * tests/test-fwriting.c: Likewise.
5690         * MODULES.html.sh (File stream based Input/Output): Mention them.
5691
5692 2007-04-26  Bruno Haible  <bruno@clisp.org>
5693
5694         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
5695         'long' when we assume it.
5696         Suggested by Eric Blake.
5697
5698 2007-04-26  Bruno Haible  <bruno@clisp.org>
5699
5700         Ensure fseeko, ftello are declared on glibc systems.
5701         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
5702         * modules/fseeko (configure.ac-early): Likewise.
5703         * modules/ftello (configure.ac-early): Likewise.
5704         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
5705         AC_FUNC_FSEEKO for this.
5706         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
5707         (gl_CHECK_FSEEKO): Remove macro.
5708
5709 2007-04-26  Bruno Haible  <bruno@clisp.org>
5710
5711         * tests/test-fflush.c (main): Also check the ftell result after
5712         fflush and fseek/fseeko.
5713         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
5714         file descriptor position cache in the stream.
5715         * lib/fseeko.c (rpl_fseeko): Likewise.
5716
5717 2007-04-26  Bruno Haible  <bruno@clisp.org>
5718
5719         * modules/fflush-tests (Depends-on): Add fseeko.
5720
5721 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
5722             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5723
5724         * lib/argz_.h: ensure error_t definition is obtained in same
5725         mechanism system argz.h would have.
5726         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
5727         argz facilities are known bad.  Err on the side of caution if
5728         cross-compiling.
5729
5730 2007-04-25  Eric Blake  <ebb9@byu.net>
5731
5732         * lib/fpurge.c (includes): Use stdlib.h for free.
5733         * tests/test-fflush.c (main): Also test fflush-fseeko.
5734
5735 2007-04-25  Bruno Haible  <bruno@clisp.org>
5736
5737         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
5738         * lib/fseeko.c: New file.
5739         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
5740         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
5741         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
5742         gl_FUNC_FSEEKO.
5743         (gl_FUNC_FSEEKO): Invoke it.
5744         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
5745         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
5746         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
5747
5748 2007-04-25  Bruno Haible  <bruno@clisp.org>
5749
5750         * modules/fflush (Depends-on): Add ftello.
5751
5752 2007-04-25  Bruno Haible  <bruno@clisp.org>
5753
5754         * modules/ftello-tests: New file.
5755         * tests/test-ftello.c: New file.
5756
5757         * modules/ftello: New file.
5758         * m4/ftello.m4: New file.
5759         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
5760         HAVE_FTELLO.
5761         * lib/stdio_.h (ftello): New declaration.
5762         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
5763         HAVE_FTELLO.
5764
5765 2007-04-25  Bruno Haible  <bruno@clisp.org>
5766
5767         * modules/fseeko-tests: New file.
5768         * tests/test-fseeko.c: New file.
5769
5770         * modules/fseeko: New file.
5771         * m4/fseeko.m4: New file.
5772         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
5773         HAVE_FSEEKO.
5774         * lib/stdio_.h (fseeko): New declaration.
5775         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
5776         HAVE_FSEEKO.
5777
5778 2007-04-25  Bruno Haible  <bruno@clisp.org>
5779
5780         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
5781
5782 2007-04-25  Bruno Haible  <bruno@clisp.org>
5783
5784         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
5785         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
5786         * tests/test-unistd.c: Likewise.
5787         * tests/test-fcntl.c: Likewise.
5788
5789 2007-04-23  Eric Blake  <ebb9@byu.net>
5790
5791         * lib/fflush.c: Fix missing include.
5792         Reported by Bruno Haible.
5793
5794 2007-04-23  Bruno Haible  <bruno@clisp.org>
5795
5796         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
5797         Reported by Eric Blake.
5798
5799 2007-04-23  Bruno Haible  <bruno@clisp.org>
5800
5801         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
5802
5803 2007-04-23  Bruno Haible  <bruno@clisp.org>
5804
5805         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
5806
5807 2007-04-23  Bruno Haible  <bruno@clisp.org>
5808
5809         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
5810         Needed on HP-UX 11.
5811
5812 2007-04-16  Eric Blake  <ebb9@byu.net>
5813
5814         Make fflush rely on fpurge.
5815         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
5816         open coding all variants.
5817         * modules/fflush (Depends-on): Add fpurge and unistd.
5818         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
5819         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
5820
5821         Fix --with-tests compilation on cygwin.
5822         * modules/argmatch-tests (Makefile.am): List gnulib library first
5823         in LDADD.
5824         * modules/argp-tests (Makefile.am): Likewise.
5825         * modules/array-list-tests (Makefile.am): Likewise.
5826         * modules/array-oset-tests (Makefile.am): Likewise.
5827         * modules/avltree-list-tests (Makefile.am): Likewise.
5828         * modules/avltree-oset-tests (Makefile.am): Likewise.
5829         * modules/avltreehash-list-tests (Makefile.am): Likewise.
5830         * modules/carray-list-tests (Makefile.am): Likewise.
5831         * modules/dirname-tests (Makefile.am): Likewise.
5832         * modules/frexp-tests (Makefile.am): Likewise.
5833         * modules/isnanl-tests (Makefile.am): Likewise.
5834         * modules/linked-list-tests (Makefile.am): Likewise.
5835         * modules/linkedhash-list-tests (Makefile.am): Likewise.
5836         * modules/lock-tests (Makefile.am): Likewise.
5837         * modules/rbtree-list-tests (Makefile.am): Likewise.
5838         * modules/rbtree-oset-tests (Makefile.am): Likewise.
5839         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
5840         * modules/tls-tests (Makefile.am): Likewise.
5841         * modules/tsearch-tests (Makefile.am): Likewise.
5842         * modules/xvasprintf-tests (Makefile.am): Likewise.
5843
5844         Fix fpurge for cygwin.
5845         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
5846         value.
5847         * modules/fpurge-tests (Depends-on): Clean up trash.
5848
5849 2007-04-16  Simon Josefsson  <simon@josefsson.org>
5850
5851         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
5852
5853         * m4/autobuild.m4: Re-indent.
5854
5855 2007-04-13  Bruno Haible  <bruno@clisp.org>
5856
5857         * modules/fpurge-tests: New file.
5858         * tests/test-fpurge.c: New file.
5859
5860         * modules/fpurge: New file.
5861         * lib/fpurge.h: New file.
5862         * lib/fpurge.c: New file.
5863         * m4/fpurge.m4: New file.
5864
5865 2007-04-13  Bruno Haible  <bruno@clisp.org>
5866
5867         * modules/fbufmode-tests: New file.
5868         * tests/test-fbufmode.c: New file.
5869
5870         * modules/fbufmode: New file.
5871         * lib/fbufmode.h: New file.
5872         * lib/fbufmode.c: New file.
5873         * m4/fbufmode.m4: New file.
5874
5875 2007-04-13  Bruno Haible  <bruno@clisp.org>
5876
5877         * modules/fwritable-tests: New file.
5878         * tests/test-fwritable.c: New file.
5879
5880         * modules/fwritable: New file.
5881         * lib/fwritable.h: New file.
5882         * lib/fwritable.c: New file.
5883         * m4/fwritable.m4: New file.
5884
5885 2007-04-13  Bruno Haible  <bruno@clisp.org>
5886
5887         * modules/freadable-tests: New file.
5888         * tests/test-freadable.c: New file.
5889
5890         * modules/freadable: New file.
5891         * lib/freadable.h: New file.
5892         * lib/freadable.c: New file.
5893         * m4/freadable.m4: New file.
5894
5895 2007-04-13  Bruno Haible  <bruno@clisp.org>
5896
5897         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
5898         MOSTLYCLEANFILES.
5899
5900 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
5901
5902         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
5903         gzip bootstrap.conf to avoid dragging in i18n machinery.
5904         (gnulib_tool_option): Use it.
5905
5906 2007-04-13  Bruno Haible  <bruno@clisp.org>
5907
5908         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
5909         %F directives.
5910         * tests/test-vasprintf-posix.c (test_function): Likewise.
5911         * tests/test-snprintf-posix.h (test_function): Likewise.
5912         * tests/test-sprintf-posix.h (test_function): Likewise.
5913         * tests/test-fprintf-posix.h (test_function): Likewise.
5914         * tests/test-printf-posix.h (test_function): Likewise.
5915         * tests/test-fprintf-posix.out: Likewise.
5916
5917 2007-04-13  Bruno Haible  <bruno@clisp.org>
5918
5919         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
5920         * modules/tls-tests (configure.ac): Likewise.
5921         Reported by Arto C. Nirkko <anirkko@insel.ch>.
5922
5923 2007-04-13  Bruno Haible  <bruno@clisp.org>
5924
5925         * lib/tls.c (glthread_tls_get): Fix return type.
5926         Patch by Arto C. Nirkko <anirkko@insel.ch>.
5927
5928 2007-04-12  Eric Blake  <ebb9@byu.net>
5929
5930         * modules/gettime (Depends-on): Remove gettime.
5931         Reported by Dmitry V. Levin.
5932
5933 2007-04-12  Bruno Haible  <bruno@clisp.org>
5934
5935         * modules/fflush (Include): Mention <stdio.h>.
5936         * modules/strtoimax (Include): Mention <inttypes.h>.
5937         * modules/strtoumax (Include): Likewise.
5938
5939 2007-04-12  Eric Blake  <ebb9@byu.net>
5940
5941         * .cvsignore: New file.
5942         * .gitignore: Likewise.
5943
5944 2007-04-12  Bruno Haible  <bruno@clisp.org>
5945
5946         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
5947         not before, since $(LDADD) often contains libgnu.a.
5948         * modules/striconv-tests (test_striconv_LDADD): Likewise.
5949         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
5950         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
5951         Needed on Cygwin.
5952
5953 2007-04-12  Eric Blake  <ebb9@byu.net>
5954
5955         Work around glibc's failure to flush stdin on fclose.
5956         * lib/closein.c (close_stdin): Flush stdin before closing.
5957
5958         Work around glibc's failure to reset seekable stdin on exit.
5959         * modules/closein: New module.
5960         * lib/closein.c: New file.
5961         * lib/closein.h: Likewise.
5962         * m4/closein.m4: Likewise.
5963         * MODULES.html.sh (File stream based Input/Output): Document it.
5964
5965 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5966
5967         * gnulib-tool: Rename generated 'autobuild' script to
5968         'do-autobuild' in --create-megatestdir output.
5969
5970         * doc/gnulib.texi (Build robot for gnulib): Fix.
5971
5972 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5973
5974         * modules/sysexits (Depends-on): Add absolute-header.
5975
5976 2007-04-12  Eric Blake  <ebb9@byu.net>
5977
5978         No need to preserve errno on success.
5979         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
5980         Reported by Bruno Haible.
5981
5982 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5983
5984         * MODULES.html.sh (Support for maintaining and releasing
5985         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
5986
5987 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5988
5989         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
5990
5991 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5992
5993         * modules/autobuild: New module.
5994
5995         * m4/autobuild.m4: New file.
5996
5997 2007-04-11  Bruno Haible  <bruno@clisp.org>
5998
5999         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
6000         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
6001         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
6002         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
6003         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6004         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
6005         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
6006         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
6007         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
6008         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
6009         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
6010         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
6011         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
6012         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
6013         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
6014         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
6015         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
6016         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
6017         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
6018         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
6019         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
6020         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
6021         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
6022         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
6023         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
6024         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
6025         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
6026         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
6027         Reported by Eric Blake.
6028
6029 2007-04-11  Bruno Haible  <bruno@clisp.org>
6030
6031         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
6032
6033 2007-04-10  Bruno Haible  <bruno@clisp.org>
6034
6035         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
6036         for NaN and Infinity. Needed on FreeBSD 6.1.
6037         * tests/test-vasnprintf-posix.c (test_function): Undo last change
6038         regarding results for "%010a" of Infinity and NaN.
6039         * tests/test-vasprintf-posix.c (test_function): Likewise.
6040         * tests/test-snprintf-posix.h (test_function): Likewise.
6041         * tests/test-sprintf-posix.h (test_function): Likewise.
6042         * tests/test-fprintf-posix.h (test_function): Likewise.
6043         * tests/test-printf-posix.h (test_function): Likewise.
6044         * tests/test-fprintf-posix.out: Likewise.
6045
6046 2007-04-10  Bruno Haible  <bruno@clisp.org>
6047
6048         * modules/locale-tests: New file.
6049         * tests/test-locale.c: New file.
6050
6051         * modules/locale: New file.
6052         * lib/locale_.h: New file.
6053         * m4/locale_h.m4: New file.
6054
6055 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
6056             Bruno Haible  <bruno@clisp.org>
6057
6058         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
6059         be determined, test for availability of the copysignf, copysign,
6060         copysignl functions.
6061         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
6062         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
6063         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
6064
6065 2007-04-09  Eric Blake  <ebb9@byu.net>
6066
6067         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
6068         * modules/stdio (Makefile.am): Support fflush.
6069         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
6070         * modules/fflush: New file.
6071         * lib/fflush.c: Likewise.
6072         * m4/fflush.m4: Likewise.
6073         * modules/fflush-tests: New test.
6074         * tests/test-fflush.c: Likewise.
6075         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
6076
6077 2007-04-06  Bruno Haible  <bruno@clisp.org>
6078
6079         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
6080         (VASNPRINTF): Use signbit for faster determination whether to print a
6081         minus sign.
6082         * modules/vasnprintf (Files): Remove lib/float+.h.
6083         * modules/fprintf-posix (Depends-on): Add signbit.
6084         * modules/snprintf-posix (Depends-on): Likewise.
6085         * modules/sprintf-posix (Depends-on): Likewise.
6086         * modules/vasnprintf-posix (Depends-on): Likewise.
6087         * modules/vasprintf-posix (Depends-on): Likewise.
6088         * modules/vfprintf-posix (Depends-on): Likewise.
6089         * modules/vsnprintf-posix (Depends-on): Likewise.
6090         * modules/vsprintf-posix (Depends-on): Likewise.
6091
6092 2007-04-06  Bruno Haible  <bruno@clisp.org>
6093
6094         * tests/test-frexp.c (main): Test also the sign bit of zero results.
6095         * tests/test-frexpl.c (main): Likewise.
6096         * tests/test-ldexpl.c (main): Likewise.
6097         * modules/frexp-tests (Depends-on): Add signbit.
6098         * modules/frexpl-tests (Depdends-on): Likewise.
6099         * modules/ldexpl-tests (Depdends-on): Likewise.
6100
6101 2007-04-06  Bruno Haible  <bruno@clisp.org>
6102
6103         * modules/signbit-tests: New file.
6104         * tests/test-signbit.c: New file.
6105
6106         * modules/signbit: New file.
6107         * lib/signbitf.c: New file.
6108         * lib/signbitd.c: New file.
6109         * lib/signbitl.c: New file.
6110         * m4/signbit.m4: New file.
6111         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
6112         (signbit): New macro.
6113         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
6114         REPLACE_SIGNBIT.
6115         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
6116         REPLACE_FREXPL into math.h.
6117
6118 2007-04-06  Bruno Haible  <bruno@clisp.org>
6119
6120         * modules/isnanf-nolibm-tests: New file.
6121         * tests/test-isnanf.c: New file.
6122
6123         * modules/isnanf-nolibm: New file.
6124         * lib/isnanf.h: New file.
6125         * lib/isnanf.c: New file.
6126         * lib/isnan.c: Consider the USE_FLOAT macro.
6127         * m4/isnanf.m4: New file.
6128
6129 2007-04-06  Bruno Haible  <bruno@clisp.org>
6130
6131         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
6132         (Link): New section.
6133
6134         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
6135
6136 2007-04-06  Bruno Haible  <bruno@clisp.org>
6137
6138         Assume the 'long double' type.
6139         * m4/longdouble.m4: Remove file.
6140         * config/srclist.txt: Don't mention longdouble.m4.
6141         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
6142         * lib/float+.h: Likewise.
6143         * lib/frexp.c: Likewise.
6144         * lib/printf-args.h: Likewise.
6145         * lib/printf-args.c: Likewise.
6146         * lib/printf-frexp.c: Likewise.
6147         * lib/printf-parse.c: Likewise.
6148         * lib/vasnprintf.c: Likewise.
6149         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
6150         * m4/intl.m4: Likewise.
6151         * m4/isnanl.m4: Likewise.
6152         * m4/printf.m4: Likewise.
6153         * m4/printf-frexpl.m4: Likewise.
6154         * m4/vasnprintf.m4: Likewise.
6155         * modules/allocsa (Files): Remove m4/longdouble.m4.
6156         * modules/gettext (Files): Likewise.
6157         * modules/relocatable-prog-wrapper (Files): Likewise.
6158         * modules/vasnprintf (Files): Likewise.
6159         * modules/isnanl (Files): Likewise.
6160         (Include): Simplify.
6161         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
6162         (Include): Simplify.
6163         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
6164         (Include): Simplify.
6165         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
6166         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6167         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
6168         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6169         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
6170         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6171         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
6172         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6173         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
6174         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6175         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
6176         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
6177         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
6178         * tests/test-isnanl.c: Likewise.
6179         * tests/test-snprintf-posix.h: Likewise.
6180         * tests/test-sprintf-posix.h: Likewise.
6181         * tests/test-vasnprintf-posix.c: Likewise.
6182         * tests/test-vasnprintf-posix2.c: Likewise.
6183         * tests/test-vasprintf-posix.c: Likewise.
6184
6185 2007-04-06  Bruno Haible  <bruno@clisp.org>
6186
6187         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
6188         * lib/math_.h [__DECC]: Include the overridden include file through
6189         #include_next, outside the double-inclusion guard.
6190         * lib/stdio_.h [__DECC]: Likewise.
6191         * lib/stdlib_.h [__DECC]: Likewise.
6192         * lib/string_.h [__DECC]: Likewise.
6193         * lib/time_.h [__DECC]: Likewise.
6194         * lib/wchar_.h [__DECC]: Likewise.
6195         * lib/wctype_.h [__DECC]: Likewise.
6196         * lib/inttypes_.h [__DECC]: Likewise.
6197         Reported by Albert Chin <china@thewrittenword.com> in
6198         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
6199
6200 2007-04-04  Eric Blake  <ebb9@byu.net>
6201
6202         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
6203         1.5.x.
6204
6205 2007-04-04  Bruno Haible  <bruno@clisp.org>
6206
6207         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
6208         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
6209
6210 2007-04-04  Bruno Haible  <bruno@clisp.org>
6211
6212         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
6213         results for "%010a" of Infinity and NaN.
6214         * tests/test-vasprintf-posix.c (test_function): Likewise.
6215         * tests/test-snprintf-posix.h (test_function): Likewise.
6216         * tests/test-sprintf-posix.h (test_function): Likewise.
6217         * tests/test-fprintf-posix.h (test_function): Remove these tests.
6218         * tests/test-printf-posix.h (test_function): Likewise.
6219         * tests/test-fprintf-posix.out: Update.
6220         Needed for FreeBSD 6.1.
6221
6222 2007-04-04  Bruno Haible  <bruno@clisp.org>
6223
6224         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
6225         directly used by the gnulib modules nor by gnulib-tool.
6226
6227 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
6228
6229         * DEPENDENCIES: Give overall description of version dependency
6230         desirability.  Use more-typical names for apps.
6231         Add shell, coreutils, diffutils, grep, tar, gzip.
6232
6233 2007-04-04  Simon Josefsson  <simon@josefsson.org>
6234
6235         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
6236
6237 2007-04-04  Karl Berry  <karl@gnu.org>
6238
6239         * MODULES.html.sh (func_module): missing '.
6240
6241 2007-04-03  Bruno Haible  <bruno@clisp.org>
6242
6243         * modules/argmatch-tests (Makefile.am): New variable
6244         test_argmatch_LDADD.
6245         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
6246         * modules/array-list-tests (Makefile.am): New variable
6247         test_array_list_LDADD.
6248         * modules/array-oset-tests (Makefile.am): New variable
6249         test_array_oset_LDADD.
6250         * modules/avltree-list-tests (Makefile.am): New variable
6251         test_avltree_list_LDADD.
6252         * modules/avltree-oset-tests (Makefile.am): New variable
6253         test_avltree_oset_LDADD.
6254         * modules/avltreehash-list-tests (Makefile.am): New variable
6255         test_avltreehash_list_LDADD.
6256         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
6257         test_canonicalize_lgpl_LDADD.
6258         * modules/carray-list-tests (Makefile.am): New variable
6259         test_carray_list_LDADD.
6260         * modules/dirname-tests (Makefile.am): New variable
6261         test_dirname_LDADD.
6262         * modules/linked-list-tests (Makefile.am): New variable
6263         test_linked_list_LDADD.
6264         * modules/linkedhash-list-tests (Makefile.am): New variable
6265         test_linkedhash_list_LDADD.
6266         * modules/rbtree-list-tests (Makefile.am): New variable
6267         test_rbtree_list_LDADD.
6268         * modules/rbtree-oset-tests (Makefile.am): New variable
6269         test_rbtree_oset_LDADD.
6270         * modules/rbtreehash-list-tests (Makefile.am): New variable
6271         test_rbtreehash_list_LDADD.
6272         * modules/xvasprintf-tests (Makefile.am): New variable
6273         test_xvasprintf_LDADD.
6274         Reported by Eric Blake.
6275
6276 2007-04-03  Eric Blake  <ebb9@byu.net>
6277
6278         * DEPENDENCIES: Weaken m4 requirements.
6279
6280 2007-04-03  Bruno Haible  <bruno@clisp.org>
6281
6282         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
6283         * modules/isnanl-tests (configure.ac): Likewise.
6284
6285 2007-04-03  Ben Pfaff  <blp@gnu.org>
6286
6287         * modules/iconv_open: Add $(srcdir)/ to source directory
6288         references in Makefile fragments that call gperf, to fix VPATH
6289         builds.
6290
6291 2007-04-03  Bruno Haible  <bruno@clisp.org>
6292
6293         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
6294         * lib/ldexpl.c: Undo last change.
6295
6296 2007-04-03  Bruno Haible  <bruno@clisp.org>
6297
6298         * modules/printf-frexpl (Depends-on): Undo last change.
6299         (Files): Add m4/ldexpl.m4.
6300
6301 2007-04-03  Bruno Haible  <bruno@clisp.org>
6302
6303         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
6304         * modules/isnanl (Link): New section.
6305
6306         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
6307         * modules/frexp (Link): New section.
6308
6309         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
6310         * modules/frexpl (Link): New section.
6311
6312         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
6313         * modules/ldexpl (Link): New section.
6314
6315 2007-04-03  Bruno Haible  <bruno@clisp.org>
6316
6317         * modules/TEMPLATE-EXTENDED: New file.
6318         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
6319
6320 2007-04-03  Bruno Haible  <bruno@clisp.org>
6321
6322         * DEPENDENCIES: New file.
6323         Suggested by Simon Josefsson.
6324
6325 2007-04-03  Bruno Haible  <bruno@clisp.org>
6326
6327         * doc/gnulib.texi: Escape @.
6328
6329 2007-04-03  James Youngman  <jay@gnu.org>
6330         and Paul Eggert  <eggert@cs.ucla.edu>
6331
6332         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
6333         birthtime on all systems that have birthtime, not just those which
6334         use st_birthtimensec rather than st_birthtim.  Putting zero in
6335         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
6336         that the birth time is not available for files on an NFS mount.
6337
6338 2007-04-03  Simon Josefsson  <simon@josefsson.org>
6339
6340         * modules/memxor: Move back from crypto/, suggested by Bruno.
6341         * modules/crypto/hmac-sha1: Fix memxor dependency.
6342
6343         * modules/crypto/gc: Moved from ../.
6344
6345 2007-04-02  Eric Blake  <ebb9@byu.net>
6346
6347         * lib/ldexpl.c (includes): Avoid libm.
6348
6349         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
6350
6351 2007-04-02  Bruno Haible  <bruno@clisp.org>
6352
6353         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
6354         on IRIX.
6355
6356 2007-04-02  Bruno Haible  <bruno@clisp.org>
6357
6358         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
6359         x86 or x86_64 platforms running MacOS X.
6360         Reported by Ryan Schmidt <@ryandesign.com>.
6361
6362 2007-04-02  Bruno Haible  <bruno@clisp.org>
6363
6364         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
6365         i386.
6366
6367 2007-04-01  Simon Josefsson  <simon@josefsson.org>
6368
6369         * modules/crypto/arcfour: Moved from ../.
6370         * modules/crypto/arcfour-tests: Moved from ../.
6371         * modules/crypto/arctwo: Moved from ../.
6372         * modules/crypto/arctwo-tests: Moved from ../.
6373         * modules/crypto/des: Moved from ../.
6374         * modules/crypto/des-tests: Moved from ../.
6375         * modules/crypto/gc-arcfour: Moved from ../.
6376         * modules/crypto/gc-arcfour-tests: Moved from ../.
6377         * modules/crypto/gc-arctwo: Moved from ../.
6378         * modules/crypto/gc-arctwo-tests: Moved from ../.
6379         * modules/crypto/gc-des: Moved from ../.
6380         * modules/crypto/gc-des-tests: Moved from ../.
6381         * modules/crypto/gc-hmac-md5: Moved from ../.
6382         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
6383         * modules/crypto/gc-hmac-sha1: Moved from ../.
6384         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
6385         * modules/crypto/gc-md2: Moved from ../.
6386         * modules/crypto/gc-md2-tests: Moved from ../.
6387         * modules/crypto/gc-md4: Moved from ../.
6388         * modules/crypto/gc-md4-tests: Moved from ../.
6389         * modules/crypto/gc-md5: Moved from ../.
6390         * modules/crypto/gc-md5-tests: Moved from ../.
6391         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
6392         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
6393         * modules/crypto/gc-random: Moved from ../.
6394         * modules/crypto/gc-rijndael: Moved from ../.
6395         * modules/crypto/gc-rijndael-tests: Moved from ../.
6396         * modules/crypto/gc-sha1: Moved from ../.
6397         * modules/crypto/gc-sha1-tests: Moved from ../.
6398         * modules/crypto/gc-tests: Moved from ../.
6399         * modules/crypto/hmac-md5: Moved from ../.
6400         * modules/crypto/hmac-md5-tests: Moved from ../.
6401         * modules/crypto/hmac-sha1: Moved from ../.
6402         * modules/crypto/hmac-sha1-tests: Moved from ../.
6403         * modules/crypto/md2: Moved from ../.
6404         * modules/crypto/md2-tests: Moved from ../.
6405         * modules/crypto/md4: Moved from ../.
6406         * modules/crypto/md4-tests: Moved from ../.
6407         * modules/crypto/md5: Moved from ../.
6408         * modules/crypto/md5-tests: Moved from ../.
6409         * modules/crypto/memxor: Moved from ../.
6410         * modules/crypto/rijndael: Moved from ../.
6411         * modules/crypto/rijndael-tests: Moved from ../.
6412         * modules/crypto/sha1: Moved from ../.
6413
6414 2007-03-30  James Youngman  <jay@gnu.org>
6415
6416         * tests/test-stat-time.c (prepare_test): use chmod() rather than
6417         rename() to change the ctime of a file (because ctime is unaffected
6418         by rename on jfs2 on AIX 5.1).
6419         (main): Start by doing cleanup, in case a previous run failed leaving
6420         test files behind.
6421
6422 2007-03-31  Bruno Haible  <bruno@clisp.org>
6423
6424         Support old proprietary implementations of iconv.
6425         * modules/iconv_open: New file.
6426         * lib/iconv_.h: New file.
6427         * m4/iconv_h.m4: New file.
6428         * lib/iconv_open.c: New file.
6429         * lib/iconv_open-aix.gperf: New file.
6430         * lib/iconv_open-hpux.gperf: New file.
6431         * lib/iconv_open-irix.gperf: New file.
6432         * lib/iconv_open-osf.gperf: New file.
6433         * m4/iconv_open.m4: New file.
6434         * modules/linebreak (Depends-on): Add iconv_open.
6435         * modules/striconv (Depends-on): Likewise.
6436         * modules/striconveh (Depends-on): Likewise.
6437         * modules/unicodeio (Depends-on): Likewise.
6438         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
6439         (iconv_t)(-1).
6440         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
6441         conversion if cd is (iconv_t)(-1).
6442         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
6443         is not possible.
6444
6445 2007-03-31  Bruno Haible  <bruno@clisp.org>
6446
6447         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
6448         work on Solaris either. Protect also second use of "autodetect_jp".
6449
6450 2007-03-31  Bruno Haible  <bruno@clisp.org>
6451
6452         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
6453         the function is not present.
6454
6455 2007-03-31  Bruno Haible  <bruno@clisp.org>
6456
6457         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
6458         the function is not present.
6459
6460 2007-03-31  Bruno Haible  <bruno@clisp.org>
6461
6462         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
6463         a bug in HP-UX iconv_open().
6464
6465 2007-03-31  Bruno Haible  <bruno@clisp.org>
6466
6467         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
6468         (Mathematics <math.h>): New section, add fpieee.
6469         (Input/output <stdio.h>): Add fseterr.
6470         (Mathematics <math.h>): New section, add printf-frexp.
6471         (Container data structures): Add sublist.
6472         (Core language properties): Add fpucw, inline.
6473         (Functions for greatest-width integer types <inttypes.h>): Add
6474         imaxabs, imaxdiv, inttypes.
6475         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
6476         isnanl-nolibm, ldexp.
6477         (Mathematics <math.h>): New section, add printf-frexpl.
6478         (Support for systems lacking POSIX:2001): Add fprintf-posix,
6479         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
6480         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
6481         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
6482         (Unicode string functions): Add unistr/u*-mbtoucr.
6483         (Java): Add javacomp-script, javaexec-script.
6484         (C#): Add csharpcomp-script, csharpexec-script.
6485         (Support for building libraries and executables): Add havelib,
6486         relocatable-*.
6487         (Support for maintaining and releasing projects): Renamed from
6488         'Support for maintaining and release projects'. Add announce-gen.
6489
6490 2007-03-31  Bruno Haible  <bruno@clisp.org>
6491
6492         * README: Talk primarily about git.
6493         (git and CVS): Renamed from CVS.
6494         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
6495         gnulib is available through git.
6496         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
6497
6498 2007-03-30  Bruno Haible  <bruno@clisp.org>
6499
6500         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
6501         * lib/poll_.h: Likewise.
6502         * lib/stat_.h: Likewise.
6503         * lib/sys_time_.h: Likewise.
6504         * lib/sysexit_.h: Likewise.
6505         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
6506         * lib/stdbool_.h: Likewise.
6507         * lib/byteswap_.h: Add double-inclusion guard.
6508
6509 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
6510
6511         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
6512
6513 2007-03-30  Karl Berry  <karl@gnu.org>
6514
6515         * config/srclist-update: double space after USA in the license
6516         substitution, since that's how it's usually (?) written.
6517
6518 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
6519
6520         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
6521         reported by Bruno Haible.
6522
6523 2007-03-29  Bruno Haible  <bruno@clisp.org>
6524
6525         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
6526         a bug in AIX iconv().
6527
6528 2007-03-29  Bruno Haible  <bruno@clisp.org>
6529
6530         * modules/ldexpl-tests: New file.
6531         * tests/test-ldexpl.c: New file.
6532
6533 2007-03-29  Bruno Haible  <bruno@clisp.org>
6534
6535         * lib/ldexpl.c: Include fpucw.h.
6536         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
6537         multiplication.
6538         * modules/ldexpl (Depends-on): Add fpucw.
6539
6540 2007-03-29  Bruno Haible  <bruno@clisp.org>
6541
6542         * modules/ldexpl: New file.
6543         * m4/ldexpl.m4: New file.
6544         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
6545         set.
6546         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
6547         REPLACE_LDEXPL.
6548         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
6549         REPLACE_LDEXPL.
6550         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
6551         gl_FUNC_LDEXPL_WORKS.
6552         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
6553         * modules/mathl (Files): Remove lib/ldexpl.c.
6554         (Depends-on): Add ldexpl.
6555
6556 2007-03-29  Bruno Haible  <bruno@clisp.org>
6557
6558         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
6559
6560 2007-03-29  Bruno Haible  <bruno@clisp.org>
6561
6562         * tests/test-striconveh.c (main): Don't assume that a direct conversion
6563         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
6564         and possibly also HP-UX.
6565         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
6566         work on AIX, IRIX, HP-UX, OSF/1.
6567         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
6568         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
6569         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
6570         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
6571         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
6572         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
6573
6574 2007-03-29  Bruno Haible  <bruno@clisp.org>
6575
6576         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
6577
6578 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
6579
6580         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
6581         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
6582
6583 2007-03-29  Eric Blake  <ebb9@byu.net>
6584
6585         * lib/acl-internal.h: Remove redundant include.
6586         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
6587         Cygwin when a file is locked.
6588
6589 2007-03-29  Bruno Haible  <bruno@clisp.org>
6590
6591         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
6592         file.
6593         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
6594
6595 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
6596
6597         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
6598         try to remove a parent directory if the child couldn't be removed
6599         (except for the first rmdir, which could fail because the child
6600         doesn't exist).  Problem reported by Jeff Blaine in
6601         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
6602
6603 2007-03-28  Bruno Haible  <bruno@clisp.org>
6604
6605         * lib/striconveh.c (utf8conv_carefully): New function.
6606         (mem_cd_iconveh_internal): Invoke it.
6607
6608 2007-03-28  Bruno Haible  <bruno@clisp.org>
6609
6610         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
6611         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
6612         input.
6613         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
6614         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
6615         unistr/u8-uctomb.
6616
6617 2007-03-28  Bruno Haible  <bruno@clisp.org>
6618
6619         * modules/unistr/u8-mbtoucr: New file.
6620         * lib/unistr/u8-mbtoucr.c: New file.
6621         * modules/unistr/u16-mbtoucr: New file.
6622         * lib/unistr/u16-mbtoucr.c: New file.
6623         * modules/unistr/u16-mbtoucr: New file.
6624         * lib/unistr/u16-mbtoucr.c: New file.
6625         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
6626
6627 2007-03-27  Simon Josefsson  <simon@josefsson.org>
6628             Bruno Haible  <bruno@clisp.org>
6629
6630         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
6631         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
6632         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
6633
6634         * m4/stdio_h.m4: Add stubs for vasprintf too.
6635
6636         * modules/stdio: Support vasprintf in sed command.
6637
6638         * modules/vasprintf: Depend on stdio for prototypes.  Remove
6639         vasprintf.h.  Add stdio module indicator.
6640
6641         * lib/stdio_.h: Declare asprintf and vasprintf, based on
6642         vasprintf.h.
6643
6644         * lib/vasprintf.h: File removed.
6645
6646         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
6647         * lib/vasprintf.c: Ditto.
6648         * lib/xvasprintf.c: Ditto.
6649         * tests/test-vasprintf-posix.c: Ditto.
6650         * tests/test-vasprintf.c: Ditto.
6651
6652 2007-03-27  Bruno Haible  <bruno@clisp.org>
6653
6654         Make vasnprintf multithread-safe.
6655         * lib/vasnprintf.c (decimal_point_char): New function.
6656         (VASNPRINTF): Use it.
6657         Suggested by Simon Josefsson.
6658
6659 2007-03-27  Eric Blake  <ebb9@byu.net>
6660
6661         Support sub-second birthtime on cygwin.
6662         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
6663         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
6664         (get_stat_birthtime): Also work with st_birthtim.
6665
6666 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
6667
6668         * lib/stat-time.h (USE_BIRTHTIME): Remove.
6669         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
6670         (get_stat_birthtime_ns): Do not try to use "spare" fields.
6671         (get_stat_birthtime_ns): Simplify compile-time tests.
6672         (get_stat_birthtime): Change the API to look like
6673         get_stat_mtime etc., except return a negative tv_nsec on error.
6674         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
6675         Don't check for "spare" fields.
6676         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
6677         or for struct stat.st_birthtime, as these tests aren't used.
6678         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
6679
6680 2007-03-27  Bruno Haible  <bruno@clisp.org>
6681
6682         * lib/stat-time.h: Include <sys/stat.h>.
6683
6684 2007-03-27  James Youngman  <jay@gnu.org>
6685
6686         * lib/stat-time.h (get_stat_birthtime): New function for
6687           retrieving st_birthtime as provided by UFS2 (hence *BSD).
6688         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
6689           and its variants.
6690         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
6691         * modules/stat-time-test: New file.
6692         * tests/test-stat-time.c: New test, devised by Bruno Haible.
6693
6694 2007-03-26  Bruno Haible  <bruno@clisp.org>
6695
6696         Better support of signalling NaNs.
6697         * lib/atanl.c: Include isnanl.h.
6698         (atanl): Perform test for NaN at the beginning of the function and
6699         through a call to isnanl.
6700         * lib/cosl.c: Include isnanl.h.
6701         (cosl): Perform test for NaN at the beginning of the function and
6702         through a call to isnanl.
6703         * lib/ldexpl.c: Include isnanl.h.
6704         (ldexpl): Perform test for NaN through a call to isnanl.
6705         * lib/logl.c: Include isnanl.h.
6706         (logl): Perform test for NaN at the beginning of the function and
6707         through a call to isnanl.
6708         * lib/sinl.c: Include isnanl.h.
6709         (sinl): Perform test for NaN at the beginning of the function and
6710         through a call to isnanl.
6711         * lib/sqrtl.c: Include isnanl.h.
6712         (sqrtl): Perform test for NaN at the beginning of the function and
6713         through a call to isnanl.
6714         * lib/tanl.c: Include isnanl.h.
6715         (tanl): Perform test for NaN at the beginning of the function and
6716         through a call to isnanl.
6717         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
6718         * modules/mathl (Depends-on): Add isnanl.
6719
6720 2007-03-26  Eric Blake  <ebb9@byu.net>
6721
6722         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
6723         regression in logic sense of previous patch.
6724
6725 2007-03-26  Bruno Haible  <bruno@clisp.org>
6726
6727         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
6728         unportable shell command "if ! ...".
6729         Reported by Ralf Wildenhues.
6730
6731 2007-03-25  Bruno Haible  <bruno@clisp.org>
6732
6733         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
6734         <sysexits.h> file, and only add EX_CONFIG.
6735         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
6736         absolute file name and whether it is sufficient. Substitute also
6737         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
6738         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
6739         ABSOLUTE_SYSEXITS_H into sysexits.h.
6740
6741 2007-03-25  Bruno Haible  <bruno@clisp.org>
6742
6743         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
6744         hints is NULL.
6745
6746 2007-03-25  Bruno Haible  <bruno@clisp.org>
6747
6748         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
6749         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
6750
6751 2007-03-25  Bruno Haible  <bruno@clisp.org>
6752
6753         * lib/vasnprintf.c: Include langinfo.h.
6754         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
6755         multithread-safe.
6756         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
6757         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
6758         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6759         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6760         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6761         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6762         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6763         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
6764         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6765         Reported by Simon Josefsson.
6766
6767 2007-03-25  Bruno Haible  <bruno@clisp.org>
6768
6769         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
6770         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
6771         * modules/vasnprintf (Depends-on): Add stdint.
6772
6773 2007-03-25  Bruno Haible  <bruno@clisp.org>
6774
6775         * modules/fpieee: New file.
6776         * m4/fpieee.m4: New file.
6777         * modules/isnan-nolibm (Depends-on): Add fpieee.
6778         * modules/isnanl-nolibm (Depends-on): Add fpieee.
6779         * modules/isnanl (Depends-on): Add fpieee.
6780
6781 2007-03-25  Bruno Haible  <bruno@clisp.org>
6782
6783         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
6784
6785 2007-03-25  Bruno Haible  <bruno@clisp.org>
6786
6787         Avoid test failures on IRIX 6.5.
6788         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
6789         (main): Use it.
6790         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
6791         macros.
6792         (main): Use them.
6793
6794 2007-03-25  Bruno Haible  <bruno@clisp.org>
6795
6796         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
6797         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
6798         exists but doesn't work.
6799         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
6800         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
6801         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
6802         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
6803
6804 2007-03-25  Bruno Haible  <bruno@clisp.org>
6805
6806         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
6807         returns inf. Needed on IRIX 6.5.
6808
6809 2007-03-25  Bruno Haible  <bruno@clisp.org>
6810
6811         * tests/test-frexpl.c: Include isnanl-nolibm.h.
6812         (main): Use isnanl instead of x != x idiom.
6813         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
6814
6815         * tests/test-frexp.c: Include isnan.h.
6816         (main): Use isnan instead of x != x idiom.
6817         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
6818
6819 2007-03-25  Bruno Haible  <bruno@clisp.org>
6820
6821         * tests/test-frexp.c (NaN): New function/macro.
6822         (main): Use it instead of 0.0 / 0.0.
6823         * tests/test-isnan.c (NaN): New function/macro.
6824         (main): Use it instead of 0.0 / 0.0.
6825         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
6826         (test_function): Use it instead of 0.0 / 0.0.
6827         * tests/test-vasprintf-posix.c (NaN): New function/macro.
6828         (test_function): Use it instead of 0.0 / 0.0.
6829         * tests/test-snprintf-posix.h (NaN): New function/macro.
6830         (test_function): Use it instead of 0.0 / 0.0.
6831         * tests/test-sprintf-posix.h (NaN): New function/macro.
6832         (test_function): Use it instead of 0.0 / 0.0.
6833         * tests/test-fprintf-posix.h (NaN): New function/macro.
6834         (test_function): Use it instead of 0.0 / 0.0.
6835         * tests/test-printf-posix.h (NaN): New function/macro.
6836         (test_function): Use it instead of 0.0 / 0.0.
6837
6838         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
6839
6840 2007-03-25  Bruno Haible  <bruno@clisp.org>
6841
6842         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
6843
6844 2007-03-25  Bruno Haible  <bruno@clisp.org>
6845
6846         * lib/regexec.c (merge_state_with_log): Make static.
6847
6848 2007-03-25  Bruno Haible  <bruno@clisp.org>
6849
6850         * lib/trigl.c (kernel_rem_pio2): Make static.
6851
6852 2007-03-25  Bruno Haible  <bruno@clisp.org>
6853
6854         * lib/sincosl.c (sincosl_table): Make static.
6855
6856 2007-03-25  Bruno Haible  <bruno@clisp.org>
6857
6858         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
6859         if the compiler does not support C99.
6860
6861 2007-03-25  Bruno Haible  <bruno@clisp.org>
6862
6863         * modules/time (Makefile.am): Ensure all rule action lines start with a
6864         tab.
6865
6866 2007-03-24  Bruno Haible  <bruno@clisp.org>
6867
6868         * modules/tsearch-tests: New file.
6869         * tests/test-tsearch.sh: New file.
6870         * tests/test-tsearch.c: New file, mostly copied from glibc.
6871
6872         * modules/search-tests: New file.
6873         * tests/test-search.c: New file.
6874
6875         * modules/search: New file.
6876         * lib/search_.h: New file, incorporating lib/tsearch.h.
6877         * m4/search_h.m4: New file.
6878         * lib/tsearch.h: Remove file.
6879         * lib/tsearch.c: Include search.h instead of tsearch.h.
6880         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
6881         HAVE_TSEARCH.
6882         * modules/tsearch (Files): Remove lib/tsearch.h.
6883         (Depends-on): Add search.
6884         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
6885         (Include): Change tsearch.h into search.h.
6886
6887 2007-03-24  Bruno Haible  <bruno@clisp.org>
6888
6889         * modules/fpucw: New file.
6890         * lib/fpucw.h: New file.
6891         * lib/frexp.c: Include fpucw.h.
6892         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
6893         (FUNC): Use them.
6894         * lib/printf-frexp.c: Include fpucw.h.
6895         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
6896         (FUNC): Use them.
6897         * lib/vasnprintf.c: Include fpucw.h.
6898         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
6899         'long double' calculations.
6900         * tests/test-frexpl.c: Include fpucw.h.
6901         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
6902         * tests/test-printf-frexpl.c: Include fpucw.h.
6903         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
6904         * modules/frexpl (Depends-on): Add fpucw.
6905         * modules/printf-frexpl (Depends-on): Likewise.
6906         * modules/fprintf-posix (Depends-on): Likewise.
6907         * modules/snprintf-posix (Depends-on): Likewise.
6908         * modules/sprintf-posix (Depends-on): Likewise.
6909         * modules/vasnprintf-posix (Depends-on): Likewise.
6910         * modules/vasprintf-posix (Depends-on): Likewise.
6911         * modules/vfprintf-posix (Depends-on): Likewise.
6912         * modules/vsnprintf-posix (Depends-on): Likewise.
6913         * modules/vsprintf-posix (Depends-on): Likewise.
6914         * modules/frexpl-tests (Depends-on): Likewise.
6915         * modules/printf-frexpl-tests (Depends-on): Likewise.
6916
6917 2007-03-24  Bruno Haible  <bruno@clisp.org>
6918
6919         * lib/float+.h: New file.
6920         * lib/isnan.c: Include float+.h.
6921         (SIZE): New macro.
6922         (FUNC): Compare only SIZE bytes of the value.
6923         * lib/vasnprintf.c: Include float+.h.
6924         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
6925         SIZEOF_LDBL or SIZEOF_DBL bytes.
6926         * modules/isnan-nolibm (Files): Add lib/float+.h.
6927         * modules/isnanl-nolibm (Files): Add lib/float+.h.
6928         * modules/isnanl (Files): Add lib/float+.h.
6929         * modules/vasnprintf (Files): Add lib/float+.h.
6930
6931 2007-03-24  Bruno Haible  <bruno@clisp.org>
6932
6933         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
6934         include isnanl-nolibm.h.
6935
6936 2007-03-24  Bruno Haible  <bruno@clisp.org>
6937
6938         * tests/test-read-file.c (main): Don't produce spurious output for
6939         expected situations. Make the test fail if it encountered unexpected
6940         results.
6941
6942 2007-03-24  Bruno Haible  <bruno@clisp.org>
6943
6944         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
6945         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
6946
6947 2007-03-24  Bruno Haible  <bruno@clisp.org>
6948
6949         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
6950
6951 2007-03-24  Bruno Haible  <bruno@clisp.org>
6952
6953         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
6954         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
6955
6956         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
6957         * modules/utf8-ucs4: Turn into a symbolic link to module
6958         unistr/u8-mbtouc.
6959
6960         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
6961         utf8-ucs4-unsafe.
6962         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
6963         unistr/u8-mbtouc-unsafe.
6964
6965         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
6966         * modules/utf16-ucs4: Turn into a symbolic link to module
6967         unistr/u16-mbtouc.
6968
6969         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
6970         utf16-ucs4-unsafe.
6971         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
6972         unistr/u16-mbtouc-unsafe.
6973
6974         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
6975         * modules/ucs4-utf8: Turn into a symbolic link to module
6976         unistr/u8-ubtomb.
6977
6978         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
6979         * modules/ucs4-utf16: Turn into a symbolic link to module
6980         unistr/u16-ubtomb.
6981
6982 2007-03-24  Bruno Haible  <bruno@clisp.org>
6983
6984         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
6985         Enable the function only if HAVE_INLINE.
6986         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
6987         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6988         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
6989         Enable the function only if HAVE_INLINE.
6990         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
6991         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6992         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
6993         Enable the function only if HAVE_INLINE.
6994         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
6995         Enable the function only if HAVE_INLINE.
6996         * modules/utf8-ucs4: Update.
6997         * modules/utf8-ucs4-unsafe: Update.
6998         * modules/utf16-ucs4: Update.
6999         * modules/utf16-ucs4-unsafe: Update.
7000         * modules/ucs4-utf8: Update.
7001         * modules/ucs4-utf16: Update.
7002
7003 2007-03-24  Bruno Haible  <bruno@clisp.org>
7004
7005         * lib/utf8-ucs4.h: Remove file.
7006         * lib/utf8-ucs4-unsafe.h: Remove file.
7007         * lib/utf16-ucs4.h: Remove file.
7008         * lib/utf16-ucs4-unsafe.h: Remove file.
7009         * lib/ucs4-utf8.h: Remove file.
7010         * lib/ucs4-utf16.h: Remove file.
7011         * lib/unistr.h: Include their previous contents.
7012         * m4/utf-ucs4.m4: Remove file.
7013         * m4/ucs4-utf.m4: Remove file.
7014         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
7015         (Depends-on): Add unistr/base.
7016         (configure.ac): Remove gl_UTF_UCS4.
7017         (Makefile.am): Update.
7018         (Include): Change to unistr.h.
7019         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
7020         (Depends-on): Add unistr/base.
7021         (configure.ac): Remove gl_UTF_UCS4.
7022         (Makefile.am): Update.
7023         (Include): Change to unistr.h.
7024         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
7025         (Depends-on): Add unistr/base.
7026         (configure.ac): Remove gl_UTF_UCS4.
7027         (Makefile.am): Update.
7028         (Include): Change to unistr.h.
7029         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
7030         (Depends-on): Add unistr/base.
7031         (configure.ac): Remove gl_UTF_UCS4.
7032         (Makefile.am): Update.
7033         (Include): Change to unistr.h.
7034         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
7035         (Depends-on): Add unistr/base.
7036         (configure.ac): Remove gl_UCS4_UTF.
7037         (Makefile.am): Update.
7038         (Include): Change to unistr.h.
7039         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
7040         (Depends-on): Add unistr/base.
7041         (configure.ac): Remove gl_UCS4_UTF.
7042         (Makefile.am): Update.
7043         (Include): Change to unistr.h.
7044         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
7045         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
7046         utf8-ucs4-unsafe.h.
7047         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
7048         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
7049         utf16-ucs4-unsafe.h.
7050         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
7051         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
7052         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
7053         * lib/unistr/u8-strchr.c: Likewise.
7054         * lib/unistr/u8-strrchr.c: Likewise.
7055         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
7056         * lib/unistr/u16-strchr.c: Likewise.
7057         * lib/unistr/u16-strrchr.c: Likewise.
7058         * lib/striconveh.c: Update.
7059         * lib/linebreak.c: Update.
7060
7061 2007-03-24  Bruno Haible  <bruno@clisp.org>
7062
7063         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
7064         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
7065
7066 2007-03-22  Bruno Haible  <bruno@clisp.org>
7067
7068         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
7069
7070 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
7071
7072         * MODULES.html.sh (File system functions): New module write-any-file.
7073         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
7074         * m4/write-any-file.m4: New files.
7075
7076 2007-03-23  Eric Blake  <ebb9@byu.net>
7077
7078         * gnulib-tool: Rearrange space-tab sequences, since some editors
7079         like to eat them.
7080
7081 2007-03-23  Eric Blake  <ebb9@byu.net>
7082
7083         * lib/version-etc.c (version_etc_va): Update license wording to
7084         be more concise.  Recommended by Richard Stallman.
7085
7086 2007-03-22  Bruno Haible  <bruno@clisp.org>
7087
7088         * lib/poll.c (MSG_PEEK): New fallback definition.
7089
7090 2007-03-22  Bruno Haible  <bruno@clisp.org>
7091
7092         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
7093         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
7094         (main): Update.
7095         Fixes a compilation error on BeOS.
7096
7097 2007-03-22  Bruno Haible  <bruno@clisp.org>
7098
7099         * modules/frexpl-tests: New file.
7100         * tests/test-frexpl.c: New file.
7101
7102         * modules/frexpl: New file.
7103         * m4/frexpl.m4: New file.
7104         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
7105         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
7106         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
7107         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
7108         (Depends-on): Add frexpl. Remove isnanl-nolibm.
7109         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
7110
7111 2007-03-22  Bruno Haible  <bruno@clisp.org>
7112
7113         * lib/frexpl.c: Share code with lib/frexp.c.
7114         * modules/mathl (Files): Add lib/frexp.c.
7115         (Depends-on): Add isnanl-nolibm.
7116
7117 2007-03-22  Bruno Haible  <bruno@clisp.org>
7118
7119         * modules/printf-frexp (Files): Add m4/frexp.m4.
7120         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
7121         only if the found frexp function actually works.
7122
7123 2007-03-22  Bruno Haible  <bruno@clisp.org>
7124
7125         * lib/frexp.c: Remove older implementation that uses divisions.
7126
7127 2007-03-21  Bruno Haible  <bruno@clisp.org>
7128
7129         * modules/frexp-tests: New file.
7130         * tests/test-frexp.c: New file.
7131
7132         * modules/frexp: New file.
7133         * lib/frexp.c: New file.
7134         * m4/frexp.m4: New file.
7135         * lib/math_.h (frexp): New declaration.
7136         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
7137         REPLACE_FREXP.
7138         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
7139
7140 2007-03-21  Bruno Haible  <bruno@clisp.org>
7141
7142         * modules/isnanl-tests: New file.
7143         * tests/test-isnanl.c: New file.
7144
7145         * modules/isnanl: New file.
7146         * lib/isnanl.h: New file.
7147         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
7148         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
7149         gl_FUNC_ISNANL_WORKS.
7150         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
7151         New macros.
7152
7153 2007-03-21  Bruno Haible  <bruno@clisp.org>
7154
7155         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
7156         lib/isnanl.h.
7157         (Include): Update.
7158         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
7159         * lib/vasnprintf.c: Update.
7160         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
7161         tests/test-isnanl.h, remove tests/test-isnanl.c.
7162         (Makefile.am): Update.
7163         * tests/test-isnanl-nolibm.c: New file.
7164         * tests/test-isnanl.h: New file.
7165         * tests/test-isnanl.c: Remove file.
7166
7167 2007-03-21  Jim Meyering  <jim@meyering.net>
7168
7169         When trying to open ".", treat ESTALE like EACCES.
7170         * lib/savewd.c (savewd_save): Resort to forking not just upon
7171         failure with EACCES, but also when errno is ESTALE.
7172
7173 2007-03-20  Bruno Haible  <bruno@clisp.org>
7174
7175         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
7176         Needed on AIX 5.1. Reported by Matthew Woehlke.
7177
7178 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
7179
7180         Suggestions by Bruno Haible:
7181         * lib/acl-internal.h: Include "gettext.h" rather than rolling
7182         our own.
7183         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
7184         * modules/acl (Depends-on): Add gettext.
7185
7186 2007-03-19  Bruno Haible  <bruno@clisp.org>
7187
7188         * modules/iconvme: Remove file.
7189         * lib/iconvme.h: Remove file.
7190         * lib/iconvme.c: Remove file.
7191         * m4/iconvme.m4: Remove file.
7192
7193 2007-03-19  Bruno Haible  <bruno@clisp.org>
7194
7195         * doc/relocatable-maint.texi: Break long shell script line.
7196         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
7197
7198 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
7199
7200         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
7201         handle file_has_acl.
7202         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
7203         * lib/acl.c: Move header inclusions and related macro defns into
7204         lib/acl-internal.h.
7205         (S_ISLNK): Remove defn, since that's now done for us.
7206         (file_has_acl): Move to lib/file-has-acl.c.
7207         Call acl_trivial if available.  This is the crucial part of the fix.
7208         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
7209         shared within the library.  Rewrite a bit, partly to make it compatible
7210         with the GNU coding style.
7211         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
7212         Remove unnecessary double-quotes.
7213         Don't test for acl_to_text; the build will catch that.
7214         Replace acl_entries if it doesn't exist and it is needed.
7215         Check for -lsec and acl_trivial (as used on Solaris 10).
7216         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
7217         lib/file-has-acl.c.
7218         (Depends-on): Add sys_stat, for S_ISLNK.
7219
7220 2007-03-19  Ben Pfaff  <blp@gnu.org>
7221
7222         * doc/gnulib.texi: Fix typos.
7223         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
7224
7225 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
7226
7227         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
7228         If size is zero here, buf must be zero.
7229
7230 2007-03-19  Simon Josefsson  <simon@josefsson.org>
7231
7232         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
7233         <bruno@clisp.org>.
7234
7235 2007-03-18  Bruno Haible  <bruno@clisp.org>
7236
7237         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
7238         Suggested by Eric Blake.
7239
7240 2007-03-18  Ben Pfaff  <blp@gnu.org>
7241
7242         * doc/relocatable.texi: Recommend using as prefix a directory
7243         that does not exist and will never be created.  Based on
7244         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
7245         and others.
7246
7247 2007-03-17  Bruno Haible  <bruno@clisp.org>
7248
7249         * lib/fchownat.c: Include lchown.h.
7250
7251 2007-03-17  Bruno Haible  <bruno@clisp.org>
7252
7253         Fix endless loop when the given allocated size was > INT_MAX.
7254         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
7255         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
7256         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
7257         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
7258         * lib/sprintf.c (sprintf): Likewise.
7259
7260 2007-03-17  Bruno Haible  <bruno@clisp.org>
7261
7262         * tests/test-argp-2.sh (func_compare): Output a context diff.
7263
7264 2007-03-17  Bruno Haible  <bruno@clisp.org>
7265
7266         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
7267         locale's decimal-point character.
7268
7269 2007-03-17  Bruno Haible  <bruno@clisp.org>
7270
7271         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
7272         before comparing it. Needed because on some platforms (e.g. x86) a
7273         'long double' occupies less bytes than sizeof (long double).
7274
7275 2007-03-17  Bruno Haible  <bruno@clisp.org>
7276
7277         * tests/test-crc.c (main): Make printf statements 64-bit clean.
7278         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
7279         * tests/test-getaddrinfo.c (simple): Likewise.
7280         * tests/test-read-file.c (main): Likewise.
7281
7282 2007-03-17  Bruno Haible  <bruno@clisp.org>
7283
7284         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
7285
7286 2007-03-17  Bruno Haible  <bruno@clisp.org>
7287
7288         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
7289         unused variable.
7290
7291 2007-03-17  Bruno Haible  <bruno@clisp.org>
7292
7293         * tests/test-c-strcasecmp.c: Include c-strcase.h.
7294         * tests/test-c-strncasecmp.c: Likewise.
7295
7296 2007-03-17  Bruno Haible  <bruno@clisp.org>
7297
7298         * modules/stdlib (Depends-on): Add unistd.
7299         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
7300         Needed for MacOS X 10.3.
7301
7302 2007-03-17  Bruno Haible  <bruno@clisp.org>
7303
7304         * lib/unistr/u-strdup.h: Include <stdlib.h>.
7305
7306 2007-03-17  Bruno Haible  <bruno@clisp.org>
7307
7308         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
7309
7310 2007-03-17  Bruno Haible  <bruno@clisp.org>
7311
7312         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
7313         to reflect files copied from gnulib (with or without modifications).
7314         Suggested by Jim Meyering.
7315
7316 2007-03-17  Eric Blake  <ebb9@byu.net>
7317
7318         * NEWS: Document stdlib change from 2007-02-18.
7319
7320 2007-03-17  Jim Meyering  <jim@meyering.net>
7321
7322         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
7323         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
7324         someone uses a name containing shell meta-characters.
7325         Reported by Alfred M. Szmidt.
7326
7327         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
7328
7329 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
7330
7331         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
7332         and copy gettext configuration files only if configure.ac contains
7333         a use of AM_GNU_GETTEXT_VERSION.
7334
7335 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
7336
7337         * build-aux/bootstrap (gnulib_name): New variable.
7338         (gnulib_tool_options): Use it.
7339
7340 2007-03-13  Simon Josefsson  <simon@josefsson.org>
7341
7342         * tests/test-des.c: Use new namespace.
7343
7344 2007-03-15  Bruno Haible  <bruno@clisp.org>
7345
7346         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
7347         Reported by James Youngman <jay@gnu.org>.
7348
7349 2007-03-15  Bruno Haible  <bruno@clisp.org>
7350
7351         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
7352         declared prototype. Needed with cc on OSF/1 5.1.
7353
7354 2007-03-15  Bruno Haible  <bruno@clisp.org>
7355
7356         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
7357         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
7358         (struct gl_list_implementation): Add dispose_fn argument to the
7359         'create_empty', 'create' methods.
7360         (struct gl_list_impl_base): Add field 'dispose_fn'.
7361         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
7362         argument.
7363         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
7364         dispose_fn argument.
7365         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
7366         dispose_fn on the dropped values.
7367         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
7368         dispose_fn argument.
7369         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
7370         dropped values.
7371         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
7372         (gl_tree_remove_node): Call dispose_fn on the dropped value.
7373         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
7374         (gl_tree_remove_node): Call dispose_fn on the dropped value.
7375         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
7376         argument.
7377         (gl_tree_list_free): Call dispose_fn on the dropped values.
7378         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
7379         the dropped values.
7380         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
7381         Add dispose_fn argument.
7382         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
7383         Call dispose_fn on the dropped values.
7384         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
7385         Add dispose_fn argument.
7386         (gl_sublist_create): Initialize the 'dispose_fn' field.
7387         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
7388         * tests/test-array_list.c (main): Update.
7389         * tests/test-carray_list.c (main): Update.
7390         * tests/test-avltree_list.c (main): Update.
7391         * tests/test-rbtree_list.c (main): Update.
7392         * tests/test-avltreehash_list.c (main): Update.
7393         * tests/test-rbtreehash_list.c (main): Update.
7394         * tests/test-linked_list.c (main): Update.
7395         * tests/test-linkedhash_list.c (main): Update.
7396         * tests/test-array_oset.c (main): Update.
7397
7398 2007-03-15  Bruno Haible  <bruno@clisp.org>
7399
7400         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
7401         (gl_oset_create_empty): Add dispose_fn argument.
7402         (struct gl_oset_implementation): Add dispose_fn argument to
7403         'create_empty' method.
7404         (struct gl_oset_impl_base): Add dispose_fn field.
7405         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
7406         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
7407         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
7408         values.
7409         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
7410         (gl_tree_oset_free): Call dispose_fn on the dropped values.
7411         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
7412         dropped value.
7413         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
7414         dropped value.
7415         * tests/test-array_oset.c (main): Update.
7416         * tests/test-avltree_oset.c (main): Update.
7417         * tests/test-rbtree_oset.c (main): Update.
7418         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
7419
7420 2007-03-13  Bruno Haible  <bruno@clisp.org>
7421
7422         * tests/test-stdbool.c (i): Update after last patch.
7423
7424 2007-03-12  Bruno Haible  <bruno@clisp.org>
7425
7426         * lib/quotearg.c: Include <wctype.h> early, before the definition of
7427         the iswprint macro. Needed on Solaris 2.5.1.
7428
7429 2007-03-12  Bruno Haible  <bruno@clisp.org>
7430
7431         * tests/test-printf-frexp.c (main): Declare x as volatile.
7432
7433 2007-03-12  Simon Josefsson  <simon@josefsson.org>
7434
7435         * doc/gnulib.texi (Build robot for gnulib): New section.
7436
7437 2007-03-12  Jim Meyering  <jim@meyering.net>
7438
7439         * build-aux/bootstrap: New file.
7440         * build-aux/bootstrap.conf: New file, from coreutils.
7441
7442 2007-03-11  Bruno Haible  <bruno@clisp.org>
7443
7444         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
7445
7446 2007-03-12  Simon Josefsson  <simon@josefsson.org>
7447
7448         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
7449         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
7450         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
7451
7452 2007-03-11  Bruno Haible  <bruno@clisp.org>
7453
7454         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
7455         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
7456
7457 2007-03-11  Bruno Haible  <bruno@clisp.org>
7458
7459         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
7460         formula. Needed for SunPRO C 5.0.
7461
7462 2007-03-11  Bruno Haible  <bruno@clisp.org>
7463
7464         * modules/long-options (Depends-on): Add getopt.
7465
7466 2007-03-11  Bruno Haible  <bruno@clisp.org>
7467
7468         * modules/modechange (Depends-on): Add stdbool.
7469
7470 2007-03-11  Bruno Haible  <bruno@clisp.org>
7471
7472         * modules/i-ring (Depends-on): Add stdbool.
7473
7474 2007-03-11  Bruno Haible  <bruno@clisp.org>
7475
7476         * modules/gc-des (Depends-on): Add stdbool.
7477
7478 2007-03-11  Bruno Haible  <bruno@clisp.org>
7479
7480         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
7481
7482 2007-03-11  Bruno Haible  <bruno@clisp.org>
7483
7484         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
7485
7486 2007-03-11  Bruno Haible  <bruno@clisp.org>
7487
7488         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
7489
7490 2007-03-11  Bruno Haible  <bruno@clisp.org>
7491
7492         * lib/vasnprintf.c (sprintf): Undefine.
7493
7494 2007-03-11  Bruno Haible  <bruno@clisp.org>
7495
7496         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
7497         initializers in SunPRO C and Compaq C compilers.
7498
7499 2007-03-11  Bruno Haible  <bruno@clisp.org>
7500
7501         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
7502         decrementing code ANSI C compliant.
7503
7504 2007-03-11  Bruno Haible  <bruno@clisp.org>
7505
7506         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
7507         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
7508
7509 2007-03-11  Bruno Haible  <bruno@clisp.org>
7510
7511         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
7512         <stdbool.h> substitute doesn't pass.
7513
7514 2007-03-11  Bruno Haible  <bruno@clisp.org>
7515
7516         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
7517
7518 2007-03-11  Bruno Haible  <bruno@clisp.org>
7519
7520         * gnulib-tool (func_create_megatestdir): Create also an autobuild
7521         script, for submission to autobuild.josefsson.org.
7522
7523 2007-03-10  Bruno Haible  <bruno@clisp.org>
7524
7525         * modules/canonicalize-lgpl-tests: New file.
7526         * tests/test-canonicalize-lgpl.sh: New file.
7527         * tests/test-canonicalize-lgpl.c: New file.
7528
7529         * modules/c-strcase-tests: New file.
7530         * tests/test-c-strcase.sh: New file.
7531         * tests/test-c-strcasecmp.c: New file.
7532         * tests/test-c-strncasecmp.c: New file.
7533
7534         * modules/atexit-tests: New file.
7535         * tests/test-atexit.sh: New file.
7536         * tests/test-atexit.c: New file.
7537
7538 2007-03-10  Bruno Haible  <bruno@clisp.org>
7539
7540         * tests/test-binary-io.sh: Use temporary filenames that are not so
7541         likely to clash with those of other tests (in a parallel make).
7542         * tests/test-binary-io.c: Likewise.
7543
7544 2007-03-10  Bruno Haible  <bruno@clisp.org>
7545
7546         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
7547         fallback; use #error instead.
7548         Suggested by Simon Josefsson.
7549
7550 2007-03-10  Bruno Haible  <bruno@clisp.org>
7551
7552         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
7553         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
7554         first and the last.
7555
7556 2007-03-10  Bruno Haible  <bruno@clisp.org>
7557
7558         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
7559
7560 2007-03-10  Bruno Haible  <bruno@clisp.org>
7561
7562         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
7563         "make distcheck".
7564         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
7565         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
7566         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
7567
7568 2007-03-10  Bruno Haible  <bruno@clisp.org>
7569
7570         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
7571         variable.
7572         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
7573         variable.
7574
7575 2007-03-09  Eric Blake  <ebb9@byu.net>
7576         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
7577
7578         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
7579         types are not being provided by gnulib.
7580         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
7581         types are supported.
7582
7583 2007-03-10  Bruno Haible  <bruno@clisp.org>
7584
7585         * lib/stdio_.h (__attribute__): New macro.
7586         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
7587         vsprintf): Specify __attribute__ __format__ for GCC.
7588         Suggested by Eric Blake.
7589
7590 2007-03-09  Bruno Haible  <bruno@clisp.org>
7591
7592         * modules/printf-posix-tests: New file.
7593         * tests/test-printf-posix.sh: New file.
7594         * tests/test-printf-posix.c: New file.
7595
7596         * modules/printf-posix: New file.
7597         * lib/printf.c: New file.
7598         * m4/printf-posix-rpl.m4: New file.
7599         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
7600         REPLACE_PRINTF.
7601         * lib/stdio_.h (printf): New declaration.
7602         (format, __format__, ____printf____, ____scanf____, ____strftime____,
7603         ____strfmon____): New macros.
7604         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
7605         REPLACE_PRINTF.
7606
7607 2007-03-09  Bruno Haible  <bruno@clisp.org>
7608
7609         * tests/test-vasnprintf-posix2.sh: New file.
7610         * tests/test-vasnprintf-posix2.c: New file.
7611         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
7612         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
7613         (Makefile.am): Activate test-vasnprintf-posix2.sh.
7614
7615         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
7616         a locale dependent decimal point, rather than always '.'.
7617
7618 2007-03-09  Eric Blake  <ebb9@byu.net>
7619
7620         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
7621         spite of platforms like Tandem/NSK that define it to -1.
7622
7623 2007-03-08  Bruno Haible  <bruno@clisp.org>
7624
7625         * modules/vprintf-posix-tests: New file.
7626         * tests/test-vprintf-posix.sh: New file.
7627         * tests/test-vprintf-posix.c: New file.
7628         * tests/test-printf-posix.h: New file.
7629
7630         * modules/vprintf-posix: New file.
7631         * lib/vprintf.c: New file.
7632         * m4/vprintf-posix.m4: New file.
7633         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
7634         REPLACE_VPRINTF.
7635         * lib/stdio_.h (vprintf): New declaration.
7636         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
7637         REPLACE_VPRINTF.
7638
7639 2007-03-08  Bruno Haible  <bruno@clisp.org>
7640
7641         * modules/fprintf-posix-tests: New file.
7642         * tests/test-fprintf-posix.sh: New file.
7643         * tests/test-fprintf-posix.c: New file.
7644
7645         * modules/fprintf-posix: New file.
7646         * lib/fprintf.c: New file.
7647         * m4/fprintf-posix.m4: New file.
7648         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
7649         REPLACE_FPRINTF.
7650         * lib/stdio_.h (fprintf): New declaration.
7651         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
7652         REPLACE_FPRINTF.
7653
7654 2007-03-08  Bruno Haible  <bruno@clisp.org>
7655
7656         * modules/vfprintf-posix-tests: New file.
7657         * tests/test-vfprintf-posix.sh: New file.
7658         * tests/test-vfprintf-posix.c: New file.
7659         * tests/test-fprintf-posix.h: New file.
7660         * tests/test-fprintf-posix.out: New file.
7661
7662         * modules/vfprintf-posix: New file.
7663         * lib/vfprintf.c: New file.
7664         * m4/vfprintf-posix.m4: New file.
7665         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
7666         REPLACE_VFPRINTF.
7667         * lib/stdio_.h (vfprintf): New declaration.
7668         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
7669         REPLACE_VFPRINTF.
7670
7671 2007-03-08  Bruno Haible  <bruno@clisp.org>
7672
7673         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
7674
7675 2007-03-08  Bruno Haible  <bruno@clisp.org>
7676
7677         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
7678         instead of 'expr' invocations.
7679         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7680         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7681         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7682         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7683         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7684         Suggested by Paul Eggert.
7685
7686 2007-03-08  Bruno Haible  <bruno@clisp.org>
7687
7688         * modules/fseterr-tests: New file.
7689         * tests/test-fseterr.c: New file.
7690
7691         * modules/fseterr: New file.
7692         * lib/fseterr.h: New file.
7693         * lib/fseterr.c: New file.
7694
7695 2007-03-08  Bruno Haible  <bruno@clisp.org>
7696
7697         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
7698         * lib/getopt_.h: Likewise.
7699         * lib/mbswidth.h: Likewise.
7700         * lib/setenv.h: Likewise.
7701         * lib/vasnprintf.h: Likewise.
7702         * lib/vasprintf.h: Likewise.
7703         * lib/verror.h: Likewise.
7704         * lib/xsetenv.h: Likewise.
7705         * lib/xvasprintf.h: Likewise.
7706
7707 2007-03-08  Jim Meyering  <jim@meyering.net>
7708
7709         * users.txt: Add parted.
7710
7711         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
7712
7713 2007-03-07  Bruno Haible  <bruno@clisp.org>
7714
7715         * m4/printf.m4: Make the shell script snippets copy&pastable.
7716
7717 2007-03-02  Bruno Haible  <bruno@clisp.org>
7718
7719         * lib/netinet_in_.h: New file.
7720         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
7721         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
7722         * modules/netinet_in (Files): Add lib/netinet_in_.h.
7723         (Depends-on): Add absolute-header.
7724         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
7725         into netinet/in.h.
7726
7727 2007-03-03  Bruno Haible  <bruno@clisp.org>
7728
7729         * lib/sys_select_.h: New file.
7730         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
7731         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
7732         * modules/sys_select (Files): Add lib/sys_select_.h.
7733         (Depends-on): Add absolute-header.
7734         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
7735         into sys/select.h.
7736
7737 2007-03-02  Bruno Haible  <bruno@clisp.org>
7738
7739         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
7740         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
7741         values.
7742         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
7743         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
7744         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
7745         * modules/sys_socket (Depends-on): Add absolute-header.
7746         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
7747         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
7748         (Include): Remove requirement of inclusion of <sys/types.h>.
7749
7750 2007-03-02  Bruno Haible  <bruno@clisp.org>
7751
7752         * lib/byteswap_.h (bswap_32): Fix formula.
7753
7754 2007-03-06  Bruno Haible  <bruno@clisp.org>
7755
7756         * modules/sprintf-posix-tests: New file.
7757         * tests/test-sprintf-posix.c: New file.
7758
7759         * modules/sprintf-posix: New file.
7760         * lib/sprintf.c: New file.
7761         * m4/sprintf-posix.m4: New file.
7762         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
7763         REPLACE_SPRINTF.
7764         * lib/stdio_.h (sprintf): New declaration.
7765         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
7766         REPLACE_SPRINTF.
7767
7768 2007-03-06  Bruno Haible  <bruno@clisp.org>
7769
7770         * modules/vsprintf-posix-tests: New file.
7771         * tests/test-vsprintf-posix.c: New file.
7772         * tests/test-sprintf-posix.h: New file.
7773
7774         * modules/vsprintf-posix: New file.
7775         * lib/vsprintf.c: New file.
7776         * m4/vsprintf-posix.m4: New file.
7777         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
7778         REPLACE_VSPRINTF.
7779         * lib/stdio_.h (vsprintf): New declaration.
7780         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
7781         REPLACE_VSPRINTF.
7782
7783 2007-03-06  Bruno Haible  <bruno@clisp.org>
7784
7785         * modules/vsnprintf (Depend-on): Remove minmax.
7786
7787 2007-03-06  Bruno Haible  <bruno@clisp.org>
7788
7789         * modules/snprintf-posix-tests: New file.
7790         * tests/test-snprintf-posix.c: New file.
7791
7792         * modules/snprintf-posix: New file.
7793         * m4/snprintf-posix.m4: New file.
7794         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
7795         gl_FUNC_SNPRINTF.
7796         (gl_FUNC_SNPRINTF): Invoke it.
7797         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
7798         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
7799         is set.
7800         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
7801
7802 2007-03-06  Bruno Haible  <bruno@clisp.org>
7803
7804         * modules/vsnprintf-posix-tests: New file.
7805         * tests/test-vsnprintf-posix.c: New file.
7806         * tests/test-snprintf-posix.h: New file.
7807
7808         * modules/vsnprintf-posix: New file.
7809         * m4/vsnprintf-posix.m4: New file.
7810         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
7811         gl_FUNC_VSNPRINTF.
7812         (gl_FUNC_VSNPRINTF): Invoke it.
7813         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
7814         * lib/stdio_.h (vsnprintf): Define as a replacement if
7815         REPLACE_VSNPRINTF is set.
7816         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
7817
7818 2007-03-06  Bruno Haible  <bruno@clisp.org>
7819
7820         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
7821         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
7822
7823 2007-03-06  Bruno Haible  <bruno@clisp.org>
7824
7825         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
7826         (asinl): Declare also if HAVE_DECL_ASINL is set.
7827         (atanl): Declare also if HAVE_DECL_ATANL is set.
7828         (ceill): Declare also if HAVE_DECL_CEILL is set.
7829         (cosl): Declare also if HAVE_DECL_COSL is set.
7830         (expl): Declare also if HAVE_DECL_EXPL is set.
7831         (floorl): Declare also if HAVE_DECL_FLOORL is set.
7832         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
7833         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
7834         (logl): Declare also if HAVE_DECL_LOGL is set.
7835         (sinl): Declare also if HAVE_DECL_SINL is set.
7836         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
7837         (tanl): Declare also if HAVE_DECL_TANL is set.
7838         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
7839         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
7840         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
7841         declaration of frexpl, ldexpl.
7842         * modules/printf-frexpl (Depends-on): Add math.
7843         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
7844
7845 2007-03-05  Bruno Haible  <bruno@clisp.org>
7846
7847         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
7848         frexpl and ldexpl are declared.
7849         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
7850
7851 2007-03-05  Bruno Haible  <bruno@clisp.org>
7852
7853         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
7854         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
7855
7856 2007-03-05  Bruno Haible  <bruno@clisp.org>
7857
7858         * lib/stdio_.h: Include <stddef.h>.
7859
7860 2007-03-05  Bruno Haible  <bruno@clisp.org>
7861
7862         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
7863
7864 2007-03-05  Bruno Haible  <bruno@clisp.org>
7865
7866         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
7867         NetBSD 4, from Ralf Wildenhues.
7868
7869 2007-03-04  Bruno Haible  <bruno@clisp.org>
7870
7871         * lib/vasprintf.h: Update #if logic for the case when the functions
7872         exist but are overridden.
7873
7874 2007-03-04  Bruno Haible  <bruno@clisp.org>
7875
7876         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
7877         implementations: glibc-2.4 and MacOS X 10.3.
7878         * tests/test-vasnprintf-posix.c (test_function): Test also the case
7879         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
7880         * tests/test-vasprintf-posix.c (test_function): Likewise.
7881
7882 2007-03-04  Bruno Haible  <bruno@clisp.org>
7883
7884         * modules/vasprintf-posix-tests: New file.
7885         * tests/test-vasprintf-posix.c: New file.
7886
7887         * modules/vasprintf-posix: New file.
7888         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
7889         defined.
7890         * m4/vasprintf-posix.m4: New file.
7891         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
7892         gl_FUNC_VASPRINTF.
7893         (gl_FUNC_VASPRINTF): Invoke it.
7894         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
7895         here.
7896         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
7897
7898 2007-03-04  Bruno Haible  <bruno@clisp.org>
7899
7900         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
7901         REPLACE_GETTIMEOFDAY.
7902         * modules/sys_time (Makefile.am): Likewise.
7903         * m4/sys_time_h.m4: Likewise.
7904         * m4/gettimeofday.m4: Likewise.
7905
7906 2007-03-04  Bruno Haible  <bruno@clisp.org>
7907
7908         * modules/vasnprintf-posix-tests: New file.
7909         * tests/test-vasnprintf-posix.c: New file.
7910
7911         * modules/vasnprintf-posix: New file.
7912         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
7913         printf-frexpl.h.
7914         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
7915         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
7916         REPLACE_VASNPRINTF is defined.
7917         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
7918         gl_FUNC_VASNPRINTF.
7919         (gl_FUNC_VASNPRINTF): Invoke it.
7920         * m4/vasnprintf-posix.m4: New file.
7921         * m4/printf.m4: New file.
7922
7923 2007-03-04  Bruno Haible  <bruno@clisp.org>
7924
7925         Compile progreloc.c only if --enable-relocatable is specified.
7926         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
7927         if --enable-relocatable was specified.
7928         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
7929         lib_SOURCES.
7930
7931 2007-03-04  Jim Meyering  <jim@meyering.net>
7932
7933         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
7934         Use it consistently, rather than enumerating errno constants.
7935
7936 2007-03-04  Bruno Haible  <bruno@clisp.org>
7937
7938         * modules/xvasprintf-tests: New file.
7939         * tests/test-xvasprintf.c: New file.
7940
7941         * modules/vasprintf-tests: New file.
7942         * tests/test-vasprintf.c: New file.
7943
7944         * modules/vasnprintf-tests: New file.
7945         * tests/test-vasnprintf.c: New file.
7946
7947         * modules/vsnprintf-tests: New file.
7948         * tests/test-vsnprintf.c: New file.
7949
7950         * modules/snprintf-tests: New file.
7951         * tests/test-snprintf.c: New file.
7952
7953 2007-03-04  Bruno Haible  <bruno@clisp.org>
7954
7955         Compile relocatable.c only if --enable-relocatable is specified.
7956         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
7957         gl_RELOCATABLE_LIBRARY.
7958         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
7959         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
7960         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
7961         gl_RELOCATABLE_LIBRARY.
7962         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
7963         (Makefile.am): Remove lib_SOURCES.
7964         * modules/relocatable-lib-lgpl (configure.ac): Invoke
7965         gl_RELOCATABLE_LIBRARY.
7966         (Makefile.am): Remove lib_SOURCES.
7967         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
7968         always.
7969         * modules/relocatable-prog-wrapper (configure.ac): Invoke
7970         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
7971
7972 2007-03-04  Bruno Haible  <bruno@clisp.org>
7973
7974         * modules/argmatch-tests: New file.
7975         * tests/test-argmatch.c: New file.
7976
7977         * tests/test-allocsa.c (main): Halve the number of loop runs.
7978
7979         * modules/alloca-opt-tests: New file.
7980         * tests/test-alloca-opt.c: New file.
7981
7982 2007-03-04  Jim Meyering  <jim@meyering.net>
7983
7984         Work around difference between Linux ACLs and Solaris 10 ZFS.
7985         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
7986         for EINVAL.
7987
7988 2007-03-03  Bruno Haible  <bruno@clisp.org>
7989
7990         * modules/relocatable-prog (Depends-on): Add back progreloc's
7991         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
7992
7993 2007-03-03  Bruno Haible  <bruno@clisp.org>
7994
7995         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
7996         * modules/relocatable-lib: New file.
7997
7998 2007-03-03  Bruno Haible  <bruno@clisp.org>
7999
8000         * modules/relocatable-prog: Renamed from modules/relocatable.
8001         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
8002
8003 2007-03-03  Bruno Haible  <bruno@clisp.org>
8004
8005         * modules/relocatable-script (Files): Add doc/relocatable.texi,
8006         m4/relocatable-lib.m4.
8007         (Depends-on): Remove 'relocatable'.
8008         (configure.ac): Add gl_RELOCATABLE_NOP.
8009
8010 2007-03-03  Bruno Haible  <bruno@clisp.org>
8011
8012         * modules/relocatable-prog-wrapper: New file.
8013         * modules/relocatable (Depends-on): Add it. Remove all other
8014         dependencies except progname.
8015         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
8016
8017         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
8018         (gl_FUNC_STRERROR): Nop.
8019         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
8020
8021         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
8022         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
8023
8024         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
8025         (gl_FUNC_READLINK): Update.
8026
8027         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
8028
8029 2007-03-03  Bruno Haible  <bruno@clisp.org>
8030
8031         * lib/xreadlink.c: Include <unistd.h> unconditionally.
8032         * modules/xreadlink (Depends-on): Add unistd.
8033         * modules/xreadlink-with-size (Depends-on): Likewise.
8034
8035 2007-03-03  Bruno Haible  <bruno@clisp.org>
8036
8037         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
8038         extracted from gt_FUNC_SETENV.
8039         (gt_FUNC_SETENV): Remove macro.
8040         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
8041         remove gt_FUNC_SETENV.
8042
8043 2007-03-03  Bruno Haible  <bruno@clisp.org>
8044
8045         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
8046         ENABLE_RELOCATABLE here.
8047         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
8048
8049 2007-03-03  Bruno Haible  <bruno@clisp.org>
8050
8051         * modules/rbtreehash-list-tests (Depends-on): Add progname.
8052         * tests/test-rbtreehash_list.c: Include progname.h.
8053         (main): Call set_program_name.
8054
8055         * modules/rbtree-oset-tests (Depends-on): Add progname.
8056         * tests/test-rbtree_oset.c: Include progname.h.
8057         (main): Call set_program_name.
8058
8059         * modules/rbtree-list-tests (Depends-on): Add progname.
8060         * tests/test-rbtree_list.c: Include progname.h.
8061         (main): Call set_program_name.
8062
8063         * modules/linked-list-tests (Depends-on): Add progname.
8064         * tests/test-linked_list.c: Include progname.h.
8065         (main): Call set_program_name.
8066
8067 2007-03-03  Bruno Haible  <bruno@clisp.org>
8068
8069         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
8070         All uses of __restrict changed to _Restrict_.
8071         * lib/glob_.h (__restrict): Remove macro.
8072
8073 2007-03-02  Bruno Haible  <bruno@clisp.org>
8074
8075         * modules/gettext (configure.ac): Require gettext infrastructure
8076         from version 0.16.1.
8077
8078 2007-03-02  Bruno Haible  <bruno@clisp.org>
8079
8080         * modules/linkedhash-list-tests (Depends-on): Add progname.
8081         * tests/test-linkedhash_list.c: Include progname.h.
8082         (main): Call set_program_name.
8083
8084         * modules/carray-list-tests (Depends-on): Add progname.
8085         * tests/test-carray_list.c: Include progname.h.
8086         (main): Call set_program_name.
8087
8088         * modules/avltreehash-list-tests (Depends-on): Add progname.
8089         * tests/test-avltreehash_list.c: Include progname.h.
8090         (main): Call set_program_name.
8091
8092         * modules/avltree-oset-tests (Depends-on): Add progname.
8093         * tests/test-avltree_oset.c: Include progname.h.
8094         (main): Call set_program_name.
8095
8096         * modules/avltree-list-tests (Depends-on): Add progname.
8097         * tests/test-avltree_list.c: Include progname.h.
8098         (main): Call set_program_name.
8099
8100         * modules/array-oset-tests (Depends-on): Add progname.
8101         * tests/test-array_oset.c: Include progname.h.
8102         (main): Call set_program_name.
8103
8104         * modules/array-list-tests (Depends-on): Add progname.
8105         * tests/test-array_list.c: Include progname.h.
8106         (main): Call set_program_name.
8107
8108         * modules/argp-tests (Depends-on): Add progname.
8109         * tests/test-argp.c: Include argp.h first. Include progname.h.
8110         (main): Call set_program_name.
8111
8112 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
8113
8114         * doc/gnulib-tool.texi (Initial import): Reword description of
8115         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
8116         limited effect even if defined after the first system include.
8117
8118 2007-03-01  Bruno Haible  <bruno@clisp.org>
8119
8120         * build-aux/config.libpath: Update to libtool-1.5.22.
8121         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
8122
8123 2007-03-01  Bruno Haible  <bruno@clisp.org>
8124
8125         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
8126         foo_CFLAGS.
8127         Reported by Ralf Wildenhues.
8128
8129 2007-03-01  Bruno Haible  <bruno@clisp.org>
8130
8131         * build-aux/install-reloc: Remove object files left over by some
8132         compilers.
8133         Reported by Ralf Wildenhues.
8134
8135 2007-03-01  Bruno Haible  <bruno@clisp.org>
8136
8137         * build-aux/install-reloc: Break long lines.
8138
8139 2007-03-01  Bruno Haible  <bruno@clisp.org>
8140
8141         * doc/relocatable.texi: Document that it may not work on OpenBSD.
8142         Reported by Ralf Wildenhues.
8143
8144 2007-03-01  Bruno Haible  <bruno@clisp.org>
8145
8146         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
8147         include ordering constraints.
8148
8149 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
8150
8151         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
8152         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
8153         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
8154         as another example.
8155         * lib/time_.h: Fix misspelling.
8156         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
8157         Require gl_HEADER_TIME_H_DEFAULTS.
8158         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
8159         * m4/time_r.m4 (gl_TIME_R): Likewise.
8160         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
8161
8162 2007-03-01  Bruno Haible  <bruno@clisp.org>
8163
8164         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
8165         * m4/utimens.m4 (gl_UTIMENS): Likewise.
8166
8167 2007-03-01  Jim Meyering  <jim@meyering.net>
8168
8169         * modules/xreadlink (Maintainer): Add my name.
8170         * modules/xreadlink-with-size (Depends-on): Alphabetize.
8171
8172 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
8173             Bruno Haible  <bruno@clisp.org>
8174
8175         * build-aux/install-reloc: Compile also c-ctype.c.
8176         * build-aux/relocatable.sh.in: New file.
8177         * doc/relocatable.texi: New file.
8178         * doc/relocatable-maint.texi: New file.
8179         * doc/gnulib.texi: Include relocatable-maint.texi.
8180         * lib/progreloc.c: Include unistd.h unconditionally.
8181         * lib/relocwrapper.c: Include unistd.h unconditionally.
8182         Include c-ctype.h.
8183         (add_dotbin): Use c_tolower.
8184         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
8185         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
8186         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
8187         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
8188         to m4/relocatable-lib.m4.
8189         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
8190         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
8191         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
8192         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
8193         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
8194         * modules/relocatable: New file.
8195         * modules/relocatable-lib: New file.
8196         * modules/relocatable-script: New file.
8197
8198 2007-02-28  Bruno Haible  <bruno@clisp.org>
8199
8200         Import --enable-relocatable infrastructure.
8201         * build-aux/config.libpath: New file, from GNU gettext.
8202         * build-aux/install-reloc: New file, from GNU gettext.
8203         * build-aux/reloc-ldflags: New file, from GNU gettext.
8204         * lib/relocatable.h: New file, from GNU gettext.
8205         * lib/relocatable.c: New file, from GNU gettext.
8206         * lib/relocwrapper.c: New file, from GNU gettext.
8207         * m4/relocatable.m4: New file, from GNU gettext.
8208
8209 2007-02-28  Bruno Haible  <bruno@clisp.org>
8210
8211         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
8212
8213         * modules/xreadlink: New file, from GNU gettext with modifications.
8214         * lib/xreadlink.c: New file, from GNU gettext.
8215         * lib/xreadlink.h: Add comments.
8216         (xreadlink): New declaration.
8217
8218         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
8219         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
8220         lib/xreadlink-with-size.c.
8221         (configure.ac): Remove gl_XREADLINK invocation.
8222         (Makefile.am): Augment lib_SOURCES.
8223         * m4/xreadlink.m4: Remove file.
8224         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
8225         (xreadlink_with_size): Renamed from xreadink.
8226         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
8227         * modules/canonicalize (Depends-on): Replace xreadlink with
8228         xreadlink-with-size.
8229         * lib/canonicalize.c (canonicalize_filename_mode): Update.
8230
8231 2007-02-25  Jim Meyering  <jim@meyering.net>
8232
8233         * build-aux/announce-gen: When complaining about excess arguments,
8234         list them.
8235
8236 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
8237
8238         * README: Document signed integer overflow situation more
8239         accurately.
8240
8241 2007-02-25  Bruno Haible  <bruno@clisp.org>
8242
8243         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
8244         'a' or 'A' conversion.
8245
8246 2007-02-25  Bruno Haible  <bruno@clisp.org>
8247
8248         * modules/filename: Renamed from modules/pathname.
8249         (Files): Replace lib/pathname.h with lib/filename.h. Replace
8250         lib/concatpath.c with lib/concat-filename.c.
8251         (Makefile.am): Update.
8252         (Include): Replace pathname.h with filename.h.
8253         * lib/filename.h: Renamed from lib/pathname.h.
8254         (concatenated_filename): Renamed from concatenated_pathname.
8255         * lib/concat-filename.c: Renamed from lib/concatpath.c.
8256         (concatenated_filename): Renamed from concatenated_pathname.
8257         * lib/findprog.c: Include filename.h instead of pathname.h.
8258         (find_in_path): Update.
8259         * lib/javacomp.c: Include filename.h instead of pathname.h.
8260         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
8261         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
8262         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
8263         is_oldgcj_14_13_usable, is_javac_usable): Update.
8264         * lib/javaexec.c: Include filename.h instead of pathname.h.
8265         (execute_java_class): Update.
8266         * modules/findprog: Update.
8267         * modules/javacomp: Update.
8268         * modules/javaexec: Update.
8269         * MODULES.html.sh (File system functions): Add 'filename', remove
8270         'pathname'.
8271
8272 2007-02-25  Bruno Haible  <bruno@clisp.org>
8273
8274         * modules/printf-frexpl-tests: New file.
8275         * tests/test-printf-frexpl.c: New file.
8276
8277         * modules/printf-frexpl: New file.
8278         * lib/printf-frexpl.h: New file.
8279         * lib/printf-frexpl.c: New file.
8280         * m4/printf-frexpl.m4: New file.
8281
8282 2007-02-25  Bruno Haible  <bruno@clisp.org>
8283
8284         * modules/printf-frexp-tests: New file.
8285         * tests/test-printf-frexp.c: New file.
8286
8287         * modules/printf-frexp: New file.
8288         * lib/printf-frexp.h: New file.
8289         * lib/printf-frexp.c: New file.
8290         * m4/printf-frexp.m4: New file.
8291
8292 2007-02-25  Bruno Haible  <bruno@clisp.org>
8293
8294         Assume automake >= 1.10 for the tests.
8295         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
8296         * modules/arctwo-tests: Likewise.
8297         * modules/argp-tests: Likewise.
8298         * modules/avltree-list-tests: Likewise.
8299         * modules/avltree-oset-tests: Likewise.
8300         * modules/avltreehash-list-tests: Likewise.
8301         * modules/carray-list-tests: Likewise.
8302         * modules/crc-tests: Likewise.
8303         * modules/des-tests: Likewise.
8304         * modules/gc-arcfour-tests: Likewise.
8305         * modules/gc-arctwo-tests: Likewise.
8306         * modules/gc-des-tests: Likewise.
8307         * modules/gc-hmac-md5-tests: Likewise.
8308         * modules/gc-hmac-sha1-tests: Likewise.
8309         * modules/gc-md2-tests: Likewise.
8310         * modules/gc-md4-tests: Likewise.
8311         * modules/gc-md5-tests: Likewise.
8312         * modules/gc-pbkdf2-sha1-tests: Likewise.
8313         * modules/gc-rijndael-tests: Likewise.
8314         * modules/gc-sha1-tests: Likewise.
8315         * modules/gc-tests: Likewise.
8316         * modules/getaddrinfo-tests: Likewise.
8317         * modules/hmac-md5-tests: Likewise.
8318         * modules/hmac-sha1-tests: Likewise.
8319         * modules/linked-list-tests: Likewise.
8320         * modules/linkedhash-list-tests: Likewise.
8321         * modules/lock-tests: Likewise.
8322         * modules/md2-tests: Likewise.
8323         * modules/md4-tests: Likewise.
8324         * modules/md5-tests: Likewise.
8325         * modules/rbtree-list-tests: Likewise.
8326         * modules/rbtree-oset-tests: Likewise.
8327         * modules/rbtreehash-list-tests: Likewise.
8328         * modules/read-file-tests: Likewise.
8329         * modules/rijndael-tests: Likewise.
8330         * modules/stdint-tests: Likewise.
8331         * modules/tls-tests: Likewise.
8332
8333 2007-02-24  Bruno Haible  <bruno@clisp.org>
8334
8335         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
8336         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
8337         function; instead check whether isnan with a double argument links.
8338         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
8339         function; instead check whether isnan with a 'long double' argument
8340         links.
8341         Reported by Eric Blake <ebb9@byu.net>.
8342
8343 2007-02-24  Bruno Haible  <bruno@clisp.org>
8344
8345         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
8346         defined.
8347         * lib/isnanl.c: Remove all code. Just include isnan.c.
8348         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
8349
8350 2007-02-25  Jim Meyering  <jim@meyering.net>
8351
8352         Avoid conflicting types for 'unsetenv' on FreeBSD.
8353         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
8354         conflicting with FreeBSD's (5.0 and 6.1) function declaration
8355         in stdlib.h.
8356
8357 2007-02-24  Bruno Haible  <bruno@clisp.org>
8358
8359         * modules/isnanl-nolibm-tests: New file.
8360         * tests/test-isnanl.c: New file.
8361
8362         * modules/isnanl-nolibm: New file.
8363         * lib/isnanl.h: New file.
8364         * lib/isnanl.c: New file.
8365         * m4/isnanl.m4: New file.
8366
8367 2007-02-24  Bruno Haible  <bruno@clisp.org>
8368
8369         * modules/isnan-nolibm-tests: New file.
8370         * tests/test-isnan.c: New file.
8371
8372         * modules/isnan-nolibm: New file.
8373         * lib/isnan.h: New file.
8374         * lib/isnan.c: New file.
8375         * m4/isnan.m4: New file.
8376
8377 2007-02-24  Bruno Haible  <bruno@clisp.org>
8378
8379         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
8380         assume that an exponent fits in 20 bits.
8381
8382 2007-02-24  Jim Meyering  <jim@meyering.net>
8383
8384         * m4/regex.m4: Update the description of the configure-time option,
8385         --without-included-regex, to state accurately what the defaults are,
8386         and perhaps to give people an idea why using this option is risky.
8387
8388 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
8389
8390         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
8391         loops on small arguments.  This attempts to avoid the problem
8392         Bruno Haible reported for AIX 4.3.2 in
8393         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
8394
8395 2007-02-23  Bruno Haible  <bruno@clisp.org>
8396
8397         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
8398         Needed for help2man.
8399
8400 2007-02-23  Karl Berry  <karl@gnu.org>
8401
8402         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
8403         exists, foo.h should be cvs-ignored, not committed.
8404
8405 2007-02-23  Eric Blake  <ebb9@byu.net>
8406
8407         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
8408         * lib/stat-time.h (includes): Likewise.
8409         * lib/utimecmp.c (includes): Likewise.
8410         * lib/utimens.h (includes): Likewise.
8411         * lib/getdate.y (includes): Also include "timespec.h" for use
8412         internal to the module.
8413         * modules/utimens (Depends-on): Revert yesterday's patch.
8414         * modules/nanosleep (Depends-on): Add missing dependency.
8415
8416 2007-02-22  Bruno Haible  <bruno@clisp.org>
8417
8418         * lib/glob.c: Don't include getlogin_r.h.
8419
8420 2007-02-22  Jim Meyering  <jim@meyering.net>
8421
8422         * modules/utimens (Depends-on): Add timespec, required for
8423         utimens.h's inclusion of timespec.h.
8424
8425 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
8426
8427         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
8428         long unreadable paths in GNU/Linux.  Problem reported by Andreas
8429         Schwab in
8430         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
8431         I'll try to think of a better way to fix the Solaris problem.
8432
8433         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
8434         like glibc; on Solaris 10, it fails with errno == EINVAL.
8435         POSIX says the behavior is unspecified if the first argument is NULL,
8436         so play it safe and never pass NULL to the system getcwd.
8437
8438 2007-02-21  Jim Meyering  <jim@meyering.net>
8439
8440         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
8441         of gettimeofday.  It would conflict with the one now always
8442         provided via sys_time_.h.  Reported by Matthew Woehlke, as
8443         an IRIX 6.5 build failure.
8444
8445 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
8446
8447         Minor fixups to port to Solaris 10 with Sun C 5.8.
8448         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
8449         * modules/getcwd (Depends-on): Add dirfd.
8450         * lib/putenv.c (putenv): #undef it.
8451         (rpl_putenv): New decl.
8452         (malloc, free): Include <stdlib.h> rather than prototyping separately.
8453
8454 2007-02-20  Bruno Haible  <bruno@clisp.org>
8455
8456         * modules/stdio-tests: New file.
8457         * tests/test-stdio.c: New file.
8458
8459         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
8460         (Depends-on): Add stdio.
8461         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
8462         (Include): Use <stdio.h> instead of vsnprintf.h.
8463         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
8464         HAVE_DECL_VSNPRINTF.
8465         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
8466
8467         * modules/snprintf (Files): Remove lib/snprintf.h.
8468         (Depends-on): Add stdio.
8469         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
8470         (Include): Use <stdio.h> instead of snprintf.h.
8471         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
8472         HAVE_DECL_SNPRINTF.
8473         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
8474         * lib/getaddrinfo.c: Likewise.
8475
8476         * modules/stdio: New file.
8477         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
8478         * lib/snprintf.h: Remove file.
8479         * lib/vsnprintf.h: Remove file.
8480         * lib/.cppi-disable: Remove snprintf.h.
8481         * m4/stdio_h.m4: New file.
8482         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
8483
8484 2007-02-20  Jim Meyering  <jim@meyering.net>
8485
8486         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
8487         used by e.g., mingw.  From Bruno Haible.
8488
8489 2007-02-19  Bruno Haible  <bruno@clisp.org>
8490
8491         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
8492         warnings.
8493         Reported by Ben Pfaff <blp@cs.stanford.edu>.
8494
8495 2007-02-19  Bruno Haible  <bruno@clisp.org>
8496
8497         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
8498         from mingw users.
8499
8500 2007-02-19  Bruno Haible  <bruno@clisp.org>
8501
8502         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
8503         warnings.
8504         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
8505
8506 2007-02-19  Jim Meyering  <jim@meyering.net>
8507
8508         Don't use FD after a successful "fdopendir (fd)".
8509         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
8510         Reset it by calling dirfd on the just-obtained DIR*.
8511
8512         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
8513         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
8514
8515 2007-02-18  Bruno Haible  <bruno@clisp.org>
8516
8517         * lib/readlink.c: Include <unistd.h>.
8518         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
8519         HAVE_READLINK.
8520         * modules/readlink (Depends-on): Add unistd.
8521         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8522         (Include): Add <unistd.h>.
8523
8524         * lib/getlogin_r.h: Remove file.
8525         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
8526         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
8527         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
8528         HAVE_DECL_GETLOGIN_R.
8529         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
8530         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8531         (Include): Use <unistd.h> instead of getlogin_r.h.
8532
8533         * lib/getcwd.h: Remove file.
8534         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
8535         * lib/xgetcwd.c: Likewise.
8536         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
8537         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
8538         * modules/getcwd (Files): Remove lib/getcwd.h.
8539         (Depends-on): Add unistd.
8540         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8541         (Include): Use <unistd.h> instad of getcwd.h.
8542
8543         * lib/ftruncate.c: Include <unistd.h> first.
8544         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
8545         Set HAVE_FTRUNCATE.
8546         * modules/ftruncate (Depends-on): Add unistd.
8547         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8548
8549         * lib/fchdir.c: Include <unistd.h> first.
8550         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
8551         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
8552         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
8553         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8554         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
8555
8556         * lib/dup2.c: Include <unistd.h> first.
8557         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
8558         HAVE_DUP2.
8559         * modules/dup2 (Depends-on): Add unistd.
8560         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8561
8562         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
8563         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
8564         REPLACE_CHOWN. Don't define chown as a macro here.
8565         * modules/chown (Depends-on): Add unistd.
8566         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8567
8568         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
8569         Add definition for GL_LINK_WARNING.
8570         (chown, dup2): New declarations.
8571         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
8572         link warning.
8573         (ftruncate): New declaration.
8574         (getcwd): New declaration, taken from old getcwd.h.
8575         (getlogin_r): New declaration, taken from old getlogin_r.h.
8576         (readlink): New declaration.
8577         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
8578         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
8579         (gl_PREREQ_UNISTD): Remove macro.
8580         (gl_UNISTD_MODULE_INDICATOR): New macro.
8581         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
8582         many new variables. Don't set UNISTD_H.
8583         * modules/unistd (Description): Change.
8584         (Depends-on): Add link-warning.
8585         (configure.ac): Update.
8586         (Makefile.am): Create unistd.h always. Substitute many new variables
8587         into it.
8588
8589 2007-02-18  Bruno Haible  <bruno@clisp.org>
8590
8591         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
8592         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
8593         HAVE_GETSUBOPT.
8594         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
8595         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
8596         * lib/getsubopt.h: Remove file.
8597         * modules/getsubopt (Files): Remove lib/getsubopt.h.
8598         (Depends-on): Add stdlib.
8599         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8600         (Includes): Use <stdlib.h> instead of getsubopt.h.
8601         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
8602         Set HAVE_GETSUBOPT.
8603         * lib/getsubopt.c: Don't include getsubopt.h.
8604
8605 2007-02-18  Bruno Haible  <bruno@clisp.org>
8606
8607         * modules/fchdir (Depends-on): Add dup2.
8608
8609 2007-02-18  Bruno Haible  <bruno@clisp.org>
8610
8611         * lib/stdlib_.h: Handle glibc's special invocation convention
8612         specially.
8613
8614 2007-02-18  Bruno Haible  <bruno@clisp.org>
8615
8616         * modules/stdlib-tests: New file.
8617         * tests/test-stdlib.c: New file.
8618
8619         * modules/mkstemp (Files): Remove lib/mkstemp.h.
8620         (Depends-on): Add stdlib.
8621         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8622         (Includes): Use <stdlib.h> instead of mkstemp.h.
8623         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
8624         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
8625         * lib/mkstemp.c: Don't include mkstemp.h.
8626         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
8627         * lib/stdlib--.h: Don't include mkstemp.h.
8628
8629         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
8630         (Depends-on): Add stdlib.
8631         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8632         (Includes): Use <stdlib.h> instead of mkdtemp.h.
8633         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
8634         HAVE_MKDTEMP.
8635         * lib/mkdtemp.c: Don't include mkdtemp.h.
8636         * lib/clean-temp.c: Don't include mkdtemp.h.
8637
8638         * modules/exit (Files): Remove lib/exit.h.
8639         (Depends-on): Add stdlib.
8640         (Makefile.am): Remove lib_SOURCES.
8641         (Include): Use <stdlib.h> instead of exit.h.
8642         * lib/argmatch.c: Don't include exit.h.
8643         * lib/execute.c: Likewise.
8644         * lib/pagealign_alloc.c: Likewise.
8645         * lib/pipe.c: Likewise.
8646         * lib/wait-process.c: Likewise.
8647         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
8648         * lib/exitfail.c: Likewise.
8649         * lib/savewd.c: Likewise.
8650         * lib/xsetenv.c: Likewise.
8651
8652         * modules/stdlib: New file.
8653         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
8654         and extra comments about mkstemp().
8655         * lib/exit.h: Remove file.
8656         * lib/mkdtemp.h: Remove file.
8657         * lib/mkstemp.h: Remove file.
8658         * m4/stdlib_h.m4: New file.
8659         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
8660
8661 2007-02-18  Bruno Haible  <bruno@clisp.org>
8662
8663         * modules/math-tests: New file.
8664         * tests/test-math.c: New file.
8665
8666         * modules/math: New file.
8667         * modules/mathl (Files): Remove lib/mathl.h.
8668         (Depends-on): Add math.
8669         (Makefile.am): Don't mention mathl.h.
8670         (Include): Use <math.h> instead of mathl.h.
8671         * lib/math_.h: New file.
8672         * lib/mathl.h: Remove file.
8673         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
8674         mathl.h.
8675         * lib/asinl.c: Likewise.
8676         * lib/atanl.c: Likewise.
8677         * lib/ceill.c: Likewise.
8678         * lib/cosl.c: Likewise.
8679         * lib/expl.c: Likewise.
8680         * lib/floorl.c: Likewise.
8681         * lib/frexpl.c: Likewise.
8682         * lib/ldexpl.c: Likewise.
8683         * lib/logl.c: Likewise.
8684         * lib/sincosl.c: Likewise.
8685         * lib/sinl.c: Likewise.
8686         * lib/sqrtl.c: Likewise.
8687         * lib/tanl.c: Likewise.
8688         * lib/trigl.c: Likewise.
8689         * m4/math_h.m4: New file.
8690         * MODULES.html.sh (Mathematics): Add math.
8691
8692 2007-02-17  Bruno Haible  <bruno@clisp.org>
8693
8694         * modules/wctype-tests: New file.
8695         * tests/test-wctype.c: New file.
8696
8697         * modules/wchar-tests: New file.
8698         * tests/test-wchar.c: New file.
8699
8700         * modules/unistd-tests: New file.
8701         * tests/test-unistd.c: New file.
8702
8703         * modules/time-tests: New file.
8704         * tests/test-time.c: New file.
8705
8706         * modules/sysexits-tests: New file.
8707         * tests/test-sysexits.c: New file.
8708
8709         * modules/sys_time-tests: New file.
8710         * tests/test-sys_time.c: New file.
8711
8712         * modules/sys_stat-tests: New file.
8713         * tests/test-sys_stat.c: New file.
8714
8715         * modules/sys_socket-tests: New file.
8716         * tests/test-sys_socket.c: New file.
8717
8718         * modules/sys_select-tests: New file.
8719         * tests/test-sys_select.c: New file.
8720
8721         * modules/string-tests: New file.
8722         * tests/test-string.c: New file.
8723
8724         * modules/stdbool-tests: New file.
8725         * tests/test-stdbool.c: New file.
8726
8727         * modules/netinet_in-tests: New file.
8728         * tests/test-netinet_in.c: New file.
8729
8730         * modules/inttypes-tests: New file.
8731         * tests/test-inttypes.c: New file.
8732
8733         * modules/fcntl-tests: New file.
8734         * tests/test-fcntl.c: New file.
8735
8736         * modules/byteswap-tests: New file.
8737         * tests/test-byteswap.c: New file.
8738
8739         * modules/arpa_inet-tests: New file.
8740         * tests/test-arpa_inet.c: New file.
8741
8742 2007-02-17  Bruno Haible  <bruno@clisp.org>
8743
8744         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
8745         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
8746         if the corresponding module is not enabled. Emit link warnings if
8747         the function is used nevertheless.
8748         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
8749         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
8750         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
8751         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
8752         * modules/inttypes (Depends-on): Add link-warning.
8753         (Makefile.am): Copy the contents of build-aux/link-warning.h into
8754         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
8755         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
8756         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
8757         * modules/imaxdiv (configure.ac): Likewise.
8758         * modules/strtoimax (configure.ac): Likewise.
8759         * modules/strtoumax (configure.ac): Likewise.
8760
8761 2007-02-17  Bruno Haible  <bruno@clisp.org>
8762
8763         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
8764         gl_STRING_MODULE_INDICATOR_DEFAULTS.
8765         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
8766         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
8767
8768 2007-02-17  Bruno Haible  <bruno@clisp.org>
8769
8770         * modules/link-warning: New file.
8771         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
8772         * lib/string_.h (GL_LINK_WARNING): Remove definition.
8773         * modules/string (Depends-on): Add link-warning.
8774         (Makefile.am): Copy the contents of build-aux/link-warning.h into
8775         string.h.
8776         * MODULES.html.sh (Support for building libraries and executables): Add
8777         link-warning.
8778
8779 2007-02-17  Bruno Haible  <bruno@clisp.org>
8780
8781         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
8782         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
8783         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
8784         long lines.
8785
8786 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
8787             Bruno Haible  <bruno@clisp.org>
8788
8789         * modules/tmpfile: New file.
8790         * lib/tmpfile.c: New file.
8791         * m4/tmpfile.m4: New file.
8792         * MODULES.html.sh (func_all_modules): New section "Input/output".
8793
8794 2007-02-15  Bruno Haible  <bruno@clisp.org>
8795
8796         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
8797         (supports_delete_on_close): New function.
8798         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
8799
8800 2007-02-14  Bruno Haible  <bruno@clisp.org>
8801
8802         * modules/mbspcasecmp-tests: New file.
8803         * tests/test-mbspcasecmp.sh: New file.
8804         * tests/test-mbspcasecmp.c: New file.
8805
8806         New module mbspcasecmp.
8807         * modules/mbspcasecmp: New file.
8808         * lib/mbspcasecmp.c: New file.
8809         * lib/string_.h (strncasecmp): Change warning message.
8810         (mbspcasecmp): New declaration.
8811         * m4/mbspcasecmp.m4: New file.
8812         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8813         GNULIB_MBSPCASECMP.
8814         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
8815         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
8816
8817 2007-02-14  Bruno Haible  <bruno@clisp.org>
8818
8819         * modules/mbsncasecmp-tests: New file.
8820         * tests/test-mbsncasecmp.sh: New file.
8821         * tests/test-mbsncasecmp.c: New file.
8822
8823         New module mbsncasecmp.
8824         * modules/mbsncasecmp: New file.
8825         * lib/mbsncasecmp.c: New file.
8826         * lib/string_.h (mbsncasecmp): New declaration.
8827         * m4/mbsncasecmp.m4: New file.
8828         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8829         GNULIB_MBSNCASECMP.
8830         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
8831         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
8832
8833 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8834
8835         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
8836         Verify that it doesn't overlap with our flags.
8837         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
8838         do not have the desired effect in multibyte locales; instead, use
8839         mbscasecmp.
8840         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
8841         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
8842         we don't require GNU fnmatch ourselves (if our users require it, they
8843         should do so explicitly).
8844
8845         Fix regex code so it doesn't rely on strcasecmp.
8846         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
8847         Otherwise, include gnulib's langinfo.h.
8848         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
8849         undesirable behavior in non-C locales.  Instead, rely on localecharset.
8850         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
8851         * modules/regex (FILES): Remove m4/codeset.m4.
8852         (Depends-on): Add localcharset.  Remove strcase.
8853
8854 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8855
8856         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
8857         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
8858
8859 2007-02-13  Bruno Haible  <bruno@clisp.org>
8860
8861         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
8862         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8863
8864 2007-02-12  Bruno Haible  <bruno@clisp.org>
8865
8866         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
8867         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
8868         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
8869         time warning rather than a link error.
8870
8871 2007-02-12  Bruno Haible  <bruno@clisp.org>
8872
8873         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
8874         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
8875         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8876
8877 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
8878
8879         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
8880         args, not 2.
8881
8882 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
8883
8884         New module 'time', so that apps can include <time.h> as per
8885         POSIX and GNU instead of separate include files like time_r.h
8886         and timegm.h.  This implementation tries out a simpler approach
8887         for replacing decls in standard include files (as compared to
8888         the string module), somewhat as an experiment.
8889
8890         * config/srclist.txt: Comment out mktime.c for now.
8891         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
8892         since it doesn't apply any more.  Use generic wording instead.
8893         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
8894         'time'.
8895         * lib/time_.h, m4/time_h.m4, modules/time: New files.
8896         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
8897         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
8898         Don't include <sys/types.h>; no longer needed since we assume C89.
8899         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
8900         * lib/strftime.c: Likewise.
8901         * lib/time_r.c: Likewise.
8902         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
8903         * lib/nanosleep.c: Include <time.h> first, to check interface.
8904         * lib/strptime.c: Likewise.
8905         * lib/time_r.c: Likewise.
8906         * lib/timegm.c: Likewise.
8907         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
8908         needed.
8909         * lib/timegm.c: Don't include timegm.h; no longer needed.
8910         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
8911         time.h now handles any problems in that area.
8912         (struct timespec, nanosleep): Remove; time.h now arranges for these.
8913         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
8914         that time.h defines struct timespec.
8915         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
8916         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
8917         handles that.
8918         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
8919         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
8920         needed.  Set REPLACE_LOCALTIME.
8921         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
8922         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
8923         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
8924         nanosleep; time_h.m4 now does that.  Don't require
8925         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
8926         module handles this now.
8927         * modules/getdate (Depends-on): Remove timespec.  Add time.
8928         * modules/nanosleep (Depends-on): Likewise.
8929         * modules/stat-time (Depends-on): Likewise.
8930         * modules/nanosleep (Include): Include time.h, not timespec.h.
8931         * modules/strptime (Files): Remove lib/strptime.h.
8932         (Depends-on): Add extensions, time.
8933         (Include): Include time.h, not strptime.h.
8934         * modules/time_r (Files): Remove lib/time_r.h.
8935         (Depends-on): Add time.
8936         (Include): Include time.h, not time_r.h.
8937         * modules/timegm: Likewise.
8938         * modules/timespec (Description): Now does timespec-related decls
8939         of our own, instead of struct timespec itself.
8940         (Depends-on): Add time; remove extensions.
8941         (Maintainer): Add self.
8942         * modules/utimecmp (Depends-on): Add time; remove timespec.
8943         * modules/utimens (Depends-on): Likewise.
8944         * modules/xnanosleep (Depends-on): Likewise.
8945
8946 2007-02-11  Bruno Haible  <bruno@clisp.org>
8947
8948         * lib/c-strstr.c: Include allocsa.h.
8949         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8950         * lib/c-strcasestr.c: Include allocsa.h.
8951         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8952         * lib/strcasestr.c: Include allocsa.h.
8953         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8954         * lib/mbsstr.c: Include allocsa.h.
8955         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8956         allocsa/freesa instead of malloc/free.
8957         * lib/mbscasestr.c: Include allocsa.h.
8958         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8959         allocsa/freesa instead of malloc/free.
8960         * modules/c-strstr (Depends-on): Add allocsa.
8961         * modules/c-strcasestr (Depends-on): Likewise.
8962         * modules/strcasestr (Depends-on): Likewise.
8963         * modules/mbsstr (Depends-on): Likewise.
8964         * modules/mbscasestr (Depends-on): Likewise.
8965
8966 2007-02-11  Bruno Haible  <bruno@clisp.org>
8967
8968         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
8969
8970         * modules/mbsspn-tests: New file.
8971         * tests/test-mbsspn.sh: New file.
8972         * tests/test-mbsspn.c: New file.
8973
8974 2007-02-11  Bruno Haible  <bruno@clisp.org>
8975
8976         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
8977
8978         * modules/mbspbrk-tests: New file.
8979         * tests/test-mbspbrk.sh: New file.
8980         * tests/test-mbspbrk.c: New file.
8981
8982 2007-02-11  Bruno Haible  <bruno@clisp.org>
8983
8984         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
8985         unneeded cast.
8986
8987         * modules/mbscspn-tests: New file.
8988         * tests/test-mbscspn.sh: New file.
8989         * tests/test-mbscspn.c: New file.
8990
8991 2007-02-11  Bruno Haible  <bruno@clisp.org>
8992
8993         * modules/mbscasecmp-tests: New file.
8994         * tests/test-mbscasecmp.sh: New file.
8995         * tests/test-mbscasecmp.c: New file.
8996
8997 2007-02-11  Bruno Haible  <bruno@clisp.org>
8998
8999         Ensure O(n) worst-case complexity of mbscasestr.
9000         * lib/mbscasestr.c: Include stdbool.h.
9001         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
9002         functions.
9003         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
9004         the bookkeeping indicates that it's worth it.
9005         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
9006
9007         * modules/mbscasestr-tests: New file.
9008         * tests/test-mbscasestr1.c: New file.
9009         * tests/test-mbscasestr2.sh: New file.
9010         * tests/test-mbscasestr2.c: New file.
9011         * tests/test-mbscasestr3.sh: New file.
9012         * tests/test-mbscasestr3.c: New file.
9013         * tests/test-mbscasestr4.sh: New file.
9014         * tests/test-mbscasestr4.c: New file.
9015         * m4/locale-tr.m4: New file.
9016
9017 2007-02-11  Bruno Haible  <bruno@clisp.org>
9018
9019         Ensure O(n) worst-case complexity of mbsstr.
9020         * lib/mbsstr.c: Include stdbool.h.
9021         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
9022         functions.
9023         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
9024         bookkeeping indicates that it's worth it.
9025         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
9026
9027         * modules/mbsstr-tests: New file.
9028         * tests/test-mbsstr1.c: New file.
9029         * tests/test-mbsstr2.sh: New file.
9030         * tests/test-mbsstr2.c: New file.
9031         * tests/test-mbsstr3.sh: New file.
9032         * tests/test-mbsstr3.c: New file.
9033         * m4/locale-fr.m4: New file.
9034
9035 2007-02-11  Bruno Haible  <bruno@clisp.org>
9036
9037         * lib/mbsrchr.c (mbsrchr): Fix bug.
9038
9039         * modules/mbsrchr-tests: New file.
9040         * tests/test-mbsrchr.sh: New file.
9041         * tests/test-mbsrchr.c: New file.
9042
9043 2007-02-11  Bruno Haible  <bruno@clisp.org>
9044
9045         * lib/mbschr.c (mbschr): Fix bug.
9046
9047         * modules/mbschr-tests: New file.
9048         * tests/test-mbschr.sh: New file.
9049         * tests/test-mbschr.c: New file.
9050         * m4/locale-zh.m4: New file.
9051
9052 2007-02-11  Bruno Haible  <bruno@clisp.org>
9053
9054         Support for copying multibyte string iterators.
9055         * lib/mbiter.h: Include <string.h>.
9056         (mbiter_multi_copy): New function.
9057         (mbi_copy): New macro.
9058         * lib/mbuiter.h: Include <string.h>.
9059         (mbuiter_multi_copy): New function.
9060         (mbui_copy): New macro.
9061
9062 2007-02-11  Bruno Haible  <bruno@clisp.org>
9063
9064         New module mbslen.
9065         * modules/mbslen: New file.
9066         * lib/mbslen.c: New file.
9067         * lib/string_.h (mbslen): New declaration.
9068         * m4/mbslen.m4: New file.
9069         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9070         GNULIB_MBSLEN.
9071         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
9072         * MODULES.html.sh (Internationalization functions): Add mbslen.
9073
9074 2007-02-11  Bruno Haible  <bruno@clisp.org>
9075
9076         Ensure O(n) worst-case complexity of strcasestr substitute.
9077         * lib/strcasestr.c: Include stdbool.h.
9078         (knuth_morris_pratt): New function.
9079         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
9080         bookkeeping indicates that it's worth it.
9081         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
9082
9083         * modules/strcasestr-tests: New file.
9084         * tests/test-strcasestr.c: New file.
9085
9086 2007-02-11  Bruno Haible  <bruno@clisp.org>
9087
9088         Ensure O(n) worst-case complexity of c_strcasestr.
9089         * lib/c-strcasestr.c: Include stdbool.h, string.h.
9090         (knuth_morris_pratt): New function.
9091         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
9092         the bookkeeping indicates that it's worth it.
9093         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
9094
9095         * modules/c-strcasestr-tests: New file.
9096         * tests/test-c-strcasestr.c: New file.
9097
9098 2007-02-11  Bruno Haible  <bruno@clisp.org>
9099
9100         Ensure O(n) worst-case complexity of c_strstr.
9101         * lib/c-strstr.c: Include stdbool.h, string.h.
9102         (knuth_morris_pratt): New function.
9103         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
9104         bookkeeping indicates that it's worth it.
9105         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
9106
9107         * lib/c-strstr.c: Complete rewrite for maintainability.
9108
9109         * modules/c-strstr-tests: New file.
9110         * tests/test-c-strstr.c: New file.
9111
9112 2007-02-11  Bruno Haible  <bruno@clisp.org>
9113
9114         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
9115         5.2.1 and earlier, whereby \055 was treated just like the range
9116         delimiter '-'.
9117         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
9118
9119 2007-02-08  Bruno Haible  <bruno@clisp.org>
9120
9121         * modules/regex (Depends-on): Add stdbool.
9122         Reported by Dalibor Topic <robilad@kaffe.org>.
9123
9124 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
9125
9126         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
9127         Prefer returning from main to exiting from it.
9128         Remove unnecessary parens after sizeof.
9129
9130 2007-02-05  Bruno Haible  <bruno@clisp.org>
9131
9132         New module mbssep.
9133         * modules/mbssep: New file.
9134         * lib/mbssep.c: New file.
9135         * lib/string_.h (strsep): Add a conditional link warning.
9136         (mbssep): New declaration.
9137         * m4/mbssep.m4: New file.
9138         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9139         GNULIB_MBSSEP.
9140         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
9141         * MODULES.html.sh (Internationalization functions): Add mbssep.
9142
9143 2007-02-05  Bruno Haible  <bruno@clisp.org>
9144
9145         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
9146         Optimize search in case of 1 delimiter.
9147
9148 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
9149
9150         * lib/acl.h: Include sys/types.h before sys/acl.h.
9151
9152 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
9153
9154         Merge upstream fix for glibc bugzilla #3957:
9155
9156         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
9157
9158         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
9159         bit for RE_HAT_LISTS_NOT_NEWLINE.
9160         (build_charclass_op): Remove bogus comment.
9161
9162 2007-02-05  Simon Josefsson  <simon@josefsson.org>
9163
9164         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
9165
9166 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
9167
9168         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
9169         * lib/memmem.c [!defined _LIBC]: Include config.h.
9170
9171 2007-02-04  Bruno Haible  <bruno@clisp.org>
9172
9173         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
9174         warning message.
9175
9176 2007-02-04  Bruno Haible  <bruno@clisp.org>
9177
9178         New module mbstok_r.
9179         * modules/mbstok_r: New file.
9180         * lib/mbstok_r.c: New file.
9181         * lib/string_.h (strtok_r): Change argument names to match the
9182         comments. Add a conditional link warning.
9183         (mbstok_r): New declaration.
9184         * m4/mbstok_r.m4: New file.
9185         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9186         GNULIB_MBSTOK_R.
9187         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
9188         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
9189
9190 2007-02-04  Bruno Haible  <bruno@clisp.org>
9191
9192         New module mbsspn.
9193         * modules/mbsspn: New file.
9194         * lib/mbsspn.c: New file.
9195         * lib/string_.h (strspn): Add a conditional link warning.
9196         (mbsspn): New declaration.
9197         * m4/mbsspn.m4: New file.
9198         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9199         GNULIB_MBSSPN.
9200         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
9201         * MODULES.html.sh (Internationalization functions): Add mbsspn.
9202
9203 2007-02-04  Bruno Haible  <bruno@clisp.org>
9204
9205         New module mbspbrk.
9206         * modules/mbspbrk: New file.
9207         * lib/mbspbrk.c: New file.
9208         * lib/string_.h (strpbrk): Add a conditional link warning.
9209         (mbspbrk): New declaration.
9210         * m4/mbspbrk.m4: New file.
9211         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9212         GNULIB_MBSPBRK.
9213         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
9214         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
9215
9216 2007-02-04  Bruno Haible  <bruno@clisp.org>
9217
9218         New module mbscspn.
9219         * modules/mbscspn: New file.
9220         * lib/mbscspn.c: New file.
9221         * lib/string_.h (strcspn): Add a conditional link warning.
9222         (mbscspn): New declaration.
9223         * m4/mbscspn.m4: New file.
9224         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9225         GNULIB_MBSCSPN.
9226         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
9227         * MODULES.html.sh (Internationalization functions): Add mbscspn.
9228
9229 2007-02-04  Bruno Haible  <bruno@clisp.org>
9230
9231         New module mbscasestr, reduced goal of strcasestr.
9232         * modules/mbscasestr: New file.
9233         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
9234         (mbscasestr): Renamed from strcasestr.
9235         * lib/strcasestr.c: Don't include mbuiter.h.
9236         (strcasestr): Remove support for multibyte locales.
9237         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
9238         Change the conditional link warning.
9239         (mbscasestr): New declaration.
9240         * m4/mbscasestr.m4: New file.
9241         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
9242         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
9243         REPLACE_STRCASESTR.
9244         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
9245         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
9246         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
9247         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
9248         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
9249         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
9250         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
9251         (Depends-on): Remove mbuiter.
9252         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
9253
9254 2007-02-04  Bruno Haible  <bruno@clisp.org>
9255
9256         Simplify handling of strncasecmp.
9257         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
9258         the conditional link warning.
9259         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
9260         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
9261         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
9262         * modules/strcase (configure.ac): Don't invoke
9263         gl_STRING_MODULE_INDICATOR.
9264         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
9265
9266 2007-02-04  Bruno Haible  <bruno@clisp.org>
9267
9268         New module mbscasecmp, reduced goal of strcasecmp.
9269         * modules/mbscasecmp: New file.
9270         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
9271         (mbscasecmp): Renamed from strcasecmp.
9272         * lib/strcasecmp.c: Don't include mbuiter.h.
9273         (strcasecmp): Remove support for multibyte locales.
9274         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
9275         Change the conditional link warning.
9276         (mbscasecmp): New declaration.
9277         * m4/mbscasecmp.m4: New file.
9278         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
9279         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
9280         REPLACE_STRCASECMP.
9281         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
9282         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9283         GNULIB_MBSCASECMP.
9284         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
9285         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
9286         * modules/strcase (Files): Remove m4/mbrtowc.m4.
9287         (Depends-on): Remove mbuiter.
9288         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
9289
9290 2007-02-04  Bruno Haible  <bruno@clisp.org>
9291
9292         New module mbsstr. Remove module strstr.
9293         * modules/mbsstr: New file.
9294         * modules/strstr: Remove file.
9295         * lib/mbsstr.c: Renamed from lib/strstr.c.
9296         (mbsstr): Renamed from strstr.
9297         * lib/string_.h (strstr): Remove declaration. Change the conditional
9298         link warning.
9299         (mbsstr): New declaration.
9300         * m4/mbsstr.m4: New file.
9301         * m4/strstr.m4: Remove file.
9302         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
9303         REPLACE_STRSTR.
9304         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
9305         Don't initialize GNULIB_STRSTR.
9306         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
9307         substitute GNULIB_STRSTR and REPLACE_STRSTR.
9308         * MODULES.html.sh (Internationalization functions): Add mbsstr.
9309         (Support for systems lacking ANSI C 89): Remove strstr.
9310
9311 2007-02-04  Bruno Haible  <bruno@clisp.org>
9312
9313         New module mbsrchr.
9314         * modules/mbsrchr: New file.
9315         * lib/mbsrchr.c: New file.
9316         * lib/string_.h (strrchr): Add a conditional link warning.
9317         (mbsrchr): New declaration.
9318         * m4/mbsrchr.m4: New file.
9319         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9320         GNULIB_MBSRCHR.
9321         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
9322         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
9323
9324 2007-02-04  Bruno Haible  <bruno@clisp.org>
9325
9326         New module mbschr.
9327         * modules/mbschr: New file.
9328         * lib/mbschr.c: New file.
9329         * lib/string_.h (strchr): Add a conditional link warning.
9330         (mbschr): New declaration.
9331         * m4/mbschr.m4: New file.
9332         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
9333         GNULIB_MBSCHR.
9334         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
9335         * MODULES.html.sh (Internationalization functions): Add mbschr.
9336
9337 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
9338
9339         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
9340
9341         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
9342
9343 2007-02-04  Bruno Haible  <bruno@clisp.org>
9344
9345         New module description section 'configure.ac-early'.
9346         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
9347         (func_get_autoconf_early_snippet): New function.
9348         (func_import, func_create_testdir): Use it. Remove special cases for
9349         modules 'extensions' and 'lock'.
9350         * modules/extensions (configure.ac-early): Require
9351         gl_USE_SYSTEM_EXTENSIONS.
9352         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
9353
9354 2007-02-04  Bruno Haible  <bruno@clisp.org>
9355
9356         Make use of gcj-4.3's -fsource and -ftarget option.
9357         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
9358         and if so try the options -fsource and -ftarget.
9359         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
9360         source_version, ftarget_option, target_version arguments.
9361         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
9362         (is_envjavac_oldgcj_14_14_usable): Renamed from
9363         is_envjavac_gcj_14_14_usable.
9364         (is_envjavac_oldgcj_14_13_usable): Renamed from
9365         is_envjavac_gcj_14_13_usable.
9366         (is_gcj_present): Update.
9367         (is_gcj_43, is_gcj43_usable): New functions.
9368         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
9369         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
9370         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
9371         try the options -fsource and -ftarget.
9372
9373 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
9374
9375         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
9376         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
9377         larger value.
9378
9379 2007-02-03  Jim Meyering  <jim@meyering.net>
9380
9381         Give tools a better chance to allocate space for very large buffers.
9382         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
9383
9384         Make pwd and readlink work also when run with an unreadable parent dir
9385         on systems with openat support.
9386         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
9387         provided getcwd function, even when we have openat support.
9388         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
9389
9390 2007-02-02  Bruno Haible  <bruno@clisp.org>
9391
9392         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
9393         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
9394         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
9395         portability problems if one of these functions is only used on specific
9396         platforms.
9397         Reported by Paul Eggert.
9398
9399 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
9400
9401         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
9402         is causing more trouble than it's curing.
9403         * lib/regex_internal.h (__mempcpy): Remove.
9404         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
9405         (and make the code a tad smaller to boot).
9406         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
9407
9408 2007-02-02  Jim Meyering  <jim@meyering.net>
9409
9410         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
9411         section, not in the Makefile.am: one.
9412
9413 2007-02-02  Eric Blake  <ebb9@byu.net>
9414
9415         * lib/strchrnul.c: Always include config.h first.
9416
9417         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
9418         gnulib strstr is not necessary here.
9419
9420 2007-02-02  Simon Josefsson  <simon@josefsson.org>
9421
9422         * m4/socklen.m4: Fix typo.
9423
9424 2007-02-02  Eric Blake  <ebb9@byu.net>
9425
9426         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
9427         * modules/netinet_in (Makefile.am): Likewise.
9428
9429 2007-02-01  Bruno Haible  <bruno@clisp.org>
9430
9431         * lib/string_.h (GL_LINK_WARNING): New macro.
9432         (strcasecmp, strstr, strcasestr): If provided by the system,
9433         conditionally define as a macro that leads to a warning instead of to
9434         an error.
9435         (strncasecmp): Conditionally define as a macro that leads to a warning.
9436
9437 2007-02-01  Karl Berry  <karl@gnu.org>
9438
9439         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
9440
9441 2007-02-01  Bruno Haible  <bruno@clisp.org>
9442
9443         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
9444         renamings.
9445
9446 2007-02-01  Eric Blake  <ebb9@byu.net>
9447
9448         * modules/regex (Depends-on): Revert dependence on mempcpy.
9449         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
9450         module's definition of mempcpy.
9451         Reported by Paul Eggert.
9452
9453 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
9454
9455         * lib/string_.h: If the gnulib module XYZ is not present, undefine
9456         the symbol XYZ before redefining it.  This fixes a problem with
9457         programs that don't use XYZ, when compiled on systems that define
9458         XYZ to something else.
9459
9460 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
9461
9462         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
9463         occurs when "mkdir -m foo" creates a setgid directory that is (1)
9464         writeable to group or other and (2) is intended to have a special
9465         mode bit that is set or cleared.  In such a case, the directory
9466         should be neither group- nor other-writeable until the special
9467         mode bits are right.
9468
9469 2007-01-31  Eric Blake  <ebb9@byu.net>
9470
9471         * modules/mountlist (Depends-on): Add strstr.
9472
9473         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
9474         bug.
9475         * modules/string (Makefile.am): Remove redundant replacement.
9476         * modules/regex (Depends-on): Add mempcpy.
9477
9478 2007-01-31  Bruno Haible  <bruno@clisp.org>
9479
9480         New module description field 'Link'.
9481         * gnulib-tool (func_usage): Document --extract-link-directive.
9482         (sed_extract_prog): Recognize 'Link' directive.
9483         (func_get_link_directive): New function.
9484         (func_import): Show summary of link directives.
9485         Handle --extract-link-directive option.
9486         * modules/acl (Link): New section.
9487         * modules/clock-time (Link): New section.
9488         * modules/euidaccess (Link): New section.
9489         * modules/gettext (Link): New section.
9490         * modules/iconv (Link): New section.
9491         * modules/lock (Link): New section.
9492         * modules/nanosleep (Link): New section.
9493         * modules/readline (Link): New section.
9494
9495 2007-01-27  Bruno Haible  <bruno@clisp.org>
9496
9497         Enforce the use of gnulib modules for unportable <string.h> functions.
9498         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
9499         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
9500         (gl_HEADER_STRING_H_BODY): Require it.
9501         * lib/string_.h: If the gnulib module XYZ is not present, redefine
9502         the symbol XYZ to one that gives a link error.
9503         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
9504         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
9505         * modules/mempcpy (configure.ac): Likewise.
9506         * modules/memrchr (configure.ac): Likewise.
9507         * modules/stpcpy (configure.ac): Likewise.
9508         * modules/stpncpy (configure.ac): Likewise.
9509         * modules/strcase (configure.ac): Likewise.
9510         * modules/strcasestr (configure.ac): Likewise.
9511         * modules/strchrnul (configure.ac): Likewise.
9512         * modules/strdup (configure.ac): Likewise.
9513         * modules/strndup (configure.ac): Likewise.
9514         * modules/strnlen (configure.ac): Likewise.
9515         * modules/strpbrk (configure.ac): Likewise.
9516         * modules/strsep (configure.ac): Likewise.
9517         * modules/strstr (configure.ac): Likewise.
9518         * modules/strtok_r (configure.ac): Likewise.
9519
9520 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
9521
9522         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
9523
9524 2007-01-30  Jim Meyering  <jim@meyering.net>
9525
9526         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
9527
9528 2007-01-29  Bruno Haible  <bruno@clisp.org>
9529
9530         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
9531         * lib/execute.c: Likewise.
9532         * lib/pipe.c: Likewise.
9533         * lib/printf-args.h: Likewise.
9534         * lib/printf-args.c: Likewise.
9535         * lib/printf-parse.c: Likewise.
9536         * lib/vasnprintf.c: Likewise.
9537
9538 2007-01-29  Eric Blake  <ebb9@byu.net>
9539
9540         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
9541         declaration.
9542
9543 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
9544
9545         * lib/strptime.h (strptime): Use 'restrict' for args where
9546         POSIX requires this.
9547         * lib/strptime.c (strptime): Likewise.
9548         Change license notice from LGPL to GPL, since gnulib-tool will
9549         change this as needed.
9550         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
9551         defined.
9552         Include "strptime.h" first, to check interface.
9553         Do not #undef _LIBC and _NL_CURRENT.
9554         Do not include <stdlib.h>; no longer needed.
9555         Include "time_r.h" and declare ptime_locale_status
9556         only if _LIBC is not defined.
9557         (__P): Remove unused macro.
9558         (match_string): Bring back glibc version, but use it only if _LIBC
9559         is defined.
9560         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
9561         Remove unnecessary assertion and abort() call.
9562         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
9563         * m4/strptime.m4: Fix serial number comment.
9564         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
9565         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
9566         (Depends-on): Add time_r.
9567
9568 2007-01-29  Bruno Haible  <bruno@clisp.org>
9569
9570         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9571         strptime.
9572         * modules/strptime (Depends-on): Add stdbool.
9573         * lib/strptime.h: Include <time.h> always. Add comments.
9574
9575 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
9576
9577         * modules/strptime: New file.
9578         * lib/strptime.h: New file.
9579         * lib/strptime.c: New file.
9580         * m4/strptime.m4: New file.
9581
9582 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
9583
9584         * MODULES.html.sh: New module mpsort.
9585         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
9586
9587         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
9588         a circularity problem with HP-UX ia64 reported by Bob Proulx in
9589         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
9590         All uses changed.
9591         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
9592         All uses changed.
9593         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
9594         to _Restrict_.
9595         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
9596         the parameter matches the prototype.
9597
9598 2007-01-28  Jim Meyering  <jim@meyering.net>
9599
9600         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
9601         sys/time.h here, reverting that part of the previous patch:
9602         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
9603
9604 2007-01-28  Bruno Haible  <bruno@clisp.org>
9605
9606         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
9607         value of $(SYS_TIME_H).
9608         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
9609         remove it conditionally, too. [added by Jim Meyering]
9610         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
9611         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
9612         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
9613         GETTIMEOFDAY_REPLACEMENT to 1.
9614
9615 2007-01-28  Bruno Haible  <bruno@clisp.org>
9616
9617         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
9618         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
9619         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
9620         Set UNISTD_H instead of UNISTD_H2.
9621         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
9622
9623 2007-01-28  Bruno Haible  <bruno@clisp.org>
9624
9625         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
9626         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
9627
9628 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9629
9630         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
9631         (func_create_testdir): Ensure C locale for `grep' and `tr'
9632         character ranges.
9633         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
9634         ACLOCAL_AMFLAGS parsing state machine.
9635
9636 2007-01-27  Bruno Haible  <bruno@clisp.org>
9637
9638         * modules/unistr/base: Update.
9639
9640 2007-01-27  Bruno Haible  <bruno@clisp.org>
9641
9642         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
9643         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
9644         * modules/unistr/u32-mbtouc-unsafe: Renamed from
9645         modules/unistr/u32-mbtouc.
9646         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
9647         * lib/unistr.h: Update.
9648         * lib/linebreak.c: Update.
9649         * modules/unistr/u32-mbtouc: Renamed from
9650         modules/unistr/u32-mbtouc-safe.
9651         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
9652         * lib/unistr.h: Update.
9653         * lib/unistr/u32-to-u8.c: Update.
9654         * lib/unistr/u32-to-u16.c: Update.
9655
9656 2007-01-27  Bruno Haible  <bruno@clisp.org>
9657
9658         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
9659         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
9660         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
9661         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
9662         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
9663         * modules/unistr/u16-mbtouc-unsafe: Renamed from
9664         modules/unistr/u16-mbtouc.
9665         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
9666         * lib/unistr.h: Update.
9667         * lib/linebreak.c: Update.
9668         * modules/linebreak: Update.
9669         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
9670         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
9671         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
9672         * modules/unistr/u16-mbtouc: Renamed from
9673         modules/unistr/u16-mbtouc-safe.
9674         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
9675         * lib/unistr.h: Update.
9676         * lib/unistr/u16-to-u8.c: Update.
9677         * modules/unistr/u16-to-u8: Update.
9678         * lib/unistr/u16-to-u32.c: Update.
9679         * modules/unistr/u16-to-u32: Update.
9680
9681 2007-01-27  Bruno Haible  <bruno@clisp.org>
9682
9683         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
9684         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
9685         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
9686         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
9687         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
9688         * modules/unistr/u8-mbtouc-unsafe: Renamed from
9689         modules/unistr/u8-mbtouc.
9690         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
9691         * lib/unistr.h: Update.
9692         * lib/striconveh.c: Update.
9693         * modules/striconveh: Update.
9694         * lib/linebreak.c: Update.
9695         * modules/linebreak: Update.
9696         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
9697         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
9698         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
9699         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
9700         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
9701         * lib/unistr.h: Update.
9702         * lib/striconveh.c: Update.
9703         * modules/striconveh: Update.
9704         * lib/unistr/u8-to-u16.c: Update.
9705         * modules/unistr/u8-to-u16: Update.
9706         * lib/unistr/u8-to-u32.c: Update.
9707         * modules/unistr/u8-to-u32: Update.
9708
9709 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9710
9711         Sync from Libtool.
9712         * lib/argz.c: Do not include strings.h nor memory.h, include
9713         string.h unconditionally.  Patch by Simon Josefsson.
9714
9715 2007-01-27  Bruno Haible  <bruno@clisp.org>
9716
9717         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
9718         from gl_HEADER_STRING_H_BODY.
9719         (gl_HEADER_STRING_H_BODY): Require it.
9720         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
9721         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
9722         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
9723         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
9724         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
9725         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
9726         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
9727         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
9728         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
9729         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
9730         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
9731         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
9732         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
9733         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
9734         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
9735
9736 2007-01-27  Bruno Haible  <bruno@clisp.org>
9737
9738         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
9739         check_PROGRAMS into noinst_PROGRAMS.
9740         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
9741         check_PROGRAMS in this case.
9742         (func_import): Set for_test to false.
9743         (func_create_testdir): Set for_test to true.
9744
9745 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9746             Bruno Haible  <bruno@clisp.org>
9747
9748         * modules/strcasestr (Files): Remove lib/strcasestr.h.
9749         (Depends-on): Add string.
9750         (Includes): Use <string.h> instead of strcasestr.h.
9751         * modules/string (Makefile.am): Also substitute the value of
9752         REPLACE_STRCASESTR.
9753         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
9754         assume strcasestr is declared in <string.h> not <strings.h>. Also
9755         set REPLACE_STRCASESTR.
9756         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
9757         REPLACE_STRCASESTR.
9758         * lib/strcasestr.h: Remove file.
9759         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
9760         * lib/string_.h (strcasestr): New declaration.
9761
9762 2007-01-27  Bruno Haible  <bruno@clisp.org>
9763
9764         * lib/string_.h: Use 'extern'.
9765
9766 2007-01-27  Jim Meyering  <jim@meyering.net>
9767
9768         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
9769         of set-but-not-used local, "q".
9770
9771         * lib/mempcpy.c: Include <config.h> before <string.h>.
9772         This fixes a compilation error on HP-UX, due to the system's
9773         "restrict"-using mempcpy prototype.
9774
9775 2007-01-26  Bruno Haible  <bruno@clisp.org>
9776
9777         Small optimization.
9778         * lib/javacomp.c: Include c-strstr.h.
9779          (is_envjavac_gcj): Use c_strstr instead of strstr.
9780         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
9781
9782 2007-01-26  Bruno Haible  <bruno@clisp.org>
9783
9784         * MODULES.html.sh (Unicode string functions): Add the new modules.
9785
9786         * modules/uniconv/u32-strconv-to-locale: New file.
9787         * lib/uniconv/u32-strconv-to-locale.c: New file.
9788
9789         * modules/uniconv/u16-strconv-to-locale: New file.
9790         * lib/uniconv/u16-strconv-to-locale.c: New file.
9791
9792         * modules/uniconv/u8-strconv-to-locale: New file.
9793         * lib/uniconv/u8-strconv-to-locale.c: New file.
9794
9795         * modules/uniconv/u32-strconv-from-locale: New file.
9796         * lib/uniconv/u32-strconv-from-locale.c: New file.
9797
9798         * modules/uniconv/u16-strconv-from-locale: New file.
9799         * lib/uniconv/u16-strconv-from-locale.c: New file.
9800
9801         * modules/uniconv/u8-strconv-from-locale: New file.
9802         * lib/uniconv/u8-strconv-from-locale.c: New file.
9803
9804         * modules/uniconv/u32-strconv-to-enc: New file.
9805         * lib/uniconv/u32-strconv-to-enc.c: New file.
9806         * modules/uniconv/u32-strconv-to-enc-tests: New file.
9807         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
9808
9809         * modules/uniconv/u16-strconv-to-enc: New file.
9810         * lib/uniconv/u16-strconv-to-enc.c: New file.
9811         * lib/uniconv/u-strconv-to-enc.h: New file.
9812         * modules/uniconv/u16-strconv-to-enc-tests: New file.
9813         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
9814
9815         * modules/uniconv/u8-strconv-to-enc: New file.
9816         * lib/uniconv/u8-strconv-to-enc.c: New file.
9817         * modules/uniconv/u8-strconv-to-enc-tests: New file.
9818         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
9819
9820         * modules/uniconv/u32-strconv-from-enc: New file.
9821         * lib/uniconv/u32-strconv-from-enc.c: New file.
9822         * modules/uniconv/u32-strconv-from-enc-tests: New file.
9823         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
9824
9825         * modules/uniconv/u16-strconv-from-enc: New file.
9826         * lib/uniconv/u16-strconv-from-enc.c: New file.
9827         * modules/uniconv/u16-strconv-from-enc-tests: New file.
9828         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
9829
9830         * modules/uniconv/u8-strconv-from-enc: New file.
9831         * lib/uniconv/u8-strconv-from-enc.c: New file.
9832         * lib/uniconv/u-strconv-from-enc.h: New file.
9833         * modules/uniconv/u8-strconv-from-enc-tests: New file.
9834         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
9835
9836         * modules/uniconv/u32-conv-from-enc: New file.
9837         * lib/uniconv/u32-conv-from-enc.c: New file.
9838         * modules/uniconv/u32-conv-from-enc-tests: New file.
9839         * tests/uniconv/test-u32-conv-from-enc.c: New file.
9840
9841         * modules/uniconv/u16-conv-from-enc: New file.
9842         * lib/uniconv/u16-conv-from-enc.c: New file.
9843         * lib/uniconv/u-conv-from-enc.h: New file.
9844         * modules/uniconv/u16-conv-from-enc-tests: New file.
9845         * tests/uniconv/test-u16-conv-from-enc.c: New file.
9846
9847         * modules/uniconv/u8-conv-from-enc: New file.
9848         * lib/uniconv/u8-conv-from-enc.c: New file.
9849         * modules/uniconv/u8-conv-from-enc-tests: New file.
9850         * tests/uniconv/test-u8-conv-from-enc.c: New file.
9851
9852         * modules/uniconv/base: New file.
9853         * lib/uniconv.h: New file.
9854
9855 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9856
9857         * doc/gnulib-tool.texi (Initial import): Update to match current
9858         behavior with strdup module.
9859         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
9860         * lib/memmem.h: Remove; all uses removed.  This is now done
9861         by <string.h>.
9862         * lib/mempcpy.h: Likewise.
9863         * lib/memrchr.h: Likewise.
9864         * lib/stpcpy.h: Likewise.
9865         * lib/stpncpy.h: Likewise.
9866         * lib/strcase.h: Likewise.
9867         * lib/strchrnul.h: Likewise.
9868         * lib/strdup.h: Likewise.
9869         * lib/strndup.h: Likewise.
9870         * lib/strnlen.h: Likewise.
9871         * lib/strpbrk.h: Likewise.
9872         * lib/strsep.h: Likewise.
9873         * lib/strstr.h: Likewise.
9874         * lib/strtok_r.h: Likewise.
9875         * lib/string_.h: New file.
9876         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
9877         Rely on <string.h> instead.
9878         * lib/canon-host.c: Likewise.
9879         * lib/chdir-long.c: Likewise.
9880         * lib/concatpath.c: Likewise.
9881         * lib/exclude.c: Likewise.
9882         * lib/fchdir.c: Likewise.
9883         * lib/getaddrinfo.c: Likewise.
9884         * lib/getcwd.c: Likewise.
9885         * lib/getsubopt.c: Likewise.
9886         * lib/glob.c: Likewise.
9887         * lib/hard-locale.c: Likewise.
9888         * lib/iconvme.c: Likewise.
9889         * lib/javacomp.c: Likewise.
9890         * lib/mempcpy.c: Likewise.
9891         * lib/memrchr.c: Likewise.
9892         * lib/regex_internal.h: Likewise.
9893         * lib/stpncpy.c: Likewise.
9894         * lib/strcasecmp.c: Likewise.
9895         * lib/strchrnul.c: Likewise.
9896         * lib/strdup.c: Likewise.
9897         * lib/striconv.c: Likewise.
9898         * lib/striconveh.c: Likewise.
9899         * lib/striconveha.c: Likewise.
9900         * lib/strncasecmp.c: Likewise.
9901         * lib/strndup.c: Likewise.
9902         * lib/strnlen.c: Likewise.
9903         * lib/strsep.c: Likewise.
9904         * lib/strstr.c: Likewise.
9905         * lib/strtok_r.c: Likewise.
9906         * lib/userspec.c: Likewise.
9907         * lib/w32spawn.h: Likewise.
9908         * lib/xstrndup.c: Likewise.
9909         * lib/mountlist.c (strstr): Remove decl.
9910         * m4/string_h.m4: New file.
9911         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
9912         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
9913         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
9914         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
9915         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
9916         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
9917         Set REPLACE_STRCASECMP if necessary.
9918         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
9919         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
9920         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
9921         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
9922         HAVE_DECL_STRDUP if necessary.
9923         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
9924         since gl_FUNC_STRNDUP does that now.
9925         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
9926         Check for decl here...
9927         (gl_PREREQ_STRNLEN): ... not here.
9928         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
9929         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
9930         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
9931         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
9932         necessary.
9933         * modules/string: New file.
9934         * modules/memmem (Files): Remove special-purpose include file.
9935         (Depends-on): Add string.
9936         (Include): Include <string.h>, not the removed file.
9937         * modules/mempcpy: Likewise.
9938         * modules/memrchr: Likewise.
9939         * modules/stpcpy: Likewise.
9940         * modules/stpncpy: Likewise.
9941         * modules/strcase: Likewise.
9942         * modules/strchrnul: Likewise.
9943         * modules/strdup: Likewise.
9944         * modules/strndup: Likewise.
9945         * modules/strnlen: Likewise.
9946         * modules/strpbrk: Likewise.
9947         * modules/strsep: Likewise.
9948         * modules/strstr: Likewise.
9949         * modules/strtok_r: Likewise.
9950         * tests/test-dirname.c: Don't include "strdup.h", since
9951         <string.h> now suffices.
9952         * tests/test-memmem.c: Don't include "memmem.h", since
9953         <string.h> now suffices.
9954
9955 2007-01-25  Bruno Haible  <bruno@clisp.org>
9956
9957         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
9958         *resultp is 0.
9959
9960         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
9961         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
9962         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
9963         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
9964
9965         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
9966         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
9967         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
9968         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
9969         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
9970         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
9971
9972 2007-01-24  Bruno Haible  <bruno@clisp.org>
9973
9974         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
9975         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
9976         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
9977         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
9978         gl_FUNC_FTS_CORE.
9979         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
9980         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
9981         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
9982         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
9983         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
9984         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
9985         gl_FUNC_FCHOWNAT.
9986         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
9987         gl_FUNC_STRFTIME.
9988         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
9989         Reported by Ralf Wildenhues.
9990
9991 2007-01-24  Bruno Haible  <bruno@clisp.org>
9992
9993         Drop AC_REQUIRE calls that are redundant with the module dependencies.
9994         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
9995         gl_GETADDRINFO.
9996         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
9997         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
9998         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
9999
10000 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
10001
10002         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
10003         Don't use 'exit'; just return from 'main'.
10004         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
10005
10006         * lib/fnmatch_.h: Readjust white space and comments to match
10007         glibc, to avoid spurious diffs.
10008
10009 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10010
10011         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
10012         2004-12-01 change by Jakub Jelinek, since this code won't compile
10013         if !LIBC.  Problem reported by Bob Proulx.
10014
10015 2007-01-23  Bruno Haible  <bruno@clisp.org>
10016
10017         * lib/striconveh.c: Include c-strcaseeq.h.
10018         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
10019         * modules/striconveh (Depends-on): Add c-strcaseeq.
10020
10021 2007-01-23  Bruno Haible  <bruno@clisp.org>
10022
10023         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
10024
10025         * modules/c-strcaseeq: New file.
10026         * lib/c-strcaseeq.h: New file.
10027
10028         * modules/streq: New file.
10029         * lib/streq.h: New file.
10030
10031 2007-01-23  Bruno Haible  <bruno@clisp.org>
10032
10033         * modules/striconveha-tests: New file.
10034         * tests/test-striconveha.c: New file.
10035
10036         * lib/striconveha.h: Include <stdbool.h>.
10037         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
10038         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
10039         (mem_iconveha_notranslit): Renamed from mem_iconveha.
10040         (mem_iconveha): New function.
10041         (str_iconveha_notranslit): Renamed from str_iconveha.
10042         (str_iconveha): New function.
10043         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
10044         c-strcase.
10045
10046 2007-01-23  Bruno Haible  <bruno@clisp.org>
10047
10048         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
10049         encodings without forgiving before trying any encoding with handler.
10050         (str_iconveha): Try all encodings without forgiving before trying any
10051         encoding with handler.
10052
10053 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
10054
10055         Import the following changes from libc.
10056
10057         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
10058
10059         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
10060
10061         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
10062
10063         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
10064         normal_bracket label.
10065
10066         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
10067
10068         [BZ #361]
10069         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
10070         to normal_bracket after fetching the next character.
10071
10072 2007-01-22  Bruno Haible  <bruno@clisp.org>
10073
10074         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
10075         argument.
10076         * lib/striconveh.c (iconv_carefully_1): New function.
10077         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
10078         argument.
10079         (str_cd_iconveh): Update.
10080         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
10081         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
10082         * tests/test-striconveh.c (MAGIC): New macro.
10083         (new_offsets): New function.
10084         (main): Test call with and without offsets.
10085
10086 2007-01-22  Bruno Haible  <bruno@clisp.org>
10087
10088         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
10089         * modules/sys_select (Makefile.am): Likewise.
10090         * modules/sys_socket (Makefile.am): Likewise.
10091         * modules/sys_time (Makefile.am): Likewise.
10092
10093 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
10094
10095         * modules/gettimeofday (License): Change from GPL to LGPL, since
10096         gettimeofday is a library function.
10097
10098 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10099
10100         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
10101
10102 2007-01-21  Bruno Haible  <bruno@clisp.org>
10103
10104         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
10105
10106 2007-01-21  Bruno Haible  <bruno@clisp.org>
10107
10108         * modules/striconveha: New file.
10109         * lib/striconveha.h: New file.
10110         * lib/striconveha.c: New file.
10111         * MODULES.html.sh (Internationalization functions): Add striconveha.
10112         * lib/striconv.c (str_iconv): Optimize the case of an empty input
10113         string.
10114         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
10115
10116 2007-01-21  Bruno Haible  <bruno@clisp.org>
10117
10118         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
10119         * lib/striconveh.c (str_iconveh): Likewise.
10120
10121 2007-01-21  Bruno Haible  <bruno@clisp.org>
10122
10123         * lib/striconveh.h (mem_iconveh): New declaration.
10124         * lib/striconveh.c (mem_iconveh): New function.
10125         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
10126
10127 2007-01-21  Bruno Haible  <bruno@clisp.org>
10128
10129         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
10130
10131         * lib/striconveh.h (mem_cd_iconveh): Change specification.
10132         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
10133         original result buffer.
10134         (str_cd_iconveh): Update.
10135         * tests/test-striconveh.c (main): Update.
10136
10137         * lib/striconv.h (mem_cd_iconv): Change specification.
10138         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
10139         result buffer.
10140         (str_cd_iconv): Update.
10141         * tests/test-striconv.c (main): Update.
10142
10143 2007-01-21  Bruno Haible  <bruno@clisp.org>
10144
10145         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
10146
10147 2007-01-20  Jim Meyering  <jim@meyering.net>
10148
10149         * lib/userspec.c (parse_with_separator): If a user or group string
10150         starts with "+", skip the corresponding name-to-ID look-up, since
10151         such a look-up must fail: user and group names may not include "+".
10152
10153 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
10154
10155         * lib/poll.c: Include sys/time.h and time.h unconditionally,
10156         since we now assume the sys_time module.
10157         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
10158         check for sys/time.h; no longer needed.
10159         * modules/poll (Depends-on): Depend on sys_time.
10160
10161 2007-01-18  Bruno Haible  <bruno@clisp.org>
10162
10163         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
10164         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
10165
10166         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
10167         gettimeofday.
10168
10169         * tests/test-gettimeofday.c: Include <time.h>.
10170         (dummy): Remove variable.
10171
10172         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
10173         gl_HEADER_SYS_TIME_H.
10174         (gl_HEADER_SYS_TIME_H): New macro.
10175
10176         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
10177         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10178         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
10179         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
10180         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10181         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
10182         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
10183         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10184         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
10185         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
10186         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10187
10188         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
10189         last change; it caused a compilation error when cross-compiling to
10190         Cygwin.
10191
10192 2007-01-18  Jim Meyering  <jim@meyering.net>
10193
10194         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
10195         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
10196         than the race-prone "test -d sys || mkdir sys".
10197         (configure.ac): Use AC_PROG_MKDIR_P.
10198         * modules/sys_select: Likewise.
10199         * modules/sys_socket: Likewise.
10200         * modules/sys_time: Likewise.
10201
10202 2007-01-18  Eric Blake  <ebb9@byu.net>
10203
10204         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
10205         replace gettimeofday.
10206         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
10207         name, to avoid infinite recursion.
10208
10209 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
10210
10211         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
10212         module sys_time.
10213         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
10214         assume timespec.h defines struct timeval.
10215         * lib/settime.c: Likewise.
10216         * lib/utimens.c: Likewise.
10217         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
10218         since we now assume the gettimeofday module.
10219         * lib/tempname.c (__gen_tempname): Likewise.
10220         * lib/gettimeofday.h: Remove.
10221         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
10222         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
10223         Include <time.h>, for 'time()'.
10224         (localtime_buffer_addr): Also use this workaround if
10225         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
10226         to simplify the uses.  All uses changed.
10227         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
10228         that #undef is inside {}, and 'const' follows type name consistently.
10229         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
10230         (gettimeofday): Do not use the maximum possible value for
10231         tv->tv_usec, since that might break usages other than ls.c.
10232         Instead, we'll leave ls.c alone.  This undoes today's patch
10233         by Bruno.  Add a compile-time warning for 1s-clock resolution;
10234         we've never observed the problem but might as well keep the
10235         canary.
10236         * lib/nanosleep.c: Include timespec.h first, for interface check.
10237         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
10238         now assume the sys_time module.
10239         * lib/tempname.c: Likewise.
10240         * lib/timespec.h: Likewise.
10241         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
10242         needed.
10243         * lib/strftime.c: Likewise.
10244         * lib/timespec.h: Likewise.
10245         * lib/posixtm.c: Include posixtm.h first, for interface check.
10246         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
10247         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
10248         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
10249         * lib/sys_time_.h: New file.
10250         * lib/timespec.h (struct timespec): Use long int, not long.
10251         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
10252         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
10253         Remove obsolescent call to AC_HEADER_TIME.
10254         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
10255         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
10256         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
10257         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
10258         Likewise.
10259         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
10260         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
10261         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
10262         into the sys_time module.  Check for gettimeofday just once.
10263         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
10264         for gettimeofday signature to just check the signature.  Merely
10265         compile it, since linking doesn't test signature.  Improve test for
10266         whether gettimeofday.o is actually needed.
10267         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
10268         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
10269         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
10270         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10271         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
10272         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
10273         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
10274         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
10275         than worrying about sys/time.h.
10276         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
10277         Don't bother worrying about TIME_WITH_SYS_TIME.
10278         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
10279         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
10280         * m4/sys_time_h.m4: New file.
10281         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
10282         Don't include sys/time.h.  Return from main rather than exiting.
10283         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
10284         all uses changed.
10285         * modules/gethrxtime (Depends-on): Add sys_time.
10286         * modules/gettime (Depends-on): Likewise.
10287         * modules/gettimeofday (Depends-on): Likewise.
10288         * modules/nanosleep (Depends-on): Likewise.
10289         * modules/settime (Depends-on): Likewise.
10290         * modules/tempname (Depends-on): Likewise.
10291         * modules/utimens (Depends-on): Likewise.
10292         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
10293         (Include:) Change back to <sys/time.h>.
10294         (Maintainer:) Add self.
10295         * modules/sys_time: New file.
10296         * modules/tempname (Depends-on): Add gettimeofday.
10297         * tests/test-gettimeofday.c: Include <sys/time.h>
10298         rather than gettimeofday.h.
10299
10300 2007-01-17  Bruno Haible  <bruno@clisp.org>
10301
10302         * gnulib-tool (func_get_license): Revert last patch. Instead, let
10303         the license default to GPL.
10304         (func_create_testdir): Don't complain if a module is LGPL and its
10305         tests module depends on GPLed modules.
10306
10307 2007-01-17  Bruno Haible  <bruno@clisp.org>
10308
10309         * lib/gettimeofday.c (gettimeofday): Add code for the case
10310         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
10311         maximum possible value for tv->tv_usec, rather than the minimum one.
10312
10313 2005-10-08  Martin Lambers  <marlam@marlam.de>
10314 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
10315 2007-01-16  Bruno Haible  <bruno@clisp.org>
10316
10317         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
10318         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
10319         gl_FUNC_GETTIMEOFDAY.
10320         (Include): Add gettimeofday.h.
10321         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
10322         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
10323         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
10324         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
10325         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
10326         * lib/gettimeofday.h: New file.
10327         * lib/gettimeofday.c: Include <sys/timeb.h>.
10328         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
10329         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
10330         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
10331         fall back on time().
10332
10333         * tests/test-gettimeofday.c: New file.
10334         * modules/gettimeofday-tests: New file.
10335
10336 2007-01-16  Eric Blake  <ebb9@byu.net>
10337
10338         * modules/fnmatch (Depends-on): Depend on wchar.
10339         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
10340         * m4/fnmatch.m4: Likewise.
10341         * modules/mbchar (Makefile.am): Assume <wchar.h>.
10342         * m4/mbchar.m4: Likewise.
10343         * modules/mbswidth (Depends-on): Depend on wchar.
10344         * lib/mbswidth.c: Assume <wchar.h>.
10345         * m4/mbswidth.m4: Likewise.
10346         * modules/quotearg (Depends-on): Depend on wchar.
10347         * lib/quotearg.c: Assume <wchar.h>.
10348         * m4/quotearg.m4: Likewise.
10349         * modules/regex (Depends-on): Depend on wchar.
10350         * lib/regex_internal.h: Assume <wchar.h>.
10351         * m4/regex.m4: Likewise.
10352         * modules/stdint (Depends-on): Depend on wchar.
10353         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
10354         * m4/stdint.m4: Likewise.
10355         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
10356         * modules/strftime (Depends-on): Depend on wchar.
10357         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
10358         * modules/strtol (Depends-on): Depend on wchar.
10359         * lib/strtol.c: Assume <wchar.h>.
10360         * modules/wcwidth (Depends-on): Depend on wchar.
10361         * lib/wcwidth.h: Assume <wchar.h>.
10362         * m4/wcwidth.m4: Likewise.
10363
10364 2007-01-16  Bruno Haible  <bruno@clisp.org>
10365
10366         * modules/csharpexec-script: New, created from...
10367         * modules/csharpexec: ... this.
10368
10369 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
10370
10371         * modules/javaexec-script: New, created from...
10372         * modules/javaexec: ... this.
10373
10374 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10375
10376         * modules/poll (Dependencies): Add sys_select.
10377
10378 2007-01-15  Jim Meyering  <jim@meyering.net>
10379
10380         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
10381         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
10382         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
10383         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
10384
10385 2007-01-15  Bruno Haible  <bruno@clisp.org>
10386
10387         * modules/striconveh: New file.
10388         * lib/striconveh.h: New file.
10389         * lib/striconveh.c: New file.
10390         * MODULES.html.sh (Internationalization functions): Add striconveh.
10391
10392         * modules/striconveh-tests: New file.
10393         * tests/test-striconveh.c: New file.
10394
10395 2007-01-15  Bruno Haible  <bruno@clisp.org>
10396
10397         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
10398         not from GNU libiconv or GNU libc.
10399
10400 2007-01-15  Bruno Haible  <bruno@clisp.org>
10401
10402         * doc/gnulib-intro.texi (Copyright): Explain the different license
10403         terms for module descriptions, autoconf macros, tests, documentation.
10404
10405 2007-01-14  Bruno Haible  <bruno@clisp.org>
10406
10407         * modules/striconv-tests: New file.
10408         * tests/test-striconv.c: New file.
10409
10410 2007-01-14  Bruno Haible  <bruno@clisp.org>
10411
10412         * modules/iconv-tests: New file.
10413         * tests/test-iconv.c: New file.
10414
10415 2007-01-14  Bruno Haible  <bruno@clisp.org>
10416
10417         * gnulib-tool (func_get_license): For test modules, use the license of
10418         the main module.
10419
10420 2007-01-14  Bruno Haible  <bruno@clisp.org>
10421
10422         * modules/iconv (Include): Clarify that <iconv.h> can only be included
10423         if iconv is found to exist.
10424
10425 2007-01-14  Bruno Haible  <bruno@clisp.org>
10426
10427         * modules/c-ctype-tests: New file.
10428         * tests/test-c-ctype.c: New file.
10429
10430 2007-01-14  Bruno Haible  <bruno@clisp.org>
10431
10432         * modules/binary-io-tests: New file.
10433         * tests/test-binary-io.sh: New file.
10434         * tests/test-binary-io.c: New file.
10435
10436 2007-01-14  Bruno Haible  <bruno@clisp.org>
10437
10438         * modules/array-oset-tests: New file.
10439         * tests/test-array_oset.c: New file.
10440
10441 2007-01-14  Bruno Haible  <bruno@clisp.org>
10442
10443         * modules/array-list-tests: New file.
10444         * tests/test-array_list.c: New file.
10445
10446 2007-01-14  Bruno Haible  <bruno@clisp.org>
10447
10448         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
10449         and make.
10450         Reported by Simon Josefsson in
10451         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
10452
10453 2007-01-14  Bruno Haible  <bruno@clisp.org>
10454
10455         * modules/allocsa-tests: New file.
10456         * tests/test-allocsa.c: New file.
10457
10458 2007-01-14  Bruno Haible  <bruno@clisp.org>
10459
10460         * modules/fchdir (Depends-on): Add absolute-header.
10461         * modules/unistd (Depends-on): Likewise.
10462
10463 2006-12-30  Bruno Haible  <bruno@clisp.org>
10464
10465         * modules/fchdir: New file.
10466         * modules/unistd (Files): Add lib/unistd_.h.
10467         (Makefile.am): Generate unistd.h from unistd_.h.
10468         * lib/fchdir.c: New file.
10469         * lib/dirent_.h: New file.
10470         * lib/unistd_.h: New file.
10471         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
10472         * m4/fchdir.m4: New file.
10473         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
10474         (gl_HEADER_UNISTD): Invoke it.
10475         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
10476         function.
10477         * lib/backupfile.c (opendir, closedir): Undefine.
10478         * lib/chown.c (open, close): Undefine.
10479         * lib/clean-temp.c (open, close): Undefine.
10480         * lib/copy-file.c (open, close): Undefine.
10481         * lib/execute.c (open, close): Undefine.
10482         * lib/fsusage.c (open, close): Undefine.
10483         * lib/gc-gnulib.c (open, close): Undefine.
10484         * lib/getcwd.c (opendir, closedir): Undefine.
10485         * lib/glob.c (opendir, closedir): Undefine.
10486         * lib/javacomp.c (open, close): Undefine.
10487         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
10488         * lib/openat-proc.c (open, close): Undefine.
10489         * lib/pagealign_alloc.c (open, close): Undefine.
10490         * lib/pipe.c (open, close): Undefine.
10491         * lib/progreloc.c (open, close): Undefine.
10492         * lib/savedir.c (opendir, closedir): Undefine.
10493         * lib/utime.c (open, close): Undefine.
10494         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
10495
10496 2007-01-10  Bruno Haible  <bruno@clisp.org>
10497
10498         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
10499
10500 2007-01-12  Eric Blake  <ebb9@byu.net>
10501
10502         Provide a robust <wchar.h>.  Further simplifications are now
10503         possible in other modules, but not included here.
10504         * modules/wchar: New module.
10505         * m4/wchar.m4: New file.
10506         * lib/wchar_.h: Likewise.
10507         * modules/mbchar (Depends-on): Depend on wchar, as the first use
10508         of the new module.
10509         * MODULES.html.sh (Extended multibyte and wide character utilities):
10510         New section.
10511
10512 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10513
10514         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
10515         to a reasonable default for memory allocation.
10516         (xreadlink): Don't allocate a huge buffer, to work around a buggy
10517         file system that reports garbage st_size values for symlinks.
10518         Problem reported by Liyang Hu.
10519
10520 2007-01-11  Simon Josefsson  <simon@josefsson.org>
10521
10522         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
10523         Emacs .#* auto-save files).
10524
10525 2007-01-11  Bruno Haible  <bruno@clisp.org>
10526
10527         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
10528         directory.
10529
10530 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
10531
10532         Use @...@ consistently in lib/wctype_.h.
10533         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
10534         on it being set to 1 or 0.
10535         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
10536         go back to AC_SUBSTing it.
10537         * modules/wctype (Makefile.am): Undo previous change.
10538
10539 2007-01-10  Eric Blake  <ebb9@byu.net>
10540
10541         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
10542         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
10543         * modules/wctype (Makefile.am): Likewise.
10544         Reported by Chris McGuire.
10545
10546 2007-01-10  Jim Meyering  <jim@meyering.net>
10547
10548         fts.c: a small readability/maintainability improvement
10549         * lib/fts.c (fts_read): Make this code slightly more readable and
10550         maintainable by hoisting the "sp->fts_cur = p" assignments to
10551         immediately follow the statements that set P.  Derived from
10552         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
10553
10554 2007-01-10  Eric Blake  <ebb9@byu.net>
10555
10556         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
10557         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
10558         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10559         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
10560         Reported by Chris McGuire.
10561
10562 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10563
10564         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
10565         in sed script.
10566
10567 2007-01-09  Bruno Haible  <bruno@clisp.org>
10568
10569         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
10570         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
10571         variables.
10572         (func_module): Use them.
10573
10574 2007-01-09  Bruno Haible  <bruno@clisp.org>
10575
10576         * modules/unistr/base: New file.
10577         * lib/unistr.h: New file.
10578
10579         * modules/unistr/u8-to-u16: New file.
10580         * lib/unistr/u8-to-u16.c: New file.
10581
10582         * modules/unistr/u8-to-u32: New file.
10583         * lib/unistr/u8-to-u32.c: New file.
10584
10585         * modules/unistr/u16-to-u8: New file.
10586         * lib/unistr/u16-to-u8.c: New file.
10587
10588         * modules/unistr/u16-to-u32: New file.
10589         * lib/unistr/u16-to-u32.c: New file.
10590
10591         * modules/unistr/u32-to-u8: New file.
10592         * lib/unistr/u32-to-u8.c: New file.
10593
10594         * modules/unistr/u32-to-u16: New file.
10595         * lib/unistr/u32-to-u16.c: New file.
10596
10597         * modules/unistr/u8-check: New file.
10598         * modules/unistr/u16-check: New file.
10599         * modules/unistr/u32-check: New file.
10600         * lib/unistr/u8-check.c: New file.
10601         * lib/unistr/u16-check.c: New file.
10602         * lib/unistr/u32-check.c: New file.
10603
10604         * modules/unistr/u8-chr: New file.
10605         * modules/unistr/u16-chr: New file.
10606         * modules/unistr/u32-chr: New file.
10607         * lib/unistr/u8-chr.c: New file.
10608         * lib/unistr/u16-chr.c: New file.
10609         * lib/unistr/u32-chr.c: New file.
10610
10611         * modules/unistr/u8-cmp: New file.
10612         * modules/unistr/u16-cmp: New file.
10613         * modules/unistr/u32-cmp: New file.
10614         * lib/unistr/u8-cmp.c: New file.
10615         * lib/unistr/u16-cmp.c: New file.
10616         * lib/unistr/u32-cmp.c: New file.
10617
10618         * modules/unistr/u8-cpy: New file.
10619         * modules/unistr/u16-cpy: New file.
10620         * modules/unistr/u32-cpy: New file.
10621         * lib/unistr/u8-cpy.c: New file.
10622         * lib/unistr/u16-cpy.c: New file.
10623         * lib/unistr/u32-cpy.c: New file.
10624         * lib/unistr/u-cpy.h: New file.
10625
10626         * modules/unistr/u8-cpy-alloc: New file.
10627         * modules/unistr/u16-cpy-alloc: New file.
10628         * modules/unistr/u32-cpy-alloc: New file.
10629         * lib/unistr/u8-cpy-alloc.c: New file.
10630         * lib/unistr/u16-cpy-alloc.c: New file.
10631         * lib/unistr/u32-cpy-alloc.c: New file.
10632         * lib/unistr/u-cpy-alloc.h: New file.
10633
10634         * modules/unistr/u8-endswith: New file.
10635         * modules/unistr/u16-endswith: New file.
10636         * modules/unistr/u32-endswith: New file.
10637         * lib/unistr/u8-endswith.c: New file.
10638         * lib/unistr/u16-endswith.c: New file.
10639         * lib/unistr/u32-endswith.c: New file.
10640         * lib/unistr/u-endswith.h: New file.
10641
10642         * modules/unistr/u8-mblen: New file.
10643         * modules/unistr/u16-mblen: New file.
10644         * modules/unistr/u32-mblen: New file.
10645         * lib/unistr/u8-mblen.c: New file.
10646         * lib/unistr/u16-mblen.c: New file.
10647         * lib/unistr/u32-mblen.c: New file.
10648
10649         * modules/unistr/u8-mbtouc: New file.
10650         * modules/unistr/u16-mbtouc: New file.
10651         * modules/unistr/u32-mbtouc: New file.
10652         * lib/unistr/u8-mbtouc.c: New file.
10653         * lib/unistr/u16-mbtouc.c: New file.
10654         * lib/unistr/u32-mbtouc.c: New file.
10655
10656         * modules/unistr/u8-mbtouc-safe: New file.
10657         * modules/unistr/u16-mbtouc-safe: New file.
10658         * modules/unistr/u32-mbtouc-safe: New file.
10659         * lib/unistr/u8-mbtouc-safe.c: New file.
10660         * lib/unistr/u16-mbtouc-safe.c: New file.
10661         * lib/unistr/u32-mbtouc-safe.c: New file.
10662
10663         * modules/unistr/u8-move: New file.
10664         * modules/unistr/u16-move: New file.
10665         * modules/unistr/u32-move: New file.
10666         * lib/unistr/u8-move.c: New file.
10667         * lib/unistr/u16-move.c: New file.
10668         * lib/unistr/u32-move.c: New file.
10669         * lib/unistr/u-move.h: New file.
10670
10671         * modules/unistr/u8-next: New file.
10672         * modules/unistr/u16-next: New file.
10673         * modules/unistr/u32-next: New file.
10674         * lib/unistr/u8-next.c: New file.
10675         * lib/unistr/u16-next.c: New file.
10676         * lib/unistr/u32-next.c: New file.
10677
10678         * modules/unistr/u8-prev: New file.
10679         * modules/unistr/u16-prev: New file.
10680         * modules/unistr/u32-prev: New file.
10681         * lib/unistr/u8-prev.c: New file.
10682         * lib/unistr/u16-prev.c: New file.
10683         * lib/unistr/u32-prev.c: New file.
10684
10685         * modules/unistr/u8-set: New file.
10686         * modules/unistr/u16-set: New file.
10687         * modules/unistr/u32-set: New file.
10688         * lib/unistr/u8-set.c: New file.
10689         * lib/unistr/u16-set.c: New file.
10690         * lib/unistr/u32-set.c: New file.
10691         * lib/unistr/u-set.h: New file.
10692
10693         * modules/unistr/u8-startswith: New file.
10694         * modules/unistr/u16-startswith: New file.
10695         * modules/unistr/u32-startswith: New file.
10696         * lib/unistr/u8-startswith.c: New file.
10697         * lib/unistr/u16-startswith.c: New file.
10698         * lib/unistr/u32-startswith.c: New file.
10699         * lib/unistr/u-startswith.h: New file.
10700
10701         * modules/unistr/u8-stpcpy: New file.
10702         * modules/unistr/u16-stpcpy: New file.
10703         * modules/unistr/u32-stpcpy: New file.
10704         * lib/unistr/u8-stpcpy.c: New file.
10705         * lib/unistr/u16-stpcpy.c: New file.
10706         * lib/unistr/u32-stpcpy.c: New file.
10707         * lib/unistr/u-stpcpy.h: New file.
10708
10709         * modules/unistr/u8-stpncpy: New file.
10710         * modules/unistr/u16-stpncpy: New file.
10711         * modules/unistr/u32-stpncpy: New file.
10712         * lib/unistr/u8-stpncpy.c: New file.
10713         * lib/unistr/u16-stpncpy.c: New file.
10714         * lib/unistr/u32-stpncpy.c: New file.
10715         * lib/unistr/u-stpncpy.h: New file.
10716
10717         * modules/unistr/u8-strcat: New file.
10718         * modules/unistr/u16-strcat: New file.
10719         * modules/unistr/u32-strcat: New file.
10720         * lib/unistr/u8-strcat.c: New file.
10721         * lib/unistr/u16-strcat.c: New file.
10722         * lib/unistr/u32-strcat.c: New file.
10723         * lib/unistr/u-strcat.h: New file.
10724
10725         * modules/unistr/u8-strchr: New file.
10726         * modules/unistr/u16-strchr: New file.
10727         * modules/unistr/u32-strchr: New file.
10728         * lib/unistr/u8-strchr.c: New file.
10729         * lib/unistr/u16-strchr.c: New file.
10730         * lib/unistr/u32-strchr.c: New file.
10731
10732         * modules/unistr/u8-strcmp: New file.
10733         * modules/unistr/u16-strcmp: New file.
10734         * modules/unistr/u32-strcmp: New file.
10735         * lib/unistr/u8-strcmp.c: New file.
10736         * lib/unistr/u16-strcmp.c: New file.
10737         * lib/unistr/u32-strcmp.c: New file.
10738
10739         * modules/unistr/u8-strcpy: New file.
10740         * modules/unistr/u16-strcpy: New file.
10741         * modules/unistr/u32-strcpy: New file.
10742         * lib/unistr/u8-strcpy.c: New file.
10743         * lib/unistr/u16-strcpy.c: New file.
10744         * lib/unistr/u32-strcpy.c: New file.
10745         * lib/unistr/u-strcpy.h: New file.
10746
10747         * modules/unistr/u8-strcspn: New file.
10748         * modules/unistr/u16-strcspn: New file.
10749         * modules/unistr/u32-strcspn: New file.
10750         * lib/unistr/u8-strcspn.c: New file.
10751         * lib/unistr/u16-strcspn.c: New file.
10752         * lib/unistr/u32-strcspn.c: New file.
10753         * lib/unistr/u-strcspn.h: New file.
10754
10755         * modules/unistr/u8-strdup: New file.
10756         * modules/unistr/u16-strdup: New file.
10757         * modules/unistr/u32-strdup: New file.
10758         * lib/unistr/u8-strdup.c: New file.
10759         * lib/unistr/u16-strdup.c: New file.
10760         * lib/unistr/u32-strdup.c: New file.
10761         * lib/unistr/u-strdup.h: New file.
10762
10763         * modules/unistr/u8-strlen: New file.
10764         * modules/unistr/u16-strlen: New file.
10765         * modules/unistr/u32-strlen: New file.
10766         * lib/unistr/u8-strlen.c: New file.
10767         * lib/unistr/u16-strlen.c: New file.
10768         * lib/unistr/u32-strlen.c: New file.
10769         * lib/unistr/u-strlen.h: New file.
10770
10771         * modules/unistr/u8-strmblen: New file.
10772         * modules/unistr/u16-strmblen: New file.
10773         * modules/unistr/u32-strmblen: New file.
10774         * lib/unistr/u8-strmblen.c: New file.
10775         * lib/unistr/u16-strmblen.c: New file.
10776         * lib/unistr/u32-strmblen.c: New file.
10777
10778         * modules/unistr/u8-strmbtouc: New file.
10779         * modules/unistr/u16-strmbtouc: New file.
10780         * modules/unistr/u32-strmbtouc: New file.
10781         * lib/unistr/u8-strmbtouc.c: New file.
10782         * lib/unistr/u16-strmbtouc.c: New file.
10783         * lib/unistr/u32-strmbtouc.c: New file.
10784
10785         * modules/unistr/u8-strncat: New file.
10786         * modules/unistr/u16-strncat: New file.
10787         * modules/unistr/u32-strncat: New file.
10788         * lib/unistr/u8-strncat.c: New file.
10789         * lib/unistr/u16-strncat.c: New file.
10790         * lib/unistr/u32-strncat.c: New file.
10791         * lib/unistr/u-strncat.h: New file.
10792
10793         * modules/unistr/u8-strncmp: New file.
10794         * modules/unistr/u16-strncmp: New file.
10795         * modules/unistr/u32-strncmp: New file.
10796         * lib/unistr/u8-strncmp.c: New file.
10797         * lib/unistr/u16-strncmp.c: New file.
10798         * lib/unistr/u32-strncmp.c: New file.
10799
10800         * modules/unistr/u8-strncpy: New file.
10801         * modules/unistr/u16-strncpy: New file.
10802         * modules/unistr/u32-strncpy: New file.
10803         * lib/unistr/u8-strncpy.c: New file.
10804         * lib/unistr/u16-strncpy.c: New file.
10805         * lib/unistr/u32-strncpy.c: New file.
10806         * lib/unistr/u-strncpy.h: New file.
10807
10808         * modules/unistr/u8-strnlen: New file.
10809         * modules/unistr/u16-strnlen: New file.
10810         * modules/unistr/u32-strnlen: New file.
10811         * lib/unistr/u8-strnlen.c: New file.
10812         * lib/unistr/u16-strnlen.c: New file.
10813         * lib/unistr/u32-strnlen.c: New file.
10814         * lib/unistr/u-strnlen.h: New file.
10815
10816         * modules/unistr/u8-strpbrk: New file.
10817         * modules/unistr/u16-strpbrk: New file.
10818         * modules/unistr/u32-strpbrk: New file.
10819         * lib/unistr/u8-strpbrk.c: New file.
10820         * lib/unistr/u16-strpbrk.c: New file.
10821         * lib/unistr/u32-strpbrk.c: New file.
10822         * lib/unistr/u-strpbrk.h: New file.
10823
10824         * modules/unistr/u8-strrchr: New file.
10825         * modules/unistr/u16-strrchr: New file.
10826         * modules/unistr/u32-strrchr: New file.
10827         * lib/unistr/u8-strrchr.c: New file.
10828         * lib/unistr/u16-strrchr.c: New file.
10829         * lib/unistr/u32-strrchr.c: New file.
10830
10831         * modules/unistr/u8-strspn: New file.
10832         * modules/unistr/u16-strspn: New file.
10833         * modules/unistr/u32-strspn: New file.
10834         * lib/unistr/u8-strspn.c: New file.
10835         * lib/unistr/u16-strspn.c: New file.
10836         * lib/unistr/u32-strspn.c: New file.
10837         * lib/unistr/u-strspn.h: New file.
10838
10839         * modules/unistr/u8-strstr: New file.
10840         * modules/unistr/u16-strstr: New file.
10841         * modules/unistr/u32-strstr: New file.
10842         * lib/unistr/u8-strstr.c: New file.
10843         * lib/unistr/u16-strstr.c: New file.
10844         * lib/unistr/u32-strstr.c: New file.
10845         * lib/unistr/u-strstr.h: New file.
10846
10847         * modules/unistr/u8-strtok: New file.
10848         * modules/unistr/u16-strtok: New file.
10849         * modules/unistr/u32-strtok: New file.
10850         * lib/unistr/u8-strtok.c: New file.
10851         * lib/unistr/u16-strtok.c: New file.
10852         * lib/unistr/u32-strtok.c: New file.
10853         * lib/unistr/u-strtok.h: New file.
10854
10855         * modules/unistr/u8-uctomb: New file.
10856         * modules/unistr/u16-uctomb: New file.
10857         * modules/unistr/u32-uctomb: New file.
10858         * lib/unistr/u8-uctomb.c: New file.
10859         * lib/unistr/u16-uctomb.c: New file.
10860         * lib/unistr/u32-uctomb.c: New file.
10861
10862         * MODULES.html.sh (Unicode string functions): Add the new modules.
10863
10864 2007-01-08  Bruno Haible  <bruno@clisp.org>
10865
10866         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
10867         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
10868         subdirectories.
10869
10870 2007-01-08  Karl Berry  <karl@gnu.org>
10871
10872         * doc/error.texi: mention that main() fns must set program_name
10873         when progname is used.
10874
10875 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
10876
10877         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
10878         WCTYPE_H is empty, for the benefit of builds from non-distclean
10879         directories.  Problem reported by Eric Blake in
10880         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
10881
10882 2007-01-08  Bruno Haible  <bruno@clisp.org>
10883
10884         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
10885         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
10886         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
10887         PROVIDE_CANONICALIZE_FILENAME_MODE.
10888         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
10889
10890 2007-01-08  Bruno Haible  <bruno@clisp.org>
10891
10892         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
10893         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
10894         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
10895         * lib/fts.c: Likewise.
10896         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
10897
10898 2006-12-25  Bruno Haible  <bruno@clisp.org>
10899
10900         * modules/utf8-ucs4-safe: New file.
10901         * lib/utf8-ucs4-safe.h: New file.
10902         * lib/unistr/utf8-ucs4-safe.c: New file.
10903
10904         * modules/utf16-ucs4-safe: New file.
10905         * lib/utf16-ucs4-safe.h: New file.
10906         * lib/unistr/utf16-ucs4-safe.c: New file.
10907
10908         * MODULES.html.sh (Unicode string functions): Add the new modules.
10909
10910 2007-01-08  Bruno Haible  <bruno@clisp.org>
10911
10912         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
10913         (Depends-on): Add unitypes.
10914         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
10915         (u8_mbtouc_aux): Move out to separate file.
10916         (u8_mbtouc): Use ucs4_t, uint8_t types.
10917         * lib/unistr/utf8-ucs4.c: New file.
10918
10919         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
10920         (Depends-on): Add unitypes.
10921         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
10922         (u16_mbtouc_aux): Move out to separate file.
10923         (u16_mbtouc): Use ucs4_t, uint16_t types.
10924         * lib/unistr/utf16-ucs4.c: New file.
10925
10926         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
10927         (Depends-on): Add unitypes.
10928         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
10929         (u8_uctomb_aux): Move out to separate file.
10930         (u8_uctomb): Use ucs4_t, uint8_t types.
10931         * lib/unistr/ucs4-utf8.c: New file.
10932
10933         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
10934         (Depends-on): Add unitypes.
10935         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
10936         (u16_uctomb_aux): Move out to separate file.
10937         (u16_uctomb): Use ucs4_t, uint16_t types.
10938         * lib/unistr/ucs4-utf16.c: New file.
10939
10940 2006-12-25  Bruno Haible  <bruno@clisp.org>
10941
10942         * modules/unitypes: New file.
10943         * lib/unitypes.h: New file.
10944         * MODULES.html.sh (func_all_modules): New section "Unicode string
10945         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
10946         this section. Add unitypes.
10947
10948 2007-01-08  Bruno Haible  <bruno@clisp.org>
10949
10950         Avoid variable names that conflict with those from libtool.
10951         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
10952         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
10953         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
10954         library_names_spec to acl_library_names_spec, hardcode_* to
10955         acl_hardcode_*.
10956         Reported by Ralf Wildenhues.
10957
10958 2007-01-08  Bruno Haible  <bruno@clisp.org>
10959
10960         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
10961         definition.
10962         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
10963         definition.
10964         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
10965         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
10966         definition.
10967         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
10968         definition.
10969         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
10970         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
10971         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
10972         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
10973         definition.
10974         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
10975         definition.
10976         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
10977         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
10978         GC_USE_<algorithm>.
10979         * lib/gc-libgcrypt.c: Likewise.
10980         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
10981         * modules/gc-arctwo (configure.ac): Likewise.
10982         * modules/gc-des (configure.ac): Likewise.
10983         * modules/gc-hmac-md5 (configure.ac): Likewise.
10984         * modules/gc-hmac-sha1 (configure.ac): Likewise.
10985         * modules/gc-md2 (configure.ac): Likewise.
10986         * modules/gc-md4 (configure.ac): Likewise.
10987         * modules/gc-md5 (configure.ac): Likewise.
10988         * modules/gc-random (configure.ac): Likewise.
10989         * modules/gc-rijndael (configure.ac): Likewise.
10990         * modules/gc-sha1 (configure.ac): Likewise.
10991
10992 2007-01-08  Bruno Haible  <bruno@clisp.org>
10993
10994         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
10995         macro definition.
10996         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
10997         definition.
10998         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
10999         definition.
11000         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
11001         * modules/fcntl-safer (configure.ac): Likewise.
11002         * modules/fopen-safer (configure.ac): Likewise.
11003         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
11004         GNULIB_FWRITEERROR macro definition.
11005
11006 2007-01-08  Bruno Haible  <bruno@clisp.org>
11007
11008         * m4/gnulib-common.m4: New file.
11009         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
11010         (func_get_filelist): Add m4/gnulib-common.m4.
11011
11012 2007-01-08  Bruno Haible  <bruno@clisp.org>
11013
11014         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
11015         command.
11016
11017 2007-01-08  Jim Meyering  <jim@meyering.net>
11018
11019         Use a more robust test for a "can't happen" condition.
11020         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
11021         narrowed the st_size value.  Presuming the "can't happen" condition
11022         is true, that narrowing could conceivably convert an invalid st_size
11023         value into a valid one.  Instead, use a change based on Matthew
11024         Woehlke's original patch.
11025
11026         Slight readability improvement: use an assert-like macro
11027         in place of literal "abort ()" uses.
11028         * lib/fts.c (fts_assert): Define.
11029         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
11030         Use this macro instead of a bare 'abort'.
11031
11032 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11033
11034         Don't worry about using IRIX 5.3's wctype.h broken definitions;
11035         simply work around them.
11036         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
11037         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
11038         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
11039         declaring.
11040         Don't bother to define as macros, since the standard doesn't require it.
11041         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
11042         longer worry about IRIX 5.3.
11043         (HAVE_WCTYPE_CTMP_BUG): Remove.
11044
11045 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11046
11047         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
11048         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
11049         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
11050         Problems reported by Georg Schwarz for IRIX 5.3.
11051
11052         * gnulib-tool (autoconf_minversion): Take the maximum version number
11053         found, not the minimum.  Problem reported by James Youngman.
11054
11055 2007-01-03  Karl Berry  <karl@gnu.org>
11056
11057         * doc/error.texi: new file, explaining interaction with progname.
11058         * doc/gnulib.texi: include it.  Update copyright.
11059
11060 2007-01-03  Simon Josefsson  <simon@josefsson.org>
11061
11062         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
11063         AC_CANONICAL_HOST, to improve autobuild outputs.
11064
11065 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
11066             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
11067
11068         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
11069         sockets, server sockets, and other file descriptors.  Count errors
11070         to compute the return value.  Reorder the code a bit to be easier
11071         to follow.  Don't set event bits that were not requested (except
11072         POLLERR and POLLHUP).
11073
11074 2007-01-01  Bruno Haible  <bruno@clisp.org>
11075
11076         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
11077
11078 2007-01-03  Jim Meyering  <jim@meyering.net>
11079
11080         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
11081
11082 2007-01-02  Bruno Haible  <bruno@clisp.org>
11083
11084         * modules/settime (Include): Require timespec.h.
11085         * modules/nanosleep (Include): Likewise.
11086
11087 2007-01-01  Bruno Haible  <bruno@clisp.org>
11088
11089         * gnulib-tool (func_emit_copyright_notice): Bump year.
11090         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
11091
11092 2007-01-01  Bruno Haible  <bruno@clisp.org>
11093
11094         Improve support for OpenBSD.
11095         * build-aux/config.rpath (libname_spec): Export.
11096         (library_names_spec): New variable. Export.
11097         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
11098         library_names_spec from the config.rpath output. Locate shared library
11099         through the name pattern in library_names_spec.
11100
11101 2007-01-01  Eric Blake  <ebb9@byu.net>
11102
11103         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
11104
11105 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
11106
11107         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
11108         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
11109         assume the C locale, and avoid an "eval" that could cause trouble.
11110         Problem with SORT reported by Bob Proulx.
11111
11112         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
11113         Define.  Trivial patch from Henning Nielsen Lund, originally
11114         sent to bug-grep@gnu.org today.
11115
11116 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
11117
11118         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
11119         struct stat.  Problem reported by Henning Nielsen Lund.
11120         * lib/acl.c: Include acl.h first, to check interface.  Don't
11121         bother to include sys/types.h and sys/stat.h again.
11122
11123 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
11124
11125         Import the following change from libc; problem reported by
11126         Sven Verdoolaege.
11127
11128         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
11129
11130         [BZ #1373]
11131         * lib/argp.h: Remove __NTH for __argp_usage inline function.
11132
11133 2006-12-28  Jim Meyering  <jim@meyering.net>
11134
11135         * build-aux/announce-gen: Do not assume that the package
11136         builds any of tar.gz, tar.bz2, and .xdelta files.
11137         Suggestion from Simon Josefsson.
11138
11139 2006-12-28  Simon Josefsson  <simon@josefsson.org>
11140
11141         * modules/announce-gen: New file.
11142
11143 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
11144
11145         * lib/mbchar.h: Just include <wctype.h>; the wctype module
11146         handles its gotchas now.
11147         * lib/mbswidth.c: Likewise.
11148         * lib/wcwidth.h: Likewise.
11149         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
11150         and iswcntrl; the wctype module does this stuff now.
11151         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
11152         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
11153         * modules/mbchar (Depends-on): Add wctype.
11154         * modules/mbswidth (Depends-on): Likewise.
11155         * modules/wcwidth (Depends-on): Likewise.
11156
11157 2006-12-27  Eric Blake  <ebb9@byu.net>
11158
11159         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
11160         module uses more than what <wctype.h> is required to provide.
11161
11162 2006-12-26  Eric Blake  <ebb9@byu.net>
11163
11164         * gnulib-tool (sed_extract_prog): Avoid space-tab.
11165
11166 2006-12-26  Eric Blake  <ebb9@byu.net>
11167
11168         * modules/absolute-header: New module.
11169         * modules/fcntl (Depends-on): Depend on it.
11170         * modules/inttypes (Depends-on): Likewise.
11171         * modules/stdint (Depends-on): Likewise.
11172         * modules/sys_stat (Depends-on): Likewise.
11173         * modules/wctype (Depends-on): Likewise.
11174         * MODULES.html.sh (Support for building libraries and
11175         executables): Document it.
11176
11177 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
11178
11179         * gnulib-tool (SED): Remove, undoing previous change.
11180         The problem was that it broke coreutils on Solaris, because
11181         "sed --posix" leaked into a makefile.
11182         (sed): New alias, if 'alias' and GNU sed.
11183
11184 2006-12-24  Jim Meyering  <jim@meyering.net>
11185
11186         Work around an fchownat bug in glibc-2.4:
11187         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
11188         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
11189         in spite of the -P option.
11190         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
11191         New macros.
11192         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
11193         * modules/openat (Files): Add lib/fchownat.c.
11194         * lib/openat.c (fchownat): Don't define here.  Move to...
11195         * lib/fchownat.c: ...this new file.
11196
11197 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
11198
11199         Fix bug reported by Bruno Haible in
11200         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
11201         where quotearg.c didn't compile on Mac OS X 10.2 because it
11202         lacks <wchar.h> and wint_t.
11203         * lib/wctype_.h (__wctype_wint_t): New type.
11204         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
11205         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
11206         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
11207         Arg is now of type __wctype_wint_t, not wint_t.
11208         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
11209         substitute HAVE_WINT_T.
11210         * modules/wctype (Files): Add m4/wint_t.m4.
11211         (wctype.h): Substitute HAVE_WINT_T.
11212
11213 2006-12-23  Bruno Haible  <bruno@clisp.org>
11214
11215         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
11216
11217 2006-12-23  Bruno Haible  <bruno@clisp.org>
11218
11219         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
11220         S_ISLNK.
11221         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
11222         mingw.
11223
11224 2006-12-22  Bruno Haible  <bruno@clisp.org>
11225
11226         * lib/copy-file.c: Include acl.h.
11227         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
11228         Close the file descriptors only after being done with copy_acl.
11229         * modules/copy-file (Depends-on): Add acl.
11230
11231 2006-12-22  Bruno Haible  <bruno@clisp.org>
11232
11233         * gnulib-tool (SED): New variable.
11234         Use $SED instead of sed everywhere.
11235
11236 2006-12-22  Bruno Haible  <bruno@clisp.org>
11237
11238         * modules/no-c++: New file.
11239         * m4/no-c++.m4: New file.
11240         * MODULES.html.sh (Support for building libraries and executables):
11241         Add no-c++.
11242
11243 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
11244
11245         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
11246         Include <limits.h>, and use its INT_MAX to rewrite the
11247         j loop so that it does not overflow 'int'.  Problem reported by
11248         Ralf Wildenhues in
11249         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
11250         Play it safe by shifting left by 1 rather than multiplying by 2,
11251         as GCC is less likely to optimize this away when the value
11252         is signed (when it assumes overflow leads to undefined behavior).
11253         Also, don't assume time_t uses two's complement.
11254
11255 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
11256
11257         * MODULES.html.sh: New module wctype.
11258         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
11259         * lib/fnmatch.c: Don't bother to include <wchar.h> before
11260         <wctype.h>, since the new wctype module should fix this.
11261         * lib/quotearg.c: Include <wctype.h> unconditionally, since
11262         the wctype module should arrange for it.
11263         * lib/regex_internal.h: Likewise.
11264         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
11265         since the wctype module should handle this now.
11266         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
11267         * modules/fnmatch (Depends-on): Add wctype.
11268         * modules/quotearg (Depends-on): Likewise.
11269         * modules/regex (Depends-on): Likewise.
11270
11271 2006-12-19  Bruno Haible  <bruno@clisp.org>
11272
11273         * lib/strdup.h [C++]: Wrap definitions in extern "C".
11274         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
11275
11276 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11277
11278         * modules/savewd (Depends-on): Fix dependency on fcntl.
11279
11280 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
11281
11282         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
11283         conforms to C99, rather than relying on the user's environment
11284         setting of STDINT_H.
11285
11286 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
11287         and Eric Blake  <ebb9@byu.net>
11288
11289         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
11290         This is more consistent with the other defines here.
11291         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
11292         Port to z/OS.  Problem reported by Paul Gilmartin.
11293         Change local vars to use gl_ prefix rather than ac_.
11294         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
11295         with other defines.
11296         * modules/double-slash-root: New module.
11297         * modules/dirname (Files): Remove m4/double-slash-root.m4.
11298         (Depends-on): Add double-slash-root.
11299         * MODULES.html.sh (File system functions): Mention new module.
11300
11301 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
11302
11303         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
11304         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
11305         This is for the benefit of gzip, which doesn't do i18n.
11306
11307 2006-12-12  Jim Meyering  <jim@meyering.net>
11308
11309         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
11310         Reported by Andreas Schwab <schwab@suse.de>.
11311
11312 2006-12-12  Bruno Haible  <bruno@clisp.org>
11313
11314         Merge these changes.
11315         2006-09-05  Bruno Haible  <bruno@clisp.org>
11316         * lib/iconvme.c (iconv_string): No need to save and restore errno when
11317         iconv_alloc succeeded.
11318         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
11319         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
11320         test for " && dest " at the end - dest is always != NULL there. Call
11321         iconv with 4xNULL arguments initially, to reset the state. Call iconv
11322         with 2xNULL arguments, also to flush the state storage. Handle the
11323         IRIX iconv behaviour. Realloc the final result, to throw away unused
11324         memory.
11325
11326 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
11327
11328         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
11329         and fchmodat unconditionally, since glibc 2.4 has them.
11330         Problem reported by Arkadiusz Miskiewicz.
11331
11332 2006-12-10  Bruno Haible  <bruno@clisp.org>
11333
11334         * gnulib-tool (func_import): Show the include files only for those
11335         modules that are copied and specified.
11336         Reported by Karl Berry.
11337
11338 2006-12-08  Jim Meyering  <jim@meyering.net>
11339
11340         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
11341         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
11342
11343         * build-aux/announce-gen: Add two new options, both optional:
11344         --bootstrap-tools=TOOL_LIST
11345               a comma-separated list of tools, e.g.,
11346               autoconf,automake,bison,gnulib
11347         --gnulib-snapshot-date=DATE
11348               if gnulib is in the bootstrap tool list,
11349               then report this as the snapshot date.
11350               If not specified, use the current date/time.
11351               If you specify a date here, be sure it's UTC.
11352
11353 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11354
11355         * tests/test-argp-2.sh: Fix test to match actual output.
11356         (func_compare): Fix sed script to be portable.
11357
11358 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
11359
11360         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
11361         workaround for this case.  It is not autoconfigured now; offhand
11362         it's hard to see how to autoconfigure it.
11363
11364 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
11365
11366         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
11367         a directory that is about to be chowned.  Such a directory's
11368         initial file permissions should permit the owner only and this
11369         should not be changed until after the chown, since the group and
11370         other bits would be incorrect if they granted permission before
11371         the chown.
11372
11373         Fix porting problem for iswctype reported by Georg Schwarz in:
11374         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
11375         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
11376         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
11377         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
11378         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
11379
11380 2006-12-03  Jim Meyering  <jim@meyering.net>
11381
11382         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
11383         p->fts_statp may not yet be defined.
11384         (fts_read): Instead, set it in the caller, once p->fts_statp is
11385         sure to be defined, and corresponds to a top-level directory.
11386         This bug made du -x fail.  Here's the coreutils test case:
11387         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
11388         Reported by Mike Frysinger.
11389
11390 2006-12-01  Jim Meyering  <jim@meyering.net>
11391
11392         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
11393         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
11394         Reported by Simon Josefsson.
11395
11396 2006-11-30  Jim Meyering  <jim@meyering.net>
11397
11398         * m4/warning.m4: Use the all-permissive copyright notice
11399         recommended by RMS (rather than LGPL).
11400         * m4/vararrays.m4: Likewise.
11401         * m4/flexmember.m4: Likewise.
11402
11403 2006-11-29  Bruno Haible  <bruno@clisp.org>
11404
11405         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
11406         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
11407         using +=.
11408         Reported by Simon Josefsson <simon@josefsson.org>.
11409
11410 2006-11-28  James Youngman <jay@gnu.org>
11411
11412         * README: Advise users that they might find the bug-gnulib@gnu.org
11413         and autotools-announce@gnu.org mailing lists useful.
11414
11415 2006-11-28  Bruno Haible  <bruno@clisp.org>
11416
11417         * m4/ptrdiff_max.m4: Remove file.
11418
11419 2006-11-21  Bruno Haible  <bruno@clisp.org>
11420
11421         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
11422         _AC_COMPUTE_INT.
11423         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
11424         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
11425         _AC_COMPUTE_INT.
11426         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
11427         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
11428         _AC_COMPUTE_INT.
11429         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
11430
11431 2006-11-28  Jim Meyering  <jim@meyering.net>
11432
11433         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
11434         warning from "gcc -Wshadow" about shadowing the builtin.
11435
11436 2006-11-27  Bruno Haible  <bruno@clisp.org>
11437
11438         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
11439         _AC_COMPUTE_INT.
11440         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
11441
11442 2006-11-27  Bruno Haible  <bruno@clisp.org>
11443             Paul Eggert  <eggert@cs.ucla.edu>
11444
11445         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
11446
11447 2006-11-26  Bruno Haible  <bruno@clisp.org>
11448
11449         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
11450         noinst_LTLIBRARIES.
11451
11452 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
11453             Bruno Haible  <bruno@clisp.org>
11454
11455         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
11456         if compiling with "gcc -ansi".
11457
11458 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
11459
11460         Fix some incompatibilities with gcc -ansi -pedantic.
11461         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
11462         if compiling pedantically with GCC, unless it's C99 or later.
11463         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
11464         it mishandles gcc -ansi -pedantic as well.
11465         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
11466         if gcc -pedantic.
11467         * lib/regexec.c (check_node_accept_bytes): Don't use auto
11468         initializers for struct if -pedantic, unless it's C99 or later.
11469
11470 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
11471
11472         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
11473         Don't close an fd more than once. Identical atimes indicate
11474         success, not failure.
11475
11476 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
11477
11478         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
11479
11480 2006-11-23  Jim Meyering  <jim@meyering.net>
11481
11482         * build-aux/announce-gen: New file.  From coreutils.
11483
11484 2006-11-22  Jim Meyering  <jim@meyering.net>
11485
11486         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
11487         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
11488         (fts_read): Use a temporary to narrow the overused st_size member
11489         before using it in a switch statement.  Reported by Matthew Woehlke.
11490
11491         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
11492         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
11493
11494 2006-11-20  Bruno Haible  <bruno@clisp.org>
11495
11496         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
11497         changequote instead of pairs of brackets.
11498         Reported by Andreas Schwab <schwab@suse.de>.
11499
11500 2006-11-21  Jim Meyering  <jim@meyering.net>
11501
11502         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
11503         so as to remain compatible with older compilers.
11504         Patch from Michael Deutschmann.
11505
11506 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11507
11508         * MODULES.html.sh (File system functions): Add openat.
11509
11510         * lib/openat.h (rpl_fstatat): New macro, if
11511         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
11512         (fstatat): Define to rpl_fstatat under the same conditions,
11513         unless COMPILING_FSTATAT.
11514         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
11515         seems to have the bug.
11516         * lib/fstatat.c: New file.
11517         * modules/openat (Files): Add it.
11518
11519 2006-11-20  Bruno Haible  <bruno@clisp.org>
11520
11521         * Makefile: New file.
11522
11523 2006-11-20  Jim Meyering  <jim@meyering.net>
11524
11525         The beginnings of syntax-related checks for gnulib.
11526         * lib/Makefile: New file.
11527         * lib/t-idcache: New script.  Ensure that the two halves of
11528         idcache.c stay in sync.
11529
11530         * lib/idcache.c: Adjust comments in user- and group- portions to
11531         be more accurate, and to be consistent with one another.
11532
11533 2006-11-20  Jim Meyering  <jim@meyering.net>
11534
11535         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
11536         continue using the flexible array member (thus, this module performs
11537         half as many malloc calls), with the addition that...
11538         (getgroup, getuser): Consistently record a non-match via an empty
11539         "name" string, and map an empty string match to a NULL return value.
11540         * modules/idcache (Depends-on): Re-add flexmember.
11541
11542         * lib/idcache.c (getuser): Remove all uses of the register keyword.
11543         (getuidbyname, getgroup, getgidbyname): Likewise.
11544
11545         Use cleaner syntax: NULL rather than 0.
11546         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
11547
11548 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11549
11550         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
11551         It mishandled the case where the group was missing.
11552         Problem reported by Greg Schafer.
11553         * modules/idcache: Likewise.
11554
11555 2006-11-18  Jim Meyering  <jim@meyering.net>
11556
11557         * check-module (%exempt_header): Add exception for some
11558         conditionally-included headers.
11559
11560         * modules/i-ring (Depends-on): Add verify.
11561         (License): Change to LGPL.
11562
11563 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11564
11565         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
11566         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
11567         and inttostr.h.  Use snprintf rather than uinttostr, so that
11568         LGPLed code doesn't depend on GPLed.
11569
11570 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11571
11572         * modules/inline (License): Change from GPL to LGPL.
11573
11574 2006-11-17  Jim Meyering  <jim@meyering.net>
11575
11576         * modules/d-type (License): Switch to LGPL.
11577
11578 2006-11-15  Bruno Haible  <bruno@clisp.org>
11579
11580         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
11581
11582 2006-11-15  Eric Blake  <ebb9@byu.net>
11583
11584         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
11585         the module dependency.
11586
11587 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11588             Bruno Haible  <bruno@clisp.org>
11589
11590         * gnulib-tool (func_create_testdir): Add license consistency check.
11591
11592 2006-11-15  Eric Blake  <ebb9@byu.net>
11593
11594         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
11595         random "(cached)" in configure output.
11596
11597 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11598
11599         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
11600         test for conforming inttypes.h is both announced and cached.
11601
11602         * MODULES.html.sh (seen_modules, seen_files): New variables.
11603         (func_module): Rewrite to use a few less gnulib-tool and sed
11604         invocations.  Avoid a couple of quadratic algorithms for ...
11605         (missed_modules, missed_files): ... these, with ...
11606         (func_append, func_tmpdir): ... these new functions, from
11607         gnulib-tool.  Analogously, install traps for cleanup.
11608
11609         * tests/test-gc.c (main): Remove unused variables.
11610         * tests/test-read-file.c: Include stdlib.h, for 'free'.
11611
11612 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
11613
11614         * modules/inttostr (License): Change to LGPL.
11615
11616 2006-11-14  Eric Blake  <ebb9@byu.net>
11617
11618         * modules/tempname (License): Change to LGPL.
11619
11620 2006-11-14  Eric Blake  <ebb9@byu.net>
11621
11622         * doc/functions.texi (Function Portability): *printf functions on
11623         Cygwin now understand all POSIX size specifiers.
11624
11625 2006-11-14  Bruno Haible  <bruno@clisp.org>
11626
11627         * modules/c-ctype (License): Change to LGPL.
11628
11629 2006-11-12  Bruno Haible  <bruno@clisp.org>
11630
11631         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
11632         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
11633         for GNOME libraries, for which the include files are installed in
11634         subdirectories of $prefix/include.
11635
11636 2006-11-12  Bruno Haible  <bruno@clisp.org>
11637
11638         * m4/lib-link.m4: Require at least autoconf-2.54.
11639         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
11640         name to underscores for the --with option.
11641
11642 2006-11-13  Bruno Haible  <bruno@clisp.org>
11643
11644         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
11645         the tests directory.
11646         Reported by Ralf Wildenhues.
11647
11648 2006-11-13  Bruno Haible  <bruno@clisp.org>
11649
11650         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
11651         (func_emit_initmacro_end): Undo the override here.
11652         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
11653         Works around the famous automake error in coreutils.
11654
11655 2006-11-13  Eric Blake  <ebb9@byu.net>
11656
11657         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
11658         element, not its node.
11659
11660 2006-11-12  Bruno Haible  <bruno@clisp.org>
11661
11662         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
11663         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
11664
11665 2006-11-12  Bruno Haible  <bruno@clisp.org>
11666
11667         * gnulib-tool: New option --local-symlink.
11668         (func_usage): Document it.
11669         (lsymbolic): New variable.
11670         (func_import, func_create_testdir): If --symlink was not specified,
11671         test whether --local-symlink was specified and the file comes from
11672         the local_gnulib_dir.
11673
11674 2006-11-12  Bruno Haible  <bruno@clisp.org>
11675
11676         * gnulib-tool (func_ln): New function.
11677         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
11678
11679 2006-11-12  Bruno Haible  <bruno@clisp.org>
11680
11681         Finish support for source files in subdirectories.
11682         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
11683         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
11684         AUTOMAKE_OPTIONS.
11685         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
11686
11687 2006-11-12  Bruno Haible  <bruno@clisp.org>
11688
11689         * gnulib-tool (func_get_automake_snippet): Synthesize also an
11690         EXTRA_lib_SOURCES augmentation.
11691         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
11692
11693 2006-11-12  Jim Meyering  <jim@meyering.net>
11694
11695         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
11696         file descriptors.  This also averts a failure on systems with
11697         native openat support when a traversed directory lacks "x" access.
11698         * lib/fts_.h: Include "i-ring.h"
11699         (struct FTS) [fts_fd_ring]: New member.
11700         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
11701         (FCHDIR): Add parentheses.
11702         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
11703         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
11704         When descending, rather than simply closing the previous
11705         fts_cwd_fd value, push that file descriptor onto the ring.
11706         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
11707         (fts_open): Initialize the new fd_ring member.
11708         (fts_close): Clear the ring.
11709         (fts_safe_changedir): When possible, use our new fd_ring to skip
11710         the diropen and fstat and dev/ino comparison that would normally
11711         accompany a virtual `chdir ("..")'.
11712
11713         * modules/fts (Depends-on): Add i-ring.
11714         * modules/i-ring: New module.
11715         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
11716         * m4/i-ring.m4: New file.
11717
11718 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11719
11720         * gnulib-tool (func_create_testdir): Fix replacement of
11721         `build-aux' in configure.ac.  Run autotools in gltests
11722         subdirectory.
11723         (func_create_testdir, func_create_megatestdir, test): There is
11724         no need for '--force' in most autotool invocations in a new
11725         tree.  Actually fail the whole test if any of the tools, or the
11726         configure or make stages fail.
11727
11728         Sync from Automake.
11729         * build-aux/gnupload: Revert last change.  Add pointer to upload
11730         instructions of the GNU Maintenance Instructions.
11731         Suggestion by Karl Berry.
11732
11733 2006-11-10  Jim Meyering  <jim@meyering.net>
11734
11735         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
11736
11737 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11738
11739         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
11740         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
11741         (bind_textdomain_codeset) [! ENABLE_NLS]:
11742         Evaluate all the arguments.  That way, callers get compatible behavior
11743         if the arguments have side effects.  Also, it avoids some GCC
11744         diagnostics in some cases; Joel E. Denny reported problems when Bison
11745         was configured with --enable-gcc-warnigs.
11746
11747 2006-11-10  Jim Meyering  <jim@meyering.net>
11748
11749         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
11750         relevant options in CFLAGS (like -O, -fno-inline) are taken into
11751         account.
11752
11753 2006-11-10  Jim Meyering  <jim@meyering.net>
11754
11755         * modules/inline: New file/module.
11756         * modules/xalloc (Files): Remove m4/inline.m4.
11757         (Depends-on): Add inline, instead.
11758         * modules/oset: Likewise.
11759         * modules/list: Likewise.
11760
11761 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11762
11763         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
11764         Problem reported by Matthew Woehlke.
11765
11766 2006-11-09  Bruno Haible  <bruno@clisp.org>
11767
11768         * lib/tempname.c (gen_tempname): Remove variant that invokes
11769         __gen_tempname.
11770         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
11771         __gen_tempname.
11772
11773 2006-11-08  Bruno Haible  <bruno@clisp.org>
11774
11775         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
11776         to 'yes' instead of 'cross-compiling'.
11777
11778 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
11779
11780         * lib/quotearg.h (quotearg_free): New decl.
11781         * lib/quotearg.c (quotearg_free): New function.
11782         (slot0, nslots, slotvec0, slotvec):
11783         Now file-scope so that quotearg_free can get at them.
11784
11785 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11786
11787         Sync from Automake.
11788         * build-aux/gnupload: Add missing 'gnu' to example URL.
11789         Report by Karl Berry.
11790
11791 2006-11-08  Bruno Haible  <bruno@clisp.org>
11792
11793         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
11794         Suggested by Paul Eggert.
11795
11796 2006-11-08  Jim Meyering  <jim@meyering.net>
11797
11798         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
11799         It's already included if !_LIBC.
11800         (fts_safe_changedir): Add a comment.
11801
11802 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
11803
11804         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
11805         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
11806         Matthew Woehlke.
11807
11808         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
11809         definitions up, to avoid colliding with change below.
11810         (static_inline) [HAVE_INLINE]: New macro.
11811         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
11812         Provide extern decls when !HAVE_INLINE.  Do not define unless
11813         static_inline is defined, either by us or by xmalloc.c.  Use
11814         static_inline rather than static inline.
11815         (XCALLOC): Optimize sizeof(T) = 1 case.
11816         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
11817
11818 2006-11-07  Bruno Haible  <bruno@clisp.org>
11819
11820         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
11821         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
11822         AC_C_INLINE.
11823         * modules/xalloc (Files): Add m4/inline.m4.
11824
11825 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11826
11827         * README: Fix typo.
11828         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
11829         (Miscellanous Notes): ...from this.
11830
11831 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
11832
11833         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
11834         Mention that offsetof should be used instead of sizeof.
11835         From Bruno Haible.
11836
11837 2006-11-07  Bruno Haible  <bruno@clisp.org>
11838
11839         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
11840
11841 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
11842
11843         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
11844         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
11845         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
11846         (gl_tree_add_before, gl_tree_add_after):
11847         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
11848         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
11849         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
11850         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
11851         (gl_linked_add_after, gl_linked_add_at): Likewise.
11852         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
11853         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
11854         (gl_tree_add_before, gl_tree_add_after): Likewise.
11855         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
11856         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
11857         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
11858
11859 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11860
11861         * lib/gl_oset.h: Use C comment style, not C++ comment style.
11862
11863 2006-11-06  Bruno Haible  <bruno@clisp.org>
11864
11865         * m4/inline.m4: New file.
11866         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
11867         * modules/list (Files): Add m4/inline.m4.
11868         * modules/oset (Files): Likewise.
11869
11870 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
11871
11872         * lib/idcache.c: Include <stddef.h>, for offsetof.
11873         (struct userid.name): Change from char * to a flexible array member.
11874         All uses changed.
11875         * modules/idcache (Depends-on): Add flexmember.
11876
11877         * MODULES.html.sh (Core language properties): New module flexmember.
11878         * modules/flexmember, m4/flexmember.m4: New files.
11879
11880         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
11881         inline functions that are identical with the old xnmalloc_inline,
11882         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
11883         that we can avoid some unnecessary integer multiplications and
11884         divisions in the common case where the element size is known at
11885         compile time.
11886         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
11887         needed.
11888         (xnboundedmalloc): Remove.
11889         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
11890         arguments, for consistency with rest of this header.
11891         (xcharalloc): Rewrite using XNMALLOC.
11892         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
11893         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
11894         versions have been moved to lib/xalloc.h and renamed to be the
11895         non-*_inline versions.
11896         (xmalloc, xrealloc): Implement without reference to the xnmalloc
11897         and xnrealloc functions, since those functions are now inline and
11898         now call us.
11899         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
11900         renaming described above.
11901         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
11902         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
11903         captures the dependency in AC_C_INLINE.
11904
11905         New module canonicalize-lgpl, proposed by Charles Wilson in
11906         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
11907         with a few small changes afterwards.
11908         * MODULES.html.sh (File system functions): New module
11909         canonicalize-lgpl.
11910         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
11911         and canonicalize_file_name.
11912         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
11913         * modules/canonicalize-lgpl: New files.
11914
11915 2006-11-05  Bruno Haible  <bruno@clisp.org>
11916
11917         * gnulib-tool (func_import, func_create_testdir): Create directories
11918         also for files in subdirectories of lib/.
11919
11920 2006-11-05  Bruno Haible  <bruno@clisp.org>
11921
11922         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
11923         ANSI C compliant.
11924
11925 2006-11-03  Bruno Haible  <bruno@clisp.org>
11926
11927         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
11928         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
11929         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
11930         (xnboundedmalloc): New inline function.
11931         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
11932         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
11933         xmalloc.
11934         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
11935         xmalloc.
11936         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
11937         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
11938         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
11939         xmalloc.
11940         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11941         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
11942         xmalloc.
11943         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
11944         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11945         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
11946         xmalloc.
11947         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11948         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
11949         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11950         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
11951         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
11952         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
11953         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
11954
11955 2006-11-03  Bruno Haible  <bruno@clisp.org>
11956
11957         * lib/c-ctype.h [C++]: Define functions without name mangling.
11958         * lib/fwriteerror.h [C++]: Likewise.
11959         * lib/gcd.h [C++]: Likewise.
11960         * lib/linebreak.h [C++]: Likewise.
11961
11962 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
11963
11964         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
11965         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
11966         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
11967         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
11968         Check for functions and headers just once.
11969         Check for declaration of canonicalize_file_name.
11970         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
11971
11972 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11973
11974         * gnulib-tool (func_import): Fix typo in actioncmd.
11975
11976 2006-11-02  Bruno Haible  <bruno@clisp.org>
11977
11978         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
11979         newline sequence in the Makefile.am snippet as a space, like "make"
11980         does.
11981         Reported by Roger Persson <perrog@gmail.com>.
11982
11983 2006-11-01  Bruno Haible  <bruno@clisp.org>
11984
11985         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
11986         already declared in <string.h>.
11987         * lib/strcase.h (strncasecmp): Don't declare it if yes.
11988
11989 2006-11-01  Bruno Haible  <bruno@clisp.org>
11990
11991         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
11992         * lib/strcase.h: Include <string.h>.
11993         (strcasecmp): Define to rpl_strcasecmp here.
11994
11995 2006-11-01  Bruno Haible  <bruno@clisp.org>
11996
11997         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
11998
11999 2006-11-01  Eric Blake  <ebb9@byu.net>
12000
12001         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
12002
12003         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
12004
12005 2006-10-29  Bruno Haible  <bruno@clisp.org>
12006
12007         Make it compile in C++ mode.
12008         * lib/full-write.c (full_rw): Add a cast.
12009
12010 2006-11-01  Bruno Haible  <bruno@clisp.org>
12011
12012         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
12013         be POSIX compliant.
12014         Reported by Roger Persson <perrog@gmail.com>.
12015
12016 2006-11-01  Eric Blake  <ebb9@byu.net>
12017
12018         * lib/getopt_.h: Fix comments.
12019
12020 2006-10-31  Eric Blake  <ebb9@byu.net>
12021
12022         * modules/tmpdir (Depends-on): Add sys_stat.
12023         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
12024         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
12025         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
12026         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
12027         tempname.
12028
12029 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
12030
12031         Avoid some C++ diagnostics reported by Bruno Haible.
12032         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
12033         xmalloc.
12034         (quotearg_alloc): Use xcharalloc rather than xmalloc.
12035         (struct slotvec): Move to top level.
12036         (quotearg_n_options): Rewrite to avoid xmalloc.
12037         * lib/xalloc.h (xcharalloc): New function.
12038         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
12039         [defined __cplusplus]: Add function template that provides result
12040         type propagation.  This part of the change is from Bruno Haible.
12041
12042 2006-10-29  Bruno Haible  <bruno@clisp.org>
12043
12044         Make it compile in C++ mode.
12045         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
12046         * lib/strnlen1.c (strnlen1): Cast memchr result.
12047         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
12048         * lib/clean-temp.c (string_equals, string_hash): Add casts.
12049         (create_temp_dir): Rename local variable 'template'.
12050         (compile_csharp_using_sscli): Add cast.
12051         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
12052         * lib/findprog.c (find_in_path): Likewise.
12053         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
12054         * lib/wait-process.c (register_slave_subprocess): Likewise.
12055
12056 2006-10-22  Bruno Haible  <bruno@clisp.org>
12057
12058         * modules/tsearch: New file.
12059         * lib/tsearch.h: New file.
12060         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
12061         * m4/tsearch.m4: New file.
12062         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
12063
12064 2006-10-29  Eric Blake  <ebb9@byu.net>
12065
12066         * lib/arcfour.c: Assume config.h.
12067         * lib/arctwo.c: Likewise.
12068         * lib/base64.c: Likewise.
12069         * lib/check-version.c: Likewise.
12070         * lib/crc.c: Likewise.
12071         * lib/des.c: Likewise.
12072         * lib/gc-gnulib.c: Likewise.
12073         * lib/gc-libgcrypt.c: Likewise.
12074         * lib/gc-pbkdf2-sha1.c: Likewise.
12075         * lib/getaddrinfo.c: Likewise.
12076         * lib/getdelim.c: Likewise.
12077         * lib/getline.c: Likewise.
12078         * lib/hmac-md5.c: Likewise.
12079         * lib/hmac-sha1.c: Likewise.
12080         * lib/iconvme.c: Likewise.
12081         * lib/md2.c: Likewise.
12082         * lib/md4.c: Likewise.
12083         * lib/memxor.c: Likewise.
12084         * lib/read-file.c: Likewise.
12085         * lib/readline.c: Likewise.
12086         * lib/rijndael-alg-fst.c: Likewise.
12087         * lib/rijndael-api-fst.c: Likewise.
12088         * lib/xgetdomainname.c: Likewise.
12089
12090 2006-10-28  Eric Blake  <ebb9@byu.net>
12091
12092         * lib/xstrndup.c: Assume config.h.
12093
12094 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
12095
12096         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
12097         stat-macros.h is now for our own macros, whereas stat_h is for
12098         macros in the <sys/stat.h> name space.
12099         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
12100         (STAT_MACROS_H): Remove.
12101         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
12102         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
12103         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
12104         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
12105         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
12106         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
12107         Move these macros to ...
12108         * lib/stat_.h: here.  Don't include stat-macros.h.
12109         * lib/canonicalize.c: Don't include stat-macros.h.
12110         * lib/chown.c: Likewise.
12111         * lib/euidaccess.c: Likewise.
12112         * lib/file-type.c: Likewise.
12113         * lib/filemode.c: Likewise.
12114         * lib/glob.c: Likewise.
12115         * lib/isapipe.c: Likewise.
12116         * lib/lchown.c: Likewise.
12117         * lib/lstat.c: Likewise.
12118         * lib/mkdir-p.c: Likewise.
12119         * lib/rmdir.c: Likewise.
12120         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
12121         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
12122         unless mkdir isn't declared, to speed up 'configure'.
12123         Always create sys/stat.h, since it's unlikely any real sys/stat.h
12124         would define all the S_* symbols.
12125         * modules/canonicalize (Depends-on):
12126         Depend on sys_stat, not stat-macros.
12127         * modules/chown: Likewise.
12128         * modules/euidaccess: Likewise.
12129         * modules/filemode: Likewise.
12130         * modules/file-type: Likewise.
12131         * modules/glob: Likewise.
12132         * modules/isapipe: Likewise.
12133         * modules/lchown: Likewise.
12134         * modules/lstat: Likewise.
12135         * modules/mkancesdirs: Likewise.
12136         * modules/rmdir: Likewise.
12137         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
12138         * modules/modechange: Likewise.
12139         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
12140         (configure.ac): Remove gl_STAT_MACROS.
12141         * modules/sys_stat (Depends-on): Remove stat-macros.
12142
12143 2006-10-27  Bruno Haible  <bruno@clisp.org>
12144
12145         * m4/signed.m4: Remove file.
12146         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
12147         invocation.
12148         * modules/vasnprintf (Files): Remove m4/signed.m4.
12149
12150 2006-10-27  Bruno Haible  <bruno@clisp.org>
12151
12152         Update to GNU gettext 0.16.
12153         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
12154         m4/inttypes-h.m4, m4/signed.m4.
12155         * m4/gettext.m4: Update to GNU gettext 0.16.
12156         * m4/intl.m4: New file, from GNU gettext.
12157         * m4/intldir.m4: New file, from GNU gettext.
12158         * config/srclist.txt: Update
12159
12160 2006-10-27  Eric Blake  <ebb9@byu.net>
12161
12162         * MODULES.html.sh: Document tempname.
12163         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
12164         dependencies.
12165         (Files): Move lib/tempname.c...
12166         * modules/tempname: ...to this new module.
12167         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
12168         (gl_PREREQ_TEMPNAME): Move...
12169         * m4/tempname.m4: ...to this new file.
12170         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
12171         * modules/sys_stat (Depends-on): Add stat-macros.
12172         * lib/stat_.h (includes): Pick up stat macros.
12173         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
12174         if stat macros are broken.
12175         * lib/tempname.c (includes): No need to include "stat-macros.h".
12176         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
12177         (direxists, __path_search) [!_LIBC]: Don't compile these in
12178         gnulib; the tmpdir module covers that.
12179         * lib/tempname.h: New file.
12180
12181 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
12182
12183         * COPYING: Explain how gnulib-tool converts licence headers.
12184         Almost all wording by Eric Blake.
12185
12186 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
12187
12188         * lib/mbchar.h (is_basic_table): Make read-only.
12189         * lib/mbchar.c (is_basic_table): Likewise.
12190         Reported by John Darrington.
12191
12192 2006-10-25  Bruno Haible  <bruno@clisp.org>
12193
12194         * lib/progname.h (set_program_name): Undefine before defining.
12195
12196 2006-10-25  Bruno Haible  <bruno@clisp.org>
12197
12198         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
12199         false for non-gcc C++ compilers.
12200         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
12201
12202 2006-10-24  Bruno Haible  <bruno@clisp.org>
12203
12204         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
12205         iconv implementations like Irix iconv.
12206
12207 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12208
12209         * modules/vararrays: New file.
12210         * m4/vararrays.m4: New file, taken from diffutils.
12211         * MODULES.html.sh: New module vararrays.
12212
12213 2006-10-24  Karl Berry  <karl@gnu.org>
12214
12215         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
12216         Don't call GNU Unix.
12217
12218 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12219
12220         * users.txt: Add Libtool.
12221
12222         Sync from Libtool:
12223
12224         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12225
12226         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
12227         to gnulib's policy of including config.h unconditionally.
12228
12229 2006-10-24  Bruno Haible  <bruno@clisp.org>
12230
12231         * modules/wcwidth (Files): Add m4/wint_t.m4.
12232         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
12233         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
12234
12235 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
12236
12237         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
12238         to pacify GCC with some -W flags enabled.  Problem reported by
12239         Bruno Haible.
12240
12241 2006-10-24  Jim Meyering  <jim@meyering.net>
12242
12243         * MODULES.html.sh: Remove uinttostr.  It's not a module.
12244         Reported by Karl Berry.
12245
12246 2006-10-23  Bruno Haible  <bruno@clisp.org>
12247
12248         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
12249
12250 2006-10-24  Bruno Haible  <bruno@clisp.org>
12251
12252         * lib/gl_list.h: Use C comment style, not C++ comment style.
12253
12254 2006-10-23  Eric Blake  <ebb9@byu.net>
12255
12256         * lib/getaddrinfo.c (includes): Add missing include.
12257
12258 2006-10-23  Bruno Haible  <bruno@clisp.org>
12259             Paul Eggert  <eggert@cs.ucla.edu>
12260
12261         Ability to rename obstack_free.
12262         * lib/obstack.h (__obstack_free): New macro. Declare instead of
12263         obstack_free.
12264         (obstack_free): Invoke the __obstack_free macro.
12265         * lib/obstack.c (obstack_free): Use __obstack_free macro.
12266
12267 2006-10-23  Bruno Haible  <bruno@clisp.org>
12268             Paul Eggert  <eggert@cs.ucla.edu>
12269
12270         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
12271         __argc, __argv from the declaration. (They are defined as macros on
12272         mingw.)
12273
12274 2006-10-22  Bruno Haible  <bruno@clisp.org>
12275
12276         * doc/gnulib-intro.texi: New file.
12277         * doc/gnulib.texi: Include it.
12278
12279 2006-10-21  Bruno Haible  <bruno@clisp.org>
12280
12281         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
12282         "Introduction", "Miscellanous Notes", "Particular Modules".
12283
12284 2006-10-21  Bruno Haible  <bruno@clisp.org>
12285
12286         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
12287         Change mostlyclean-local rule to avoid sh syntax error from bash
12288         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
12289
12290 2006-10-23  Jim Meyering  <jim@meyering.net>
12291
12292         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
12293         in place of snprintf.
12294
12295         * modules/inttostr (Files): Add lib/uinttostr.c.
12296         * lib/uinttostr.c (inttostr): New file/function.
12297         * lib/inttostr.h (uinttostr): Declare.
12298         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
12299         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
12300         Add uinttostr.
12301         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
12302
12303 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
12304
12305         * lib/canonicalize.c (ELOOP): Define if not already defined.
12306         Problem reported by Bruno Haible in
12307         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
12308
12309 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
12310
12311         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
12312         Problem reported by Perry Smith and Ville Laurikari.
12313
12314         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
12315         uses.
12316
12317 2006-10-19  Bruno Haible  <bruno@clisp.org>
12318
12319         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
12320         for mingw.
12321
12322 2006-10-19  Bruno Haible  <bruno@clisp.org>
12323
12324         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
12325         Needed for mingw.
12326
12327 2006-10-19  Bruno Haible  <bruno@clisp.org>
12328
12329         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
12330
12331 2006-10-19  Bruno Haible  <bruno@clisp.org>
12332
12333         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
12334         it.
12335
12336 2006-10-19  Bruno Haible  <bruno@clisp.org>
12337
12338         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
12339         invocation.
12340
12341 2006-10-19  Bruno Haible  <bruno@clisp.org>
12342
12343         * gnulib-tool (func_create_testdir): Don't include ftruncate and
12344         mountlist by default.
12345
12346 2006-10-16  Bruno Haible  <bruno@clisp.org>
12347
12348         * lib/c-strstr.c: Include c-strstr.h.
12349
12350 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
12351
12352         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
12353         in a slash.
12354
12355 2006-10-18  Bruno Haible  <bruno@clisp.org>
12356
12357         * lib/lock.h [C++]: Wrap definitions in extern "C".
12358
12359 2006-10-18  Bruno Haible  <bruno@clisp.org>
12360
12361         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
12362         gl_LIBOBJS list.
12363
12364 2006-10-18  Bruno Haible  <bruno@clisp.org>
12365
12366         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
12367
12368 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
12369
12370         * lib/xstrtol.h: Include gettext.h.
12371         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
12372         Problem reported by Eric Blake.
12373         * modules/xstrtol (Depends-on): Add gettext-h.
12374
12375 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
12376
12377         * lib/strftime.c (advance): New macro.
12378         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
12379         incomplete type, so you can't add 0 to it.  Problem and patch
12380         reported by Eelco Dolstra for dietlibc.
12381
12382 2006-10-18  Jim Meyering  <jim@meyering.net>
12383
12384         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
12385         type for a local, and rename it: s/up/user_proc/.
12386
12387 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
12388
12389         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
12390         READ_UTMP_USER_PROCESS.
12391         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
12392
12393 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
12394
12395         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
12396         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
12397
12398 2006-10-17  Eric Blake  <ebb9@byu.net>
12399
12400         * lib/sigprocmask.c (sigprocmask): Fix typo.
12401
12402         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
12403
12404         * modules/clean-temp (Makefile.am): Don't add to make output...
12405         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
12406         config.h.
12407
12408 2006-10-17  Bruno Haible  <bruno@clisp.org>
12409
12410         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
12411         differently if DEFAULT_TEXT_DOMAIN is set.
12412
12413 2006-10-16  Bruno Haible  <bruno@clisp.org>
12414
12415         * lib/clean-temp.c: Include fwriteerror.h.
12416
12417 2006-10-16  Bruno Haible  <bruno@clisp.org>
12418
12419         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
12420
12421 2006-10-16  Bruno Haible  <bruno@clisp.org>
12422
12423         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
12424         * lib/sigprocmask.h: Include <sys/types.h>.
12425         (sigset_t): Use the system's definition if present.
12426
12427 2006-10-17  Eric Blake  <ebb9@byu.net>
12428
12429         * lib/xvasprintf.c (includes): Assume config.h.
12430         * lib/xasprintf.c (includes): Likewise.
12431
12432 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
12433
12434         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
12435         at least as wide as intmax_t.
12436
12437 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
12438
12439         (Imported from Automake.)
12440         * build-aux/gnupload: Update to version 1.1 of directive file.
12441
12442 2006-10-16  Eric Blake  <ebb9@byu.net>
12443
12444         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
12445         match Automake 1.10a.
12446
12447 2006-10-14  Bruno Haible  <bruno@clisp.org>
12448
12449         * modules/sigprocmask: New file.
12450         * lib/sigprocmask.h: New file.
12451         * lib/sigprocmask.c: New file.
12452         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
12453         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
12454         request sigprocmask.o.
12455         (gl_PREREQ_SIGPROCMASK): New macro.
12456         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
12457         (Depends-on): Add sigprocmask.
12458         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
12459         gt_SIGNALBLOCKING. Test for 'raise' only once.
12460         * lib/fatal-signal.c: Include sigprocmask.h.
12461         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
12462         unblock_fatal_signals): Define always.
12463         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12464         sigprocmask.
12465
12466 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
12467
12468         Sync from Automake.
12469         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
12470         which incorrectly sets the mode of an existing destination
12471         directory.  In some cases the unpatched install-sh could do the
12472         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
12473         system.  We hope this is rare in practice, but it's clearly worth
12474         fixing.  Problem reported by Alex Unleashed in
12475         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
12476         Also, don't bother to check for -m bugs unless we're using -m;
12477         suggested by Stepan Kasal.
12478
12479 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12480
12481         Sync from Automake.
12482         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
12483         `-c' flag, so they appear at the same position as in %FASTDEP%
12484         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
12485         which ignores unknown options only after the first non-option.
12486         Bug report against M4 by Nelson H. F. Beebe.
12487
12488 2006-10-13  Jim Meyering  <jim@meyering.net>
12489
12490         Fix a bug in yesterday's change.
12491         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
12492         p->fts_statp->st_dev would be used uninitialized.
12493         Ensures that we always call fts_stat on the very first entry.
12494         Miklos Szeredi reported that find -xdev stopped working.
12495
12496 2006-10-12  Bruno Haible  <bruno@clisp.org>
12497
12498         * gnulib-tool (func_get_automake_snippet): Append an automatically
12499         computed EXTRA_DIST augmentation.
12500         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
12501         * modules/alloca-opt (Makefile.am): Likewise.
12502         * modules/allocsa (Makefile.am): Likewise.
12503         * modules/arcfour (Makefile.am): Likewise.
12504         * modules/arctwo (Makefile.am): Likewise.
12505         * modules/argmatch (Makefile.am): Likewise.
12506         * modules/argz (Makefile.am): Likewise.
12507         * modules/atexit (Makefile.am): Likewise.
12508         * modules/backupfile (Makefile.am): Likewise.
12509         * modules/byteswap (Makefile.am): Likewise.
12510         * modules/c-strtod (Makefile.am): Likewise.
12511         * modules/c-strtold (Makefile.am): Likewise.
12512         * modules/calloc (Makefile.am): Likewise.
12513         * modules/canon-host (Makefile.am): Likewise.
12514         * modules/canonicalize (Makefile.am): Likewise.
12515         * modules/chdir-long (Makefile.am): Likewise.
12516         * modules/chdir-safer (Makefile.am): Likewise.
12517         * modules/check-version (Makefile.am): Likewise.
12518         * modules/chown (Makefile.am): Likewise.
12519         * modules/cloexec (Makefile.am): Likewise.
12520         * modules/close-stream (Makefile.am): Likewise.
12521         * modules/closeout (Makefile.am): Likewise.
12522         * modules/crc (Makefile.am): Likewise.
12523         * modules/csharpexec (Makefile.am): Likewise.
12524         * modules/cycle-check (Makefile.am): Likewise.
12525         * modules/des (Makefile.am): Likewise.
12526         * modules/dev-ino (Makefile.am): Likewise.
12527         * modules/dirfd (Makefile.am): Likewise.
12528         * modules/dirname (Makefile.am): Likewise.
12529         * modules/dup2 (Makefile.am): Likewise.
12530         * modules/eealloc (Makefile.am): Likewise.
12531         * modules/error (Makefile.am): Likewise.
12532         * modules/euidaccess (Makefile.am): Likewise.
12533         * modules/exclude (Makefile.am): Likewise.
12534         * modules/exitfail (Makefile.am): Likewise.
12535         * modules/fcntl-safer (Makefile.am): Likewise.
12536         * modules/fcntl (Makefile.am): Likewise.
12537         * modules/file-type (Makefile.am): Likewise.
12538         * modules/fileblocks (Makefile.am): Likewise.
12539         * modules/filemode (Makefile.am): Likewise.
12540         * modules/filenamecat (Makefile.am): Likewise.
12541         * modules/fnmatch (Makefile.am): Likewise.
12542         * modules/fopen-safer (Makefile.am): Likewise.
12543         * modules/fpending (Makefile.am): Likewise.
12544         * modules/fprintftime (Makefile.am): Likewise.
12545         * modules/free (Makefile.am): Likewise.
12546         * modules/fsusage (Makefile.am): Likewise.
12547         * modules/ftruncate (Makefile.am): Likewise.
12548         * modules/fts (Makefile.am): Likewise.
12549         * modules/gc-arcfour (Makefile.am): Likewise.
12550         * modules/gc-des (Makefile.am): Likewise.
12551         * modules/gc-hmac-md5 (Makefile.am): Likewise.
12552         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
12553         * modules/gc-md4 (Makefile.am): Likewise.
12554         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
12555         * modules/gc-sha1 (Makefile.am): Likewise.
12556         * modules/gc (Makefile.am): Likewise.
12557         * modules/getaddrinfo (Makefile.am): Likewise.
12558         * modules/getcwd (Makefile.am): Likewise.
12559         * modules/getdelim (Makefile.am): Likewise.
12560         * modules/getdomainname (Makefile.am): Likewise.
12561         * modules/getgroups (Makefile.am): Likewise.
12562         * modules/gethostname (Makefile.am): Likewise.
12563         * modules/gethrxtime (Makefile.am): Likewise.
12564         * modules/getline (Makefile.am): Likewise.
12565         * modules/getloadavg (Makefile.am): Likewise.
12566         * modules/getlogin_r (Makefile.am): Likewise.
12567         * modules/getndelim2 (Makefile.am): Likewise.
12568         * modules/getopt (Makefile.am): Likewise.
12569         * modules/getpagesize (Makefile.am): Likewise.
12570         * modules/getpass-gnu (Makefile.am): Likewise.
12571         * modules/getpass (Makefile.am): Likewise.
12572         * modules/getsubopt (Makefile.am): Likewise.
12573         * modules/gettime (Makefile.am): Likewise.
12574         * modules/gettimeofday (Makefile.am): Likewise.
12575         * modules/getugroups (Makefile.am): Likewise.
12576         * modules/getusershell (Makefile.am): Likewise.
12577         * modules/glob (Makefile.am): Likewise.
12578         * modules/group-member (Makefile.am): Likewise.
12579         * modules/hard-locale (Makefile.am): Likewise.
12580         * modules/hash (Makefile.am): Likewise.
12581         * modules/hmac-md5 (Makefile.am): Likewise.
12582         * modules/hmac-sha1 (Makefile.am): Likewise.
12583         * modules/human (Makefile.am): Likewise.
12584         * modules/idcache (Makefile.am): Likewise.
12585         * modules/imaxabs (Makefile.am): Likewise.
12586         * modules/imaxdiv (Makefile.am): Likewise.
12587         * modules/inet_ntop (Makefile.am): Likewise.
12588         * modules/inet_pton (Makefile.am): Likewise.
12589         * modules/intprops (Makefile.am): Likewise.
12590         * modules/inttostr (Makefile.am): Likewise.
12591         * modules/inttypes (Makefile.am): Likewise.
12592         * modules/isapipe (Makefile.am): Likewise.
12593         * modules/javaversion (Makefile.am): Likewise.
12594         * modules/lchmod (Makefile.am): Likewise.
12595         * modules/lchown (Makefile.am): Likewise.
12596         * modules/localcharset (Makefile.am): Likewise.
12597         * modules/long-options (Makefile.am): Likewise.
12598         * modules/lstat (Makefile.am): Likewise.
12599         * modules/malloc (Makefile.am): Likewise.
12600         * modules/mathl (Makefile.am): Likewise.
12601         * modules/mbchar (Makefile.am): Likewise.
12602         * modules/md2 (Makefile.am): Likewise.
12603         * modules/md4 (Makefile.am): Likewise.
12604         * modules/md5 (Makefile.am): Likewise.
12605         * modules/memcasecmp (Makefile.am): Likewise.
12606         * modules/memchr (Makefile.am): Likewise.
12607         * modules/memcmp (Makefile.am): Likewise.
12608         * modules/memcoll (Makefile.am): Likewise.
12609         * modules/memcpy (Makefile.am): Likewise.
12610         * modules/memmem (Makefile.am): Likewise.
12611         * modules/memmove (Makefile.am): Likewise.
12612         * modules/mempcpy (Makefile.am): Likewise.
12613         * modules/memrchr (Makefile.am): Likewise.
12614         * modules/memset (Makefile.am): Likewise.
12615         * modules/memxor (Makefile.am): Likewise.
12616         * modules/mkancesdirs (Makefile.am): Likewise.
12617         * modules/mkdir-p (Makefile.am): Likewise.
12618         * modules/mkdir (Makefile.am): Likewise.
12619         * modules/mkdtemp (Makefile.am): Likewise.
12620         * modules/mkstemp (Makefile.am): Likewise.
12621         * modules/mktime (Makefile.am): Likewise.
12622         * modules/modechange (Makefile.am): Likewise.
12623         * modules/mountlist (Makefile.am): Likewise.
12624         * modules/nanosleep (Makefile.am): Likewise.
12625         * modules/obstack (Makefile.am): Likewise.
12626         * modules/openat (Makefile.am): Likewise.
12627         * modules/pagealign_alloc (Makefile.am): Likewise.
12628         * modules/pathmax (Makefile.am): Likewise.
12629         * modules/physmem (Makefile.am): Likewise.
12630         * modules/poll (Makefile.am): Likewise.
12631         * modules/posixtm (Makefile.am): Likewise.
12632         * modules/posixver (Makefile.am): Likewise.
12633         * modules/putenv (Makefile.am): Likewise.
12634         * modules/quote (Makefile.am): Likewise.
12635         * modules/quotearg (Makefile.am): Likewise.
12636         * modules/raise (Makefile.am): Likewise.
12637         * modules/read-file (Makefile.am): Likewise.
12638         * modules/readline (Makefile.am): Likewise.
12639         * modules/readlink (Makefile.am): Likewise.
12640         * modules/readtokens (Makefile.am): Likewise.
12641         * modules/readutmp (Makefile.am): Likewise.
12642         * modules/realloc (Makefile.am): Likewise.
12643         * modules/regex (Makefile.am): Likewise.
12644         * modules/rename-dest-slash (Makefile.am): Likewise.
12645         * modules/rename (Makefile.am): Likewise.
12646         * modules/rijndael (Makefile.am): Likewise.
12647         * modules/rmdir (Makefile.am): Likewise.
12648         * modules/rpmatch (Makefile.am): Likewise.
12649         * modules/safe-read (Makefile.am): Likewise.
12650         * modules/safe-write (Makefile.am): Likewise.
12651         * modules/same-inode (Makefile.am): Likewise.
12652         * modules/same (Makefile.am): Likewise.
12653         * modules/save-cwd (Makefile.am): Likewise.
12654         * modules/savedir (Makefile.am): Likewise.
12655         * modules/setenv (Makefile.am): Likewise.
12656         * modules/settime (Makefile.am): Likewise.
12657         * modules/sha1 (Makefile.am): Likewise.
12658         * modules/sig2str (Makefile.am): Likewise.
12659         * modules/snprintf (Makefile.am): Likewise.
12660         * modules/stat-macros (Makefile.am): Likewise.
12661         * modules/stat-time (Makefile.am): Likewise.
12662         * modules/stdbool (Makefile.am): Likewise.
12663         * modules/stdint (Makefile.am): Likewise.
12664         * modules/stdlib-safer (Makefile.am): Likewise.
12665         * modules/stpcpy (Makefile.am): Likewise.
12666         * modules/stpncpy (Makefile.am): Likewise.
12667         * modules/strcase (Makefile.am): Likewise.
12668         * modules/strcasestr (Makefile.am): Likewise.
12669         * modules/strchrnul (Makefile.am): Likewise.
12670         * modules/strcspn (Makefile.am): Likewise.
12671         * modules/strdup (Makefile.am): Likewise.
12672         * modules/strerror (Makefile.am): Likewise.
12673         * modules/strftime (Makefile.am): Likewise.
12674         * modules/strndup (Makefile.am): Likewise.
12675         * modules/strnlen (Makefile.am): Likewise.
12676         * modules/strpbrk (Makefile.am): Likewise.
12677         * modules/strsep (Makefile.am): Likewise.
12678         * modules/strstr (Makefile.am): Likewise.
12679         * modules/strtod (Makefile.am): Likewise.
12680         * modules/strtoimax (Makefile.am): Likewise.
12681         * modules/strtok_r (Makefile.am): Likewise.
12682         * modules/strtol (Makefile.am): Likewise.
12683         * modules/strtoll (Makefile.am): Likewise.
12684         * modules/strtoul (Makefile.am): Likewise.
12685         * modules/strtoull (Makefile.am): Likewise.
12686         * modules/strtoumax (Makefile.am): Likewise.
12687         * modules/strverscmp (Makefile.am): Likewise.
12688         * modules/sys_socket (Makefile.am): Likewise.
12689         * modules/sys_stat (Makefile.am): Likewise.
12690         * modules/sysexits (Makefile.am): Likewise.
12691         * modules/time_r (Makefile.am): Likewise.
12692         * modules/timegm (Makefile.am): Likewise.
12693         * modules/timespec (Makefile.am): Likewise.
12694         * modules/tmpfile-safer (Makefile.am): Likewise.
12695         * modules/trim (Makefile.am): Likewise.
12696         * modules/unistd-safer (Makefile.am): Likewise.
12697         * modules/unlinkdir (Makefile.am): Likewise.
12698         * modules/unlocked-io (Makefile.am): Likewise.
12699         * modules/userspec (Makefile.am): Likewise.
12700         * modules/utime (Makefile.am): Likewise.
12701         * modules/utimecmp (Makefile.am): Likewise.
12702         * modules/utimens (Makefile.am): Likewise.
12703         * modules/vasnprintf (Makefile.am): Likewise.
12704         * modules/vasprintf (Makefile.am): Likewise.
12705         * modules/vsnprintf (Makefile.am): Likewise.
12706         * modules/xalloc (Makefile.am): Likewise.
12707         * modules/xgetcwd (Makefile.am): Likewise.
12708         * modules/xnanosleep (Makefile.am): Likewise.
12709         * modules/xreadlink (Makefile.am): Likewise.
12710         * modules/xstrtod (Makefile.am): Likewise.
12711         * modules/xstrtol (Makefile.am): Likewise.
12712         * modules/xstrtold (Makefile.am): Likewise.
12713         * modules/yesno (Makefile.am): Likewise.
12714         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
12715
12716 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12717
12718         * modules/error (Makefile.am): Distribute files through
12719         EXTRA_DIST, not lib_SOURCES.
12720
12721 2006-10-12  Eric Blake  <ebb9@byu.net>
12722
12723         * modules/error (Makefile.am): Distribute files in /lib.
12724         * modules/obstack (Makefile.am): Likewise.
12725
12726 2006-10-12  Bruno Haible  <bruno@clisp.org>
12727
12728         * modules/acl (Makefile.am): Distribute all files in lib/ through
12729         EXTRA_DIST.
12730         * modules/arcfour (Makefile.am): Likewise.
12731         * modules/arctwo (Makefile.am): Likewise.
12732         * modules/argmatch (Makefile.am): Likewise.
12733         * modules/argz (Makefile.am): Likewise.
12734         * modules/atexit (Makefile.am): Likewise.
12735         * modules/backupfile (Makefile.am): Likewise.
12736         * modules/c-strtod (Makefile.am): Likewise.
12737         * modules/c-strtold (Makefile.am): Likewise.
12738         * modules/calloc (Makefile.am): Likewise.
12739         * modules/canon-host (Makefile.am): Likewise.
12740         * modules/canonicalize (Makefile.am): Likewise.
12741         * modules/chdir-long (Makefile.am): Likewise.
12742         * modules/chdir-safer (Makefile.am): Likewise.
12743         * modules/check-version (Makefile.am): Likewise.
12744         * modules/chown (Makefile.am): Likewise.
12745         * modules/cloexec (Makefile.am): Likewise.
12746         * modules/close-stream (Makefile.am): Likewise.
12747         * modules/closeout (Makefile.am): Likewise.
12748         * modules/crc (Makefile.am): Likewise.
12749         * modules/cycle-check (Makefile.am): Likewise.
12750         * modules/des (Makefile.am): Likewise.
12751         * modules/dirfd (Makefile.am): Likewise.
12752         * modules/dirname (Makefile.am): Likewise.
12753         * modules/dup2 (Makefile.am): Likewise.
12754         * modules/euidaccess (Makefile.am): Likewise.
12755         * modules/exclude (Makefile.am): Likewise.
12756         * modules/exitfail (Makefile.am): Likewise.
12757         * modules/fcntl-safer (Makefile.am): Likewise.
12758         * modules/file-type (Makefile.am): Likewise.
12759         * modules/fileblocks (Makefile.am): Likewise.
12760         * modules/filemode (Makefile.am): Likewise.
12761         * modules/filenamecat (Makefile.am): Likewise.
12762         * modules/fnmatch (Makefile.am): Likewise.
12763         * modules/fopen-safer (Makefile.am): Likewise.
12764         * modules/fpending (Makefile.am): Likewise.
12765         * modules/fprintftime (Makefile.am): Likewise.
12766         * modules/free (Makefile.am): Likewise.
12767         * modules/fsusage (Makefile.am): Likewise.
12768         * modules/ftruncate (Makefile.am): Likewise.
12769         * modules/fts (Makefile.am): Likewise.
12770         * modules/gc (Makefile.am): Likewise.
12771         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
12772         * modules/getaddrinfo (Makefile.am): Likewise.
12773         * modules/getcwd (Makefile.am): Likewise.
12774         * modules/getdelim (Makefile.am): Likewise.
12775         * modules/getdomainname (Makefile.am): Likewise.
12776         * modules/getgroups (Makefile.am): Likewise.
12777         * modules/gethostname (Makefile.am): Likewise.
12778         * modules/gethrxtime (Makefile.am): Likewise.
12779         * modules/getline (Makefile.am): Likewise.
12780         * modules/getloadavg (Makefile.am): Likewise.
12781         * modules/getlogin_r (Makefile.am): Likewise.
12782         * modules/getopt (Makefile.am): Likewise.
12783         * modules/getpass (Makefile.am): Likewise.
12784         * modules/getpass-gnu (Makefile.am): Likewise.
12785         * modules/getsubopt (Makefile.am): Likewise.
12786         * modules/gettime (Makefile.am): Likewise.
12787         * modules/gettimeofday (Makefile.am): Likewise.
12788         * modules/getugroups (Makefile.am): Likewise.
12789         * modules/getusershell (Makefile.am): Likewise.
12790         * modules/glob (Makefile.am): Likewise.
12791         * modules/group-member (Makefile.am): Likewise.
12792         * modules/hard-locale (Makefile.am): Likewise.
12793         * modules/hash (Makefile.am): Likewise.
12794         * modules/hmac-md5 (Makefile.am): Likewise.
12795         * modules/hmac-sha1 (Makefile.am): Likewise.
12796         * modules/human (Makefile.am): Likewise.
12797         * modules/idcache (Makefile.am): Likewise.
12798         * modules/imaxabs (Makefile.am): Likewise.
12799         * modules/imaxdiv (Makefile.am): Likewise.
12800         * modules/inet_ntop (Makefile.am): Likewise.
12801         * modules/inet_pton (Makefile.am): Likewise.
12802         * modules/inttostr (Makefile.am): Likewise.
12803         * modules/isapipe (Makefile.am): Likewise.
12804         * modules/lchown (Makefile.am): Likewise.
12805         * modules/long-options (Makefile.am): Likewise.
12806         * modules/lstat (Makefile.am): Likewise.
12807         * modules/malloc (Makefile.am): Likewise.
12808         * modules/mathl (Makefile.am): Likewise.
12809         * modules/mbchar (Makefile.am): Likewise.
12810         * modules/md2 (Makefile.am): Likewise.
12811         * modules/md4 (Makefile.am): Likewise.
12812         * modules/md5 (Makefile.am): Likewise.
12813         * modules/memcasecmp (Makefile.am): Likewise.
12814         * modules/memchr (Makefile.am): Likewise.
12815         * modules/memcmp (Makefile.am): Likewise.
12816         * modules/memcoll (Makefile.am): Likewise.
12817         * modules/memcpy (Makefile.am): Likewise.
12818         * modules/memmem (Makefile.am): Likewise.
12819         * modules/memmove (Makefile.am): Likewise.
12820         * modules/mempcpy (Makefile.am): Likewise.
12821         * modules/memrchr (Makefile.am): Likewise.
12822         * modules/memset (Makefile.am): Likewise.
12823         * modules/memxor (Makefile.am): Likewise.
12824         * modules/mkancesdirs (Makefile.am): Likewise.
12825         * modules/mkdir (Makefile.am): Likewise.
12826         * modules/mkdir-p (Makefile.am): Likewise.
12827         * modules/mkdtemp (Makefile.am): Likewise.
12828         * modules/mkstemp (Makefile.am): Likewise.
12829         * modules/mktime (Makefile.am): Likewise.
12830         * modules/modechange (Makefile.am): Likewise.
12831         * modules/mountlist (Makefile.am): Likewise.
12832         * modules/nanosleep (Makefile.am): Likewise.
12833         * modules/openat (Makefile.am): Likewise.
12834         * modules/pagealign_alloc (Makefile.am): Likewise.
12835         * modules/physmem (Makefile.am): Likewise.
12836         * modules/poll (Makefile.am): Likewise.
12837         * modules/posixtm (Makefile.am): Likewise.
12838         * modules/posixver (Makefile.am): Likewise.
12839         * modules/putenv (Makefile.am): Likewise.
12840         * modules/quote (Makefile.am): Likewise.
12841         * modules/quotearg (Makefile.am): Likewise.
12842         * modules/raise (Makefile.am): Likewise.
12843         * modules/read-file (Makefile.am): Likewise.
12844         * modules/readline (Makefile.am): Likewise.
12845         * modules/readlink (Makefile.am): Likewise.
12846         * modules/readtokens (Makefile.am): Likewise.
12847         * modules/readutmp (Makefile.am): Likewise.
12848         * modules/realloc (Makefile.am): Likewise.
12849         * modules/regex (Makefile.am): Likewise.
12850         * modules/rename (Makefile.am): Likewise.
12851         * modules/rename-dest-slash (Makefile.am): Likewise.
12852         * modules/rijndael (Makefile.am): Likewise.
12853         * modules/rmdir (Makefile.am): Likewise.
12854         * modules/rpmatch (Makefile.am): Likewise.
12855         * modules/safe-read (Makefile.am): Likewise.
12856         * modules/safe-write (Makefile.am): Likewise.
12857         * modules/same (Makefile.am): Likewise.
12858         * modules/save-cwd (Makefile.am): Likewise.
12859         * modules/savedir (Makefile.am): Likewise.
12860         * modules/setenv (Makefile.am): Likewise.
12861         * modules/settime (Makefile.am): Likewise.
12862         * modules/sha1 (Makefile.am): Likewise.
12863         * modules/sig2str (Makefile.am): Likewise.
12864         * modules/snprintf (Makefile.am): Likewise.
12865         * modules/stdlib-safer (Makefile.am): Likewise.
12866         * modules/stpcpy (Makefile.am): Likewise.
12867         * modules/stpncpy (Makefile.am): Likewise.
12868         * modules/strcase (Makefile.am): Likewise.
12869         * modules/strcasestr (Makefile.am): Likewise.
12870         * modules/strchrnul (Makefile.am): Likewise.
12871         * modules/strcspn (Makefile.am): Likewise.
12872         * modules/strdup (Makefile.am): Likewise.
12873         * modules/strerror (Makefile.am): Likewise.
12874         * modules/strftime (Makefile.am): Likewise.
12875         * modules/strndup (Makefile.am): Likewise.
12876         * modules/strnlen (Makefile.am): Likewise.
12877         * modules/strpbrk (Makefile.am): Likewise.
12878         * modules/strsep (Makefile.am): Likewise.
12879         * modules/strstr (Makefile.am): Likewise.
12880         * modules/strtod (Makefile.am): Likewise.
12881         * modules/strtoimax (Makefile.am): Likewise.
12882         * modules/strtok_r (Makefile.am): Likewise.
12883         * modules/strtol (Makefile.am): Likewise.
12884         * modules/strtoll (Makefile.am): Likewise.
12885         * modules/strtoul (Makefile.am): Likewise.
12886         * modules/strtoull (Makefile.am): Likewise.
12887         * modules/strtoumax (Makefile.am): Likewise.
12888         * modules/strverscmp (Makefile.am): Likewise.
12889         * modules/time_r (Makefile.am): Likewise.
12890         * modules/timegm (Makefile.am): Likewise.
12891         * modules/tmpfile-safer (Makefile.am): Likewise.
12892         * modules/unistd-safer (Makefile.am): Likewise.
12893         * modules/unlinkdir (Makefile.am): Likewise.
12894         * modules/userspec (Makefile.am): Likewise.
12895         * modules/utime (Makefile.am): Likewise.
12896         * modules/utimecmp (Makefile.am): Likewise.
12897         * modules/utimens (Makefile.am): Likewise.
12898         * modules/vasnprintf (Makefile.am): Likewise.
12899         * modules/vasprintf (Makefile.am): Likewise.
12900         * modules/vsnprintf (Makefile.am): Likewise.
12901         * modules/xalloc (Makefile.am): Likewise.
12902         * modules/xgetcwd (Makefile.am): Likewise.
12903         * modules/xnanosleep (Makefile.am): Likewise.
12904         * modules/xreadlink (Makefile.am): Likewise.
12905         * modules/xstrtod (Makefile.am): Likewise.
12906         * modules/xstrtol (Makefile.am): Likewise.
12907         * modules/xstrtold (Makefile.am): Likewise.
12908         * modules/yesno (Makefile.am): Likewise.
12909
12910 2006-10-12  Jim Meyering  <jim@meyering.net>
12911
12912         * m4/getloadavg.m4: Revert the change below.
12913
12914         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
12915         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
12916         fail with a symlink, which is what coreutils' ./bootstrap now
12917         creates by default.
12918
12919 2006-10-12  Bruno Haible  <bruno@clisp.org>
12920
12921         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
12922         mingw.
12923         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
12924         MSVC and mingw explicitly.
12925
12926 2006-10-11  Simon Josefsson  <jas@extundo.com>
12927             Bruno Haible  <bruno@clisp.org>
12928
12929         Add support for multiple gnulib-tool invocations in the scope of a
12930         single configure.ac file.
12931         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
12932         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
12933         with the same contents as the _LIBADD variable.
12934         (func_emit_initmacro_start, func_emit_initmacro_end,
12935         func_emit_initmacro_done): New functions.
12936         (func_import, func_create_testdir): Invoke them. Allow the identifiers
12937         gl_LIBOBJS and gl_LTLIBOBJS.
12938
12939 2006-10-11  Bruno Haible  <bruno@clisp.org>
12940
12941         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
12942         (func_create_testdir): Don't create po/Makefile.am, don't invoke
12943         autoreconf. Instead, invoke autopoint explicitly but move back the
12944         *.m4 files from gnulib.
12945
12946 2006-10-11  Bruno Haible  <bruno@clisp.org>
12947
12948         * gnulib-tool (func_usage): Make module names after --create-testdir
12949         optional.
12950         (func_create_testdir): If no module was specified, use nearly all
12951         modules.
12952
12953 2006-10-12  Jim Meyering  <jim@meyering.net>
12954
12955         Big performance improvement for fts-based tools that use FTS_NOSTAT.
12956         Avoid spurious inode-mismatch problems on non-POSIX file systems.
12957         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
12958         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
12959         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
12960         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
12961         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
12962         (fts_set_stat_required): New function.
12963         (fts_open): Defer the calls to fts_stat, if possible or requested.
12964         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
12965         into fts_stat itself.
12966         (fts_read): Perform any required (deferred) fts_stat call.
12967         (fts_build): Likewise, for the directory we're about to open and read.
12968         In the readdir loop, carefully decide whether each entry will require
12969         an eventual call to fts_stat, using dirent.d_type info if available.
12970         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
12971         a command line argument into this function.  Update all callers.
12972         Map a return value of FTS_DOT to FTS_D for a command line argument.
12973         * modules/fts (Depends-on): Add d-type.  Alphabetize.
12974         Thanks to Miklos Szeredi for his tenacity and for the initial
12975         bug report about "find" failing on a FUSE-based file system.
12976
12977         * lib/fts.c (fts_open): Use consistent indentation.
12978
12979 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12980
12981         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
12982         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
12983         reported by Jim Meyering.  All uses of cache variables renamed
12984         to match Autoconf's.
12985         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
12986         the other one.
12987
12988         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
12989         Fix misspelling in diagnostic.
12990
12991 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12992
12993         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
12994         defined.  Problem reported by Matthew Woehlke.
12995
12996         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
12997         Add support for Tandem NonStop R series.
12998         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
12999         Use new macro.
13000
13001         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
13002         (has_trailing_slash): Omit size arg; all callers changed.
13003         Omit 'inline', since it doesn't help performance and we'd
13004         need to configure it.
13005         Don't count //, ///, etc. as having a trailing slash.
13006         As a side effect, this removes a C99ism reported by Matthew Woehlke.
13007         (rpl_rename_dest_slash): On failure, use rename's errno rather
13008         than (in some cases) an incorrect or junk errno.
13009         Simplify code by removing need to compute length; this does
13010         cause it to make two passes instead of one over the file name,
13011         but it's worth it.
13012
13013         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
13014         change, since Autoconf's version may no longer be appropriate now
13015         that we are using CVS Autoconf's version.  Add support for Tandem.
13016
13017 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
13018             Bruno Haible  <bruno@clisp.org>
13019
13020         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
13021         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
13022         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
13023         gl_AC_TYPE_LONG_LONG.
13024
13025         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
13026         instead of HAVE_LONG_LONG.
13027         * lib/printf-args.c (printf_fetchargs): Likewise.
13028         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
13029         * lib/vasnprintf.c (VASNPRINTF): Likewise.
13030         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
13031         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
13032         gl_AC_TYPE_LONG_LONG.
13033
13034 2006-10-11  Bruno Haible  <bruno@clisp.org>
13035
13036         * m4/longlong.m4: Add comments.
13037         * m4/ulonglong.m4: Likewise.
13038
13039 2006-10-10  Bruno Haible  <bruno@clisp.org>
13040
13041         Make it possible to #define stpcpy, strdup to aliases.
13042         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
13043         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
13044
13045 2006-10-10  Bruno Haible  <bruno@clisp.org>
13046
13047         Make it possible to #define gcd to an alias.
13048         * lib/gcd.c: Include config.h.
13049
13050 2006-10-10  Bruno Haible  <bruno@clisp.org>
13051
13052         Make it possible to #define c_isascii to an alias.
13053         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
13054         defined. Undefine the macros before defining them, to avoid gcc
13055         warnings.
13056         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
13057         define NO_C_CTYPE_MACROS early.
13058
13059 2006-10-10  Bruno Haible  <bruno@clisp.org>
13060
13061         Make it possible to #define set_program_name to an alias.
13062         * lib/progname.c: Don't undefine set_program_name; instead, undefine
13063         ENABLE_RELOCATABLE early.
13064
13065 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
13066
13067         Port to Tandem NSK OSS, which has 64-bit signed int but at most
13068         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
13069         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
13070         More generally, don't assume that 64-bit signed int is available
13071         if unsigned int is, and vice versa.
13072         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
13073         unsigned symbols, not on their signed counterparts.
13074         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
13075         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
13076         (UINT64_C, UINTMAX_C):
13077         Likewise.
13078         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
13079         unsigned counterparts.
13080         (Have_long_long, Unsigned): New macros.
13081         (Int): Renamed from INT.
13082         (strtoimax): Use the new macros.
13083         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
13084         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
13085         * modules/inttypes (inttypes.h): Substitute
13086         HAVE_UNSIGNED_LONG_LONG_INT.
13087         * modules/stdint (stdint.h): Likewise.
13088         (Files): Add m4/ulonglong.m4.
13089
13090 2006-10-10  Bruno Haible  <bruno@clisp.org>
13091
13092         Fix a gcc -Wshadow warning.
13093         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
13094         to 'bucket'.
13095         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
13096         gl_linked_indexof_from_to): Likewise.
13097         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
13098         Likewise.
13099         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
13100         Likewise.
13101         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
13102         Reported by Eric Blake.
13103
13104 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
13105
13106         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
13107         for NetBSD.  Problem reported by Bruno Haible.
13108
13109 2006-10-09  Jim Meyering  <jim@meyering.net>
13110
13111         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
13112         Patch from Bruno Haible.
13113
13114 2006-10-09  Jim Meyering  <jim@meyering.net>
13115
13116         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
13117         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
13118         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
13119
13120 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
13121
13122         Don't include <config.h> twice; this doesn't work in some cases,
13123         e.g., when config.h has "#define intmax_t long long int" and
13124         we include <config.h>, <inttypes.h>, <config.h> in that order.
13125         Problem reported by Matthew Woehlke in:
13126         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
13127         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
13128         * lib/fts-cycle.c: Don't include config.h.
13129         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
13130         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
13131         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
13132         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
13133         inttypes.h.
13134         * lib/xstrtoumax.c: Likewise.
13135         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
13136         __strtol and the like, so that this module is more like its siblings.
13137         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
13138         Remove; no longer needed now that we assume gnulib inttypes.h.
13139
13140 2006-10-08  Bruno Haible  <bruno@clisp.org>
13141
13142         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
13143         option.
13144
13145 2006-10-07  Jim Meyering  <jim@meyering.net>
13146
13147         * modules/inttypes (inttypes.h): Revert what seems to have been
13148         an inadvertent part of today's change: use "|", not "/" in the
13149         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
13150
13151 2006-10-07  Bruno Haible  <bruno@clisp.org>
13152
13153         * modules/sublist: New file.
13154
13155 2006-10-07  Bruno Haible  <bruno@clisp.org>
13156
13157         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
13158         * modules/argz (argz.h): Likewise.
13159         * modules/arpa_inet (arpa/inet.h): Likewise.
13160         * modules/byteswap (byteswap.h): Likewise.
13161         * modules/configmake (configmake.h): Likewise.
13162         * modules/fcntl (fcntl.h): Likewise.
13163         * modules/fnmatch (fnmatch.h): Likewise.
13164         * modules/getopt (getopt.h): Likewise.
13165         * modules/glob (glob.h): Likewise.
13166         * modules/inttypes (inttypes.h): Likewise.
13167         * modules/netinet_in (netinet/in.h): Likewise.
13168         * modules/poll (poll.h): Likewise.
13169         * modules/stdbool (stdbool.h): Likewise.
13170         * modules/stdint (stdint.h): Likewise.
13171         * modules/sys_select (sys/select.h): Likewise.
13172         * modules/sys_socket (sys/socket.h): Likewise.
13173         * modules/sys_stat (sys/stat.h): Likewise.
13174         * modules/sysexits (sysexits.h): Likewise.
13175         * modules/unistd (unistd.h): Likewise.
13176         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
13177         Add a "DO NOT EDIT" comment to the generated file.
13178         (func_import): Likewise for gnulib-comp.m4.
13179
13180 2006-10-07  Bruno Haible  <bruno@clisp.org>
13181
13182         * lib/gl_sublist.h: New file.
13183         * lib/gl_sublist.c: New file.
13184
13185 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
13186
13187         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
13188         name (relative to the original working directory) and the file
13189         name component (relative to the temporary working directory).  All
13190         callers changed.
13191         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
13192         * lib/mkdir-p.c (make_dir_parents): Likewise.
13193         * lib/mkdir-p.h (make_dir_parents): Likewise.
13194
13195 2006-10-06  Eric Blake  <ebb9@byu.net>
13196
13197         Define several macros for use by the clean-temp module.
13198         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
13199         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
13200         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
13201
13202         * lib/clean-temp.h (close_stream_temp): New declaration.
13203         * lib/clean-temp.c (includes): Pull in headers according to what
13204         other modules are in use.
13205         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
13206
13207 2006-10-06  Bruno Haible  <bruno@clisp.org>
13208
13209         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
13210         instead of fopen, fwriteerror.
13211
13212 2006-10-06  Bruno Haible  <bruno@clisp.org>
13213
13214         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
13215         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
13216         int.
13217         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
13218         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
13219         Return an error indicator.
13220         Suggested by Eric Blake.
13221
13222 2006-10-06  Bruno Haible  <bruno@clisp.org>
13223
13224         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
13225         Reported by Eric Blake.
13226
13227 2006-10-06  Bruno Haible  <bruno@clisp.org>
13228
13229         * modules/closeout (Description): Mention stderr too.
13230
13231 2006-10-06  Bruno Haible  <bruno@clisp.org>
13232         and Paul Eggert  <eggert@cs.ucla.edu>
13233
13234         * lib/closeout.c (close_stdout): Also close stderr.
13235         * lib/closeout.h: Update comment.
13236
13237 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
13238
13239         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
13240         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
13241         * lib/dirchownmod.c: Include lchown.h.
13242         * lib/lchown.c: Don't include files that lchown.h now includes.
13243         Don't declare chown, since lchown.h now does that.
13244         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
13245         (lchown): Define to rpl_chown if lchown is declared but
13246         does not exist.  Declare using a prototype if lchown is not
13247         declared.  Add a copyright notice.
13248         * lib/mkstemp.h: Include <unistd.h>.
13249         * lib/openat.c: Include lchown.h.
13250
13251         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
13252         we now test for that separately.
13253         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
13254         rather than O_NOFOLLOW, when testing whether it's possible to
13255         avoid a race condition reliably.
13256         * lib/savewd.c (savewd_chdir): Likewise.
13257
13258         Remove macros that are no longer needed now that stdint.h is
13259         reliable.
13260         * lib/fsusage.c (UINTMAX_MAX): Remove.
13261         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
13262         * lib/utimecmp.c (SIZE_MAX): Remove.
13263
13264         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
13265
13266         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
13267         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
13268         O_NOATIME works.
13269
13270 2006-10-05  Bruno Haible  <bruno@clisp.org>
13271
13272         * lib/gl_list.h (gl_sortedlist_search_from_to,
13273         gl_sortedlist_indexof_from_to): New declarations.
13274         (gl_list_implementation): New fields sortedlist_search_from_to,
13275         sortedlist_indexof_from_to.
13276         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
13277         inline functions.
13278         * lib/gl_list.c (gl_sortedlist_search_from_to,
13279         gl_sortedlist_indexof_from_to): New functions.
13280         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
13281         function.
13282         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
13283         (gl_array_sortedlist_search_from_to): New function.
13284         (gl_array_list_implementation): Update.
13285         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
13286         function.
13287         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
13288         (gl_carray_sortedlist_search_from_to): New function.
13289         (gl_carray_list_implementation): Update.
13290         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
13291         gl_linked_sortedlist_indexof_from_to): New functions.
13292         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
13293         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
13294         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
13295         gl_tree_sortedlist_indexof_from_to): New functions.
13296         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
13297         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
13298         Update.
13299         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
13300         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
13301         Update.
13302
13303 2006-10-05  Bruno Haible  <bruno@clisp.org>
13304
13305         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
13306         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
13307         (struct gl_list_implementation): Add fields search_from_to,
13308         indexof_from_to. Remove fields search, indexof.
13309         (gl_list_search): Use the search_from_to method.
13310         (gl_list_search_from, gl_list_search_from_to): New functions.
13311         (gl_list_indexof): Use the indexof_from_to method.
13312         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
13313         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
13314         (gl_list_search_from, gl_list_search_from_to): New functions.
13315         (gl_list_indexof): Use the indexof_from_to method.
13316         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
13317         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
13318         gl_array_indexof. Add start_index, end_index arguments.
13319         (gl_array_search_from_to): Renamed from gl_array_search. Add
13320         start_index, end_index arguments.
13321         (gl_array_remove, gl_array_list_implementation): Update.
13322         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
13323         gl_carray_indexof. Add start_index, end_index arguments.
13324         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
13325         start_index, end_index arguments.
13326         (gl_carray_remove, gl_carray_list_implementation): Update.
13327         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
13328         gl_linked_search. Add start_index, end_index arguments.
13329         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
13330         start_index, end_index arguments.
13331         (gl_linked_remove): Update.
13332         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
13333         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
13334         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
13335         field to 'size_t'.
13336         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
13337         gl_tree_search. Add start_index, end_index arguments.
13338         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
13339         start_index, end_index arguments.
13340         (gl_tree_remove): Update.
13341         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
13342         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
13343         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
13344         function.
13345         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
13346         gl_tree_search. Add start_index, end_index arguments.
13347         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
13348         start_index, end_index arguments.
13349         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
13350         Update.
13351         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
13352
13353 2006-10-05  Bruno Haible  <bruno@clisp.org>
13354
13355         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
13356
13357         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
13358         fwriteerror_temp): New declarations.
13359         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
13360         (descriptors): New variable.
13361         (cleanup): First, close the descriptors.
13362         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
13363         fclose_temp, fwriteerror_temp): New functions.
13364
13365 2006-10-04  Jim Meyering  <jim@meyering.net>
13366
13367         * lib/fts.c (fts_open): Tiny comment change.
13368
13369 2006-10-04  Bruno Haible  <bruno@clisp.org>
13370
13371         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
13372         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
13373         gl_LOCK_BODY.
13374         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
13375         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
13376         gl_LOCK_EARLY_BODY.
13377         (gl_LOCK): Require gl_LOCK_BODY.
13378
13379 2006-10-04  Bruno Haible  <bruno@clisp.org>
13380
13381         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
13382         (gl_oset_search_atleast): New declaration.
13383         (struct gl_oset_implementation): Add field 'search_atleast'.
13384         (gl_oset_search_atleast): New inline function.
13385         * lib/gl_oset.c (gl_oset_search_atleast): New function.
13386         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
13387         (gl_array_oset_implementation): Update.
13388         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
13389         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
13390         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
13391
13392 2006-10-04  Bruno Haible  <bruno@clisp.org>
13393
13394         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
13395
13396 2006-10-03  Bruno Haible  <bruno@clisp.org>
13397
13398         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
13399         from gl_avltreehash_list_implementation.
13400
13401 2006-10-03  Bruno Haible  <bruno@clisp.org>
13402
13403         * lib/gl_oset.c (gl_oset_add): Fix return type.
13404
13405 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
13406
13407         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
13408
13409 2006-10-02  Eric Blake  <ebb9@byu.net>
13410
13411         * modules/strnlen (Depends-on): Add extensions.
13412
13413 2006-10-02  Eric Blake  <ebb9@byu.net>
13414
13415         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
13416         definition in 2.60+.
13417
13418 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
13419
13420         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
13421         checks.
13422
13423 2006-10-02  Bruno Haible  <bruno@clisp.org>
13424
13425         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
13426         to the AUTOMAKE_OPTIONS.
13427         Reported by Jim Meyering.
13428
13429 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
13430
13431         Work around bug in Solaris 10 /proc file system:
13432         /proc/self/fd/NNN/.. isn't the parent directory of
13433         the directory whose file descriptor is NNN.  This needs to
13434         be worked around at run time, not compile time, since a
13435         program might be built on Solaris 8, where things work, and
13436         run on Solaris 10.
13437         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
13438         to use the following interface instead:
13439         (OPENAT_BUFFER_SIZE): New macro.
13440         (openat_proc_name): New function.
13441         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
13442         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
13443         Likewise.
13444         * lib/openat-proc.c: New file.
13445         * modules/openat (Files): Add lib/openat-proc.c.
13446         (Depends-on): Add same-inode, stdbool.
13447         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
13448
13449 2006-09-29  Bruno Haible  <bruno@clisp.org>
13450
13451         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
13452         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
13453         argument. Set stdout_closed before testing for ferror, not after.
13454         (fwriteerror, fwriteerror_no_ebadf): New functions.
13455
13456 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13457
13458         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
13459
13460 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
13461
13462         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
13463         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
13464
13465 2006-09-28  Jim Meyering  <jim@meyering.net>
13466
13467         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
13468         Include <unistd.h>.
13469
13470 2006-09-28  Bruno Haible  <bruno@clisp.org>
13471
13472         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
13473         * modules/linkedhash-list (Depends-on): Likewise.
13474         * modules/rbtreehash-list (Depends-on): Likewise.
13475
13476 2006-09-28  Bruno Haible  <bruno@clisp.org>
13477
13478         * lib/strndup.h: Simplify the redefinition of strndup.
13479         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
13480         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
13481
13482 2006-09-28  Bruno Haible  <bruno@clisp.org>
13483
13484         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
13485         * lib/gl_linkedhash_list.c: Likewise.
13486         * lib/gl_rbtreehash_list.c: Likewise.
13487
13488 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
13489
13490         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
13491         getaddrinfo.
13492
13493         * lib/__fpending.h: Don't include <stdio_ext.h> unless
13494         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
13495         it causes <stdio_ext.h> to cause a compile-time error.
13496         Problem reported by Nelson H. F. Beebe.
13497         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
13498         of HAVE_DECL___PENDING.
13499
13500         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
13501         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
13502         declaration.
13503
13504 2006-09-27  Jim Meyering  <jim@meyering.net>
13505
13506         This file could end up with a definition for a function
13507         named __strndup, rather than rpl_strndup on a system with
13508         incomplete weak_alias support.
13509         * lib/strndup.c (strndup): Rename from __strndup.
13510         Remove #defines that used to map __strndup to strndup.
13511         Don't use K&R prototypes.
13512         Remove LIBC-related code, since this file is not sync'd with glibc.
13513         * lib/strndup.h: Revamp, accordingly.
13514         * m4/strndup.m4: Modernize.
13515
13516 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
13517
13518         * modules/savewd (Depends-on): Add 'raise'.
13519         * lib/savewd.c: Include <signal.h>, for 'raise'.
13520
13521 2006-09-26  Jim Meyering  <jim@meyering.net>
13522
13523         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
13524         when we detect Darwin 8.7.0's acl_get_file bug.
13525         Rearrange to perform the new (below) run-test while $LIBS
13526         contains any acl-related library.  Set USE_ACL at the end.
13527         (gl_ACL_GET_FILE): New function.
13528
13529 2006-09-26  Eric Blake  <ebb9@byu.net>
13530
13531         * lib/verror.c: Include <config.h> unconditionally.
13532
13533 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
13534
13535         * modules/clock-time (Maintainer): Add self.
13536         * modules/getlogin_r (Depends-on): Add extensions.
13537
13538 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13539
13540         * modules/clock-time: New module.
13541         * modules/nanosleep (Depends-on): Add clock-time.
13542         * modules/gethrxtime (Depends-on): Likewise.
13543         * modules/gettime (Depends-on): Likewise.
13544         * modules/settime (Depends-on): Likewise.
13545
13546         * modules/fts-lgpl: Depend on openat.
13547         * modules/mkancesdirs: Depend on savewd.
13548         * modules/mkdir-p: Likewise.
13549
13550 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13551
13552         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
13553
13554         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
13555         `gl_have_arbitrary_file_name_length_limit' to
13556         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
13557         actually works between configure runs.
13558
13559 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13560             Bruno Haible  <bruno@clisp.org>
13561
13562         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
13563
13564 2006-09-25  Jim Meyering  <jim@meyering.net>
13565
13566         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
13567         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
13568
13569 2006-09-25  Eric Blake  <ebb9@byu.net>
13570
13571         * gnulib-tool (func_import, func_create_testdir): Fix typos in
13572         exec's in 2006-09-18 patch when shuffling fds.
13573
13574 2006-09-25  Bruno Haible  <bruno@clisp.org>
13575
13576         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
13577         Reported by Jim Meyering.
13578
13579 2006-09-24  Jim Meyering  <jim@meyering.net>
13580
13581         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
13582         compare a pointer against a literal "0".  That caused failures with
13583         at least HP-UX's hpcc.
13584
13585 2006-09-22  Simon Josefsson  <jas@extundo.com>
13586
13587         * modules/gc-sha1:
13588         * modules/gc-md4:
13589         * modules/gc-hmac-sha1:
13590         * modules/gc-hmac-md5:
13591         * modules/gc-des:
13592         * modules/gc-arcfour: Distribute more files.
13593
13594 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13595
13596         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
13597         (gl_linked_iterator_from_to): Initialize struct completely.
13598         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
13599         (gl_tree_iterator_from_to): Likewise
13600         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
13601         * lib/gl_array_list.c [lint] (gl_array_iterator)
13602         (gl_array_iterator_from_to): Likewise.
13603         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
13604         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
13605         (gl_carray_iterator_from_to): Likewise.
13606
13607         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
13608         * lib/md4.c (md4_process_block): Remove unused variable.
13609         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
13610         parentheses for clarity.
13611
13612 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13613
13614         * modules/bison-i18n (Depends-on): Add gettext.
13615
13616 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13617
13618         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
13619         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
13620         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
13621         also add missing comma that caused broken test.
13622         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
13623         stdlib.h, for `abort'.
13624         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
13625         variables.
13626         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
13627         include unistd.h if present, for `rmdir'.
13628         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
13629         variables.
13630         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
13631         in the process include standard headers for prototypes.
13632         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
13633         gets declared on GNU/Linux.
13634         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
13635         unistd.h, for `rmdir'.
13636         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
13637
13638         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
13639         always true.
13640         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
13641
13642         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
13643
13644 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13645
13646         * gnulib-tool (func_version): Create output all at once.  This
13647         may help avoid triggering unnecessary SIGPIPEs, and at any
13648         rate it doesn't hurt.
13649
13650 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13651             Bruno Haible  <bruno@clisp.org>
13652
13653         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
13654         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
13655         * m4/signed.m4 (bh_C_SIGNED): Likewise.
13656
13657         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
13658         (gl_FUNC_VASPRINTF): Invoke it.
13659
13660 2006-09-22  Bruno Haible  <bruno@clisp.org>
13661
13662         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
13663         getloadavg.c as first argument.
13664
13665 2006-09-22  Bruno Haible  <bruno@clisp.org>
13666
13667         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
13668         at the beginning of the gl_INIT macro.
13669         * modules/getloadavg (configure.ac): Pass $gl_source_base to
13670         gl_GETLOADAVG.
13671
13672 2006-09-22  Bruno Haible  <bruno@clisp.org>
13673
13674         * gnulib-tool (func_create_megatestdir): Don't include the config-h
13675         module.
13676         Suggested by Ralf Wildenhues.
13677
13678 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
13679
13680         Import this patch from libc:
13681
13682         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
13683
13684         * lib/regex_internal.c (re_string_reconstruct): Handle
13685         offset < pstr->valid_raw_len && pstr->offsets_needed case.
13686         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
13687         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
13688         re_string_context_at.
13689
13690         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
13691         now requires it.
13692         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
13693         gl_REGEX now does it for us.
13694         (gl_REGEX): Add test taken from
13695         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
13696
13697         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
13698         Check that large offsets work.  Modernize Autoconf usages.
13699         Prefer "yes" to mean a good thing rather than a bad.
13700         Don't put "#define mkstemp" in config.h, as this might interfere
13701         with standard system headers that "#define mkstemp mkstemp64".
13702
13703         * modules/mkstemp (Depends-on): Add extensions, so that
13704         mkstemp is visible on some platforms.
13705         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
13706         (Include): Change to "mkstemp.h" from <stdlib.h>.
13707         (Files): Add mkstemp.h.
13708
13709         * lib/mkstemp.h: New file, since some standard headers
13710         #define mkstemp.
13711         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
13712         Include "mkstemp.h".
13713         Make the _LIBC code resemble glibc original more,
13714         e.g., use K&R style.
13715         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
13716         (mkstemp): Remove, since mkstemp.h does this for us.
13717         * lib/stdlib--.h: Include mkstemp.h.
13718
13719         Import this patch from libc:
13720
13721         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
13722
13723         * lib/tempname.c (__gen_tempname): Change attempts_min
13724         into a macro.  Use preprocessor to decide how to initialize
13725         attempts [Coverity CID 67].
13726
13727 2006-09-20  Bruno Haible  <bruno@clisp.org>
13728
13729         * lib/mkdtemp.c: Import from libc.
13730         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
13731                 * sysdeps/posix/tempname.c (__gen_tempname): Change
13732                 attempts_min into a macro.  Use preprocessor to decide how to
13733                 initialize attempts [Coverity CID 67].
13734         2001-11-27  Paul Eggert  <eggert@twinsun.com>
13735                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
13736                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
13737
13738 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13739
13740         * gnulib-tool (func_exit): New function, to allow to pass the
13741         exit status portably through the trap.  Use everywhere.
13742         (--help, --version): Signal a write error.
13743         (trap): catch SIGPIPE, for write errors.
13744         Exit at the end of the trap, with the correct exit status.
13745
13746 2006-09-19  Karl Berry  <karl@gnu.org>
13747
13748         * doc/gnulib.texi: note about the license texinfo files.
13749
13750 2006-09-19  Eric Blake  <ebb9@byu.net>
13751
13752         * gnulib-tool: Avoid space-tab.
13753
13754 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
13755
13756         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
13757         that prevented coreutils 6.1 from building.  Problem reported
13758         by Petter Reinholdtsen.
13759
13760 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
13761
13762         * gnulib-tool (avoidlist): Fix typo that broke options like
13763         --avoid=lock that are used by coreutils bootstrap.
13764
13765 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
13766
13767         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
13768         more systematically.
13769
13770 2006-09-18  Jim Meyering  <jim@meyering.net>
13771
13772         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
13773
13774 2006-09-18  Bruno Haible  <bruno@clisp.org>
13775
13776         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
13777
13778 2006-09-18  Bruno Haible  <bruno@clisp.org>
13779
13780         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
13781         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
13782         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
13783         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
13784         * m4/gettext.m4: Require autoconf >= 2.52.
13785         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
13786         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
13787         of gl_cv_header_inttypes_h.
13788
13789 2006-09-18  Bruno Haible  <bruno@clisp.org>
13790
13791         * lib/javaversion.c: Include configmake.h.
13792
13793 2006-09-18  Bruno Haible  <bruno@clisp.org>
13794
13795         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
13796         avoid that the while loops be executed in a subshell.
13797
13798 2006-09-18  Bruno Haible  <bruno@clisp.org>
13799
13800         * MODULES.html.sh (func_module): Break long lines.
13801         Suggested by Bruce Korb <bkorb@gnu.org>.
13802
13803 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13804
13805         Speed up by a factor of 1.12.
13806         * gnulib-tool (nl): New variable.
13807         (func_import): Rewrite include directive extraction to only read each
13808         directive once.
13809
13810 2006-09-17  Bruno Haible  <bruno@clisp.org>
13811
13812         * modules/javaversion (Makefile.am): Remove DEFS setting.
13813         (Depends-on): Add configmake, for PKGDATADIR definition.
13814
13815 2006-09-17  Bruno Haible  <bruno@clisp.org>
13816
13817         * gnulib-tool (func_create_testdir): Rewrite all files at once.
13818
13819 2006-09-17  Bruno Haible  <bruno@clisp.org>
13820
13821         * gnulib-tool (func_append): New function, stolen from libtool.m4.
13822         (func_modules_transitive_closure, func_modules_add_dummy,
13823         func_modules_to_filelist, func_import, func_create_testdir,
13824         func_create_megatestdir, ...): Use it wherever possible.
13825         Suggested by Ralf Wildenhues.
13826
13827 2006-09-16  Karl Berry  <karl@gnu.org>
13828
13829         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
13830         to avoid sectioning errors.
13831         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
13832         [ifinfo]: blank line after @center-ed titles.
13833         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
13834         Spell FSF address consistently with others.
13835         (These changes approved by rms.)
13836
13837 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13838
13839         Speed up by a factor of 1.61.
13840         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
13841         already checked module names again.
13842
13843 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13844
13845         Speed up by a factor of 1.13.
13846         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
13847         for new_files, and the input to func_add_or_update.
13848
13849 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13850
13851         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
13852         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
13853
13854 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13855
13856         * modules/mkancesdirs (Depends-on): Add fcntl.
13857         * modules/savewd: New file.
13858         * MODULES.html.sh (File system functions): Add savewd.
13859
13860         * modules/configmake (Makefile.am): Add support for the
13861         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
13862
13863 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13864
13865         * m4/savewd.m4: New file.
13866
13867 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13868
13869         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
13870         (dirchownmod): New arg FD.  All callers changed.
13871         Use FD rather than opening the directory ourself, as opening is
13872         now the caller's responsibility.
13873         * lib/dirchownmod.h: Likewise.
13874         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
13875         hosts that require <sys/types.h> before <sys/stat.h>.  Include
13876         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
13877         (test_dir): Remove.
13878         (mkancesdirs): Return length of prefix of FILE that has already
13879         been made, or -2 if there is a child doing the work.  Redo
13880         algorithm so that it is O(N) rather than O(N**2).  Optimize away
13881         ".", and treat ".." specially since it might stray back into
13882         already-created areas.  Use a subprocess if necessary.  New arg
13883         WD; all users changed.  MAKE_DIR function should now return 1
13884         if it creates a directory that is not readable.  Return -2 if
13885         a child process is spun off.
13886         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
13887         Adjust signature to match code.
13888         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
13889         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
13890         all users changed.
13891         * lib/savewd.c, lib/savewd.h: New files.
13892
13893 2006-09-15  Jim Meyering  <jim@meyering.net>
13894
13895         * modules/rename-dest-slash: New module.
13896         * MODULES.html.sh (posix_compat): Add it here.
13897
13898         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
13899
13900 2006-09-15  Jim Meyering  <jim@meyering.net>
13901
13902         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
13903         file.
13904
13905         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
13906
13907 2006-09-15  Jim Meyering  <jim@meyering.net>
13908
13909         * lib/rename-dest-slash.c (has_trailing_slash): Use
13910         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
13911         (rpl_rename_dest_slash): Perform the cheaper trailing slash
13912         test before testing whether SRC is a directory.
13913         Suggestions from Bruno Haible.
13914
13915         Avoid a warning about an unused variable.
13916         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
13917         into the #ifdef block where it's used.
13918
13919         * lib/rename-dest-slash.c: New file.
13920
13921 2006-09-14  Bruno Haible  <bruno@clisp.org>
13922
13923         * lib/allocsa.c: Include <config.h> unconditionally.
13924         * lib/asnprintf.c: Likewise.
13925         * lib/asprintf.c: Likewise.
13926         * lib/c-strcasecmp.c: Likewise.
13927         * lib/c-strcasestr.c: Likewise.
13928         * lib/c-strncasecmp.c: Likewise.
13929         * lib/c-strstr.c: Likewise.
13930         * lib/classpath.c: Likewise.
13931         * lib/clean-temp.c: Likewise.
13932         * lib/concatpath.c: Likewise.
13933         * lib/copy-file.c: Likewise.
13934         * lib/csharpcomp.c: Likewise.
13935         * lib/csharpexec.c: Likewise.
13936         * lib/execute.c: Likewise.
13937         * lib/fatal-signal.c: Likewise.
13938         * lib/findprog.c: Likewise.
13939         * lib/fwriteerror.c: Likewise.
13940         * lib/gl_array_list.c: Likewise.
13941         * lib/gl_array_oset.c: Likewise.
13942         * lib/gl_avltree_list.c: Likewise.
13943         * lib/gl_avltree_oset.c: Likewise.
13944         * lib/gl_avltreehash_list.c: Likewise.
13945         * lib/gl_carray_list.c: Likewise.
13946         * lib/gl_linked_list.c: Likewise.
13947         * lib/gl_linkedhash_list.c: Likewise.
13948         * lib/gl_list.c: Likewise.
13949         * lib/gl_oset.c: Likewise.
13950         * lib/gl_rbtree_list.c: Likewise.
13951         * lib/gl_rbtree_oset.c: Likewise.
13952         * lib/gl_rbtreehash_list.c: Likewise.
13953         * lib/imaxabs.c: Likewise.
13954         * lib/imaxdiv.c: Likewise.
13955         * lib/javacomp.c: Likewise.
13956         * lib/javaexec.c: Likewise.
13957         * lib/javaversion.c: Likewise.
13958         * lib/linebreak.c: Likewise.
13959         * lib/localcharset.c: Likewise.
13960         * lib/lock.c: Likewise.
13961         * lib/mbchar.c: Likewise.
13962         * lib/mbswidth.c: Likewise.
13963         * lib/mkdtemp.c: Likewise.
13964         * lib/pipe.c: Likewise.
13965         * lib/printf-args.c: Likewise.
13966         * lib/printf-parse.c: Likewise.
13967         * lib/progname.c: Likewise.
13968         * lib/progreloc.c: Likewise.
13969         * lib/readlink.c: Likewise.
13970         * lib/sh-quote.c: Likewise.
13971         * lib/stpcpy.c: Likewise.
13972         * lib/stpncpy.c: Likewise.
13973         * lib/strcasecmp.c: Likewise.
13974         * lib/strcasestr.c: Likewise.
13975         * lib/strcspn.c: Likewise.
13976         * lib/striconv.c: Likewise.
13977         * lib/strncasecmp.c: Likewise.
13978         * lib/strnlen1.c: Likewise.
13979         * lib/strstr.c: Likewise.
13980         * lib/strtok_r.c: Likewise.
13981         * lib/tls.c: Likewise.
13982         * lib/tmpdir.c: Likewise.
13983         * lib/unicodeio.c: Likewise.
13984         * lib/unsetenv.c: Likewise.
13985         * lib/vasnprintf.c: Likewise.
13986         * lib/vasprintf.c: Likewise.
13987         * lib/wait-process.c: Likewise.
13988         * lib/xallocsa.c: Likewise.
13989         * lib/xsetenv.c: Likewise.
13990         * lib/xstriconv.c: Likewise.
13991
13992 2006-09-13  Simon Josefsson  <jas@extundo.com>
13993
13994         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
13995         that internally, suggested by Ralf Wildenhues
13996         <Ralf.Wildenhues@gmx.de>.
13997
13998 2006-09-13  Simon Josefsson  <jas@extundo.com>
13999
14000         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
14001         @LIBOBJS@.
14002         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14003
14004 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
14005
14006         * lib/_fpending.c: Include <config.h> unconditionally, since we no
14007         longer worry about uses that don't define HAVE_CONFIG_H.
14008         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
14009         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
14010         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
14011         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
14012         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
14013         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
14014         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
14015         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
14016         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
14017         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
14018         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
14019         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
14020         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
14021         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
14022         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
14023         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
14024         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
14025         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
14026         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
14027         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
14028         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
14029         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
14030         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
14031         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
14032         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
14033         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
14034         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
14035         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
14036         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
14037         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
14038         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
14039         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
14040         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
14041         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
14042         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
14043         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
14044         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
14045         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
14046         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
14047         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
14048         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
14049         Likewise.
14050
14051 2006-09-13  Eric Blake  <ebb9@byu.net>
14052
14053         * lib/getopt.c: Fix typo in last commit.
14054
14055 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
14056
14057         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
14058         dgettext.
14059
14060 2006-09-12  Jim Meyering  <jim@meyering.net>
14061
14062         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
14063         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
14064         Reported by Nelson H. F. Beebe.
14065
14066 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
14067
14068         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
14069         program_invocation_name and program_invocation_short_name are
14070         initialized.
14071         * lib/argp-namefrob.h: Move declarations of program_invocation_name
14072         and program_invocation_short_name to argp.h, so they are visible
14073         to user programs.
14074         * lib/argp.h: Likewise
14075
14076 2006-09-10  Bruno Haible  <bruno@clisp.org>
14077
14078         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
14079         m4/inttypes_h.m4, m4/uintmax_t.m4.
14080
14081 2006-09-10  Bruno Haible  <bruno@clisp.org>
14082
14083         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
14084         gl_AC_TYPE_UINTMAX_T.
14085
14086 2006-09-10  Bruno Haible  <bruno@clisp.org>
14087
14088         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
14089
14090 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
14091
14092         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
14093         convention.  Text proposed by Bruno Haible.
14094         (struct argp_option): Document the use of N_() wrappers.
14095
14096         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
14097         '\v', and translate the two parts separately, instead of feeding
14098         the whole string to gettext.  This allows to exclude
14099         '\v' from the strings visible to the translator by writing doc
14100         strings as N_("..") "\v" N_("..").
14101
14102 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
14103
14104         * config/srclist.txt: Undo latest change; the bug was fixed.
14105
14106 2006-09-09  Bruno Haible  <bruno@clisp.org>
14107
14108         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
14109         assignments if building a library without libtool.
14110         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
14111         in func_emit_lib_Makefile_am.
14112         (func_import): When building a static library libfoo.a, arrange to
14113         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
14114         (func_create_testdir): Likewise.
14115         * modules/gc (configure.ac, Makefile.am): If building statically,
14116         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
14117         * modules/iconvme (configure.ac, Makefile.am): Likewise.
14118         * modules/striconv (configure.ac, Makefile.am): Likewise.
14119         Based on a suggestion by Ralf Wildenhues.
14120
14121 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
14122
14123         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
14124         Check for unistd.h too, since Autoconf doesn't assume POSIX.
14125         Also:
14126
14127         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
14128         Add year_2050_test to catch glibc bug 2821
14129         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
14130
14131         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14132         Prefer #ifdef to #if.
14133
14134         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
14135         Return from 'main' instead of calling 'exit'.
14136
14137 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
14138
14139         * lib/mktime.c (guess_time_tm): Fix bug where mktime
14140         returned the maximum time_t value rather than (time_t) -1.
14141         Problem originally reported by William Bardwell
14142         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
14143
14144         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
14145         Moved to here ...
14146         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
14147         ... from here.
14148
14149 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
14150
14151         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
14152         2821 is fixed.
14153
14154 2006-09-08  Jim Meyering  <jim@meyering.net>
14155
14156         Don't make generated files read-only.  That would bother too many
14157         people.  However, do retain the ability to work when targets are
14158         read-only: remove the destination and temporary files before writing
14159         them (when generated via sed or echo), or by using the -f option for
14160         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
14161         * modules/alloca-opt, modules/argz, modules/arpa_inet:
14162         * modules/byteswap, modules/configmake, modules/fcntl:
14163         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
14164         * modules/localcharset, modules/netinet_in, modules/poll:
14165         * modules/stdbool, modules/stdint, modules/sys_select:
14166         * modules/sys_socket, modules/sys_stat, modules/sysexits:
14167
14168 2006-09-08  Jim Meyering  <jim@meyering.net>
14169
14170         Avoid new build failure on FreeBSD 6.0.
14171         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
14172         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
14173         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
14174
14175 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14176
14177         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
14178
14179 2006-09-07  Jim Meyering  <jim@meyering.net>
14180
14181         Fix global typo in last change: use chmod u-w, not chmod u-x.
14182         Spotted by Paul Eggert and Bruce Korb.
14183         * modules/alloca-opt, modules/argz, modules/arpa_inet:
14184         * modules/byteswap, modules/configmake, modules/fcntl:
14185         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
14186         * modules/localcharset, modules/netinet_in, modules/poll:
14187         * modules/stdbool, modules/stdint, modules/sys_select:
14188         * modules/sys_socket, modules/sys_stat, modules/sysexits:
14189
14190 2006-09-06  Jim Meyering  <jim@meyering.net>
14191
14192         Make generated files be read-only.
14193         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
14194         Ensure that each generated file is now read-only.
14195         * modules/argz: Likewise.
14196         * modules/arpa_inet: Likewise.
14197         * modules/byteswap: Likewise.
14198         * modules/configmake: Likewise.
14199         * modules/fcntl: Likewise.
14200         * modules/fnmatch: Likewise.
14201         * modules/getopt: Likewise.
14202         * modules/glob: Likewise.
14203         * modules/inttypes: Likewise.
14204         * modules/netinet_in: Likewise.
14205         * modules/poll: Likewise.
14206         * modules/stdbool: Likewise.
14207         * modules/stdint: Likewise.
14208         * modules/sys_select: Likewise.
14209         * modules/sys_socket: Likewise.
14210         * modules/sys_stat: Likewise.
14211         * modules/sysexits: Likewise.
14212         * modules/localcharset: Same as above, but continue using temporary
14213         file named "t-$@" (why different?) rather than the "$@-t" used
14214         everywhere else.
14215
14216         * modules/sysexits (Makefile.am): Replace literal occurrences
14217         of "sysexit.h" more readable, and more consistent, "$@".
14218
14219 2006-09-06  Bruno Haible  <bruno@clisp.org>
14220
14221         * modules/striconv: New file.
14222         * modules/xstriconv: New file.
14223         * MODULES.html.sh (Internationalization functions): Add striconv,
14224         xstriconv.
14225
14226 2006-09-06  Bruno Haible  <bruno@clisp.org>
14227
14228         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
14229         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
14230         not using libtool correctly.
14231
14232 2006-09-06  Bruno Haible  <bruno@clisp.org>
14233
14234         * lib/striconv.h: New file.
14235         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
14236         iconvstring.c.
14237         * lib/xstriconv.h: New file.
14238         * lib/xstriconv.c: New file.
14239
14240 2006-09-06  Bruno Haible  <bruno@clisp.org>
14241
14242         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
14243         lib_..._LDFLAGS.
14244
14245 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14246
14247         * lib/argz_.h: Sync from Libtool.
14248
14249         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
14250                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14251
14252         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
14253
14254 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
14255
14256         * modules/trim: New file.
14257
14258 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
14259
14260         * lib/trim.h: New file.
14261         * lib/trim.c: New file.
14262
14263 2006-09-05  Bruno Haible  <bruno@clisp.org>
14264
14265         * MODULES.html.sh (String handling): Add trim.
14266
14267 2006-09-04  Karl Berry  <karl@gnu.org>
14268
14269         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
14270         until next release.
14271
14272 2006-09-03  Bruno Haible  <bruno@clisp.org>
14273
14274         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
14275         correctly.
14276
14277 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
14278
14279         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
14280         not gl_GETLOADAVG.  Omit unneeded semicolons.
14281         Problems reported by Ralf Wildenhues in
14282         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
14283         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
14284         at the end, which is the usual gnulib style.
14285
14286         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
14287         of doing all the work ourselves.
14288         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
14289         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
14290
14291 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
14292
14293         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
14294         Problem reported by Ralf Wildenhues in
14295         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
14296
14297         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
14298         HAVE_STRUCT_STATFS_F_FSTYPENAME.
14299
14300 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
14301
14302         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
14303         yesterday's patch by changing test -n to test -z.
14304
14305 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
14306
14307         * modules/getloadavg (Files): Add m4/getloadavg.m4.
14308         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
14309         the former is now obsolescent.
14310
14311         * modules/chdir-long (Depends-on): Add fcntl.
14312
14313 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
14314
14315         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
14316         obsolescent, and programs should use gnulib instead.
14317         * m4/getloadavg.m4: New file, with contents taken from Autoconf
14318         but with prefixes changed.
14319
14320 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
14321
14322         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
14323         or stdbool.h, because they might not exist while configuring.
14324
14325         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
14326         Don't include unistd.h or limits.h; not needed, since chdir-long.h
14327         does that for us.
14328         (O_DIRECTORY): Remove.
14329
14330 2006-08-31  Eric Blake  <ebb9@byu.net>
14331
14332         * gnulib-tool: Don't let emacs change spaces to TAB.
14333
14334 2006-08-31  Bruno Haible  <bruno@clisp.org>
14335
14336         * gnulib-tool: When calling func_import more than once, do it in a
14337         subshell.
14338         Reported by Eric Blake <ebb9@byu.net>.
14339
14340 2006-08-31  Bruno Haible  <bruno@clisp.org>
14341
14342         * gnulib-tool (nl): Remove variable.
14343         (sed_transform_lib_file): Use more robust test for config-h module.
14344         (func_import): Fix typo in 2006-08-25 patch.
14345
14346 2006-08-31  Bruno Haible  <bruno@clisp.org>
14347
14348         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
14349         specified, augment Makefile.am variables instead of assigning them.
14350
14351 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
14352
14353         Work around a bug in both the Linux and SunOS 64-bit kernels:
14354         nanosleep mishandles sleeps for longer than 2**31 seconds.
14355         Problem reported by Frank v Waveren in
14356         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
14357         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
14358         Check for nanosleep bug.
14359         (LIB_NANOSLEEP): Append clock_gettime library if needed.
14360
14361 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
14362
14363         Work around a bug in both the Linux and SunOS 64-bit kernels:
14364         nanosleep mishandles sleeps for longer than 2**31 seconds.
14365         Problem reported by Frank v Waveren in
14366         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
14367         * lib/nanosleep.c (BILLION): New constant.
14368         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
14369         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
14370         implementation.
14371
14372 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
14373
14374         * modules/nanosleep (Depends-on): Add gettime.
14375
14376 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
14377         and Simon Josefsson  <jas@extundo.com>
14378         and Oskar Liljeblad  <oskar@osk.mine.nu>
14379
14380         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
14381         * gnulib-tool (func_import): New license type 'unmodifiable license
14382         text'.
14383         * modules/fdl: Use it.  Longer description.
14384         * module/gpl, module/lgpl: New files.
14385
14386 2006-08-30  Jim Meyering  <jim@meyering.net>
14387
14388         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
14389         shadowing the parameter.
14390
14391 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14392
14393         Sync from Libtool:
14394
14395         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14396
14397         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
14398         sharing with gnulib.  Report by Eric Blake.
14399
14400 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
14401
14402         * modules/isapipe: New file.
14403         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
14404
14405 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
14406
14407         * modules/configmake (Makefile.am): Add a comment, and omit
14408         the CONFIGMAKE_ prefix from generated macro names.  Suggested
14409         by Bruno Haible.
14410
14411 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
14412
14413         * m4/isapipe.m4: New file.
14414
14415 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
14416
14417         * lib/isapipe.c, lib/isapipe.h: New files.
14418
14419 2006-08-29  Jim Meyering  <jim@meyering.net>
14420
14421         * modules/configmake (Makefile.am): Make configmake.h depend on
14422         Makefile.  Otherwise, a stale configmake.h could hang around.
14423
14424 2006-08-29  Eric Blake  <ebb9@byu.net>
14425
14426         * lib/error.c (error_at_line, print_errno_message): Match libc, after
14427         resolution of upstream bug 3044.
14428
14429 2006-08-29  Bruno Haible  <bruno@clisp.org>
14430
14431         * modules/localcharset (Depends-on): Add configmake.
14432         (Makefile.am): Remove setting of LIBDIR through DEFS.
14433
14434 2006-08-29  Bruno Haible  <bruno@clisp.org>
14435
14436         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
14437         defined.
14438
14439 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
14440
14441         * modules/fcntl: New file.
14442         * modules/chdir-safer (Depends-on): Add fcntl.
14443         * modules/fts: Likewise.
14444         * modules/mkdir-p: Likewise.
14445
14446         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
14447         This undoes the most recent change, since we're now addressing the
14448         problem in a different way.
14449
14450         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
14451         into output, since the output might be called Makefile.am even
14452         if $makefile_name is something different.
14453         (func_import): Use $makefile_am rather than
14454         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
14455         empty.
14456
14457         * modules/inttypes (Files): Add m4/inttypes-h.m4.
14458
14459 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
14460
14461         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
14462         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
14463         recent change to stdint.m4, since we're now addressing the problem in a
14464         different way.
14465
14466 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
14467
14468         * m4/fcntl_h.m4: New file.
14469
14470 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
14471
14472         * lib/fcntl_.h: New file.
14473         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
14474         the fcntl module.
14475         * lib/dirchownmod.c: Likewise.
14476         * lib/fts.c: Likewise.
14477
14478         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
14479         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
14480         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
14481         just before including <inttypes.h>, to avoid circular inclusion.
14482
14483 2006-08-28  Jim Meyering  <jim@meyering.net>
14484
14485         * doc/visibility.texi: Actually read and correct the grammar of the
14486         sentence affected by yesterday's change.
14487
14488 2006-08-28  Eric Blake  <ebb9@byu.net>
14489
14490         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
14491         needs wrapper.
14492
14493 2006-08-28  Eric Blake  <ebb9@byu.net>
14494
14495         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
14496
14497 2006-08-28  Eric Blake  <ebb9@byu.net>
14498
14499         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
14500
14501 2006-08-28  Bruno Haible  <bruno@clisp.org>
14502
14503         * modules/c-strstr: New file, from GNU gettext.
14504         * MODULES.html.sh (String handling): Add c-strstr.
14505
14506 2006-08-28  Bruno Haible  <bruno@clisp.org>
14507
14508         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
14509         macros.
14510         Reported by Eric Blake.
14511
14512 2006-08-28  Bruno Haible  <bruno@clisp.org>
14513
14514         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
14515         (VASNPRINTF): Return a string of length > INT_MAX without failing.
14516         * lib/vasprintf.c: Include errno.h, limits.h.
14517         (EOVERFLOW): New fallback definition.
14518         (vasprintf): Test here whether the string length is > INT_MAX.
14519         * lib/vsnprintf.c: Include errno.h, limits.h.
14520         (EOVERFLOW): New fallback definition.
14521         (vsnprintf): Fix bug when generated string was too long for the buffer.
14522         Test here whether the string length is > INT_MAX.
14523
14524 2006-08-28  Bruno Haible  <bruno@clisp.org>
14525
14526         * lib/inttypes_.h (SCNX*): Remove definitions.
14527         Reported by Eric Blake.
14528
14529 2006-08-28  Bruno Haible  <bruno@clisp.org>
14530
14531         * lib/c-strstr.h: New file, from GNU gettext.
14532         * lib/c-strstr.c: New file, from GNU gettext.
14533
14534 2006-08-28  Bruno Haible  <bruno@clisp.org>
14535
14536         * gnulib-tool: Reorder some statements.
14537
14538 2006-08-28  Bruno Haible  <bruno@clisp.org>
14539
14540         * gnulib-tool: New option --makefile-name.
14541         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
14542         $makefile_name.
14543         (func_import): Write $makefile_name to the cache file, and read it from
14544         there unless explicitly specified. Use $makefile_name as file name
14545         instead of Makefile.am. Adjust the recommendations accordingly.
14546
14547 2006-08-28  Bruno Haible  <bruno@clisp.org>
14548
14549         * gnulib-tool (func_verify_module): Check against misapplying patch.
14550
14551 2006-08-28  Bruno Haible  <bruno@clisp.org>
14552
14553         * gnulib-tool (func_relativize, func_relconcat): New functions.
14554         Give an error if --local-dir is given with --update.
14555         Remove trailing slashes from $local_gnulib_dir.
14556         (func_import): Store the relativized $local_gnulib_dir in
14557         gnulib-cache.m4, and read it from there if not specified explicitly.
14558
14559 2006-08-28  Bruno Haible  <bruno@clisp.org>
14560
14561         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
14562         is the current directory. Respect also $local_gnulib_dir.
14563
14564 2006-08-28  Bruno Haible  <bruno@clisp.org>
14565             Simon Josefsson  <jas@extundo.com>
14566
14567         BeOS portability.
14568         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
14569
14570 2006-08-27  Jim Meyering  <jim@meyering.net>
14571
14572         * doc/visibility.texi: Remove duplicate word: "pointer".
14573
14574 2006-08-26  Bruno Haible  <bruno@clisp.org>
14575
14576         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
14577         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
14578         (Makefile.am): Create inttypes.h from inttypes_.h.
14579         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
14580
14581         * modules/imaxabs: New file.
14582
14583         * modules/imaxdiv: New file.
14584
14585 2006-08-26  Bruno Haible  <bruno@clisp.org>
14586
14587         * m4/inttypes.m4: New file.
14588         * m4/_inttypes_h.m4: Remove file.
14589         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
14590         PRI_MACROS_BROKEN.
14591         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
14592
14593         * m4/imaxabs.m4: New file.
14594
14595         * m4/imaxdiv.m4: New file.
14596
14597 2006-08-26  Bruno Haible  <bruno@clisp.org>
14598
14599         * lib/inttypes_.h: New file.
14600         * lib/inttypes.h: Remove file.
14601         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
14602
14603         * lib/imaxabs.c: New file.
14604
14605         * lib/imaxdiv.c: New file.
14606
14607 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
14608
14609         New config-h module, so that "make" output needn't be cluttered
14610         by -DHAVE_CONFIG_H.
14611         * MODULES.html.sh (Support for building libraries and executables):
14612         Add config-h.
14613         * modules/config-h: New file.
14614         * gnulib-tool (nl, sed_transform_lib_file): New vars.
14615         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
14616         the config-h module is used.
14617
14618         New configmake module, so that "make" output needn't be cluttered
14619         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
14620         * MODULES.html.sh (Support for building libraries and executables):
14621         Add configmake.
14622         * modules/configmake: New file.
14623
14624 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
14625
14626         * m4/config-h.m4: New file.
14627
14628 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
14629
14630         * config/srclist.txt: Add elisp-comp.
14631
14632 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
14633
14634         * MODULES.html.sh (Support for building libraries and executables):
14635         Add elisp-comp.
14636         * build-aux/elisp-comp: New file.
14637         * modules/elisp-comp: New file.
14638
14639 2006-08-24  Bruno Haible  <bruno@clisp.org>
14640
14641         * gnulib-tool (func_create_testdir): Use non-default values of
14642         sourcebase and m4base.
14643
14644 2006-08-24  Bruno Haible  <bruno@clisp.org>
14645
14646         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
14647         HTML structure.
14648
14649 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
14650
14651         * modules/openat (Depends-on): Add lchown.
14652
14653 2006-08-23  Bruno Haible  <bruno@clisp.org>
14654
14655         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
14656         of gl_LOCK_EARLY instead of gl_LOCK.
14657
14658 2006-08-23  Bruno Haible  <bruno@clisp.org>
14659
14660         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
14661         on OSF/1 to no.
14662         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
14663
14664 2006-08-23  Bruno Haible  <bruno@clisp.org>
14665
14666         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
14667         as unusable.
14668
14669         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
14670         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
14671         (gl_LOCK): New macro.
14672
14673 2006-08-22  Simon Josefsson  <jas@extundo.com>
14674
14675         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
14676         to md5 module.
14677
14678 2006-08-22  Simon Josefsson  <jas@extundo.com>
14679
14680         * MODULES.html.sh: Add "Support for maintaining and release
14681         projects".
14682
14683         * build-aux/gnupload: New file, from coreutils.
14684
14685 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14686
14687         Avoid the need for AC_LIBSOURCES in m4 macros.
14688         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
14689         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
14690         * modules/check-version (EXTRA_DIST): Add check-version.h.
14691         * modules/crc (EXTRA_DIST): Add crc.h.
14692         * modules/des (EXTRA_DIST): Add des.h.
14693         * modules/gc (EXTRA_DIST): Add gc.h.
14694         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
14695         * modules/getline (EXTRA_DIST): Add getline.h.
14696         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
14697         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
14698         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
14699         * modules/md2 (EXTRA_DIST): Add md2.h.
14700         * modules/md4 (EXTRA_DIST): Add md4.h.
14701         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
14702         * modules/read-file (EXTRA_DIST): Add read-file.h.
14703         * modules/readline (EXTRA_DIST): Add readline.h.
14704         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
14705         rijndael-api-fst.h.
14706
14707 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14708
14709         * m4/rijndael.m4 (gl_ARCFOUR):
14710         * m4/arctwo.m4 (gl_ARCTWO):
14711         * m4/check-version.m4 (gl_CHECK_VERSION):
14712         * m4/crc.m4 (gl_CRC):
14713         * m4/des.m4 (gl_DES):
14714         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
14715         * m4/gc.m4 (gl_GC):
14716         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
14717         * m4/getline.m4 (gl_FUNC_GETLINE):
14718         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
14719         * m4/hmac-md5.m4 (gl_HMAC_MD5):
14720         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
14721         * m4/md2.m4 (gl_MD2):
14722         * m4/md4.m4 (gl_MD4):
14723         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
14724         * m4/read-file.m4 (gl_FUNC_READ_FILE):
14725         * m4/readline.m4 (gl_FUNC_READLINE):
14726         * m4/rijndael.m4 (gl_RIJNDAEL):
14727         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14728         to get the necessary .h files and whatnot.
14729
14730 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14731
14732         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
14733         gnulib rather than the other way around.
14734         * config/srclistvars.sh (COREUTILS): Remove.
14735
14736 2006-08-22  Jim Meyering  <jim@meyering.net>
14737
14738         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
14739
14740         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
14741
14742 2006-08-22  Eric Blake  <ebb9@byu.net>
14743
14744         * modules/regexprops-generic: New file.
14745         * MODULES.html.sh (Support for building documentation): List it.
14746
14747 2006-08-22  Eric Blake  <ebb9@byu.net>
14748
14749         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
14750         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
14751         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
14752         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
14753
14754 2006-08-22  Bruno Haible  <bruno@clisp.org>
14755
14756         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
14757         and lib_LTLIBRARIES like the other lib_* variables.
14758
14759 2006-08-22  Bruno Haible  <bruno@clisp.org>
14760
14761         * build-aux/x-to-1.in: New file, from GNU gettext.
14762
14763 2006-08-22  Bruno Haible  <bruno@clisp.org>
14764
14765         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
14766         <utmpx.h> exists.
14767
14768 2006-08-22  Bruno Haible  <bruno@clisp.org>
14769
14770         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
14771         <utmpx.h> exists.
14772
14773 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14774
14775         BeOS portability.
14776         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
14777         exist.
14778         Problem reported by Bruno Haible.
14779
14780 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14781
14782         Avoid the need for AC_LIBSOURCES in m4 macros.
14783         * modules/acl (EXTRA_DIST): Add acl.h.
14784         * modules/argmatch (Files): Add m4/argmatch.m4.
14785         (configure.ac): Add gl_ARGMATCH.
14786         (EXTRA_DIST): Renamed from lib_SOURCES, for
14787         consistency with the other modules.  Remove argmatch.c.
14788         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
14789         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
14790         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
14791         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
14792         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
14793         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
14794         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
14795         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
14796         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
14797         * modules/closeout (EXTRA_DIST): Add closeout.h.
14798         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
14799         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
14800         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
14801         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
14802         dirname.h; remove basename.c and stripslash.c.
14803         * modules/exclude (EXTRA_DIST): Add exclude.h.
14804         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
14805         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
14806         * modules/file-type (EXTRA_DIST): Add file-type.h.
14807         * modules/filemode (EXTRA_DIST): Add filemode.h.
14808         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
14809         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
14810         * modules/fpending (EXTRA_DIST): Add __fpending.h.
14811         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
14812         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
14813         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
14814         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
14815         * modules/getdate (EXTRA_DIST): Add getdate.c.
14816         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
14817         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
14818         * modules/getpass (EXTRA_DIST): Add getpass.h.
14819         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
14820         * modules/group-member (EXTRA_DIST): Add group-member.h.
14821         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
14822         * modules/hash (EXTRA_DIST): Add hash.h.
14823         * modules/human (EXTRA_DIST): Add human.h.
14824         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
14825         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
14826         * modules/lchown (EXTRA_DIST): Add lchown.h.
14827         * modules/long-options (EXTRA_DIST): Add long-options.h.
14828         * modules/lstat (EXTRA_DIST): Add lstat.h.
14829         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
14830         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
14831         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
14832         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
14833         * modules/memxor (EXTRA_DIST): Add memxor.h.
14834         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
14835         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
14836         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
14837         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
14838         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
14839         * modules/physmem (EXTRA_DIST): Add physmem.h.
14840         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
14841         * modules/posixver (EXTRA_DIST): Add posixver.h.
14842         * modules/quote (EXTRA_DIST): Add quote.h.
14843         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
14844         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
14845         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
14846         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
14847         regex_internal.h regexec.c.
14848         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
14849         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
14850         * modules/same (EXTRA_DIST): Add same.h.
14851         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
14852         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
14853         * modules/savedir (EXTRA_DIST): Add savedir.h.
14854         * modules/sha1 (EXTRA_DIST): Add sha1.h.
14855         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
14856         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
14857         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
14858         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
14859         * modules/strdup (EXTRA_DIST): Add strdup.h.
14860         * modules/strftime (EXTRA_DIST): Add strftime.h.
14861         * modules/strndup (EXTRA_DIST): Add strndup.h.
14862         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
14863         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
14864         * modules/time_r (EXTRA_DIST): Add time_r.h.
14865         * modules/timespec (EXTRA_DIST): Add timespec.h.
14866         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
14867         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
14868         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
14869         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
14870         * modules/userspec (EXTRA_DIST): Add userspec.h.
14871         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
14872         * modules/utimens (EXTRA_DIST): Add utimens.h.
14873         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
14874         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
14875         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
14876         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
14877         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
14878         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
14879         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
14880         * modules/yesno (EXTRA_DIST): Add yesno.h.
14881
14882 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14883
14884         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
14885
14886         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
14887         * m4/dev-ino.m4, same-inode.m4: Remove.
14888
14889         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
14890         * m4/acl.m4 (AC_FUNC_ACL):
14891         * m4/backupfile.m4 (gl_BACKUPFILE):
14892         * m4/c-strtod.m4 (gl_C99_STRTOLD):
14893         * m4/canon-host.m4 (gl_CANON_HOST):
14894         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
14895         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
14896         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
14897         * m4/cloexec.m4 (gl_CLOEXEC):
14898         * m4/close-stream.m4 (gl_CLOSE_STREAM):
14899         * m4/closeout.m4 (gl_CLOSEOUT):
14900         * m4/dirfd.m4 (gl_FUNC_DIRFD):
14901         * m4/dirname.m4 (gl_DIRNAME):
14902         * m4/exclude.m4 (gl_EXCLUDE):
14903         * m4/exitfail.m4 (gl_EXITFAIL):
14904         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
14905         * m4/file-type.m4 (gl_FILE_TYPE):
14906         * m4/filemode.m4 (gl_FILEMODE):
14907         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
14908         * m4/fpending.m4 (gl_FUNC_FPENDING):
14909         * m4/fprintftime.m4 (gl_FPRINTFTIME):
14910         * m4/fts.m4 (gl_FUNC_FTS):
14911         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
14912         * m4/getdate.m4 (gl_GETDATE):
14913         * m4/gethrxtime.m4 (gl_GETHRXTIME):
14914         * m4/getpagesize.m4 (gl_GETPAGESIZE):
14915         * m4/getpass.m4 (gl_FUNC_GETPASS):
14916         * m4/gettime.m4 (gl_GETTIME):
14917         * m4/getugroups.m4 (gl_GETUGROUPS):
14918         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
14919         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
14920         * m4/hard-locale.m4 (gl_HARD_LOCALE):
14921         * m4/hash.m4 (gl_HASH):
14922         * m4/idcache.m4 (gl_IDCACHE):
14923         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
14924         * m4/lchown.m4 (gl_FUNC_LCHOWN):
14925         * m4/long-options.m4 (gl_LONG_OPTIONS):
14926         * m4/lstat.m4 (gl_FUNC_LSTAT):
14927         * m4/md5.m4 (gl_MD5):
14928         * m4/memcasecmp.m4 (gl_MEMCASECMP):
14929         * m4/memcoll.m4 (gl_MEMCOLL):
14930         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
14931         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
14932         * m4/memxor.m4 (gl_MEMXOR):
14933         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
14934         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
14935         * m4/modechange.m4 (gl_MODECHANGE):
14936         * m4/mountlist.m4 (gl_MOUNTLIST):
14937         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
14938         * m4/openat.m4 (gl_FUNC_OPENAT):
14939         * m4/pathmax.m4 (gl_PATHMAX):
14940         * m4/physmem.m4 (gl_PHYSMEM):
14941         * m4/posixtm.m4 (gl_POSIXTM):
14942         * m4/posixver.m4 (gl_POSIXVER):
14943         * m4/quote.m4 (gl_QUOTE):
14944         * m4/quotearg.m4 (gl_QUOTEARG):
14945         * m4/readtokens.m4 (gl_READTOKENS):
14946         * m4/readutmp.m4 (gl_READUTMP):
14947         * m4/regex.m4 (gl_REGEX):
14948         * m4/safe-read.m4 (gl_SAFE_READ):
14949         * m4/safe-write.m4 (gl_SAFE_WRITE):
14950         * m4/same.m4 (gl_SAME):
14951         * m4/save-cwd.m4 (gl_SAVE_CWD):
14952         * m4/savedir.m4 (gl_SAVEDIR):
14953         * m4/settime.m4 (gl_SETTIME):
14954         * m4/sha1.m4 (gl_SHA1):
14955         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
14956         * m4/stat-macros.m4 (gl_STAT_MACROS):
14957         * m4/stat-time.m4 (gl_STAT_TIME):
14958         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
14959         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
14960         * m4/strdup.m4 (gl_FUNC_STRDUP):
14961         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
14962         * m4/strndup.m4 (gl_FUNC_STRNDUP):
14963         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
14964         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
14965         * m4/time_r.m4 (gl_TIME_R):
14966         * m4/timespec.m4 (gl_TIMESPEC):
14967         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
14968         * m4/unlinkdir.m4 (gl_UNLINKDIR):
14969         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
14970         * m4/userspec.m4 (gl_USERSPEC):
14971         * m4/utimecmp.m4 (gl_UTIMECMP):
14972         * m4/utimens.m4 (gl_UTIMENS):
14973         * m4/xalloc.m4 (gl_XALLOC):
14974         * m4/xgetcwd.m4 (gl_XGETCWD):
14975         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
14976         * m4/xreadlink.m4 (gl_XREADLINK):
14977         * m4/xstrtod.m4 (gl_XSTRTOD):
14978         * m4/yesno.m4 (gl_YESNO):
14979         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14980         to get the necessary .h files and whatnot.
14981
14982 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
14983             Bruno Haible  <bruno@clisp.org>
14984
14985         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
14986         /bin/sh understanding of '!' conditional negation.
14987
14988 2006-08-21  Jim Meyering  <jim@meyering.net>
14989
14990         * modules/openat (Depends-on): Really alphabetize.
14991
14992         * modules/acl (Depends-on): Add error and quote.
14993
14994         * check-module (find_included_lib_files): Add at-func.c to the
14995         ok-to-include-more-than-once white list.
14996
14997         * modules/openat (Depends-on): Add lstat.  Alphabetize.
14998
14999 2006-08-21  Bruno Haible  <bruno@clisp.org>
15000
15001         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15002         Emit a pkgdata_DATA variable only if some snippets add contents to it.
15003         Reported by Martin Lambers <marlam@marlam.de>.
15004
15005 2006-08-21  Bruno Haible  <bruno@clisp.org>
15006
15007         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
15008         specify an installation location, don't emit a noinst_LIBRARIES or
15009         noinst_LTLIBRARIES assignment.
15010
15011 2006-08-21  Bruno Haible  <bruno@clisp.org>
15012
15013         BeOS portability.
15014         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
15015         BeOS has mbrtowc() but no <wctype.h>.
15016
15017 2006-08-21  Bruno Haible  <bruno@clisp.org>
15018
15019         BeOS portability.
15020         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
15021         exist.
15022
15023 2006-08-21  Bruno Haible  <bruno@clisp.org>
15024
15025         BeOS portability.
15026         * lib/mbchar.h: Include <wctype.h> only if it exists.
15027
15028 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
15029
15030         Remove files that are no longer needed by their respective modules.
15031         * m4/obstack.m4: Remove.
15032         * m4/strerror_r.m4: Remove.
15033         * m4/uint32_t.m4: Remove.
15034         * m4/uintptr_t.m4: Remove.
15035         * m4/ullong_max.m4: Remove.
15036         * m4/xstrtoimax.m4: Remove.
15037         * m4/xstrtoumax.m4: Remove.
15038
15039         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
15040         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
15041         dependencies now capture this.
15042
15043         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
15044         Do not use AC_LIBSOURCES, since gnulib modules now do this.
15045         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
15046         * m4/human.m4 (gl_HUMAN): Likewise.
15047         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
15048         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
15049
15050         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
15051
15052         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
15053         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
15054         stdint.
15055         * m4/human.m4 (gl_HUMAN): Likewise.
15056         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
15057         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
15058         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
15059         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
15060         * m4/xstrtol (gl_XSTRTOL): Likewise.
15061
15062         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
15063         AC_TYPE_LONG_LONG_INT.
15064         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
15065         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
15066         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
15067         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
15068
15069         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
15070         on stdbool.
15071
15072         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
15073         (gl_PREREQ_XSTRTOUL): Remove.
15074
15075         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
15076
15077         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
15078         mode.
15079
15080 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
15081
15082         Add and change modules to make it easier for coreutils to use
15083         gnulib-tool.
15084         * modules/backupfile (Files): Remove m4/d-ino.m4.
15085         (Depends-on): Add d-ino.
15086         * modules/cycle-check (Depends-on): Add stdint.
15087         (lib_SOURCES): Add cycle-check.h.
15088         * modules/d-ino: New module.
15089         * modules/d-type: New module.
15090         * modules/error (Files): Remove m4/strerror_r.m4.
15091         * modules/filemode (Files): Add m4/st_dm_mode.m4.
15092         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
15093         m4/inttypes_h.m4, m4/uintmax_t.m4.
15094         (Depends-on): Add stdint.
15095         (lib_SOURCES): Add fsusage.h.
15096         * modules/getcwd (Files): Remove d-ino.m4.
15097         (Depends-on): Add d-ino.
15098         * modules/getndelim2 (Depends-on): Add stdint.
15099         * modules/glob (Files): Remove m4/d-type.m4.
15100         (Depends-on): Add d-type.
15101         * modules/host-os: New module.
15102         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
15103         m4/inttypes_h.m4, m4/uintmax_t.m4.
15104         * Depends-on: Add stdint.
15105         (lib_SOURCES): Add human.h.
15106         * modules/inttostr (Files): Remove m4/intmax_t.m4,
15107         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
15108         m4/uintmax_t.m4, m4/ulonglong.m4.
15109         (Depends-on): Add stdint.
15110         (EXTRA_DIST): Add inttostr.h.
15111         * modules/lchmod: New module.
15112         * modules/link-follow: New module.
15113         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
15114         (Depends-on): Add lchmod.
15115         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
15116         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
15117         (Depends-on): Add stdint.
15118         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
15119         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
15120         (Depends-on): Add stdint.
15121         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
15122         * modules/perl: New module.
15123         * modules/regex (Depends-on): Add stdint.
15124         * modules/rmdir-errno: New module.
15125         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
15126         m4/intmax_t.m4.
15127         (Depends-on): Add stdint.
15128         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
15129         m4/uintmax_t.m4.
15130         (Depends-on): Add stdint.
15131         * modules/unlink-busy: New module.
15132         * modules/utimecmp (Depends-on): Add stdint.
15133         * modules/uptime: New module.
15134         * modules/winsz-ioctl: New module.
15135         * modules/winsz-termios: New module.
15136         * modules/xnanosleep (Depends-on): Add nanosleep.
15137         * modules/ullong_max: Remove.
15138         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
15139         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
15140         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
15141         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
15142         (Depends-on): Add inttypes.
15143         (lib_SOURCES): Add xstrtol.h.
15144         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
15145         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
15146         * MODULES.html.sh: Move 'assert' into the assert section.
15147         Move 'dummy' into the linking section.
15148         Remove ullong_max.
15149         Add section for compatibility checks for POSIX:2001 functions,
15150         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
15151         winsz-ioctl, and winsz-termios into it.
15152         Add lchmod.
15153         Add top-level Misc section and put host-os, perl, and uptime
15154         into it.
15155
15156 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
15157
15158         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
15159         now assume the stdint module.  Do not include inttypes.h.
15160         * lib/fsusage.h: Likewise.
15161         * lib/getndelim2.c: Likewise.
15162         * lib/human.h: Likewise.
15163         * lib/inttostr.h: Likewise.
15164         * lib/obstack.c: Likewise.
15165         * lib/regex_internal.h: Likewise.
15166         * lib/tempname.c: Likewise.
15167         * lib/utimecmp.c: Likewise.
15168         * lib/xstrtol.h: Likewise.
15169
15170         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
15171
15172         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
15173         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
15174         * lib/xtime.h: Likewise.
15175
15176 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
15177
15178         * modules/openat (Files): Add lib/fchmodat.c.
15179         Fixes problem reported by Jay Youngman.
15180
15181 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
15182
15183         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
15184         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
15185
15186 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
15187             Bruno Haible  <bruno@clisp.org>
15188
15189         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
15190         and is a script that invokes bison. Tighten the code. Add comments.
15191
15192 2006-08-18  Jim Meyering  <jim@meyering.net>
15193
15194         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
15195         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
15196         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
15197         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
15198
15199 2006-08-18  Bruno Haible  <bruno@clisp.org>
15200
15201         * modules/bison-i18n: New file.
15202         * MODULES.html.sh (Internationalization functions): Add it.
15203
15204 2006-08-18  Bruno Haible  <bruno@clisp.org>
15205
15206         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
15207         sys/statvfs.h. When getmntinfo was found, check its declaration and
15208         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
15209
15210 2006-08-18  Bruno Haible  <bruno@clisp.org>
15211
15212         * m4/bison-i18n.m4: New file, from bison.
15213
15214 2006-08-18  Bruno Haible  <bruno@clisp.org>
15215
15216         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
15217         (ME_DUMMY): Treat "kernfs" as a dummy.
15218         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
15219
15220 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
15221
15222         Update from coreutils.
15223
15224         2006-08-15  Jim Meyering  <jim@meyering.net>
15225
15226         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
15227
15228         2006-01-17  Jim Meyering  <jim@meyering.net>
15229
15230         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
15231
15232         2006-01-11  Jim Meyering  <jim@meyering.net>
15233
15234         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
15235         Check for the lchmod function.
15236
15237 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
15238
15239         Update from coreutils.
15240
15241         * lib/__fpending.h: Add copyright notice.
15242         * lib/fprintftime.h: Likewise.
15243         * lib/savedir.c: Use (C) in copyright notice.
15244         * lib/savedir.h: Likewise.
15245
15246         2006-08-15  Jim Meyering  <jim@meyering.net>
15247
15248         * lib/at-func.c: New file, with the logic of all emulated at-functions.
15249         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
15250         in support of the EXPECTED_ERRNO macro.
15251         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
15252         definitions.  Instead, define the appropriate symbols and include
15253         "at-func.c".
15254         * lib/mkdirat.c (mkdirat): Likewise.
15255         * lib/fchmodat.c (fchmodat): Likewise.
15256         (ENOSYS): Remove definition.
15257         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
15258         it.  Don't include "unistd--.h" -- it wasn't ever used.
15259
15260         2006-01-17  Jim Meyering  <jim@meyering.net>
15261
15262         Rewrite fts.c not to change the current working directory,
15263         by using openat, fstatat, fdopendir, etc..
15264
15265         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
15266         (HAVE_OPENAT_SUPPORT): Define.
15267         [_LIBC] (fchdir): Don't undef or define; no longer used.
15268         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
15269         Now, this `function' always succeeds, and consumes its file descriptor
15270         parameter -- so callers must not close such FDs.  Update callers.
15271         (diropen_fd, opendirat, cwd_advance_fd): New functions.
15272         (diropen): Add parameter, SP.  Adjust all callers.
15273         Implement using diropen_fd, rather than open.
15274         (fts_open): Initialize new member, fts_cwd_fd.
15275         Remove fts_rft-setting code.
15276         (fts_close): Close fts_cwd_fd, if necessary.
15277         (__opendir2): Define in terms of opendir or opendirat,
15278         depending on whether the FST_NOCHDIR flag is set.
15279         (fts_build): Since fts_safe_changedir consumes its FD, and since
15280         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
15281         and close the dup'd file descriptor upon failure.
15282         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
15283         (fts_safe_changedir): Tweak semantics to reflect that this function
15284         now calls cwd_advance_fd and hence consumes its FD argument.
15285         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
15286         [struct FTS] (fts_rft): Remove now-unused member.
15287         [struct FTS] (fts_cycle.state): Improve comment.
15288
15289         * lib/openat.c (openat_needs_fchdir): New function.
15290         * lib/openat.h (openat_needs_fchdir): Declare it.
15291
15292 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
15293
15294         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
15295         Problem and fix reported by Pádraig Brady in
15296         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
15297
15298 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15299
15300         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
15301
15302 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15303
15304         * lib/memcoll.c (memcoll): Optimize for the common case where the
15305         arguments are bytewise equal.
15306
15307 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
15308
15309         * doc/regexprops-generic.texi: Add a copyright notice.
15310
15311 2006-08-15  Bruno Haible  <bruno@clisp.org>
15312
15313         * modules/tmpdir (License): Change to LGPL.
15314
15315 2006-08-15  Bruno Haible  <bruno@clisp.org>
15316
15317         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
15318         module.
15319
15320 2006-08-14  Simon Josefsson  <jas@extundo.com>
15321
15322         * config/srclist.txt: Add gnupload.
15323
15324 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15325
15326         Change copyright notice from LGPL 2 to GPL 2, since that's the
15327         standard form used in the gnulib repository.
15328         * tests/test-lock.c: Likewise.
15329         * tests/test-stdint.c: Likewise.
15330         * tests/test-tls.c: Likewise.
15331
15332         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
15333         prelude-manager.  User shorter URLs for GNU projects, without '?'.
15334         Add copyright notice.
15335
15336         * check-module: Add copyright notice.  Output a copyright
15337         notice if "--version" is specified.
15338         * modules/COPYING: New file.
15339         * tests/test-getaddrinfo.c: Add copyright notice.
15340         * tests/test-verify.c: Likewise.
15341
15342 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15343
15344         Change copyright notice from LGPL 2 to GPL 2, since that's the
15345         standard form used in the gnulib repository.
15346         * lib/lock.c: LGPL -> GPL.
15347         * lib/lock.h: Likewise.
15348         * lib/strnlen1.c: Likewise.
15349         * lib/strnlen1.h: Likewise.
15350         * lib/tls.c: Likewise.
15351         * lib/tls.h: Likewise.
15352         * lib/tmpdir.c: Likewise.
15353
15354         * lib/TODO: Remove; this belongs only in coreutils.
15355
15356 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15357
15358         Add copyright notices to long-enough files that lack them, since
15359         otherwise the files aren't clearly free.  Use the same notice that
15360         getdate.texi already uses.
15361         * doc/alloca-opt.texi: Add copyright notice.
15362         * doc/alloca.texi: Likewise.
15363         * doc/ctime.texi: Likewise.
15364         * doc/functions.texi: Likewise.
15365         * doc/gcd.texi: Likewise.
15366         * doc/gnulib-tool.texi: Likewise.
15367         * doc/inet_ntoa.texi: Likewise.
15368         * doc/visibility.texi: Likewise.
15369
15370         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
15371         * doc/quote.texi: Add copyright notice.
15372
15373         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
15374         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
15375         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
15376         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
15377         is now obsolete, and give a pointer to the Sun list.
15378         Add copyright notice.
15379
15380 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
15381
15382         * config/srclistvars.sh: Add copyright notice.
15383
15384 2006-08-14  Eric Blake  <ebb9@byu.net>
15385
15386         Import the following change from libc:
15387
15388         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
15389
15390         Upstream bug 2997.
15391         * lib/misc/error.c: Add space between program name and message if file
15392         name is missing.
15393
15394 2006-08-12  Karl Berry  <karl@gnu.org>
15395
15396         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
15397         remove, these originate in gnulib now.
15398
15399 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15400
15401         * doc/Makefile (standards.info standards.html standards.dvi):
15402         Also depend on make-stds.texi.
15403
15404 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
15405
15406         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
15407         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
15408
15409         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
15410         in wchar_t.  Problem reported by Eric Blake.
15411
15412         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
15413         LEN is smaller than SIZE.  Suggested by Bruno Haible.
15414         Also, help the compiler to keep LEN in a register.
15415
15416 2006-08-11  Eric Blake  <ebb9@byu.net>
15417
15418         * users.txt: Sort.  Add tar.
15419
15420 2006-08-11  Bruno Haible  <bruno@clisp.org>
15421
15422         * users.txt: New file.
15423
15424 2006-08-11  Bruno Haible  <bruno@clisp.org>
15425
15426         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
15427         before <wchar.h>. Needed for OSF/1 and BSD/OS.
15428
15429 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
15430
15431         * modules/snprintf (Depends-on): Remove minmax.
15432         (Maintainer): Add self and Bruno.
15433
15434 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
15435
15436         * lib/.cppi-disable: Add snprintf.h, socket_.h.
15437         * lib/snprintf.c: Include <errno.h> and <limits.h>.
15438         (EOVERFLOW): Define if the system does not.
15439         Do not include "minmax.h"; it wasn't used.
15440         (snprintf): Don't assume size_t promotes to an unsigned type.
15441         Fix bug when generated string was too long for the buffer: the
15442         buffer's contents are supposed to be the initial prefix of the
15443         output.  Don't assume vasnprintf returns EOVERFLOW if the size
15444         exceeds INT_MAX; do the check ourselves.
15445
15446         Import the following changes from libc:
15447
15448         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
15449
15450         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
15451         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
15452         set wc to the byte which couldn't be converted.
15453         (re_string_reconstruct): Don't clear valid_raw_len before calling
15454         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
15455         tip_context using re_string_context_at.
15456
15457         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
15458
15459         * lib/posix/regex.h: g++ still cannot handled [restrict].
15460
15461         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
15462
15463         * lib/posix/regex.h: Remove special handling for VMS.
15464
15465 2006-08-10  Jim Meyering  <jim@meyering.net>
15466
15467         * modules/same-inode: New module.
15468         * modules/dev-ino: New module.
15469         * modules/cycle-check: Depend on these modules, rather than simply
15470         including their .h files.
15471         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
15472         required via m4/cycle-check.m4.
15473         * modules/same: Depend on new same-inode module, rather than
15474         including same-inode.h.
15475         * modules/chdir-safer: New file.
15476
15477         * modules/chown (Depends-on): Add stat-macros.
15478
15479 2006-08-10  Jim Meyering  <jim@meyering.net>
15480
15481         * m4/cycle-check.m4: New file.
15482         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
15483         * m4/dev-ino.m4, m4/same-inode.m4: New files.
15484
15485 2006-08-10  Eric Blake  <ebb9@byu.net>
15486
15487         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
15488         in from original proposal.
15489
15490 2006-08-10  Eric Blake  <ebb9@byu.net>
15491         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
15492
15493         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
15494         namespace.
15495
15496 2006-08-10  Bruno Haible  <bruno@clisp.org>
15497
15498         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
15499         as well.
15500
15501 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
15502
15503         Sync from coreutils.
15504
15505         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
15506
15507         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
15508         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
15509
15510 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
15511
15512         * modules/restrict: Remove; no longer needed now that we assume
15513         Autoconf 2.59 or later.
15514         * MODULES.html.sh: Remove 'restrict'.
15515         * modules/argp (Depends-on): Remove 'restrict'.
15516         * modules/base64 (Depends-on): Likewise.
15517         * modules/gc (Depends-on): Likewise.
15518         * modules/getaddrinfo (Depends-on): Likewise.
15519         * modules/glob (Depends-on): Likewise.
15520         * modules/inet_ntop (Depends-on): Likewise.
15521         * modules/inet_pton (Depends-on): Likewise.
15522         * modules/memxor (Depends-on): Likewise.
15523         * modules/regex (Depends-on): Likewise.
15524         * modules/strtok_r (Depends-on): Likewise.
15525         * modules/time_r (Depends-on): Likewise.
15526
15527 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
15528
15529         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
15530         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
15531         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
15532         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
15533         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
15534         * m4/memxor.m4 (gl_MEMXOR): Likewise.
15535         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
15536         gl_C_RESTRICT replaced by AC_C_RESTRICT.
15537
15538         Merge from coreutils.
15539         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
15540         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
15541         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
15542         * m4/time_r.m4 (gl_TIME_R): Likewise.
15543
15544 2006-08-09  Karl Berry  <karl@gnu.org>
15545
15546         * config/srclist.txt: no more gettext-tools, per Bruno.
15547
15548 2006-08-08  Eric Blake  <ebb9@byu.net>
15549
15550         * modules/verror: New module.
15551         * MODULES.html.sh: Document it.
15552
15553 2006-08-08  Eric Blake  <ebb9@byu.net>
15554
15555         * lib/verror.h, lib/verror.c: New files.
15556
15557 2006-08-08  Eric Blake  <ebb9@byu.net>
15558
15559         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
15560         verror_at_line output complies with GNU Coding Standards even when
15561         file is NULL.
15562
15563 2006-08-07  Bruno Haible  <bruno@clisp.org>
15564
15565         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
15566         versions of AIX.
15567         Reported by Ralf Wildenhues.
15568
15569 2006-08-07  Bruno Haible  <bruno@clisp.org>
15570
15571         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
15572         in an AC_DEFUN. Needed so that the autoconf snippets can use
15573         AC_REQUIRE.
15574
15575 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15576
15577         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15578         Initialize pkgdata_DATA.
15579         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
15580         overriding it.
15581
15582 2006-08-06  Eric Blake  <ebb9@byu.net>
15583
15584         * lib/error.h: Fold in some upstream changes from glibc.
15585         * lib/error.c: Likewise.
15586
15587 2006-08-04  Bruno Haible  <bruno@clisp.org>
15588
15589         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15590         Make the mostlyclean-local rule depend on mostlyclean-generic.
15591         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
15592
15593 2006-07-31  Bruno Haible  <bruno@clisp.org>
15594
15595         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
15596         <stdlib.h>, <string.h>.
15597
15598 2006-07-30  Bruno Haible  <bruno@clisp.org>
15599
15600         * modules/readlink (License): Change to LGPL.
15601
15602 2006-07-30  Bruno Haible  <bruno@clisp.org>
15603
15604         * modules/javaversion (Makefile.am): Distribute javaversion.java and
15605         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
15606         set PKGDATADIR to point to it.
15607
15608 2006-07-30  Bruno Haible  <bruno@clisp.org>
15609
15610         * modules/csharpexec (configure.ac): Comment out macro invocation.
15611         * modules/javaexec (configure.ac): Likewise.
15612         * modules/javacomp-script (configure.ac): Likewise.
15613
15614         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
15615
15616 2006-07-30  Bruno Haible  <bruno@clisp.org>
15617
15618         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
15619         linked-list.
15620
15621 2006-07-30  Bruno Haible  <bruno@clisp.org>
15622
15623         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
15624
15625 2006-07-30  Bruno Haible  <bruno@clisp.org>
15626
15627         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15628         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
15629         get removed.
15630
15631 2006-07-29  Bruno Haible  <bruno@clisp.org>
15632
15633         Make it possible for gnulib-tool to work with locally modified or
15634         augmented gnulib repositories.
15635         * gnulib-tool (func_usage): Document --local-dir option.
15636         (local_gnulib_dir): New variable.
15637         Handle --local-dir option.
15638         (func_lookup_file): New function.
15639         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
15640         (func_get_description, func_get_filelist, func_get_description,
15641         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
15642         func_get_automake_snippet, func_get_include_directive,
15643         func_get_license, func_get_maintainer): Use func_lookup_file.
15644         (func_import, func_create_testdir): Use func_lookup_file.
15645
15646 2006-07-29  Bruno Haible  <bruno@clisp.org>
15647
15648         * modules/setenv (Depends-on): Add unistd.
15649
15650 2006-07-29  Bruno Haible  <bruno@clisp.org>
15651
15652         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
15653
15654 2006-07-29  Bruno Haible  <bruno@clisp.org>
15655
15656         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
15657
15658 2006-07-29  Bruno Haible  <bruno@clisp.org>
15659
15660         * gnulib-tool (import, update): If there is no Makefile.am, look at
15661         aclocal.m4, instead of bailing out.
15662
15663 2006-07-29  Bruno Haible  <bruno@clisp.org>
15664
15665         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
15666         Categorize the options by when they are useful.
15667
15668 2006-07-29  Bruno Haible  <bruno@clisp.org>
15669
15670         * gnulib-tool (func_usage): Document option --no-libtool.
15671         Handle option --no-libtool.
15672         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
15673         for changed semantics of $libtool variable.
15674         (func_import): Likewise. If libtool is not used, show this through
15675         an option --no-libtool.
15676         (func_create_testdir): Update.
15677
15678 2006-07-29  Bruno Haible  <bruno@clisp.org>
15679
15680         * gnulib-tool (func_import): Extend error message about missing
15681         --doc-base.
15682
15683 2006-07-29  Bruno Haible  <bruno@clisp.org>
15684
15685         * gnulib-tool (func_import): Don't create the $docbase directory if
15686         there is no file to store there.
15687
15688 2006-07-29  Bruno Haible  <bruno@clisp.org>
15689
15690         * gnulib-tool (autoconf_minversion): If a --dir option is given and
15691         relevant, look for configure.ac there, not in the current directory.
15692         Also use a simple search for AC_PREREQ, not "autoconf --trace".
15693
15694 2006-07-29  Bruno Haible  <bruno@clisp.org>
15695
15696         * gnulib-tool (SORT): New variable.
15697         (func_usage): Undocument --assume-autoconf option.
15698         Remove --assume-autoconf option handling.
15699         (autoconf_minversion): Determine from the contents of configure.ac.
15700         (func_import): Remove autoconf_minversion handling.
15701         Suggested by Eric Blake.
15702
15703 2006-07-29  Bruno Haible  <bruno@clisp.org>
15704
15705         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
15706
15707 2006-07-29  Bruno Haible  <bruno@clisp.org>
15708
15709         * config/srclist.txt (*setenv.[ch]): Remove rules.
15710
15711 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15712
15713         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
15714
15715 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15716
15717         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
15718         arpa/inet.h.
15719
15720 2006-07-28  Simon Josefsson  <jas@extundo.com>
15721
15722         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
15723         * modules/inet_pton (Depends-on): Likewise.
15724
15725 2006-07-28  Simon Josefsson  <jas@extundo.com>
15726
15727         * m4/netinet_in_h.m4: New file.
15728
15729 2006-07-28  Simon Josefsson  <jas@extundo.com>
15730
15731         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
15732         #include's.
15733
15734 2006-07-28  Simon Josefsson  <jas@extundo.com>
15735
15736         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
15737         #include's.
15738
15739 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
15740
15741         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
15742         setgid on directories only if they set these bits.
15743         * lib/modechange.h: Remove obsolete comment about masks.
15744
15745 2006-07-28  Eric Blake  <ebb9@byu.net>
15746
15747         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
15748         macro expansion.
15749
15750 2006-07-28  Bruno Haible  <bruno@clisp.org>
15751
15752         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
15753
15754 2006-07-28  Bruno Haible  <bruno@clisp.org>
15755
15756         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
15757
15758 2006-07-28  Bruno Haible  <bruno@clisp.org>
15759
15760         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
15761         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
15762         Define fallbacks.
15763         Avoids link error on FreeBSD 4.x.
15764         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
15765
15766         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
15767         encoding.
15768         * lib/mbswidth.c (iswcntrl): Likewise.
15769
15770 2006-07-27  Bruno Haible  <bruno@clisp.org>
15771
15772         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
15773         test.
15774
15775 2006-07-27  Bruno Haible  <bruno@clisp.org>
15776
15777         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
15778         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
15779         defined.
15780
15781 2006-07-26  Eric Blake  <ebb9@byu.net>
15782
15783         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
15784
15785 2006-07-26  Eric Blake  <ebb9@byu.net>
15786
15787         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
15788         like mingw that lack mkstemp.
15789         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
15790         avoid compilation warning on mingw.
15791
15792 2006-07-26  Bruno Haible  <bruno@clisp.org>
15793
15794         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
15795         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
15796         INT_FAST*_MIN, INTPTR_MIN.
15797
15798 2006-07-25  Bruno Haible  <bruno@clisp.org>
15799
15800         * modules/version-etc (Depends-on): Add stdarg.
15801
15802 2006-07-25  Bruno Haible  <bruno@clisp.org>
15803
15804         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
15805         complex commands.
15806
15807 2006-07-25  Bruno Haible  <bruno@clisp.org>
15808
15809         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
15810         defined in <stdarg.h> or config.h.
15811
15812 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
15813
15814         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
15815         (gl_STDIO_SAFER): Remove.
15816
15817 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
15818
15819         * MODULES.html.sh (File stream based Input/Output):
15820         Add fopen-safer, tmpfile-safer; remove stdio-safer.
15821         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
15822         * modules/fopen-safer, modules/tmpfile-safer: New files.
15823         * modules/stdio-safer: Remove.
15824
15825 2006-07-24  Bruno Haible  <bruno@clisp.org>
15826
15827         * modules/tmpdir: New file.
15828         * MODULES.html.sh (File system functions): Add it.
15829
15830 2006-07-24  Bruno Haible  <bruno@clisp.org>
15831
15832         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
15833         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
15834
15835 2006-07-24  Bruno Haible  <bruno@clisp.org>
15836
15837         * modules/clean-temp: New file.
15838
15839 2006-07-24  Bruno Haible  <bruno@clisp.org>
15840
15841         * m4/tmpdir.m4: New file, from GNU gettext.
15842
15843 2006-07-24  Bruno Haible  <bruno@clisp.org>
15844
15845         * lib/tmpdir.h: New file, from GNU gettext.
15846         * lib/tmpdir.c: New file, from GNU gettext.
15847
15848 2006-07-24  Bruno Haible  <bruno@clisp.org>
15849
15850         * lib/clean-temp.h: New file, from GNU gettext.
15851         * lib/clean-temp.c: New file, from GNU gettext.
15852
15853 2006-07-23  Eric Blake  <ebb9@byu.net>
15854
15855         * modules/stdio-safer (Files): Add tmpfile-safer.c.
15856         (Depends-on): Add binary-io.
15857
15858 2006-07-23  Eric Blake  <ebb9@byu.net>
15859
15860         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
15861
15862 2006-07-23  Eric Blake  <ebb9@byu.net>
15863
15864         * lib/tmpfile-safer.c: New file.
15865         * lib/stdio-safer.h (fopen_safer): Add prototype.
15866         * lib/stdio--.h (tmpfile): Make safer.
15867
15868 2006-07-23  Bruno Haible  <bruno@clisp.org>
15869
15870         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
15871         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
15872         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
15873         gl_linked_remove_at): Use it.
15874
15875 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15876         and Simon Josefsson <jas@extundo.com>
15877
15878         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
15879
15880         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
15881
15882 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15883
15884         * modules/close-stream: New file.
15885         * modules/closeout (Description): Make it clear that it exits
15886         with a diagnostic on error.
15887         (Depends-on): Add close-stream.  Remove fpending, stdbool.
15888         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
15889
15890 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15891
15892         * m4/close-stream.m4: New file.
15893
15894 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15895
15896         * lib/close-stream.c, lib/close-stream.h: New files.
15897
15898 2006-07-22  Bruno Haible  <bruno@clisp.org>
15899
15900         Merge from GNU gettext 0.15.
15901
15902         2006-05-01  Bruno Haible  <bruno@clisp.org>
15903
15904                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
15905
15906         2006-07-22  Bruno Haible  <bruno@clisp.org>
15907
15908                 * modules/javaversion: New file.
15909                 * MODULES.html.sh (Java): Add javaversion.
15910
15911         2006-03-12  Bruno Haible  <bruno@clisp.org>
15912
15913                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
15914
15915         2005-12-04  Bruno Haible  <bruno@clisp.org>
15916
15917                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
15918                 (untested).
15919
15920         2006-06-21  Bruno Haible  <bruno@clisp.org>
15921
15922                 Avoid warnings from recent versions of mcs.
15923                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
15924                 -o, -L, -r any more. Use options documented since mcs-1.0
15925                 instead. Similarly for -g.
15926
15927         2005-12-04  Bruno Haible  <bruno@clisp.org>
15928
15929                 * build-aux/csharpcomp.sh.in: Suffix for resources is
15930                 .resources, not .resource.
15931
15932         2005-07-09  Bruno Haible  <bruno@clisp.org>
15933
15934                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
15935                 add a .dll suffix.
15936                 Reported by Mark Junker <mjscod@gmx.de>.
15937
15938         2006-07-22  Bruno Haible  <bruno@clisp.org>
15939
15940                 * modules/gettext: Upgrade to gettext-0.15.
15941                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
15942                 m4/visibility.m4.
15943                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
15944
15945 2006-07-22  Bruno Haible  <bruno@clisp.org>
15946
15947         Merge from GNU gettext 0.15.
15948
15949         2006-03-25  Bruno Haible  <bruno@clisp.org>
15950
15951                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
15952
15953         2006-07-21  Bruno Haible  <bruno@clisp.org>
15954
15955                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
15956                 "1.1".
15957
15958         2006-05-09  Bruno Haible  <bruno@clisp.org>
15959
15960                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
15961                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
15962                 for the conftestver execution.
15963
15964         2006-05-01  Bruno Haible  <bruno@clisp.org>
15965
15966                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
15967                 optional target-version argument. Verify that the compiler
15968                 groks source of the specified source-version, or add -source
15969                 option as necessary. Verify that the compiler produces
15970                 bytecode in the specified target-version, or add -target and
15971                 -source options as necessary. Make the result of the test
15972                 available as variable CONF_JAVAC. Also log error output in
15973                 config.log.
15974
15975         2006-03-11  Bruno Haible  <bruno@clisp.org>
15976
15977                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
15978
15979         2006-05-09  Bruno Haible  <bruno@clisp.org>
15980
15981                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
15982                 CLASSPATH_SEPARATOR to a semicolon.
15983
15984         2006-03-12  Bruno Haible  <bruno@clisp.org>
15985
15986                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
15987                 available as variable CONF_JAVA, for subsequent autoconf
15988                 tests. Also log error output in config.log.
15989
15990         2006-07-19  Bruno Haible  <bruno@clisp.org>
15991
15992                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
15993                 that getline works on glibc2 systems. Needed to avoid trouble
15994                 in relocatable.c.
15995                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
15996
15997         2005-12-04  Bruno Haible  <bruno@clisp.org>
15998
15999                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
16000                 launcher (untested).
16001
16002         2005-12-04  Bruno Haible  <bruno@clisp.org>
16003
16004                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
16005
16006         2006-07-22  Bruno Haible  <bruno@clisp.org>
16007
16008                 * gettext.m4: Update from GNU gettext-0.15.
16009                 * nls.m4: Likewise.
16010                 * po.m4: Likewise.
16011                 * inttypes-pri.m4: Likewise.
16012                 * inttypes-h.m4: Renamed from inttypes.m4.
16013                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
16014
16015 2006-07-22  Bruno Haible  <bruno@clisp.org>
16016
16017         Merge from GNU gettext 0.15.
16018
16019         2005-07-05  Bruno Haible  <bruno@clisp.org>
16020
16021                 * printf-args.c (printf_fetchargs): Work around broken
16022                 definition of wint_t on mingw.
16023
16024         2005-02-12  Bruno Haible  <bruno@clisp.org>
16025
16026                 * xallocsa.h: Add extern "C" for C++.
16027
16028         2006-05-17  Bruno Haible  <bruno@clisp.org>
16029
16030                 Cygwin portability.
16031                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
16032
16033         2006-04-30  Bruno Haible  <bruno@clisp.org>
16034
16035                 * progreloc.c: Include <mach-o/dyld.h> if available.
16036                 (find_executable): Use _NSGetExecutablePath when possible.
16037
16038         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
16039
16040                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
16041                 function.
16042
16043         2005-12-29  Bruno Haible  <bruno@clisp.org>
16044
16045                 * progreloc.c (set_program_name_and_installdir): Fix
16046                 compilation error.
16047
16048         2005-12-04  Bruno Haible  <bruno@clisp.org>
16049
16050                 Cygwin portability.
16051                 * progreloc.c: Include <windows.h> also on Cygwin.
16052                 (find_executable): Add support for Cygwin.
16053                 (set_program_name_and_installdir): Handle also platforms with
16054                 nonempty EXEEXT.
16055
16056         2006-07-11  Bruno Haible  <bruno@clisp.org>
16057
16058                 * javacomp.c: Fix a comment.
16059                 Reported by Jim Meyering.
16060
16061         2006-04-30  Bruno Haible  <bruno@clisp.org>
16062
16063                 * javacomp.h (compile_java_class): Add source_version,
16064                 target_version arguments.
16065                 * javacomp.c: Rewritten to choose only a compiler that
16066                 respects the specified source_version and target_version.
16067
16068         2006-06-27  Bruno Haible  <bruno@clisp.org>
16069
16070                 Assume correct S_ISDIR macro.
16071                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
16072
16073         2006-07-22  Bruno Haible  <bruno@clisp.org>
16074
16075                 * javaversion.h: New file, from GNU gettext.
16076                 * javaversion.c: New file, from GNU gettext.
16077                 * javaversion.java: New file, from GNU gettext.
16078                 * javaversion.class: New file, from GNU gettext.
16079
16080         2006-05-17  Bruno Haible  <bruno@clisp.org>
16081
16082                 Cygwin portability.
16083                 * javaexec.c (execute_java_class): Test for jview program
16084                 also on Cygwin.
16085
16086         2006-04-09  Bruno Haible  <bruno@clisp.org>
16087
16088                 * fatal-signal.c: Don't include string.h.
16089                 (at_fatal_signal): Use a copying loop instead of memcpy.
16090
16091         2005-12-04  Bruno Haible  <bruno@clisp.org>
16092
16093                 * csharpexec.c: Add support for 'clix' launcher (untested).
16094                 (execute_csharp_using_sscli): New function.
16095                 (execute_csharp_program): Call it.
16096
16097         2006-06-21  Bruno Haible  <bruno@clisp.org>
16098
16099                 Avoid warnings from recent versions of mcs.
16100                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
16101                 -o, -L, -r any more. Use options documented since mcs-1.0
16102                 instead. Similarly for -g.
16103
16104         2005-07-09  Bruno Haible  <bruno@clisp.org>
16105
16106                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
16107                 add a .dll suffix.
16108                 Reported by Mark Junker <mjscod@gmx.de>.
16109
16110         2006-06-17  Bruno Haible  <bruno@clisp.org>
16111
16112                 * config.charset: Update for NetBSD 3.0.
16113
16114         2006-05-17  Bruno Haible  <bruno@clisp.org>
16115
16116                 Cygwin portability.
16117                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
16118
16119         2006-05-16  Bruno Haible  <bruno@clisp.org>
16120
16121                 * localcharset.c [CYGWIN]: Include <windows.h>.
16122                 (get_charset_aliases): For Cygwin, return the same CPxxx
16123                 aliases list as under WIN32.
16124                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
16125                 the environment variables. Fall back to GetACP().
16126
16127         2006-04-05  Bruno Haible  <bruno@clisp.org>
16128
16129                 * config.charset: Update Juan Manuel Guerrero's address.
16130
16131         2005-02-12  Bruno Haible  <bruno@clisp.org>
16132
16133                 * allocsa.h: Add extern "C" for C++.
16134
16135         2005-02-10  Bruno Haible  <bruno@clisp.org>
16136
16137                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
16138                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
16139
16140         2006-07-22  Bruno Haible  <bruno@clisp.org>
16141
16142                 * gettext.h: Update to GNU gettext-0.15.
16143
16144 2006-07-22  Bruno Haible  <bruno@clisp.org>
16145
16146         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
16147         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
16148         lib-prefix.m4, longdouble.m4, ssize_t.m4.
16149
16150 2006-07-21  Eric Blake  <ebb9@byu.net>
16151
16152         * modules/stdlib-safer: New file.
16153         * MODULES.html.sh (File stream based Input/Output): Add
16154         stdlib-safer.
16155
16156 2006-07-21  Eric Blake  <ebb9@byu.net>
16157
16158         * lib/stdlib-safer.h: New file from coreutils, required by
16159         stdlib--.h.
16160
16161 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
16162
16163         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
16164
16165 2006-07-20  Bruno Haible  <bruno@clisp.org>
16166
16167         * gnulib-tool: Recognize new option --assume-autoconf.
16168         (autoconf_minversion): New variable.
16169         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
16170
16171 2006-07-20  Bruno Haible  <bruno@clisp.org>
16172
16173         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
16174
16175 2006-07-19  Derek R. Price  <derek@ximbiot.com>
16176
16177         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
16178         Reindent and repaginate.
16179
16180 2006-07-19  Derek Price  <derek@ximbiot.com>
16181
16182         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
16183         Correct grammar.
16184
16185 2006-07-17  Bruno Haible  <bruno@clisp.org>
16186
16187         * modules/list: New file.
16188         * modules/array-list: New file.
16189         * modules/carray-list, modules/carray-list-tests: New files.
16190         * modules/linked-list, modules/linked-list-tests: New files.
16191         * modules/avltree-list, modules/avltree-list-tests: New files.
16192         * modules/rbtree-list, modules/rbtree-list-tests: New files.
16193         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
16194         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
16195         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
16196         * modules/oset: New file.
16197         * modules/array-oset: New file.
16198         * modules/avltree-oset, modules/avltree-oset-tests: New files.
16199         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
16200         * tests/test-carray_list.c: New file.
16201         * tests/test-linked_list.c: New file.
16202         * tests/test-avltree_list.c: New file.
16203         * tests/test-rbtree_list.c: New file.
16204         * tests/test-linkedhash_list.c: New file.
16205         * tests/test-avltreehash_list.c: New file.
16206         * tests/test-rbtreehash_list.c: New file.
16207         * tests/test-avltree_oset.c: New file.
16208         * tests/test-rbtree_oset.c: New file.
16209         * MODULES.html.sh (Container data structures): New section.
16210
16211 2006-07-17  Bruno Haible  <bruno@clisp.org>
16212
16213         * m4/gl_list.m4: New file.
16214
16215 2006-07-17  Bruno Haible  <bruno@clisp.org>
16216
16217         * lib/gl_list.h: New file.
16218         * lib/gl_list.c: New file.
16219         * lib/gl_array_list.h: New file.
16220         * lib/gl_array_list.c: New file.
16221         * lib/gl_carray_list.h: New file.
16222         * lib/gl_carray_list.c: New file.
16223         * lib/gl_linked_list.h: New file.
16224         * lib/gl_linked_list.c: New file.
16225         * lib/gl_anylinked_list1.h: New file.
16226         * lib/gl_anylinked_list2.h: New file.
16227         * lib/gl_avltree_list.h: New file.
16228         * lib/gl_avltree_list.c: New file.
16229         * lib/gl_anyavltree_list1.h: New file.
16230         * lib/gl_anyavltree_list2.h: New file.
16231         * lib/gl_rbtree_list.h: New file.
16232         * lib/gl_rbtree_list.c: New file.
16233         * lib/gl_anyrbtree_list1.h: New file.
16234         * lib/gl_anyrbtree_list2.h: New file.
16235         * lib/gl_anytree_list1.h: New file.
16236         * lib/gl_anytree_list2.h: New file.
16237         * lib/gl_linkedhash_list.h: New file.
16238         * lib/gl_linkedhash_list.c: New file.
16239         * lib/gl_anyhash_list1.h: New file.
16240         * lib/gl_anyhash_list2.h: New file.
16241         * lib/gl_avltreehash_list.h: New file.
16242         * lib/gl_avltreehash_list.c: New file.
16243         * lib/gl_rbtreehash_list.h: New file.
16244         * lib/gl_rbtreehash_list.c: New file.
16245         * lib/gl_anytreehash_list1.h: New file.
16246         * lib/gl_anytreehash_list2.h: New file.
16247
16248         * lib/gl_oset.h: New file.
16249         * lib/gl_oset.c: New file.
16250         * lib/gl_array_oset.h: New file.
16251         * lib/gl_array_oset.c: New file.
16252         * lib/gl_avltree_oset.h: New file.
16253         * lib/gl_avltree_oset.c: New file.
16254         * lib/gl_rbtree_oset.h: New file.
16255         * lib/gl_rbtree_oset.c: New file.
16256         * lib/gl_anytree_oset.h: New file.
16257
16258 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
16259
16260         * m4/mkancesdirs.m4: New file.
16261         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
16262         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
16263         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
16264         it.
16265
16266 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
16267
16268         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
16269         * lib/mkancesdirs.h: New files.
16270         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
16271         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
16272         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
16273         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
16274         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
16275         callers changed.  Revamp internals significantly, by not
16276         attempting to create directories that are temporarily more
16277         permissive than the final results.  Do not attempt to use
16278         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
16279         This removes some race conditions, fixes some bugs, and simplifies
16280         things.  Use new dirchownmod function to do owner and mode changes.
16281         * lib/mkdir-p.h: Likewise.
16282         * lib/modechange.c (octal_to_mode): New function.
16283         (struct mode_change): New member mentioned.
16284         (make_node_op_equals): New arg mentioned.  All callers changed.
16285         (mode_compile): Keep track of which mode bits the user has explicitly
16286         mentioned.
16287         (mode_adjust): New arg DIR, so that we implement the X op correctly.
16288         New arg PMODE_BITS, to keep track of which mode bits the user
16289         mentioned; it treats S_ISUID and S_ISGID speciall.
16290         All callers changed.
16291         * lib/modechange.h: Likewise.
16292
16293 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
16294
16295         * MODULES.html.sh: Add mkancestors.
16296         * modules/mkancesdirs: New module.
16297         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
16298         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
16299         The chdir-safer and afs files are now orphans; I'll remove them
16300         unless someone speaks up.
16301         Add lib/dirchownmod.c, lib/dirchownmod.h.
16302         (Depends-on): Remove alloca, chown, save-cwd, dirname.
16303         Add lchown, mkancesdirs.
16304         (Maintainer): Add self.
16305
16306 2006-07-15  Karl Berry  <karl@gnu.org>
16307
16308         * gnulib-tool: help message wording/arrangement.
16309
16310 2006-07-14  Simon Josefsson  <jas@extundo.com>
16311
16312         * doc/gnulib.texi (Libtool and Windows): New section.
16313
16314 2006-07-12  Simon Josefsson  <jas@extundo.com>
16315
16316         * modules/gendocs (License): Fix license, approved by Karl.
16317
16318 2006-07-12  Eric Blake  <ebb9@byu.net>
16319
16320         * MODULES.html.sh: Add gendocs.
16321
16322 2006-07-11  Eric Blake  <ebb9@byu.net>
16323
16324         * modules/fdl: New module, to install doc/fdl.texi.
16325         * MODULES.html.sh: Add new section for documentation modules.
16326         * gnulib-tool: Avoid space-tab.
16327         (--doc-base): New option, to manage files from doc.
16328
16329 2006-07-11  Eric Blake  <ebb9@byu.net>
16330
16331         * m4/absolute-header.m4: Fix comments to match recent change.
16332
16333 2006-07-11  Eric Blake  <ebb9@byu.net>
16334
16335         * gnulib-tool: List --doc-base before --tests-base.
16336
16337 2006-07-11  Derek R. Price  <derek@ximbiot.com>
16338
16339         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
16340
16341 2006-07-11  Bruno Haible  <bruno@clisp.org>
16342
16343         * README: Mention where to put documentation.
16344
16345 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16346
16347         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
16348
16349 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
16350
16351         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
16352         to stdint.m4.
16353
16354 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
16355
16356         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
16357         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
16358         "no/such/file/stdint.h" when there is no such file, so that
16359         the resulting C code can be parsed by dodgy compilers.
16360         Problems reported by Bob Proulx.
16361
16362 2006-07-10  Derek R. Price  <derek@ximbiot.com>
16363
16364         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
16365         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
16366         macros into the GNU _D_EXACT_NAMLEN.
16367         * lib/savedir.c:  Likewise.
16368         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
16369
16370 2006-07-10  Derek R. Price  <derek@ximbiot.com>
16371         and Paul Eggert  <eggert@cs.ucla.edu>
16372
16373         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
16374         * m4/savedir.m4:
16375         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
16376         macros into the GNU _D_EXACT_NAMLEN.
16377
16378 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
16379
16380         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
16381         around the absolute name, to work around a problem with the HP-UX
16382         11.23 native C compiler, reported by Bob Proulx.
16383
16384 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
16385
16386         * doc/maintain.texi, make-stds.texi: Sync from
16387         <http://savannah.gnu.org/projects/gnustandards>.
16388
16389 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
16390
16391         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
16392
16393 2006-07-09  Jim Meyering  <jim@meyering.net>
16394
16395         * m4/glob.m4: Remove a doubled word in a comment.
16396
16397 2006-07-09  Jim Meyering  <jim@meyering.net>
16398
16399         * lib/argp-pv.c: Remove a doubled word in a comment.
16400         * lib/check-version.c (check_version): Likewise.
16401         * lib/javacomp.c (compile_java_class): Likewise.
16402
16403 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
16404
16405         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
16406         for the benefit of people using Autoconf 2.60.  If you want to
16407         support older Autoconf versions you can copy m4/onceonly_2_57.m4
16408         (or m4/onceonly.m4, if pre-2.57) manually.
16409
16410 2006-07-08  Jim Meyering  <jim@meyering.net>
16411
16412         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
16413         comment.
16414         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
16415         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
16416         comment.
16417
16418 2006-07-08  Jim Meyering  <jim@meyering.net>
16419
16420         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
16421
16422 2006-07-07  Simon Josefsson  <jas@extundo.com>
16423
16424         * tests/test-crc.c: Change expected crc value, the test vector
16425         were probably computed using the old broken crc.c?
16426
16427 2006-07-06  Simon Josefsson  <jas@extundo.com>
16428
16429         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
16430         now the canonical place for the M4 file).
16431
16432         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
16433         from the sys_socket dependency now.
16434
16435         * modules/inet_pton (Files): Ditto.
16436
16437         * modules/inet_ntop (Files): Ditto.
16438
16439 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
16440
16441         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
16442         not gl_PREREQ_GETUSERSHELL.
16443
16444 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16445
16446         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
16447         with only one argument, for Autoconf 2.60.
16448         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
16449         expand to nothing, so add a shell command to avoid syntax error.
16450         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
16451
16452 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16453
16454         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
16455
16456 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
16457
16458         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
16459         no longer needed.  Check for isblank decl.
16460         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
16461         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
16462         of existence.
16463
16464 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
16465
16466         * lib/getloadavg.c: Use __VMS, not VMS.
16467         * lib/getopt.c: Likewise.
16468         * lib/getpagesize.h: Likewise.
16469         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
16470         and probably does not work.
16471
16472 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
16473
16474         * lib/.cppi-disable: Add wcwidth.
16475         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
16476         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
16477         (ISGRAPH): Remove.  All uses changed to isgraph.
16478         (FOLD) [!defined _LIBC]: Remove special case.
16479         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
16480         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
16481         HAVE_ISBLANK.
16482         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
16483         case.
16484
16485 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
16486
16487         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
16488         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
16489         brackets.  Other minor changes to suppress some compiler
16490         warnings.
16491
16492 2006-07-06  Derek R. Price  <derek@ximbiot.com>
16493         and Paul Eggert  <eggert@cs.ucla.edu>
16494
16495         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
16496         of invoking obsolescent AC_HEADER_DIRENT macro.
16497         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
16498         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
16499         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
16500         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
16501         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
16502         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
16503         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
16504         * m4/readdir.m4: Remove; no longer needed.
16505
16506 2006-07-06  Derek R. Price  <derek@ximbiot.com>
16507         and Paul Eggert  <eggert@cs.ucla.edu>
16508
16509         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
16510         Don't worry about this obsolete case any more.
16511         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
16512         directories.
16513         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
16514         worry about this obsolete case any more.
16515         * lib/fts.c: Likewise.
16516         * lib/getcwd.c: Likewise.
16517         * lib/glob.h: Likewise.
16518         * lib/savedir.c: Likewise.
16519
16520 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
16521
16522         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
16523         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
16524         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
16525         needed.
16526         All uses removed.
16527         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
16528         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
16529         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
16530         needed.
16531         * m4/getdate.m4 (gl_GETDATE): Likewise.
16532         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
16533         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
16534         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
16535         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
16536         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
16537         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
16538         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
16539         needed.
16540
16541 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
16542
16543         * lib/memcasecmp.c: Include <limits.h>.
16544         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
16545         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
16546         Don't assume isdigit succeeds only on '0' through '9'.
16547
16548 2006-07-05  Eric Blake  <ebb9@byu.net>
16549
16550         * modules/getaddrinfo (Depends-on): Add snprintf.
16551
16552 2006-07-05  Eric Blake  <ebb9@byu.net>
16553
16554         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
16555         to avoid 'header present but could not be compiled' on cygwin.
16556
16557 2006-07-05  Eric Blake  <ebb9@byu.net>
16558
16559         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
16560         missing from netdb.h.
16561         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
16562
16563 2006-07-05  Derek R. Price  <derek@ximbiot.com>
16564
16565         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
16566         no longer needed.
16567         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
16568         * m4/getdate.m4 (gl_GETDATE): Likewise.
16569         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
16570         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
16571         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
16572         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
16573         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
16574
16575 2006-07-05  Derek R. Price  <derek@ximbiot.com>
16576
16577         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
16578         All uses of is_space replaced by isspace.
16579         * lib/exit.h: Don't talk about STDC_HEADERS.
16580         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
16581         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
16582         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
16583         replaced by isprint etc.
16584         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
16585         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
16586         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
16587         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
16588         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
16589         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
16590
16591 2006-07-05  Bruno Haible  <bruno@clisp.org>
16592
16593         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
16594         the function exists, before testing against AIX.
16595         Reported by Martin Lambers <marlam@marlam.de>.
16596
16597 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
16598
16599         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
16600         From Mark D. Baushke.
16601
16602 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
16603
16604         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
16605         to the absolute name, not just one, to bypass Sun C 5.8's
16606         "warning: #include of /usr/include/... may be non-portable".
16607
16608 2006-07-04  Eric Blake  <ebb9@byu.net>
16609
16610         * modules/dirname-tests: New test module.
16611         * tests/test-dirname.c: New file, replacing dirname.c
16612         TEST_DIRNAME section that was recently deleted.
16613
16614 2006-07-04  Bruno Haible  <bruno@clisp.org>
16615
16616         Assume ANSI C header files and <ctype.h> functions.
16617         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
16618         (mbsnwidth): Use isprint, iscntrl instead.
16619
16620 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16621
16622         Merge from coreutils.
16623         * MODULES.html.sh: Add xstrtold.
16624         * modules/xstrtold: New file.
16625         * modules/cycle-check (Files): Add lib/same-inode.h.
16626         * modules/dirname (Files): Add m4/double-slash-root.m4.
16627         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
16628         * modules/mkdir-p (Files): Add lib/same-inode.h.
16629         * modules/same (Files): Add lib/same-inode.h.
16630
16631 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16632
16633         * m4/absolute-header.m4: Renamed from full-header-path.m4.
16634         This is to keep the terminology clean; POSIX talks about
16635         "absolute pathnames", not "full pathnames", but the GNU
16636         Coding Standards say to use "path" for something else;
16637         so use "absolute" to keep both sides happy.
16638         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
16639         Set gl_absolute_header, not gl_full_header_path.
16640         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
16641         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
16642         All uses changed.
16643
16644         Merge from coreutils.
16645
16646         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
16647
16648         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
16649         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
16650         want to require the building of c-strtod.o.
16651         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
16652         needs -lm directly.
16653         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
16654
16655         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
16656
16657         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
16658         --as-needed option if available.  Problem reported by Albert Chin in
16659         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
16660         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
16661         cc merely issues a bunch of annoying warnings for --as-needed
16662         (this problem was reported by Bob Proulx).  Also, try linking with
16663         -lm to detect a bug in binutils 2.16 (this problem was reported
16664         by Ralf Wildenhues).
16665
16666         2006-06-18  Jim Meyering  <jim@meyering.net>
16667
16668         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
16669         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
16670         macro.
16671         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
16672         also check for glibc-2.4's abort-inducing bug.
16673
16674         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
16675         Low-probability clean-up should be to use rmdir to get rid of
16676         the just-created directory, not unlink.
16677
16678         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
16679         configure fail, and request a bug report to inform us about it.
16680         Add a comment that, barring reports to the contrary, in 2007 we'll
16681         assume ftruncate is universally available.
16682
16683         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
16684
16685         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
16686
16687         2006-03-12  Jim Meyering  <jim@meyering.net>
16688
16689         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
16690         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
16691         * m4/same.m4 (gl_SAME): Likewise.
16692         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
16693
16694         2006-03-11  Eric Blake  <ebb9@byu.net>
16695
16696         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
16697         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
16698         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
16699         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
16700
16701 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16702
16703         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
16704         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
16705         reported by Mark D. Baushke, one in
16706         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
16707
16708         Merge from coreutils.
16709
16710         * lib/.cppi-disable: Add stdint_.h.
16711         * lib/.cvsignore: Add stdint.h.
16712
16713         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
16714
16715         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
16716         both double and long double versions.
16717         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
16718         * lib/xstrtold.c: New file.
16719         * lib/xstrtod.h (xstrtold): New decl.
16720
16721         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
16722
16723         * lib/filemode.c (setst): Remove.
16724         (strmode): Rewrite to avoid setst.  This makes the code shorter,
16725         (arguably) clearer, and the generated code is a bit smaller on my
16726         Debian GNU/Linux stable x86 host.
16727
16728         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
16729
16730         * lib/filemode.c: Include "filemode.h" first, to test the interface.
16731         Assume that filemode.h includes sys/types.h and sys/stat.h.
16732         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
16733         (ftypelet): Reorder to put common cases first, for efficiency.
16734         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
16735         to do 'M'.
16736         (strmode): Renamed from mode_string, and now stores 12 bytes instead
16737         of 10, for compatibility with FreeBSD.  All callers changed.
16738         (filemodestring): Now stores 12 bytes instead of 10, and sets file
16739         types that can't be deduced solely from st_mode.  First arg is now a
16740         const pointer.
16741         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
16742         (strmode): Renamed from mode_string.
16743         (filemodestring): New decl.
16744         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
16745         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
16746         needed.
16747         (S_ISPORT, S_ISWHT): New macros, if not already defined.
16748
16749         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
16750
16751         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
16752         fsusage.h now does that.  Include fsusage.h first, to test interface.
16753         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
16754         at most one method (the old code could have generated decls that
16755         didn't conform to C89, not that this was ever exercised).
16756         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
16757
16758         2006-03-19  Jim Meyering  <jim@meyering.net>
16759
16760         Work even in a chroot where d_ino values for entries in "/"
16761         don't match the stat.st_ino values for the same names.
16762         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
16763         number, iterate through all entries again, using lstat instead.
16764         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
16765         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
16766
16767         * lib/getcwd.c (__getcwd): Clarify a comment.
16768         Use memcpy in place of a call to strcpy.
16769
16770         2006-03-12  Jim Meyering  <jim@meyering.net>
16771
16772         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
16773         matches that of the current directory (which we're about to chdir ".."
16774         out of), then save the dev-ino of the parent, instead.
16775
16776         * lib/same-inode.h (SAME_INODE): New file/macro.
16777         * lib/chdir-safer.c (SAME_INODE): Remove definition.
16778         Include "same-inode.h", instead.
16779         * lib/same.c: Likewise.
16780         * lib/cycle-check.h: Include "same-inode.h".
16781         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
16782         * lib/cycle-check.c (SAME_INODE): Remove definition.
16783         * lib/root-dev-ino.h: Include "same-inode.h".
16784
16785         2006-03-11  Eric Blake  <ebb9@byu.net>
16786
16787         * lib/same.c (same_name): s/base_name/last_component/
16788         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
16789         * lib/filenamecat.c (file_name_concat): Likewise.
16790
16791         2006-03-11  Eric Blake  <ebb9@byu.net>,
16792                     Paul Eggert  <eggert@cs.ucla.edu>
16793
16794         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
16795         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
16796         drive prefix.
16797         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
16798         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
16799         (last_component): New method.
16800         * lib/dirname.c (dir_len): Determine when drive letters need a
16801         subsequent slash.  Preserve // when it is special.
16802         (dir_name): Don't append dot when drive letter is absolute.
16803         [TEST_DIRNAME]: Move into a full-blown gnulib test.
16804         * lib/basename.c (base_name): New semantics - malloc the result.
16805         Preserve // when it is special.  Preserve relative files that look
16806         like drive letters.
16807         (base_len): Preserve // when it is special.
16808         (last_component): New method, similar to old base_name semantics.
16809         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
16810         base_name.  Strip redundant slashes from ///.
16811
16812 2006-07-03  Jim Meyering  <jim@meyering.net>
16813
16814         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
16815         macro is used before the first cycle_check call.
16816
16817 2006-07-03  Eric Blake  <ebb9@byu.net>
16818
16819         * modules/dirname (Depends-on): Add xstrndup.
16820
16821 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
16822
16823         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
16824         test cases, so that config.log is a bit easier to follow.
16825
16826 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
16827
16828         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
16829         both are 64 bits, since this seems to be the tradition, and this
16830         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
16831         we ever run into a host that prefers long long to long in this
16832         case, we'll need another configure-time test.  Problem reported by
16833         Jim Meyering.
16834
16835 2006-07-02  Eric Blake  <ebb9@byu.net>
16836
16837         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
16838
16839 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16840
16841         * modules/inttypes (Depends-on): No longer depends on stdint.
16842         * modules/stdint (Description): Say more about assumptions.
16843         Say that the fast types might differ.  Say macros are used.
16844         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
16845         (Makefile.am): Revise list of substituted symbols to match
16846         new stdint.m4.
16847         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
16848         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
16849         * tests/test-stdint.c (verify_same_types)
16850         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
16851         the code conforms to C99/C89.
16852         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
16853         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
16854
16855 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16856
16857         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
16858         but fix a bug, by requiring at least 64 bits.
16859         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
16860         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
16861         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
16862         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
16863
16864         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
16865         changes.  Make 2.59 a prerequisite.  Check and substitute for
16866         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
16867         inttypes.h.  Do not use special include files; just use the
16868         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
16869         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
16870         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
16871         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
16872         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
16873         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
16874         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
16875         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
16876         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
16877         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
16878         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
16879         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
16880         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
16881         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
16882         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
16883         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
16884         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
16885         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
16886         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
16887         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
16888         WINT_MAX.  Check for C99 conformance more strictly, by detecting
16889         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
16890         not check for things that C99 does not require, e.g., int8_t.  If
16891         a test isn't needed unless <stdint.h> isn't working, and is
16892         unlikely to be needed for any other reason, then don't do it
16893         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
16894         size_t, since we assume C89 freestanding at least.  Do not check
16895         for sig_atomic_t, wchar_t, or wint_t, since the code now does
16896         the right thing even if the types are not defined.  Instead use:
16897         (gl_STDINT_TYPE_PROPERTIES): New macro.
16898         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
16899         testing whether <sys/types.h> clashes, as Autoconf does this for
16900         us now.  All uses removed.
16901         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
16902         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
16903         (gl_CHECK_TYPE_SAME):
16904         Remove; no longer needed.
16905         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
16906         exists, since we'll return 0 anyway in that case.
16907         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
16908
16909 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16910
16911         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
16912         possible collision with system files.
16913         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
16914         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
16915         WCHAR_MIN and WCHAR_MAX in this case.
16916         (<stddef.h>): Do not include; no longer needed.
16917         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
16918         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
16919         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
16920         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
16921         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
16922         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
16923         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
16924         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
16925         !defined(__c99))]: Include in this case too, since it's harmless
16926         now.
16927         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
16928         dangerous to do so.
16929         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
16930         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
16931         (_STDINT_MIN, _STDINT_MAX): New macros.
16932         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
16933         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
16934         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
16935         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
16936         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
16937         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
16938         macros, not typedefs; this simplifies things quite a bit.
16939         Use long int for all types narrower than int64_t.
16940         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
16941         Define in terms of long long int or int64_t or long int,
16942         not int64_t or int32_t.  This saves some compile-time testing.
16943         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
16944         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
16945         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
16946         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
16947         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
16948         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
16949         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
16950         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
16951         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
16952         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
16953         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16954         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16955         undef any previous version and define our own version, for
16956         simplicity and consistency with the new macros for types.
16957         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16958         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16959         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
16960         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
16961         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
16962         @WINT_T_SUFFIX@ to keep things simple here.
16963         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
16964         Simplify by assuming typical 8/16/32/64 host, since we're
16965         already doing that elsewhere anyway.
16966         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
16967         and assume long long int is 64 bits if available.  This
16968         speeds up 'configure'.
16969
16970 2006-07-01  Eric Blake  <ebb9@byu.net>
16971
16972         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
16973         Reported by Andreas Buening.
16974
16975 2006-07-01  Eric Blake  <ebb9@byu.net>
16976
16977         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
16978
16979 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
16980
16981         * lib/getaddrinfo.c: fixed typo
16982
16983 2006-06-29  Jim Meyering  <jim@meyering.net>
16984
16985         * modules/strftime (Maintainer): Add my name, since with the
16986         FPRINTFTIME changes strftime.c has forked from glibc.
16987
16988 2006-06-29  Eric Blake  <ebb9@byu.net>
16989
16990         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
16991
16992 2006-06-29  Eric Blake  <ebb9@byu.net>
16993
16994         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
16995
16996 2006-06-29  Eric Blake  <ebb9@byu.net>
16997
16998         * lib/stat_.h: New file.
16999
17000 2006-06-29  Eric Blake  <ebb9@byu.net>
17001
17002         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
17003         unused static function.
17004
17005 2006-06-29  Eric Blake  <ebb9@byu.net>
17006
17007         * doc/functions.texi (Function Portability): Document missing lstat
17008         on mingw.
17009
17010 2006-06-29  Eric Blake  <ebb9@byu.net>
17011
17012         * MODULES.html.sh: Add sys_stat.
17013         * modules/sys_stat: New module.
17014         * modules/mkstemp (Depends-on): Add sys_stat.
17015
17016 2006-06-29  Derek R. Price  <derek@ximbiot.com>
17017
17018         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
17019
17020 2006-06-29  Derek R. Price  <derek@ximbiot.com>
17021
17022         * m4/c-bs-a.m4: Removed.
17023
17024 2006-06-29  Derek R. Price  <derek@ximbiot.com>
17025
17026         * lib/strftime.c: Assume strftime() exists.
17027
17028 2006-06-29  Derek Price  <derek@ximbiot.com>
17029
17030         * modules/c-bs-a: Removed - \a is C89.
17031         * MODULES.html.sh: Remove c-bs-a.
17032
17033 2006-06-29  Bruno Haible  <bruno@clisp.org>
17034
17035         * modules/wcwidth (License): Change to LGPL.
17036
17037 2006-06-28  Simon Josefsson  <jas@extundo.com>
17038
17039         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
17040         on _WIN32.
17041
17042         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
17043         getnameinfo.
17044
17045 2006-06-28  Simon Josefsson  <jas@extundo.com>
17046
17047         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
17048
17049 2006-06-28  Simon Josefsson  <jas@extundo.com>
17050
17051         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
17052         functions there.  It will succeed on Windows XP, but on Windows
17053         2000 and (presumably) earlier, it will fail, and use the internal
17054         re-implementation.
17055         (use_win32_p): New function.
17056         (getaddrinfo): Use strtoul on servname, to support numeric ports.
17057         Support AI_NUMERICSERV to disable getservbyname.
17058         (getnameinfo): New function, only supports
17059         NI_NUMERICHOST|NI_NUMERICSERV for now.
17060
17061         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
17062         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
17063         getnameinfo.
17064
17065 2006-06-28  Eric Blake  <ebb9@byu.net>
17066
17067         * modules/wcwidth: New file.
17068         * modules/mbchar (Depends-on): Add wcwidth.
17069         * modules/mbswidth (Depends-on): Add wcwidth.
17070         * MODULES.html.sh: Add wcwidth.
17071
17072 2006-06-28  Eric Blake  <ebb9@byu.net>
17073
17074         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
17075         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
17076
17077 2006-06-28  Eric Blake  <ebb9@byu.net>
17078
17079         * lib/xvasprintf.h: Fix comments.
17080
17081 2006-06-28  Eric Blake  <ebb9@byu.net>
17082
17083         * lib/mbchar.h (wcwidth): Include wcwidth.h.
17084         * lib/mbswidth.c (wcwidth): Move from here...
17085         * lib/wcwidth.h: ...to this new file.
17086
17087 2006-06-28  Derek R. Price  <derek@ximbiot.com>
17088
17089         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
17090
17091         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
17092         it's obsolete.
17093         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
17094
17095 2006-06-28  Derek R. Price  <derek@ximbiot.com>
17096
17097         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
17098         Autoconf 2.60 says this stuff was obsolete.
17099
17100 2006-06-28  Bruno Haible  <bruno@clisp.org>
17101
17102         * modules/wcwidth (Files): Add m4/wchar_t.m4.
17103
17104 2006-06-28  Bruno Haible  <bruno@clisp.org>
17105
17106         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
17107         gt_TYPE_WCHAR_T.
17108
17109 2006-06-28  Bruno Haible  <bruno@clisp.org>
17110
17111         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
17112         declaration for wcwidth.
17113         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
17114
17115 2006-06-28  Bruno Haible  <bruno@clisp.org>
17116
17117         * lib/mkdtemp.c [MINGW]: Include <io.h>.
17118         (mkdir): Define using _mkdir.
17119
17120 2006-06-28  Bruno Haible  <bruno@clisp.org>
17121
17122         * lib/getaddrinfo.h: Fix POSIX URL.
17123         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
17124         _WIN32.
17125         (use_win32_p): Make static.
17126         (getaddrinfo): Reject service name if it is empty or does not consist
17127         solely of decimal digits, or if its value is > 65535.
17128         (getnameinfo): Remove useless casts.
17129
17130 2006-06-27  Simon Josefsson  <jas@extundo.com>
17131
17132         * modules/sys_select: New file, suggested by Bruno Haible, Paul
17133         Eggert and Martin Lambers.
17134
17135 2006-06-27  Simon Josefsson  <jas@extundo.com>
17136
17137         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
17138         Eggert and Martin Lambers.
17139
17140 2006-06-27  Bruno Haible  <bruno@clisp.org>
17141
17142         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
17143         result to 0, not to empty.
17144         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
17145
17146 2006-06-27  Bruno Haible  <bruno@clisp.org>
17147
17148         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
17149
17150 2006-06-26  Simon Josefsson  <jas@extundo.com>
17151
17152         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
17153         present.
17154
17155 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
17156
17157         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
17158         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
17159         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
17160
17161 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
17162
17163         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
17164
17165 2006-06-26  Bruno Haible  <bruno@clisp.org>
17166
17167         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
17168
17169 2006-06-26  Bruno Haible  <bruno@clisp.org>
17170
17171         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
17172
17173 2006-06-26  Bruno Haible  <bruno@clisp.org>
17174
17175         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
17176         SGI C compiler in pre-C99 mode.
17177         Suggested by Mark D. Baushke and Larry Jones.
17178
17179 2006-06-26  Bruno Haible  <bruno@clisp.org>
17180
17181         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
17182         WCHAR_MAX.
17183         Reported by Mark D. Baushke and Larry Jones.
17184
17185 2006-06-26  Bruno Haible  <bruno@clisp.org>
17186
17187         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
17188         in pre-C99 mode.
17189         Suggested by Mark D. Baushke and Larry Jones.
17190
17191 2006-06-23  Simon Josefsson  <jas@extundo.com>
17192             Bruno Haible  <bruno@clisp.org>
17193
17194         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
17195         Emit mostlyclean-local rule.
17196         (func_emit_tests_Makefile_am): Likewise.
17197         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
17198
17199 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
17200
17201         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
17202
17203 2006-06-23  Bruno Haible  <bruno@clisp.org>
17204
17205         * tests/test-stdint.c: Update to match ISO C 99 Technical
17206         Corrigendum 1.
17207
17208 2006-06-23  Bruno Haible  <bruno@clisp.org>
17209
17210         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
17211
17212 2006-06-23  Bruno Haible  <bruno@clisp.org>
17213
17214         * lib/stdint_.h: Treat IRIX like OpenBSD.
17215
17216 2006-06-23  Bruno Haible  <bruno@clisp.org>
17217
17218         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
17219         ISO C 99 Technical Corrigendum 1.
17220
17221 2006-06-22  Simon Josefsson  <jas@extundo.com>
17222
17223         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
17224         MinGW.
17225
17226 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
17227
17228         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
17229         needed.  Some compiler complained about some of them.  Problem reported
17230         by Larry Jones in
17231         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
17232
17233 2006-06-21  Simon Josefsson  <jas@extundo.com>
17234
17235         * tests/test-getaddrinfo.c: New file.
17236
17237         * modules/getaddrinfo-tests: New file.
17238
17239         * MODULES.html.sh: Add inet_pton.
17240
17241         * modules/inet_pton: New file.
17242
17243 2006-06-21  Simon Josefsson  <jas@extundo.com>
17244
17245         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
17246         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
17247         of using the (limited) gnulib implementation on Windows XP.
17248
17249         * m4/inet_pton.m4: New file.
17250
17251 2006-06-21  Simon Josefsson  <jas@extundo.com>
17252
17253         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
17254         variable.
17255
17256         * lib/socket_.h: Don't define WINVER.
17257
17258         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
17259         slightly modified to work in gnulib.
17260
17261 2006-06-21  Simon Josefsson  <jas@extundo.com>
17262
17263         * doc/gnulib.texi (Windows sockets): Add.
17264
17265 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
17266
17267         * lib/read-file.c (fread_file): Start with buffer allocation of
17268         0 bytes rather than 1 byte; this simplifies the code.
17269         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
17270         code to free buffer and save/restore errno.
17271         (internal_read_file): Remove unused local.
17272
17273 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
17274
17275         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
17276         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
17277         Problem reported by Denis Excoffier in
17278         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
17279
17280 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
17281
17282         * modules/sys_socket, modules/socklen: Include sys/types since
17283         FreeBSD 4.x's sys/socket.h needs it.
17284
17285 2006-06-19  Simon Josefsson  <jas@extundo.com>
17286
17287         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
17288
17289 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
17290
17291         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
17292
17293 2006-06-19  Bruno Haible  <bruno@clisp.org>
17294
17295         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
17296         and FULL_PATH_INTTYPES_H in angle brackets.
17297         Reported by Mark D. Baushke <mdb@gnu.org>.
17298
17299 2006-06-17  Eric Blake  <ebb9@byu.net>
17300
17301         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
17302         errno.
17303
17304 2006-06-17  Bruno Haible  <bruno@clisp.org>
17305
17306         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
17307         <sys/inttypes.h>.
17308
17309 2006-06-17  Bruno Haible  <bruno@clisp.org>
17310
17311         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
17312         whether errno is declared. Assume <errno.h> declares errno.
17313
17314 2006-06-17  Bruno Haible  <bruno@clisp.org>
17315
17316         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
17317
17318 2006-06-17  Bruno Haible  <bruno@clisp.org>
17319
17320         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
17321         problem on Solaris 2.5.1.
17322
17323 2006-06-16  Eric Blake  <ebb9@byu.net>
17324
17325         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
17326         * lib/unicodeio.c [!defined errno]: Likewise.
17327         * lib/strtol.c [!defined errno]: Likewise.
17328         * lib/strtod.c [!defined errno]: Likewise.
17329
17330 2006-06-15  Eric Blake  <ebb9@byu.net>
17331
17332         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
17333
17334 2006-06-15  Eric Blake  <ebb9@byu.net>
17335
17336         * config/srclist.txt (ssize_t.m4): Lose sync.
17337
17338 2006-06-15  Bruno Haible  <bruno@clisp.org>
17339
17340         * modules/stdint (Files): Include m4/full-header-path.m4,
17341         m4/size_max.m4, m4/wchar_t.m4.
17342         (Makefile.am): Many more substitutions.
17343         * modules/stdint-tests: New file.
17344         * tests/test-stdint.c: New file.
17345
17346 2006-06-15  Bruno Haible  <bruno@clisp.org>
17347
17348         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
17349         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
17350         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
17351         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
17352         gl_CHECK_TYPE_SAME): New macros.
17353
17354 2006-06-15  Bruno Haible  <bruno@clisp.org>
17355
17356         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
17357
17358 2006-06-15  Bruno Haible  <bruno@clisp.org>
17359
17360         * lib/stdint_.h: Rewritten to be fully auto-configured.
17361         Fixes bug on HP-UX/IA64.
17362
17363 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
17364
17365         * lib/getdate.y (__attribute__): Don't define if already defined.
17366         Problem reported by Larry Jones.
17367         * lib/utimens.c (__attribute__): Likewise.
17368
17369 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
17370
17371         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
17372         reported by Andreas Schwab.
17373
17374 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17375             Bruno Haible  <bruno@clisp.org>
17376
17377         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
17378         check for the declaration of strnlen and a run test that exposes the
17379         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
17380         rpl_strndup.
17381
17382 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17383             Bruno Haible  <bruno@clisp.org>
17384
17385         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
17386
17387 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17388
17389         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
17390         compile test, for Tru64 4.0D.
17391
17392 2006-05-28  Karl Berry  <karl@gnu.org>
17393
17394         * config/srclist.txt (printf-args.c): lose sync.
17395
17396 2006-05-26  Martin Lambers  <marlam@marlam.de>
17397
17398         * lib/getpass.c: Updates the test for the native W32 API, and adds
17399         missing includes, thus fixing compilation warnings.
17400
17401 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
17402
17403         * lib/exclude.c (exclude_fnmatch): New function.
17404         (excluded_file_name): Call exclude_fnmatch.
17405         * lib/exclude.h (excluded_file_name): New prototype
17406
17407 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
17408
17409         * lib/tempname.c (small_open, large_open): New macros.
17410         (__open, __open64) [!_LIBC]: Remove.
17411         (__gen_tempname): Use small_open and large_open instead of __open
17412         and __open64.  This fixes a portability bug on HP-UX 11.11i
17413         reported by Simon Wing-Tang in
17414         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
17415
17416 2006-05-24  Bruno Haible  <bruno@clisp.org>
17417
17418         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
17419         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
17420         Reported by Thorsten Maerz <torte@netztorte.de> via
17421         Aaron Stone <aaron@serendipity.cx>.
17422
17423 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
17424
17425         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
17426         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
17427         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
17428         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
17429         not really conditional on the cache.
17430         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
17431
17432 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
17433
17434         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
17435         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
17436         (my_usleep): Don't mishandle maximum value.
17437
17438 2006-05-19  Jim Meyering  <jim@meyering.net>
17439
17440         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
17441
17442 2006-05-17  Bruno Haible  <bruno@clisp.org>
17443
17444         Cygwin portability.
17445         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
17446
17447 2006-05-17  Bruno Haible  <bruno@clisp.org>
17448
17449         * lib/stdint_.h: Fix recognition of Cygwin.
17450
17451 2006-05-15  Bruno Haible  <bruno@clisp.org>
17452
17453         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
17454         on libtool patch by Ralf Wildenhues.
17455
17456 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
17457
17458         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
17459         test for C99 conformance; (bool) 0.5 is an integer constant
17460         expression, but (bool) -0.5 is not.  Problem reported by Fedor
17461         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
17462
17463 2006-05-11  Simon Josefsson  <jas@extundo.com>
17464
17465         * m4/xvasprintf.m4: Fix obvious typo.
17466
17467 2006-05-11  Jim Meyering  <jim@meyering.net>
17468
17469         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
17470         James Lemley.
17471
17472 2006-05-10  Simon Josefsson  <jas@extundo.com>
17473
17474         * lib/md4.c: Typo fix, update copyright years.
17475         (K1, K2): Don't use L because it turn computations into 64-bit on
17476         64-bit platforms.
17477
17478 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
17479
17480         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
17481         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
17482         unwanted sign propagation, e.g., on hosts with 64-bit int.
17483         There still are some problems with reeelly weird theoretical hosts
17484         (e.g., 33-bit int) but it's not worth worrying about now.
17485         * lib/sha1.c (rol): Likewise.
17486         (K1, K2, K3, K4): Remove unnecessary L suffix.
17487
17488 2006-05-10  Bruno Haible  <bruno@clisp.org>
17489
17490         * lib/des.c: Cast to avoid warnings.
17491
17492 2006-05-09  Bruno Haible  <bruno@clisp.org>
17493
17494         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
17495         (Depends-on): Depend also on xsize, stdarg.
17496         (configure.ac): Add gl_XVASPRINTF.
17497
17498 2006-05-09  Bruno Haible  <bruno@clisp.org>
17499
17500         * m4/xvasprintf.m4: New file.
17501
17502 2006-05-09  Bruno Haible  <bruno@clisp.org>
17503
17504         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
17505         (EOVERFLOW): Define fallback value.
17506         (xstrcat): New function.
17507         (xvasprintf): Recognize the special case of a string concatenation.
17508
17509 2006-05-08  Eric Blake  <ebb9@byu.net>
17510
17511         * gnulib-tool (func_version): Base copyright year on CVS date.
17512         (func_emit_copyright_notice): New function.
17513         (func_emit_lib_Makefile_am): Use it.
17514         (func_emit_tests_Makefile_am): Likewise.
17515         (func_import): Likewise.
17516
17517 2006-05-08  Bruno Haible  <bruno@clisp.org>
17518
17519         * modules/stdarg: New file.
17520         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
17521
17522 2006-05-08  Bruno Haible  <bruno@clisp.org>
17523
17524         * m4/stdarg.m4: New file, from GNU gettext.
17525
17526 2006-05-08  Bruno Haible  <bruno@clisp.org>
17527
17528         * config/srclist.txt (build-aux/config.rpath): different from latest
17529         release.
17530
17531 2006-05-08  Bruno Haible  <bruno@clisp.org>
17532
17533         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
17534
17535 2006-05-05  Jim Meyering  <jim@meyering.net>
17536
17537         * m4/warning.m4: New file, derived from bison's file by the same name.
17538
17539 2006-05-03  Bruno Haible  <bruno@clisp.org>
17540
17541         * lib/stdint_.h: Shorter URL.
17542         * lib/inttypes.h: Likewise.
17543
17544 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17545
17546         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
17547
17548 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17549
17550         * lib/verify.h: Document the internals better.  Most of this change
17551         was written by Bruno Haible.
17552
17553 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17554
17555         * doc/verify.texi: New file, partly based on a proposal by
17556         Bruno Haible.
17557
17558 2006-05-02  Bruno Haible  <bruno@clisp.org>
17559
17560         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
17561         test from here...
17562         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
17563
17564 2006-04-29  Bruno Haible  <bruno@clisp.org>
17565
17566         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
17567         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
17568
17569 2006-04-29  Bruno Haible  <bruno@clisp.org>
17570
17571         * gnulib-tool: Make --update option actually work.
17572
17573 2006-04-29  Bruno Haible  <bruno@clisp.org>
17574
17575         * doc/gcd.texi: New file.
17576         * doc/gnulib.texi: Include it.
17577
17578 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
17579
17580         * lib/getdate.y (get_date): When adding relative date, start with the
17581         initial time, not with the result of the first mktime call.
17582
17583 2006-04-25  Bruno Haible  <bruno@clisp.org>
17584
17585         * gnulib-tool (func_import): Output the include directives in three
17586         blocks, sorted separately.
17587         Reported by Ben Pfaff <blp@cs.stanford.edu>.
17588
17589 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
17590
17591         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
17592         to define main with arguments, for C++.  Reported by Eric Blake.
17593         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
17594         Prefer 'int main ()' to 'int main (void)', for C++.
17595         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
17596         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
17597         for 'main', for C99 and C++.
17598
17599 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
17600
17601         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
17602         Don't assume that exit status -1 is valid.
17603         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17604         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
17605         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
17606         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
17607         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
17608         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
17609         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
17610         functions can be used without declaring them, or that you can
17611         exit with status -1.
17612         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
17613
17614 2006-04-24  Karl Berry  <karl@gnu.org>
17615
17616         * config/srclist.txt (longdouble.m4): sync lost.
17617
17618 2006-04-24  Eric Blake  <ebb9@byu.net>
17619
17620         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
17621
17622 2006-04-24  Bruno Haible  <bruno@clisp.org>
17623
17624         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
17625         poll() implementation in AIX.
17626         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17627
17628 2006-04-24  Bruno Haible  <bruno@clisp.org>
17629
17630         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
17631         assigned exactly once.
17632
17633 2006-04-23  Claudio Fontana  <claudio@gnu.org>
17634             Bruno Haible  <bruno@clisp.org>
17635
17636         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
17637         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
17638         for AM_CPPFLAGS.
17639
17640 2006-04-23  Bruno Haible  <bruno@clisp.org>
17641
17642         * modules/copy-file: Depend on unistd.
17643         * modules/execute: Likewise.
17644         * modules/fatal-signal: Likewise.
17645         * modules/findprog: Likewise.
17646         * modules/mkdtemp : Likewise.
17647         * modules/pipe: Likewise.
17648         * modules/wait-process: Likewise.
17649
17650 2006-04-23  Bruno Haible  <bruno@clisp.org>
17651
17652         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
17653         condition was already detected.
17654         Reported by Ben Pfaff <blp@cs.stanford.edu>.
17655
17656 2006-04-23  Bruno Haible  <bruno@clisp.org>
17657
17658         * lib/copy-file.c: Include <unistd.h> unconditionally.
17659         * lib/execute.c: Likewise.
17660         * lib/fatal-signal.c: Likewise.
17661         * lib/findprog.c: Likewise.
17662         * lib/mkdtemp.c: Likewise.
17663         * lib/pipe.h: Likewise.
17664         * lib/pipe.c: Likewise.
17665         * lib/wait-process.h: Likewise.
17666
17667 2006-04-23  Bruno Haible  <bruno@clisp.org>
17668
17669         * gnulib-tool (func_usage): Fix --import description. Document
17670         --update.
17671         (func_import): Create temporary file in a temporary directory, if
17672         --dry-run is specified. Silence errors from 'grep' when there are no
17673         m4 files in $m4dir.
17674         (func_create_testdir): Silence errors from 'grep' when there are no
17675         m4 files in $m4dir.
17676         Reported by Karl Berry <karl@freefriends.org>.
17677
17678 2006-04-20  Bruno Haible  <bruno@clisp.org>
17679
17680         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
17681         one argument, so that the code will be portable to Autoconf 2.60.
17682         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
17683         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
17684         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
17685
17686 2006-04-19  Derek Price  <derek@ximbiot.com>
17687             Eric Blake  <ebb9@byu.net>
17688
17689         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
17690         rather than "/full/path.h".  Update comment to match.  Shorten &
17691         generalize m4_translit call via AS_TR_CPP.
17692
17693 2006-04-19  Derek Price  <derek@ximbiot.com>
17694             Eric Blake  <ebb9@byu.net>
17695
17696         * lib/inttypes.h: Correct grammar in comment.
17697
17698 2006-04-18  Derek Price  <derek@ximbiot.com>
17699             Paul Eggert  <eggert@cs.ucla.edu>
17700
17701         * modules/inttypes: New file.
17702         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
17703
17704 2006-04-18  Derek Price  <derek@ximbiot.com>
17705             Paul Eggert  <eggert@cs.ucla.edu>
17706
17707         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
17708         New files.
17709
17710 2006-04-18  Derek Price  <derek@ximbiot.com>
17711             Paul Eggert  <eggert@cs.ucla.edu>
17712
17713         * lib/inttypes.h: New file.
17714         * lib/strtoimax.c: Assume <inttypes.h>.
17715
17716 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
17717
17718         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
17719         isn't mounted.  Problem reported by Kir Kolyshkin.
17720
17721 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
17722
17723         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
17724         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
17725         Derek R. Price.
17726         * lib/regex.h (RE_DUP_MAX): Update comment to match current
17727         implementation.
17728
17729 2006-04-12  Eric Blake  <ebb9@byu.net>
17730
17731         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
17732         is now done automatically by the corresponding Autoconf macro.
17733
17734 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17735
17736         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
17737         time_r.h.
17738
17739 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17740
17741         Merge regex changes from libc, removing some of our
17742         POSIX-conformance changes that were rejected and redoing them in a
17743         less-intrusive way.
17744
17745         * lib/regcomp.c (re_compile_internal, init_dfa):
17746         Length arg is now size_t, not Idx.  All uses changed.
17747         (peek_token): Forward decl now says internal_function.
17748         (__re_error_msgid, __re_error_msgid_idx):
17749         Now static rather than extern with attribute_hidden.
17750         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
17751         For some reason libc prefers K&R style defns for external functions.
17752         (regerror) [!defined _LIBC]: Likewise.
17753         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
17754         (seek_collating_symbol_entry, lookup_collation_sequence_value):
17755         (build_range_exp, build_collating_symbol):
17756         Use K&R-style defn.
17757         (re_compile_fastmap): Use '\0' to memset, not 0.
17758         (utf8_sb_map): Make the calculations more obvious.
17759         (init_dfa, parse_bracket_exp, build_charclass_op):
17760         Call calloc and cast result, as glibc does.
17761         (init_word_char, fetch_token, peek_token, peek_token_bracket):
17762         (build_range_exp, build_collating_symbol):
17763         Now internal functions.
17764
17765         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
17766
17767         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
17768         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
17769         Don't depend on VMS; depend on __VMS instead, for POSIX
17770         namespace cleanness.
17771         (regoff_t): Define to ssize_t, not long int.
17772
17773         Remove the REG_ macros named below.  Instead, make the old names
17774         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
17775         __USE_GNU_REGEX.
17776         (REG_BACKSLASH_ESCAPE_IN_LISTS):
17777         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
17778         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
17779         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
17780         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
17781         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
17782         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
17783         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
17784         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
17785         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
17786         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
17787         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
17788         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
17789         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
17790         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
17791         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
17792         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
17793         (REG_NREGS):
17794         Remove.  All uses replaced by the old RE_* names.
17795         (RE_BACKSLASH_ESCAPE_IN_LISTS):
17796         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
17797         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
17798         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
17799         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
17800         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
17801         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
17802         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
17803         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
17804         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
17805         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
17806         Don't bother having these macros be independent of each others'
17807         values, since they no longer exist in the POSIX name space.
17808
17809         Rename the following member names back to their old names,
17810         unless !__USE_GNU_REGEX.  All uses changed back.
17811         (buffer): Renamed from re_buffer.
17812         (allocated): Renamed from re_allocated.
17813         (used): Renamed from re_used.
17814         (syntax): Renamed from re_syntax.
17815         (fastmap): Renamed from re_fastmap.
17816         (translate): Renamed from re_translate.
17817         (can_be_null): Renamed from re_can_be_null.
17818         (regs_allocated): Renamed from re_regs_allocated.
17819         (fastmap_accurate): Renamed from re_fastmap_accurate.
17820         (no_sub): Renamed from re_no_sub.
17821         (not_bol): Renamed from re_not_bol.
17822         (not_eol): Renamed from re_not_eol.
17823         (newline_anchor): Renamed from re_newline_anchor.
17824         (num_regs): Renamed from rm_num_regs.
17825         (start): Renamed from rm_start.
17826         (end): Renamed from rm_end.
17827
17828         (free_state): Move up a bit.
17829
17830         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
17831         #define to be empty.
17832         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
17833         when that is what is intended.
17834         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
17835         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
17836         (MAX): New macro.
17837         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
17838         All uses changed back to re_malloc, etc.  It's now the caller's
17839         responsibility to check for overflow; all callers changed.
17840         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
17841         (re_x2nrealloc): Remove.
17842         (free_state): Remove decl.
17843
17844         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
17845         (re_set_registers, re_exec):
17846         Use K&R-style defn.
17847
17848         2006-01-31  Roland McGrath  <roland@redhat.com>
17849
17850         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
17851         Reported by Mike Frysinger <vapier@gentoo.org>.
17852
17853         2006-01-15  Andreas Jaeger  <aj@suse.de>
17854
17855         [BZ #1950]
17856         * lib/regex_internal.c (re_string_reconstruct): Adjust for
17857         build_wcs_upper_buffer change.
17858         (build_wcs_upper_buffer): Change return type.
17859
17860         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
17861
17862         * lib/regex_internal.h: Include <stdint.h> if available.
17863
17864         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
17865
17866         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
17867
17868         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
17869
17870         * lib/regcomp.c: Adjust for changed secondary hash function.
17871
17872         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
17873
17874         * lib/regex.h: Pretty printing.
17875         Clean up namespace a bit.
17876
17877         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
17878
17879         * lib/regexec.c (update_cur_sifted_state, check_arrival,
17880         check_arrival_add_next_nodes): Avoid using uninitialized variable.
17881
17882         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
17883                     Ulrich Drepper  <drepper@redhat.com>
17884
17885         [BZ #1302]
17886         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
17887         changed.
17888         (bitset_word_t): Renamed from bitset_word.  All uses changed.
17889
17890         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
17891
17892         [BZ #281]
17893         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
17894         * lib/regcomp.c: Remove unnecessary uses of
17895         unsigned RE_TRANSLATE_TYPE.
17896         * lib/regex_internal.h: Likewise.
17897         * lib/regex_internal.c: Likewise.
17898         * lib/regexec.c: Likewise.
17899         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
17900
17901         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
17902
17903         * lib/regexec.c (find_recover_state): Remove unnecessary
17904         initialization.
17905         (transit_state_bkref): Make DFA a const pointer.
17906         (get_subexp): Likewise.
17907         (check_arrival): Likewise.
17908         (update_cur_sifted_state): Likewise.
17909         (re_search_internal): Likewise.
17910         (prune_impossible_nodes): Likewise.
17911         (acquire_init_state_context): Likewise.
17912         (proceed_next_node): Likewise.
17913         (set_regs): Likewise.
17914         (free_fail_stack_return): Likewise.
17915         (check_arrival_expand_ecl): Mark DFA parameter as const.
17916         (check_arrival_expand_ecl_sub): Likewise.
17917         (check_subexp_limits): Likewise.
17918         (sub_epsilon_src_nodes):  Likewise.
17919         (add_epsilon_src_nodes):  Likewise.
17920         (merge_state_array): Likewise.
17921         (update_regs): Likewise.
17922         (build_trtable): Likewise.
17923         (sift_states_backward): Mark MCTX parameter as const.
17924         (build_sifted_states): Likewise.
17925         (update_cur_sifted_state): Likewise.
17926         (sift_states_mkref): Likewise.
17927         (check_arrival_expand_ecl): Mark eclosure as const.
17928         (check_dst_limits_calc_pos_1): Likewise.
17929         * lib/regex_internal.h (re_match_context_t): Make dfa a const
17930         pointer.
17931
17932         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
17933
17934         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
17935         (transit_state_sb): Likewise.
17936         (transit_state_mb): Likewise.
17937         (sift_states_iter_mb): Likewise.
17938         (check_arrival_add_next_nodes): Likewise.
17939         (check_node_accept_bytes): Change first parameter to pointer-to-const.
17940         [_LIBC] (re_search_2_stub): Use mempcpy.
17941
17942         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
17943         mbrtowc for very simple UTF-8 case.
17944
17945         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
17946         a pointer-to-const.
17947         (re_acquire_state_context): Likewise.
17948         * lib/regex_internal.h: Adjust prototypes.
17949
17950         * lib/regex.c: Prevent using C++ compilers.
17951
17952         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
17953         (re_acquire_state_context): Likewise.
17954
17955 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17956
17957         * modules/regex (Depends-on): Add ssize_t.
17958
17959 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17960
17961         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
17962         translation table.
17963
17964 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17965
17966         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
17967
17968 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
17969             Bruno Haible  <bruno@clisp.org>
17970
17971         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
17972         <sys/types.h> and <inttypes.h>.
17973
17974 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17975
17976         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
17977         `__error_t_defined', so argp.h will not typedef the former.
17978
17979 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
17980
17981         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
17982         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
17983         glibc names.  Even if glibc is changed to conform to POSIX, the
17984         traditional names will be available anyway, since regex depends on
17985         the extensions module.  Also, fix a longstanding typo in the
17986         implementation of Spencer ERE test #75 from grep 2.3.  Problems
17987         reported by Emanuele Giaquinta.  Also, change sense of cached
17988         variable, so that the message makes sense.
17989
17990 2006-03-24  Simon Josefsson  <jas@extundo.com>
17991
17992         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
17993         including some doc fixes.
17994         (base64_encode_alloc): Fix +1 bug on allocation failures.
17995
17996 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17997
17998         * lib/base64.c (base64_encode): Do not read past end of array with
17999         unsanitized input on systems with CHAR_BIT > 8.
18000
18001 2006-03-24  Eric Blake  <ebb9@byu.net>
18002
18003         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
18004
18005 2006-03-22  Karl Berry  <karl@gnu.org>
18006
18007         * config/srclist.txt (*setenv.[ch]): get from coreutils.
18008         * config/srclistvars.sh (COREUTILS): new var.
18009
18010 2006-03-17  Jim Meyering  <jim@meyering.net>
18011
18012         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
18013         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
18014
18015 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
18016
18017         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
18018         no longer needs it.  Instead, check that regoff_t is as least
18019         as wide as ptrdiff_t.
18020
18021         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
18022         so that our regex.h stays compatible with the installed regex.
18023         This is helpful for installers who configure --without-included-regex.
18024         Problem reported by Emanuele Giaquinta.
18025
18026 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
18027
18028         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
18029         Typedef to long int, not to off_, as POSIX will likely change
18030         in that direction.
18031
18032 2006-03-15  Eric Blake  <ebb9@byu.net>
18033
18034         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
18035
18036 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
18037
18038         * lib/argp-help.c (validate_uparams): Fix typo
18039         * lib/argp-parse.c (argp_default_options): Consistently begin help
18040         messages with a lowercase letter.
18041
18042 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
18043
18044         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
18045         overrun buffers and shouldn't be used (much as gets shouldn't be
18046         used).
18047         * lib/time_r.c (asctime_r, ctime_r): Likewise.
18048
18049 2006-03-08  Simon Josefsson  <jas@extundo.com>
18050
18051         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
18052         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18053
18054 2006-03-08  Simon Josefsson  <jas@extundo.com>
18055
18056         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
18057         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18058
18059 2006-03-08  Simon Josefsson  <jas@extundo.com>
18060
18061         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
18062         signal that configure disabled the device.
18063
18064 2006-03-08  Simon Josefsson  <jas@extundo.com>
18065
18066         * build-aux/maint.mk: Fix refresh-po, to handle no translated
18067         languages.
18068
18069 2006-03-07  Simon Josefsson  <jas@extundo.com>
18070
18071         * modules/getopt (Depends-on): Add unistd.
18072
18073         * modules/unistd: New file.
18074
18075 2006-03-07  Simon Josefsson  <jas@extundo.com>
18076
18077         * modules/gc-random: New file.
18078
18079 2006-03-07  Simon Josefsson  <jas@extundo.com>
18080
18081         * m4/unistd_h.m4: New file.
18082
18083 2006-03-07  Simon Josefsson  <jas@extundo.com>
18084
18085         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
18086         test to be side-effect free by storing the result in the cache
18087         variable gl_cv_lib_readline, and moving the assignment of
18088         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
18089         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18090
18091 2006-03-07  Simon Josefsson  <jas@extundo.com>
18092
18093         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
18094         error on missing devices (the functions will return an error).
18095
18096         * m4/gc.m4: Move random stuff to gc-random.m4
18097
18098 2006-03-07  Simon Josefsson  <jas@extundo.com>
18099
18100         * lib/unistd_.h: New file.
18101
18102 2006-03-07  Simon Josefsson  <jas@extundo.com>
18103
18104         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
18105
18106 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
18107
18108         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
18109         Problem reported by Juan Manuel Guerrero.
18110
18111 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
18112
18113         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
18114         the unistd module.
18115         * lib/getlogin_r.c: Likewise.
18116         * lib/getlogin_r.h: Likewise.
18117         * lib/glob.c: Likewise.
18118         * lib/pagealign_alloc.c: Likewise.
18119         * lib/unistd_.h: Remove; no longer needed.
18120
18121 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
18122
18123         * MODULES.html.sh (Support for systems lacking POSIX:2001):
18124         Add unistd.
18125         * modules/c-stack (Depends-on): Add unistd.
18126         * modules/getlogin_r: Likewise.
18127         * modules/glob: Likewise.
18128         * modules/pagealign_alloc: Likewise.
18129         * modules/unistd (Files): Remove lib/unistd_.h.
18130         (EXTRA_DIST): Remove.
18131         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
18132         need unistd_.h.
18133         (MOSTLYCLEANFILES): Remove unistd.h-t.
18134
18135 2006-03-03  Simon Josefsson  <jas@extundo.com>
18136
18137         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
18138
18139 2006-03-03  Simon Josefsson  <jas@extundo.com>
18140
18141         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
18142         libidn and bison.
18143
18144 2006-03-03  Simon Josefsson  <jas@extundo.com>
18145
18146         * build-aux/maint.mk: Add indent target.
18147
18148 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
18149
18150         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
18151         our replacement poll.h in any case, to avoid a differing
18152         declaration from a system header.  Seen on AIX.
18153
18154 2006-03-01  Simon Josefsson  <jas@extundo.com>
18155
18156         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
18157         <kasal@ucw.cz>.
18158
18159 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
18160
18161         * modules/gettime (Depends-on): Add extensions module.
18162         * modules/nanosleep (Depends-on): Likewise.
18163         * modules/settime (Depends-on): Likewise.
18164
18165 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
18166
18167         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
18168         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
18169         pedantically.
18170         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
18171         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
18172
18173         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
18174         not "==".  Reported by Ralf Wildenhues.
18175
18176 2006-03-01  Karl Berry  <karl@gnu.org>
18177
18178         * doc/Copyright/request-*: new files, synced from gnuorg.
18179
18180 2006-03-01  Karl Berry  <karl@gnu.org>
18181
18182         * config/srclist.txt (Copyright/*): new entries.
18183
18184 2006-02-28  Simon Josefsson  <jas@extundo.com>
18185
18186         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
18187
18188 2006-02-27  Simon Josefsson  <jas@extundo.com>
18189
18190         * lib/base64.h: Indent #define's.  From Jim Meyering
18191         <jim@meyering.net>.
18192
18193 2006-02-27  Jim Meyering  <jim@meyering.net>
18194
18195         Revert the change of 2006-02-24, so these files can continue
18196         to be sync'd from gettext.
18197         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
18198         of `config.h'.
18199
18200 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
18201
18202         * modules/intprops: New file.
18203         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
18204         Add intprops.
18205         * modules/getloadavg (Files): Remove lib/intprops.h.
18206         (Depends-on): Add intprops.
18207         * modules/human: Likewise.
18208         * modules/inttostr: Likewise.
18209         * modules/openat: Likewise.
18210         * modules/sig2str: Likewise.
18211         * modules/userspec: Likewise.
18212         * modules/utimecmp: Likewise.
18213         * modules/xnanosleep: Likewise.
18214         * modules/xstrtol: Likewise.
18215
18216 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
18217
18218         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
18219         * modules/lock-tests (TESTS): Use $(EXEEXT).
18220         * modules/tls-tests: Likewise.
18221         * modules/argp-tests: Likewise.
18222         (check_PROGRAMS): New var, replacing...
18223         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
18224
18225 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18226
18227         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
18228         `config.h'.
18229
18230 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
18231
18232         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
18233
18234 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18235
18236         Sync from coreutils.
18237         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
18238         gl_CHDIR_SAFER.
18239
18240 2006-02-22  Jim Meyering  <jim@meyering.net>
18241
18242         Sync from coreutils.
18243         * m4/chdir-safer.m4: New file.
18244
18245 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
18246
18247         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
18248         AT_FDCWD exceeds INT_MAX.
18249         * lib/openat.h (AT_FDCWD): Likewise.
18250
18251 2006-02-17  Eric Blake  <address@hidden>
18252
18253         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
18254
18255 2006-02-16  Simon Josefsson  <jas@extundo.com>
18256
18257         * modules/getaddrinfo (Depends-on): Add sys_socket.
18258
18259 2006-02-15  Simon Josefsson  <jas@extundo.com>
18260
18261         * build-aux/maint.mk: Add dsyntax-check rule.
18262
18263 2006-02-15  Eric Blake  <ebb9@byu.net>
18264
18265         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
18266         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
18267         'present but cannot compile' warnings on cygwin.
18268         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
18269         use ws2tcpip.h if sys/socket.h works.
18270         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
18271         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
18272
18273 2006-02-14  Simon Josefsson  <jas@extundo.com>
18274
18275         * modules/maintainer-makefile (Files): Rename.
18276
18277         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
18278         and (the local) Makefile.cfg to maint-cfg.mk.
18279
18280         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
18281         to the latter.
18282
18283         * modules/maintainer-makefile: New module.
18284
18285         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
18286         severaly stripped to make it possible to build it up from scratch
18287         with reliable tests.
18288
18289         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
18290         fixes to permit overriding the default actions when configure and
18291         makefile are not available.
18292
18293 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
18294
18295         Sync from coreutils.
18296         * modules/lstat (Depends-on): Don't depend on xalloc.
18297         (License): Change from GPL to LGPL, since this is now simply a
18298         replacement for a libc function.
18299
18300 2006-02-14  Jim Meyering  <jim@meyering.net>
18301
18302         Sync from coreutils.
18303
18304         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
18305         failure on deficient systems, and simplify gnulib lgpl dependencies.
18306         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
18307         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
18308
18309         * lib/xalloc-die.c: Remove unused definition of N_.
18310
18311 2006-02-14  Jim Meyering  <jim@meyering.net>
18312
18313         Sync from coreutils.
18314         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
18315         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
18316         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
18317         double-quote uses of that variable, to accommodate the rare case in
18318         which getmntent is available in none of the libraries checked.  This
18319         happens at least on FreeBSD 5.0.
18320
18321 2006-02-13  Simon Josefsson  <jas@extundo.com>
18322
18323         * gnulib-tool (Usage): Fix --import, from
18324         karl@freefriends.org (Karl Berry).
18325
18326 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
18327
18328         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
18329
18330 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
18331
18332         * lib/argp-namefrob.h: Restore changes accidentally lost during the
18333         "autoupdate" on 2005-12-12.
18334
18335 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
18336
18337         * modules/closeout (Depends-on): Remove atexit.
18338
18339 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
18340
18341         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
18342         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
18343
18344 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
18345
18346         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
18347         __EXTENSIONS__ if this causes compilation to fail.  Problem
18348         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
18349         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
18350
18351 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
18352
18353         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
18354         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
18355         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
18356         All uses changed.
18357
18358 2006-01-26  Simon Josefsson  <jas@extundo.com>
18359
18360         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
18361         prototype is visible on mingw32.
18362
18363         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
18364         for mingw32.
18365
18366         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
18367         mingw32).
18368
18369 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
18370
18371         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
18372         attempt to open for write; this always fails, at least on POSIX
18373         hosts.  This reinstates the 2006-01-09 change, which was
18374         inadvertently removed.
18375
18376 2006-01-26  Bruno Haible  <bruno@clisp.org>
18377
18378         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
18379         Reported by Paul Eggert.
18380
18381 2006-01-26  Bruno Haible  <bruno@clisp.org>
18382             Paul Eggert  <eggert@cs.ucla.edu>
18383
18384         * lib/stdbool_.h (_Bool)
18385         [(! (defined __cplusplus || defined __BEOS__)
18386           && !defined __GNUC__
18387           && !(defined __HP_cc || defined __xlc__
18388                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
18389                || defined __sgi))]:
18390         #define to signed char in these cases too; this simplifies
18391         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
18392         etc., separately) and makes it more conservative.
18393
18394 2006-01-25  Simon Josefsson  <jas@extundo.com>
18395
18396         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
18397         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
18398         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
18399
18400 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
18401
18402         * lib/argp-namefrob.h: Bugfix. Remove stray #
18403
18404 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
18405
18406         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
18407         so that we test the test.
18408         Check for yet another HP-UX cc bug involving *bool |= bool.
18409
18410 2006-01-25  Karl Berry  <karl@gnu.org>
18411
18412         * config/srclist.txt (vasnprintf.c): sync lost.
18413
18414 2006-01-25  Jim Meyering  <jim@meyering.net>
18415
18416         Sync from the stable (b5) branch of coreutils:
18417
18418         * lib/fts.c (fts_children): Don't let close() clobber errno from
18419         failed fchdir().
18420
18421         * lib/fts.c (fts_stat): When following a symlink-to-directory,
18422         don't necessarily interpret stat-fails+lstat-succeeds as indicating
18423         a dangling symlink.  That can also happen at least for ELOOP.
18424         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
18425         FYI, this bug predates the inclusion of fts.c in coreutils.
18426
18427         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
18428         in their own block, so pre-c99 compilers don't object.
18429
18430         Avoid the double-free (first in fts_read, second in fts_close) that
18431         would occur when an `active' directory is made inaccessible (e.g.,
18432         via chmod a-x) during a traversal.
18433         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
18434         before returning.  Reproduce this failure by
18435         mkdir -p a/b; cd a; chmod a-x . b
18436         Reported by Stavros Passas.
18437
18438 2006-01-25  Jim Meyering  <jim@meyering.net>
18439
18440         * lib/fileblocks.c: Remove more useless parentheses.
18441         * lib/readutmp.h: Likewise.
18442
18443 2006-01-25  Bruno Haible  <bruno@clisp.org>
18444
18445         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
18446         warnings.
18447         Reported by Paul Eggert.
18448
18449 2006-01-25  Bruno Haible  <bruno@clisp.org>
18450
18451         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
18452         rid of a trap command. For Solaris sh.
18453         Reported by Mark D. Baushke <mdb@gnu.org>.
18454
18455 2006-01-24  Simon Josefsson  <jas@extundo.com>
18456
18457         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
18458         Bruno.
18459
18460 2006-01-24  Karl Berry  <karl@gnu.org>
18461
18462         * config/srclist.txt (argp-namefrob.h): sync lost.
18463
18464 2006-01-24  Jim Meyering  <jim@meyering.net>
18465
18466         * modules/openat (Files): Add lib/intprops.h.
18467         From Mark D. Baushke.
18468
18469 2006-01-24  Jim Meyering  <jim@meyering.net>
18470
18471         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
18472         Reported by Mark D. Baushke.
18473
18474 2006-01-24  Jim Meyering  <jim@meyering.net>
18475
18476         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
18477
18478 2006-01-24  Bruno Haible  <bruno@clisp.org>
18479
18480         * modules/strnlen (Maintainer): Change from glibc to all.
18481
18482 2006-01-24  Bruno Haible  <bruno@clisp.org>
18483
18484         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
18485         Patch by Paul Eggert.
18486
18487 2006-01-24  Bruno Haible  <bruno@clisp.org>
18488
18489         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
18490         already has it.
18491         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
18492         2005-11-26.
18493
18494         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
18495         'signed char' to avoid problems with the built-in _Bool type.
18496         Reported by Paul Eggert on 2005-11-26.
18497
18498 2006-01-24  Bruno Haible  <bruno@clisp.org>
18499
18500         * gnulib-tool (func_import): Avoid constructing complicated sed
18501         expressions inside backquote.
18502         Report and solution by Mark D. Baushke <mdb@gnu.org>.
18503
18504 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
18505
18506         These changes imported from libc.
18507         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
18508         test and two separate function calls.
18509         * lib/strndup.c (__strndup): Add libc_hidden_def.
18510
18511 2006-01-23  Simon Josefsson  <jas@extundo.com>
18512
18513         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
18514         Remove the test_*_SOURCES variable: automake infers it by default.
18515         * modules/tls-tests: Likewise.
18516
18517 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
18518
18519         Work around porting bugs reported by Dieter in
18520         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
18521         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
18522         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
18523         Include "getopt.h" first, to check interface.
18524         (getenv): Declare only if defined HAVE_DECL_GETENV &&
18525         !HAVE_DECL_GETENV.
18526         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
18527         (__strndup): Revert to K&R-style function dfns, the glibc style.
18528         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
18529         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
18530         Include strnlen.h first, to get prototype properly.
18531         (strnlen): Renamed from __strnlen.
18532         Remove weak alias.
18533
18534 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
18535
18536         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
18537
18538 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
18539
18540         * config/srclist.txt: Adjust to reflect glibc reorganization.
18541         This affects only comments.
18542
18543 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
18544
18545          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
18546          Reported by Bruce Korb <bkorb@gnu.org>.
18547
18548 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
18549
18550         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
18551         to pacify gcc -Wswitch-default.
18552
18553 2006-01-22  Bruno Haible  <bruno@clisp.org>
18554
18555         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
18556         temporary buffer for sprintf, take into account the precision also
18557         for 'd', 'i', 'u', 'o', 'x', 'X'.
18558
18559 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
18560
18561         * modules/argp-tests: New module
18562         * tests/test-argp.c: New file
18563         * tests/test-argp-2.sh: New file
18564
18565 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
18566
18567         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
18568         (__argp_base_name): Removed
18569         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
18570         typo.
18571         (__argp_base_name): Provide macro definition or extern declaration
18572         depending on the configuration
18573
18574 2006-01-20  Simon Josefsson  <jas@extundo.com>
18575
18576         * modules/inet_ntop (Depends-on): Depend on sys_socket.
18577
18578 2006-01-20  Simon Josefsson  <jas@extundo.com>
18579
18580         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
18581
18582 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
18583
18584         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
18585         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
18586         Suggested by Bruno Haible.
18587
18588 2006-01-20  Karl Berry  <karl@gnu.org>
18589
18590         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
18591         until changes propagate, I guess.
18592
18593 2006-01-19  Simon Josefsson  <jas@extundo.com>
18594
18595         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
18596
18597 2006-01-19  Simon Josefsson  <jas@extundo.com>
18598
18599         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
18600
18601 2006-01-19  Simon Josefsson  <jas@extundo.com>
18602
18603         * gnulib-tool: Set check_PROGRAMS.
18604
18605         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
18606         modules/des-tests, modules/gc-arcfour-tests,
18607         modules/gc-arctwo-tests, modules/gc-des-tests,
18608         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
18609         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
18610         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
18611         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
18612         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
18613         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
18614         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
18615         test_*_SOURCES.
18616
18617 2006-01-18  Simon Josefsson  <jas@extundo.com>
18618
18619         * modules/socklen (Depends-on): Depend on sys_socket.
18620
18621 2006-01-18  Simon Josefsson  <jas@extundo.com>
18622
18623         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
18624         modules/des-tests, modules/gc-arcfour-tests,
18625         modules/gc-arctwo-tests, modules/gc-des-tests,
18626         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
18627         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
18628         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
18629         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
18630         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
18631         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
18632         $(EXEEXT) to automake TESTS variable, for mingw32.
18633
18634 2006-01-17  Simon Josefsson  <jas@extundo.com>
18635
18636         * modules/socklen (Include): Need sys/socket.h.
18637
18638 2006-01-17  Bruno Haible  <bruno@clisp.org>
18639
18640         * modules/ssize_t (Include): Add <sys/types.h>.
18641
18642 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
18643
18644         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
18645         it's not portable and it doesn't work with cross-compiles.
18646         Problem reported by Bruno Haible.  Fix missing-$ typo in
18647         'test "gl_cv_ignore_unused_libraries" ...' that prevented
18648         -zignore from being used with Sun's C compiler.
18649
18650 2006-01-12  Simon Josefsson  <jas@extundo.com>
18651
18652         * lib/base64.c: Fix warning, reported by Bruno Haible
18653         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
18654
18655 2006-01-12  Bruno Haible  <bruno@clisp.org>
18656
18657         * modules/ldd: New file.
18658         * build-aux/ldd.sh.in: New file.
18659         * MODULES.html.sh (Support for building libraries and executables): Add
18660         ldd.
18661
18662 2006-01-12  Bruno Haible  <bruno@clisp.org>
18663
18664         * m4/ldd.m4: New file.
18665
18666 2006-01-12  Bruno Haible  <bruno@clisp.org>
18667
18668         * gnulib-tool (func_import, func_create_testdir): Don't go into an
18669         endless loop while replacing $auxdir with build-aux.
18670
18671 2006-01-11  Simon Josefsson  <jas@extundo.com>
18672
18673         * lib/stdint_.h (SIZE_MAX): Add missing (.
18674
18675 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
18676
18677         Sync from coreutils.
18678         * lib/md5.c: Fix commentary typos.
18679         (alignof, UNALIGNED_P): No need for a GCC-specific version.
18680         * lib/md5.h (__attribute__): Remove; unused.
18681         * lib/sha1.c: Fix commentary to match md5 better.
18682         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
18683         so that we don't need to worry about alignment.  All uses changed.
18684         This merges the 2005-10-28 md5 change into sha1.
18685
18686 2006-01-11  Jim Meyering  <jim@meyering.net>
18687
18688         Sync from coreutils.
18689         * lib/md5.c (OP): Fix spacing.
18690
18691 2006-01-11  Bruno Haible  <bruno@clisp.org>
18692
18693         Ensure automatic ordering between gl_LOCK and gl_ARGP.
18694         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
18695         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
18696
18697 2006-01-11  Bruno Haible  <bruno@clisp.org>
18698
18699         Ensure automatic ordering between gl_LOCK and gl_ARGP.
18700         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
18701         the "early" section as well.
18702
18703 2006-01-11  Bruno Haible  <bruno@clisp.org>
18704
18705         Avoid "ar: no archive members specified" error on MacOS X.
18706         * gnulib-tool (func_modules_add_dummy): New function.
18707         (func_import, func_create_testdir): Invoke it.
18708
18709 2006-01-11  Bruno Haible  <bruno@clisp.org>
18710
18711         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
18712         with $auxdir in AC_CONFIG_FILES statements.
18713
18714 2006-01-11  Bruno Haible  <bruno@clisp.org>
18715
18716         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18717         Initialize also noinst_HEADERS to empty.
18718
18719 2006-01-11  Bruno Haible  <bruno@clisp.org>
18720
18721         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
18722         variables.
18723         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
18724         autoreconf.
18725
18726 2006-01-11  Bruno Haible  <bruno@clisp.org>
18727
18728         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
18729         overridable by the user.
18730         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18731
18732 2006-01-10  Simon Josefsson  <jas@extundo.com>
18733
18734         * modules/sys_socket: New file.
18735
18736 2006-01-10  Simon Josefsson  <jas@extundo.com>
18737
18738         * m4/sys_socket_h.m4: New file.
18739
18740 2006-01-10  Simon Josefsson  <jas@extundo.com>
18741
18742         * lib/socket_.h: New file.
18743
18744 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18745
18746         * modules/readutmp (Maintainer): Add myself.
18747
18748 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18749
18750         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
18751         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
18752         People who are still concerned with buggy memcmp implementations
18753         can invoke gl_FUNC_MEMCMP themselves.
18754
18755 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18756
18757         * lib/regex_internal.h (BITSET_WORD_BITS):
18758         Work around a bug in 64-bit PGC (before version 6.1-2), where the
18759         preprocessor mishandles large unsigned values as if they were signed.
18760         Problem reported by Claudio Fontana in
18761         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
18762
18763 2006-01-10  Jim Meyering  <jim@meyering.net>
18764
18765         Avoid the double-free (first in fts_read, second in fts_close) that
18766         would occur when an `active' directory is made inaccessible (e.g.,
18767         via chmod a-x) during a traversal.
18768         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
18769         before returning.  Reproduce this failure by
18770         mkdir -p a/b; cd a; chmod a-x . b
18771         Reported by Stavros Passas.
18772
18773         Sync from coreutils.
18774         * lib/sha1.c: Tweak grammar in a comment.
18775
18776 2006-01-10  Jim Meyering  <jim@meyering.net>
18777
18778         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
18779         Patch by Joerg Sonnenberger.
18780
18781 2006-01-10  Bruno Haible  <bruno@clisp.org>
18782
18783         * modules/readutmp: Depend on module free.
18784         * modules/strtok_r: Depend on module restrict.
18785
18786 2006-01-10  Bruno Haible  <bruno@clisp.org>
18787
18788         * modules/gettext (configure.ac): Add an invocation of
18789         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
18790
18791 2006-01-10  Bruno Haible  <bruno@clisp.org>
18792
18793         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
18794         Reported by Werner Lemberg <wl@gnu.org>.
18795
18796 2006-01-10  Bruno Haible  <bruno@clisp.org>
18797
18798         * lib/localcharset.c: Update from GNU gettext.
18799
18800 2006-01-10  Bruno Haible  <bruno@clisp.org>
18801
18802         * lib/argp.h (__const): Remove macro. Use const instead.
18803         * lib/argp-fmtstream.h (__const): Likewise.
18804         * lib/glob_.h (__const): Remove macro.
18805         * lib/glob-libc.h: Use const instead of __const.
18806
18807 2006-01-10  Bruno Haible  <bruno@clisp.org>
18808
18809         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
18810         variable.
18811         Needed to avoid an automake error regarding the 'gettext' module.
18812
18813 2006-01-09  Simon Josefsson  <jas@extundo.com>
18814
18815         * modules/inet_ntop (Depends-on): Add restrict.
18816
18817 2006-01-09  Simon Josefsson  <jas@extundo.com>
18818
18819         * modules/gc-rijndael-tests (License): Put under LGPL.
18820
18821         * modules/gc-des-tests (License): Likewise.
18822
18823         * modules/gc-arcfour-tests (License): Likewise.
18824
18825         * modules/gc-arctwo-tests (License): Likewise.
18826
18827         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
18828
18829         * modules/gc-hmac-sha1-tests (Files): Likewise.
18830
18831         * modules/gc-hmac-md5-tests (License): Likewise.
18832
18833         * modules/gc-sha1-tests (License): Likewise.
18834
18835         * modules/gc-md5-tests (License): Likewise.
18836
18837         * modules/gc-md4-tests (License): Likewise.
18838
18839         * modules/gc-md2-tests (License): Likewise.
18840
18841         * modules/gc-tests (License): Likewise.
18842
18843         * modules/des-tests (License): Likewise.
18844
18845         * modules/md4-tests (License): Likewise.
18846
18847         * modules/md2-tests (License): Likewise.
18848
18849 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18850
18851         Sync from coreutils:
18852
18853         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
18854         * modules/lib-ignore: New file.
18855         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
18856         chdir-safer.m4, lchmod.m4.
18857         * modules/openat: Add mkdirat.c, openat-priv.h.
18858
18859 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18860
18861         Sync from coreutils.
18862         * m4/lib-ignore.m4: New file.
18863         * m4/lchmod.m4: New file.
18864
18865 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18866
18867         Sync from coreutils.
18868         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
18869         for write access: POSIX says that must fail.
18870         * lib/fts.c (diropen): Likewise.
18871         * lib/save-cwd.c (save_cwd): Likewise.
18872         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
18873         well, for minor improvements on hosts that lack O_DIRECTORY.
18874         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
18875         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
18876         Fall back on chown if open failed with EACCES.
18877
18878         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
18879         Report an error at compile-time if only a 1-second nominal clock
18880         resolution is found.
18881
18882         * lib/lchmod.h: New file.
18883         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
18884         (make_dir_parents): Use lchown rather than chown, and
18885         lchmod rather than chmod.
18886
18887         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
18888         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
18889         "proc" reported by n0dalus.
18890
18891         * lib/mountlist.c: Include <limits.h>.
18892         (dev_from_mount_options)
18893         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
18894         New function.  It no longer assumes "dev=" has the System V meaning
18895         on Linux (since it doesn't).  It also parses "dev=" more carefully.
18896         (read_file_system_list)
18897         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
18898         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
18899         dev= in that case.
18900
18901         * lib/posixtm.h (PDS_PRE_2000): New macro.
18902         * lib/posixtm.c (year): Arg is now syntax_bits rather than
18903         allow_century.  All usages changed.  Reject dates outside the range
18904         1969-1999 if PDS_PRE_2000 is used.
18905
18906 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18907
18908         Sync from coreutils.
18909         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
18910         (Time of day items): Mention the possibility of leap seconds.
18911         Problem reported by Dr. David Alan Gilbert.
18912
18913 2006-01-09  Jim Meyering  <jim@meyering.net>
18914
18915         Sync from coreutils.
18916
18917         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
18918
18919         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
18920
18921         * lib/modechange.c (mode_compile): Reject an invalid mode string
18922         that starts with an octal digit.  From Andreas Gruenbacher.
18923
18924         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
18925         and dup to open_safer and dup_safer, respectively.
18926         (openat_permissive): Fix typo in comment.
18927
18928         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
18929         "gettext.h"; either no longer needed or are guaranteed by openat.h.
18930         (_): Remove; no longer needed.
18931         (openat): Renamed from rpl_openat; no need for rpl_openat
18932         since openat.h renames openat for us.
18933         Replace most of the body with a call to openat_permissive,
18934         to avoid duplicate code.
18935         Port to (probably hypothetical) environments were mode_t is
18936         wider than int.
18937         (openat_permissive): Require mode arg, so that we can check
18938         types better.  Put it just after flags.  Change cwd failure
18939         indicator from pointer-to-bool to pointer-to-errno-value.
18940         All callers changed.
18941         Invoke openat_save_fail and/or openat_restore_fail if
18942         cwd_errno is null, so that openat can call us.
18943         (openat_permissive, fdopendir, fstatat, unlinkat):
18944         Simplify errno handling to avoid some duplicate code,
18945         as it's OK to set errno on success.
18946         * lib/openat.h: Revamp code so that function macros depend on
18947         __OPENAT_PREFIX only, not also on AT_FDCWD.
18948         (openat_ro): Remove.  Caller changed to use openat_permissive.
18949         (openat_permissive): Now a macro, if not a function.
18950         (openat_restore_fail, openat_save_fail): Now always functions,
18951         since mkdirat needs them even if __OPENAT_PREFIX is defined.
18952
18953         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
18954         and openat.c.
18955         * lib/mkdirat.c: Include openat-priv.h.
18956         Remove definitions of macros defined therein.
18957         * lib/openat.c: Likewise.
18958
18959         * lib/mkdirat.c (mkdirat): New file and function.
18960         * lib/openat.h (mkdirat): Declare.
18961
18962         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
18963
18964         * lib/openat.h (openat_permissive): Declare.
18965         (openat_ro): Define.
18966
18967         * lib/openat.c (EXPECTED_ERRNO): New macro.
18968         (openat_permissive): New function -- used in remove.c rewrite.
18969         (all functions): Set errno just before returning, only if there
18970         was an actual failure.
18971         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
18972
18973         Emulate openat-family functions using Linux's procfs, if possible.
18974         Idea and some code based on Ulrich Drepper's glibc changes.
18975
18976         * lib/openat.c: (BUILD_PROC_NAME): New macro.
18977         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
18978         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
18979         before falling back on save_cwd and restore_cwd.
18980         (fdopendir, fstatat, unlinkat): Likewise.
18981
18982         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
18983         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
18984
18985         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
18986         as second argument to va_arg.  Otherwise, some versions of gcc
18987         warn that `if this code is reached, the program will abort'.
18988
18989 2006-01-09  Jim Meyering  <jim@meyering.net>
18990
18991         Sync from coreutils.
18992         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
18993         Require openat-priv.h.
18994
18995 2006-01-09  Bruno Haible  <bruno@clisp.org>
18996
18997         * modules/strnlen (Include): Use strnlen.h.
18998
18999 2006-01-09  Bruno Haible  <bruno@clisp.org>
19000
19001         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
19002
19003 2006-01-09  Bruno Haible  <bruno@clisp.org>
19004
19005         * lib/sysexit_.h (EX_OK): New macro.
19006         Suggested by Martin Lambers <marlam@marlam.de>.
19007
19008 2006-01-09  Bruno Haible  <bruno@clisp.org>
19009
19010         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
19011         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
19012
19013 2006-01-09  Bruno Haible  <bruno@clisp.org>
19014
19015         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
19016         numbers.
19017
19018 2006-01-09  Bruno Haible  <bruno@clisp.org>
19019
19020         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
19021         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
19022         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
19023         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
19024
19025 2006-01-09  Bruno Haible  <bruno@clisp.org>
19026
19027         * build-aux/javacomp.sh.in: New file, moved from lib/.
19028         * modules/javacomp-script (Files): Update.
19029         (configure.ac): Add AC_CONFIG_FILES invocation.
19030         (EXTRA_DIST): Remove variable.
19031
19032         * build-aux/javaexec.sh.in: New file, moved from lib/.
19033         * modules/javaexec (Files): Update.
19034         (configure.ac): Add AC_CONFIG_FILES invocation.
19035         (EXTRA_DIST): Remove javaexec.sh.in.
19036
19037         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
19038         * modules/csharpcomp-script (Files): Update.
19039         (configure.ac): Add AC_CONFIG_FILES invocation.
19040         (EXTRA_DIST): Remove variable.
19041
19042         * build-aux/csharpexec.sh.in: New file, moved from lib/.
19043         * modules/csharpexec (Files): Update.
19044         (configure.ac): Add AC_CONFIG_FILES invocation.
19045         (EXTRA_DIST): Remove csharpexec.sh.in.
19046
19047 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
19048
19049         Sync from coreutils.
19050
19051         Add POSIX ACL support
19052         * lib/acl.h (copy_acl, set_acl): Add declarations.
19053         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
19054         systems other than Linux.
19055         (chmod_or_fchmod): New function: use fchmod when possible,
19056         and chmod otherwise.
19057         (file_has_acl): Add a POSIX ACL implementation, with a
19058         Linux-specific subcase.
19059         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
19060         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
19061         acls are unsupported.
19062         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
19063         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
19064         are unsupported.
19065
19066 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
19067
19068         Sync from coreutils.
19069         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
19070
19071 2006-01-07  Bruno Haible  <bruno@clisp.org>
19072
19073         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
19074         gl_EARLY.
19075
19076 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
19077
19078         * lib/strftime.c (tzname): Don't declare if it is already #defined.
19079         Problem reported for Mingw by Mark Junker.
19080
19081 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
19082
19083         * README: Gnulib normally doesn't generate a tarball.
19084
19085 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
19086
19087         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
19088         long int, not int, for nanosecond counts, so that people who are
19089         used to POSIX struct timespec won't be surprised.  Reported by Jim
19090         Meyering.
19091
19092 2005-12-28  Bruno Haible  <bruno@clisp.org>
19093
19094         * build-aux/config.rpath: Update from GNU gettext.
19095
19096 2005-12-16  Jim Meyering  <jim@meyering.net>
19097
19098         * modules/fprintftime: New module.
19099         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
19100
19101 2005-12-16  Jim Meyering  <jim@meyering.net>
19102
19103         * m4/fprintftime.m4: New file.
19104
19105 2005-12-16  Jim Meyering  <jim@meyering.net>
19106
19107         * lib/fprintftime.c, lib/fprintftime.h: New files.
19108
19109 2005-12-15  Simon Josefsson  <jas@extundo.com>
19110
19111         * modules/socklen (configure.ac): Fix M4 macro name, to align with
19112         new m4/socklen.m4.
19113
19114 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
19115
19116         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
19117         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
19118
19119 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
19120
19121         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
19122         * lib/argp-help.c (fill_in_uparams): Check if the constructed
19123         struct uparams is valid. Fall back to the default values if it is
19124         not.
19125
19126 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19127
19128         * modules/argp (Files): Add argp-pin.c
19129         (Depends-on): dirname
19130         (lib_SOURCES): Add argp-pin.c
19131
19132 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19133
19134         * m4/argp.m4:  Check if program_invocation_name and
19135         program_invocation_short_name are declared and define appropriate
19136         macros if they are not.
19137
19138 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
19139
19140         * lib/argp-help.c (__argp_base_name): New function
19141         (__argp_short_program_name): Rewrite using __argp_base_name
19142         * lib/argp-namefrob.h: Define program_invocation_name and
19143         program_invocation_short_name if requested
19144         (__argp_base_name): Add prototype
19145         * lib/argp-parse.c (argp_def): Use gettext wrappers
19146         (argp_default_parser): Use __argp_base_name
19147         * lib/argp-pin.c: New file. Defines program_invocation_name and
19148         program_invocation_short_name on systems that lack them.
19149
19150 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
19151
19152         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
19153         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
19154         porting problem reported by Georg Schwarz in
19155         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
19156
19157 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
19158
19159         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
19160         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
19161         porting problem reported by Georg Schwarz in
19162         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
19163
19164 2005-12-05  Bruno Haible  <bruno@clisp.org>
19165
19166         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
19167         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
19168         Reported by Mark Junker <mjscod@gmx.de>.
19169
19170 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
19171
19172         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
19173         Use implementation from Albert Chin, with some
19174         comments/corrections by Stepan Kasal and myself.
19175
19176 2005-12-02  Bruno Haible  <bruno@clisp.org>
19177
19178         * gnulib-tool (func_import): Accept GPLed build tool modules when
19179         --lgpl is given.
19180         * modules/csharpcomp-script: New file.
19181         * modules/csharpcomp: Depend on it.
19182         * modules/javacomp-script: New file.
19183         * modules/javacomp: Depend on it.
19184         Suggested by Simon Josefsson.
19185
19186 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
19187
19188         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
19189         statement, to work around an HP-UX 10.20 compiler bug reported by
19190         Peter O'Gorman.
19191
19192 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
19193
19194         * modules/savedir (Depends-on): Add openat.
19195
19196 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
19197
19198         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
19199         (uintmax_t) [defined uintmax_t]: Do not declare.
19200         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
19201         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
19202         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
19203         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
19204         sake of portability to weird hosts that C allows (though we don't
19205         know of any practical examples).
19206
19207         * lib/savedir.h (fdsavedir): New decl.
19208         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
19209         contains most of the former guts of savedir.
19210         (savedir): Use savedirstream.
19211         Include "openat.h".
19212
19213 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
19214
19215         * modules/obstack (Files): Add m4/ulonglong.m4.
19216         Problem reported by Davide Angelocola.
19217
19218 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
19219
19220         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
19221         coreutils no longer futzes with rounding modes.
19222
19223 2005-11-14  Jim Meyering  <jim@meyering.net>
19224
19225         * lib/mkstemp-safer.c: Include <config.h>, required for possible
19226         replacement of mkstemp.
19227
19228 2005-11-10  Simon Josefsson  <jas@extundo.com>
19229
19230         * lib/readline.c: Remove EOL.
19231
19232 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19233
19234         * modules/gethrxtime (Depends-on): Add gettime.
19235
19236 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19237
19238         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
19239         or gettimeofday; no longer needed.
19240
19241 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
19242
19243         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
19244         time business.
19245         (gethrxtime) [! (HAVE_NANOUPTIME
19246         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
19247         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
19248         our own approximation.
19249
19250 2005-11-08  Eric Blake  <ebb9@byu.net>
19251
19252         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
19253
19254 2005-11-08  Eric Blake  <ebb9@byu.net>
19255
19256         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
19257
19258 2005-11-04  Bruno Haible  <bruno@clisp.org>
19259
19260         * gnulib-tool: Implement --update mode.
19261
19262 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
19263
19264         Fix porting problem reported by Theodoros V. Kalamatianos.
19265         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
19266         Don't assume that futimes failing means we must fail.
19267
19268 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
19269
19270         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
19271         variables to suggest the intended function of the PATH_MAX check.
19272
19273 2005-10-30  Kean Johnston  <jkj@sco.com>
19274
19275         Trivial changes to support SCO systems.
19276         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
19277         as PATH_MAX.
19278         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
19279         where __ptr is null when no I/O is pending.
19280
19281 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
19282
19283         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
19284         leave errno alone.  Problem reported by Dmitry V. Levin.
19285
19286 2005-10-28  Simon Josefsson  <jas@extundo.com>
19287
19288         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
19289         Test more.
19290
19291         * tests/test-gc-md2.c, tests/test-md2.c: New files.
19292
19293         * modules/md2, modules/md2-tests: New files.
19294
19295 2005-10-28  Simon Josefsson  <jas@extundo.com>
19296
19297         * m4/inet_ntop.m4: More tests.
19298
19299         * m4/gc-md2.m4, md2.m4: New file.
19300
19301 2005-10-28  Simon Josefsson  <jas@extundo.com>
19302
19303         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
19304         "restrict" keywords, as per POSIX.  Protect the function
19305         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
19306         Don't use K&R prototypes.  Check the sprintf return values.
19307         Re-define EAFNOSUPPORT if not present.  Indent.
19308
19309         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
19310         suggested by Bruno Haible <bruno@clisp.org>.
19311
19312         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
19313
19314         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
19315
19316         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
19317         libgcrypt).
19318
19319         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
19320
19321         * lib/md2.h, lib/md2.c: New files.
19322
19323 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
19324
19325         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
19326         errno alone.  Problem reported by Frederic Jolliton.
19327
19328 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
19329
19330         * modules/verify (License): Change from GPL to LGPL.  This is a
19331         tiny module and there are apparently near-equivalents that are
19332         under the BSD license.
19333
19334 2005-10-24  Simon Josefsson  <jas@extundo.com>
19335
19336         * modules/sha1: Relicense to LGPL.
19337
19338 2005-10-24  Simon Josefsson  <jas@extundo.com>
19339
19340         * lib/md4.h: Shrink buffer size, now that we changed the type.
19341
19342 2005-10-23  Simon Josefsson  <jas@extundo.com>
19343
19344         * gnulib-tool (func_import): Fix --tests-base.
19345
19346 2005-10-22  Simon Josefsson  <jas@extundo.com>
19347
19348         * modules/arcfour (Depends-on): Need stdint.
19349
19350 2005-10-22  Simon Josefsson  <jas@extundo.com>
19351
19352         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
19353         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
19354
19355 2005-10-22  Simon Josefsson  <jas@extundo.com>
19356
19357         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
19358         suggested by Bruno Haible <bruno@clisp.org>.
19359
19360 2005-10-22  Simon Josefsson  <jas@extundo.com>
19361
19362         * lib/crc.h: Include stddef.h, for size_t.
19363
19364 2005-10-22  Simon Josefsson  <jas@extundo.com>
19365
19366         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
19367         arcfour_context struct (simplify test vector testing in GNU
19368         Shishi).
19369
19370 2005-10-21  Simon Josefsson  <jas@extundo.com>
19371
19372         * modules/des, modules/des-tests: New files.
19373
19374         * modules/gc-des, modules/gc-des-tests: New files.
19375
19376         * tests/test-des.c, tests/test-gc-des.c: New file.
19377
19378 2005-10-21  Simon Josefsson  <jas@extundo.com>
19379
19380         * modules/arctwo, modules/arctwo-tests: New files.
19381
19382         * tests/test-arctwo.c: New file.
19383
19384         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
19385
19386         * tests/test-gc-arctwo.c: New file.
19387
19388 2005-10-21  Simon Josefsson  <jas@extundo.com>
19389
19390         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
19391         Bruno Haible <bruno@clisp.org>.
19392
19393         * m4/gc-des.m4: New file.
19394
19395 2005-10-21  Simon Josefsson  <jas@extundo.com>
19396
19397         * m4/arctwo.m4: New file.
19398
19399         * m4/gc-arctwo.m4: New file.
19400
19401 2005-10-21  Simon Josefsson  <jas@extundo.com>
19402
19403         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
19404         block.
19405
19406 2005-10-21  Simon Josefsson  <jas@extundo.com>
19407
19408         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
19409         <bruno@clisp.org>.
19410
19411         * lib/hmac-sha1.c (hmac_sha1): Likewise.
19412
19413         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
19414         Bruno Haible <bruno@clisp.org>.
19415
19416         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
19417         <bruno@clisp.org>.
19418
19419 2005-10-21  Simon Josefsson  <jas@extundo.com>
19420
19421         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
19422
19423 2005-10-21  Simon Josefsson  <jas@extundo.com>
19424
19425         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
19426
19427 2005-10-21  Simon Josefsson  <jas@extundo.com>
19428
19429         * lib/des.h, lib/des.c: New files.
19430
19431         * lib/gc-gnulib.c: Support DES.c
19432
19433 2005-10-21  Simon Josefsson  <jas@extundo.com>
19434
19435         * lib/arctwo.h, lib/arctwo.c: New files.
19436
19437         * lib/gc-gnulib.c: Support ARCTWO.
19438
19439 2005-10-21  Simon Josefsson  <jas@extundo.com>
19440
19441         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
19442         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
19443
19444 2005-10-21  Simon Josefsson  <jas@extundo.com>
19445
19446         * gnulib-tool (func_import, func_create_testdir): Define automake
19447         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
19448         Makefile.am snippet),
19449         suggested by Bruno Haible <bruno@clisp.org>.
19450
19451         * modules/gc (Makefile.am): Use it.
19452
19453 2005-10-21  Bruno Haible  <bruno@clisp.org>
19454
19455         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
19456         patch.
19457
19458 2005-10-19  Simon Josefsson  <jas@extundo.com>
19459
19460         * tests/test-gc-rijndael.c: New file.
19461
19462         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
19463
19464 2005-10-19  Simon Josefsson  <jas@extundo.com>
19465
19466         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
19467         interface too.
19468
19469 2005-10-19  Simon Josefsson  <jas@extundo.com>
19470
19471         * tests/test-gc-arcfour.c: New file.
19472
19473         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
19474
19475 2005-10-19  Simon Josefsson  <jas@extundo.com>
19476
19477         * modules/gc-md4, modules/gc-md4-tests: New file.
19478
19479         * tests/test-gc-md4.c: New file.
19480
19481 2005-10-19  Simon Josefsson  <jas@extundo.com>
19482
19483         * m4/gc-md4.m4: New file.
19484
19485 2005-10-19  Simon Josefsson  <jas@extundo.com>
19486
19487         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
19488         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
19489         <kasal@ucw.cz>.
19490
19491 2005-10-19  Simon Josefsson  <jas@extundo.com>
19492
19493         * m4/gc-arcfour.m4: New file.
19494
19495         * m4/gc-rijndael.m4: New file.
19496
19497 2005-10-19  Simon Josefsson  <jas@extundo.com>
19498
19499         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
19500
19501 2005-10-19  Simon Josefsson  <jas@extundo.com>
19502
19503         * lib/gc-gnulib.c: Support ARCFOUR.
19504
19505 2005-10-19  Simon Josefsson  <jas@extundo.com>
19506
19507         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
19508         support.
19509
19510         * lib/gc.h: Add ECB enum type.
19511
19512         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
19513
19514 2005-10-18  Simon Josefsson  <jas@extundo.com>
19515
19516         * tests/test-md5.c: New file.
19517
19518         * modules/md5-tests: New file.
19519
19520 2005-10-18  Simon Josefsson  <jas@extundo.com>
19521
19522         * tests/test-md4.c: New file.
19523
19524         * modules/md4, modules/md4-tests: New files.
19525
19526 2005-10-18  Simon Josefsson  <jas@extundo.com>
19527
19528         * m4/md4.m4: New file.
19529
19530 2005-10-18  Simon Josefsson  <jas@extundo.com>
19531
19532         * lib/md4.h, lib/md4.c: New files, based on md5.?.
19533
19534 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
19535
19536         * gnulib-tool (func_create_testdir): Omit the second check whether
19537         BUILT_SOURCES in nonempty.
19538
19539 2005-10-17  Simon Josefsson  <jas@extundo.com>
19540
19541         * tests/test-rijndael.c: New file.
19542
19543 2005-10-17  Simon Josefsson  <jas@extundo.com>
19544
19545         * modules/sha1: Depend on stdint instead of md5.
19546
19547         * modules/md5: Depend on stdint, remove uint32_t.
19548
19549 2005-10-17  Simon Josefsson  <jas@extundo.com>
19550
19551         * modules/gc-sha1-tests: New file.
19552
19553         * tests/test-gc-sha1.c: New file.
19554
19555 2005-10-17  Simon Josefsson  <jas@extundo.com>
19556
19557         * m4/md5.m4: Remove call to uint32_t.m4.
19558
19559 2005-10-17  Simon Josefsson  <jas@extundo.com>
19560
19561         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
19562
19563         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
19564         md5.h.
19565
19566         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
19567
19568         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
19569
19570 2005-10-17  Simon Josefsson  <jas@extundo.com>
19571
19572         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
19573
19574 2005-10-17  Simon Josefsson  <jas@extundo.com>
19575
19576         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
19577
19578 2005-10-17  Simon Josefsson  <jas@extundo.com>
19579
19580         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
19581
19582         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
19583
19584 2005-10-17  Bruno Haible  <bruno@clisp.org>
19585
19586         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
19587         that it can also be used in a test.
19588
19589 2005-10-16  Bruno Haible  <bruno@clisp.org>
19590
19591         * gnulib-tool (func_emit_tests_Makefile_am): Also define
19592         TESTS_ENVIRONMENT, so that individual tests can augment it.
19593
19594         * gnulib-tool (func_create_testdir): Use an intermediate target for
19595         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
19596         macros, like $(ALLOCA_H), which cannot be passed through the command
19597         line.
19598
19599 2005-10-15  Simon Josefsson  <jas@extundo.com>
19600
19601         * modules/rijndael-tests: New file.
19602
19603         * modules/rijndael: New file.
19604
19605 2005-10-15  Simon Josefsson  <jas@extundo.com>
19606
19607         * m4/rijndael.m4: New file.
19608
19609 2005-10-15  Simon Josefsson  <jas@extundo.com>
19610
19611         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
19612
19613         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
19614
19615 2005-10-14  Simon Josefsson  <jas@extundo.com>
19616
19617         * tests/test-arcfour.c: New file.
19618
19619         * modules/arcfour, modules/arcfour-tests: New files.
19620
19621 2005-10-14  Simon Josefsson  <jas@extundo.com>
19622
19623         * m4/arcfour.m4: New file.
19624
19625 2005-10-14  Simon Josefsson  <jas@extundo.com>
19626
19627         * lib/arcfour.h, lib/arcfour.c: New files.
19628
19629 2005-10-14  Roland McGrath  <roland@redhat.com>
19630
19631         Import from libc.  [BZ #1331]
19632         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
19633         macro argument.
19634         Reported by Matej Vela <vela@debian.org>.
19635
19636 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19637
19638         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
19639         include <wchar.h>; no longer needed.
19640
19641 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19642
19643         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
19644
19645 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
19646         and  Ulrich Drepper  <drepper@redhat.com>
19647
19648         Import from libc.
19649         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
19650         instead of inline stream orientation test and two separate
19651         function calls.  Pay no attention to USE_IN_LIBIO.
19652
19653 2005-10-13  Simon Josefsson  <jas@extundo.com>
19654
19655         * modules/gc-hmac-md5-tests: New file.
19656
19657         * tests/test-gc-hmac-sha1.c: New file.
19658
19659         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
19660
19661         * modules/gc-hmac-md5-tests: New file.
19662
19663         * tests/test-gc-md5.c: New file.
19664
19665         * modules/gc-md5-tests: New file.
19666
19667 2005-10-13  Simon Josefsson  <jas@extundo.com>
19668
19669         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
19670         Move memory allocation outside of loop.
19671
19672 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
19673
19674         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
19675         intermediate directory is in a read-only file system.  Problem
19676         reported by Eric Blake.
19677
19678 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
19679
19680         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
19681
19682 2005-10-12  Simon Josefsson  <jas@extundo.com>
19683
19684         * tests/test-hmac-sha1.c: New file.
19685
19686         * modules/hmac-sha1-tests: New file.
19687
19688         * modules/hmac-sha1: New file.
19689
19690 2005-10-12  Simon Josefsson  <jas@extundo.com>
19691
19692         * modules/gc-sha1: New file.
19693
19694 2005-10-12  Simon Josefsson  <jas@extundo.com>
19695
19696         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
19697
19698         * tests/test-gc-pbkdf2-sha1.c: New file.
19699
19700 2005-10-12  Simon Josefsson  <jas@extundo.com>
19701
19702         * modules/gc-md5, modules/gc-hmac-md5: New files.
19703
19704         * modules/gc (Files): Remove md5, memxor and hmac files.
19705
19706 2005-10-12  Simon Josefsson  <jas@extundo.com>
19707
19708         * m4/gc-pbkdf2-sha1.m4: New file.
19709
19710         * m4/gc-hmac-sha1.m4: New file.
19711
19712         * m4/gc-sha1: New file.
19713
19714         * m4/hmac-sha1.m4: New file.
19715
19716 2005-10-12  Simon Josefsson  <jas@extundo.com>
19717
19718         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
19719
19720         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
19721
19722 2005-10-12  Simon Josefsson  <jas@extundo.com>
19723
19724         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
19725         suggested by Bruno Haible <bruno@clisp.org>.
19726
19727 2005-10-12  Simon Josefsson  <jas@extundo.com>
19728
19729         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
19730
19731 2005-10-12  Simon Josefsson  <jas@extundo.com>
19732
19733         * lib/gc-pbkdf2-sha1.c: New file.
19734
19735         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
19736
19737 2005-10-12  Simon Josefsson  <jas@extundo.com>
19738
19739         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
19740
19741         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
19742
19743 2005-10-12  Simon Josefsson  <jas@extundo.com>
19744
19745         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
19746         GC_USE_HMAC_MD5, respectively.
19747
19748         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
19749         (gc_md5): Fix typo.
19750
19751         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
19752
19753         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
19754
19755         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
19756
19757 2005-10-12  Bruno Haible  <bruno@clisp.org>
19758
19759         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
19760         Reported by Stepan Kasal <kasal@ucw.cz>.
19761
19762 2005-10-11  Simon Josefsson  <jas@extundo.com>
19763
19764         * tests/test-crc.c: New file.
19765
19766         * modules/crc, modules/crc-tests: New files.
19767
19768 2005-10-11  Simon Josefsson  <jas@extundo.com>
19769
19770         * m4/crc.m4: New file.
19771
19772 2005-10-11  Simon Josefsson  <jas@extundo.com>
19773
19774         * lib/gc.h: Add gc_hash and gc_hash_buffer.
19775
19776         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
19777
19778         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
19779
19780 2005-10-11  Simon Josefsson  <jas@extundo.com>
19781
19782         * lib/crc.h, lib/crc.c: New files.
19783
19784         * lib/gc.h (gc_hash_buffer): Add doc.
19785
19786 2005-10-11  Bruno Haible  <bruno@clisp.org>
19787
19788         * modules/c-strcasestr: New file.
19789         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
19790
19791 2005-10-11  Bruno Haible  <bruno@clisp.org>
19792
19793         * modules/c-strcase: New file.
19794         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
19795
19796 2005-10-11  Bruno Haible  <bruno@clisp.org>
19797
19798         * lib/strcasecmp.c: Include limits.h.
19799         (strcasecmp): Avoid integer overflow on exotic platforms.
19800         * lib/strncasecmp.c: Include limits.h.
19801         (strncasecmp): Avoid integer overflow on exotic platforms.
19802         Reported by Paul Eggert.
19803
19804 2005-10-11  Bruno Haible  <bruno@clisp.org>
19805
19806         * lib/c-strcasestr.h: New file, from GNU gettext.
19807         * lib/c-strcasestr.c: New file, from GNU gettext.
19808
19809 2005-10-11  Bruno Haible  <bruno@clisp.org>
19810
19811         * lib/c-strcase.h: New file, from GNU gettext.
19812         * lib/c-strcasecmp.c: New file, from GNU gettext.
19813         * lib/c-strncasecmp.c: New file, from GNU gettext.
19814
19815 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
19816
19817         * modules/mempcpy (License): GPL -> LGPL.
19818         * modules/strchrnul (License): Likewise.
19819         * modules/sysexits (License): Likewise.
19820
19821 2005-10-08  Simon Josefsson  <jas@extundo.com>
19822
19823         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
19824
19825 2005-10-07  Simon Josefsson  <jas@extundo.com>
19826
19827         * m4/memxor.m4: Remove gl_C_RESTRICT call.
19828
19829 2005-10-06  Simon Josefsson  <jas@extundo.com>
19830
19831         * tests/test-hmac-md5.c: New file.
19832
19833         * modules/hmac-md5-tests: New file.
19834
19835         * modules/hmac-md5: New file.
19836
19837 2005-10-06  Simon Josefsson  <jas@extundo.com>
19838
19839         * m4/hmac-md5.m4: New file.
19840
19841         * m4/memxor.m4: Require gl_C_RESTRICT.
19842
19843 2005-10-06  Simon Josefsson  <jas@extundo.com>
19844
19845         * lib/memxor.c (memxor): Avoid casts and warnings.
19846
19847 2005-10-06  Simon Josefsson  <jas@extundo.com>
19848
19849         * lib/hmac-md5.c: New file.
19850
19851         * lib/hmac.h: New file.
19852
19853 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
19854
19855         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
19856         promotes to int, not unsigned int, to catch the AIX 5.3
19857         compiler bug.
19858
19859 2005-10-05  Simon Josefsson  <jas@extundo.com>
19860
19861         * modules/memxor: New file.
19862
19863         * modules/iconv (Files): Move config.rpath to havelib, it is used
19864         there.
19865
19866         * modules/havelib (Files): Add config.rpath.
19867
19868 2005-10-05  Simon Josefsson  <jas@extundo.com>
19869
19870         * m4/memxor.m4: New file.
19871
19872 2005-10-05  Simon Josefsson  <jas@extundo.com>
19873
19874         * lib/memxor.c (memxor): Fix compiler error.
19875
19876         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
19877         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
19878
19879         * lib/memxor.h, lib/memxor.c: New files.
19880
19881         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
19882         we assume all systems have it, suggested by Jim Meyering
19883         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
19884         any systems lack sys/socket.h; mingw32 is known to lack it, but we
19885         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
19886         same reasons.
19887
19888 2005-10-05  Simon Josefsson  <jas@extundo.com>
19889
19890         * config/srclist.txt: Add glibc bug 1423 for md5.h.
19891
19892 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
19893
19894         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
19895         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
19896         needed, since the source code now assumes these .h files.
19897
19898 2005-10-05  Derek Price  <derek@ximbiot.com>
19899
19900         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
19901
19902 2005-10-05  Bruno Haible  <bruno@clisp.org>
19903
19904         * modules/stdint (License): Change to LGPL.
19905
19906 2005-10-04  Simon Josefsson  <jas@extundo.com>
19907
19908         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
19909         D. Baushke" <mdb@gnu.org>.
19910
19911 2005-10-04  Bruno Haible  <bruno@clisp.org>
19912
19913         * lib/verify.h (verify_true): Provide alternative definition for C++.
19914
19915 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
19916
19917         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
19918         (SSIZE_MAX): New macro, if not already defined.
19919         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
19920         than 2 GiB.
19921
19922 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19923
19924         Sync from coreutils.
19925         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
19926         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
19927         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
19928         ULLONG_MAX doesn't work with 2.7.2.1.
19929
19930 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19931
19932         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
19933         From Ben Pfaff.
19934
19935         * modules/exclude (Depends-on): Depend on verify.
19936         * modules/strtoimax (Depends-on): Likewise.
19937         * modules/utimecmp (Depends-on): Likewise.
19938
19939 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19940
19941         * lib/exclude.c: Include verify.h.
19942         (verify): Remove.  All callers changed to use verify.h's version.
19943         * lib/strtoimax.c: Likewise.
19944         * lib/utimecmp.c: Likewis.e
19945
19946         Sync from coreutils.
19947         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
19948         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
19949         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
19950         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
19951         bother returning ENOSYS if settimeofday or stime fails; just let
19952         them return whatever errno they want to return.
19953         * lib/utimens.c: Include unistd.h, for dup2.
19954         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
19955         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
19956
19957 2005-10-02  Jim Meyering  <jim@meyering.net>
19958
19959         Sync from coreutils.
19960         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
19961         from glibc-2.2.5 that fails for read-only files.
19962
19963 2005-10-02  Jim Meyering  <jim@meyering.net>
19964
19965         Sync from coreutils.
19966         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
19967         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
19968         `#if HAVE_CONFIG_H'.
19969         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
19970         Remove AT_FDCWD test.
19971         Do not consume the fd unless successful.
19972         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
19973         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
19974         block, so that we don't even try to compile it if settimeofday is
19975         available.  This works around a compilation failure on OSF1 V5.1,
19976         due to stime requiring a `long int*' while tv_sec is `int'.
19977
19978 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
19979
19980         Sync from coreutils.
19981         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
19982         against `yes', rather than just testing for nonempty.
19983
19984 2005-10-01  Simon Josefsson  <jas@extundo.com>
19985
19986         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
19987         and Darwin.
19988
19989         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
19990         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
19991         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
19992         freeaddrinfo and gai_strerror are declared by the POSIX headers.
19993         Check if struct addrinfo is declared.
19994
19995 2005-10-01  Simon Josefsson  <jas@extundo.com>
19996
19997         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
19998         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
19999         AI_* and EAI_* definitions.  Protect function declarations.
20000
20001 2005-10-01  Jim Meyering  <jim@meyering.net>
20002
20003         Sync from coreutils.
20004
20005         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
20006         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
20007         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
20008         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
20009         in the inet and nsl libraries.  Required on Solaris 5.7.
20010
20011 2005-10-01  Jim Meyering  <jim@meyering.net>
20012
20013         Sync from coreutils.
20014         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
20015         in the inet and nsl libraries.  Required on Solaris 5.7.
20016
20017 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
20018
20019         * lib/getdelim.c (getdelim): Remove unused variables.
20020
20021 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
20022
20023         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
20024         so that the code works even with ancient cpp.  Portability problem
20025         with GCC 2.7.2.1 reported by Thomas M.Ott.
20026
20027 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
20028
20029         * modules/regex (Depends-on): Add strcase.
20030
20031         * modules/gethostname (Licence): Change from GPL to LGPL, since
20032         gethostname.c is a trivial implementation of a standard library
20033         function.
20034         * modules/poll (License): Change from GPL to LGPL, since it's
20035         derived from LGPL code.
20036
20037 2005-09-27  Jim Meyering  <jim@meyering.net>
20038
20039         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
20040         HAVE_CONFIG_H.
20041
20042         * lib/intprops.h (signed_type_or_expr__): Define.
20043         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
20044         for unsigned types.
20045
20046 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
20047
20048         * lib/verify.h (verify_expr): Remove, replacing with:
20049         (verify_true): New macro that returns true instead of void.
20050         (verify_type__): Remove.
20051         (verify): Use verify_true rather than verify_type__.
20052
20053 2005-09-26  Bruno Haible  <bruno@clisp.org>
20054
20055         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
20056         is necessary.
20057         (lib_SOURCES): Remove mbchar.c.
20058         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
20059         (Files): Add m4/mbrtowc.m4.
20060         * modules/mbiter: Likewise.
20061         * modules/mbuiter: Likewise.
20062
20063 2005-09-26  Bruno Haible  <bruno@clisp.org>
20064
20065         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
20066         compile mbchar.c if they are not both present.
20067         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
20068         * m4/mbiter.m4 (gl_MBITER): Likewise.
20069         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
20070         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
20071         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
20072
20073 2005-09-25  Jim Meyering  <jim@meyering.net>
20074
20075         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
20076         also uses socklen_t.
20077
20078 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
20079
20080         * lib/utimens.c (ENOSYS): Define if not already defined.
20081         (futimens): Support having a null PATH if the file descriptor
20082         is nonnegative.
20083
20084         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
20085         Remove.
20086         (__attribute): Define to empty unless GCC 3.1 or later.
20087         This works around a core dump on OpenBSD 3.4, which has GCC
20088         2.95.3, which dumps core when given __attribute__(()).  It also
20089         simplifies other tests, since we really don't want to bother with
20090         worrying about which ancient version of GCC supported what.
20091         Original problem reported by Yoann Vandoorselaere, with part of
20092         the fix suggested by Derek Price.
20093
20094 2005-09-24  Jim Meyering  <jim@meyering.net>
20095
20096         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
20097         so we can once again use a positive bitfield width of 1 -- now we
20098         don't have to explain why we were using a bitfield width of 2.
20099
20100 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
20101
20102         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
20103         and similarly for the other external symbols.  Problem reported
20104         by James Gallager.
20105
20106         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
20107         bug reported by Jim Meyering.
20108
20109         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
20110         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
20111         not needed, since socklen is a prerequisite module.
20112
20113 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
20114
20115         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
20116         Problem reported by Eric Blake.
20117         (getaddrinfo): Initialize se so that it's not garbage.
20118         Redo internal storage allocation so that it doesn't make unportable
20119         assumptions about alignment.
20120         Fix a memory leak.
20121
20122         * lib/utimens.c (futimens): Use futimesat if available.
20123         Prefer it to futimes since it doesn't have the futimes bug.
20124
20125         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
20126         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
20127         Instead, declare a function that returns a pointer to an array,
20128         and use verify_type__ to declare the size of the array.
20129         Problem and germ of a solution reported by Bruno Haible.
20130         (verify_type__): Use 2, not 1, for bitfield size, to avoid
20131         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
20132
20133 2005-09-23  Jim Meyering  <jim@meyering.net>
20134
20135         Sync from coreutils.
20136         Correct build failure (socklen_t not defined) on at least
20137         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
20138         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
20139
20140 2005-09-23  Jim Meyering  <jim@meyering.net>
20141
20142         * modules/getaddrinfo (Depends-on): Add socklen.
20143
20144 2005-09-23  Bruno Haible  <bruno@clisp.org>
20145
20146         * tests/test-verify.c: New file.
20147
20148 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
20149
20150         Sync from coreutils.
20151
20152         * modules/argmatch (Depends-on): Add verify.
20153         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
20154         unistd-safer.
20155         * modules/save-cwd (Depends-on): Likewise.
20156
20157         * modules/openat (Files): Add lib/openat-die.c.
20158         (Depends-on): Remove error, exitfail.
20159         Add dirname.
20160
20161         * modules/verify: New file.
20162         * MODULES.html.sh (Diagnostics <assert.h>): New section,
20163         with "verify" module.
20164
20165 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
20166
20167         Sync from coreutils.
20168
20169         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
20170         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
20171         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
20172         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
20173         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
20174         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
20175         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
20176         Don't bother checking for string.h, stdlib.h, unistd.h.
20177         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
20178         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
20179         module's job.
20180         * m4/jm-macros.m4 (gl_MACROS): Likewise.
20181         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
20182
20183         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
20184         (gl_GETDATE): Use it.
20185
20186         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
20187
20188 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
20189
20190         Sync from coreutils.
20191
20192         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
20193         stat-time.h.
20194         * lib/argmatch.h: Include verify.h
20195         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
20196         (ARGMATCH_ASSERT): Remove; unused.
20197         * lib/canonicalize.c: Assume STDC_HEADERS.
20198         * lib/exclude.c: Include "strcase.h".
20199         * lib/regex_internal.h [!defined _LIBC]: Likewise.
20200         * lib/getusershell.c: Include stdio--.h rather than stdio.h
20201         and stdio-safer.h.
20202         (getusershell): Call fopen, not fopen_safer.
20203         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
20204         Do not include unistd-safer.h.
20205         (save_cwd): Don't call fd_safer; no longer needed
20206         now that we include fcntl--.h.
20207
20208         * lib/getdate.y (relative_time): New type.
20209         (RELATIVE_TIME_0): New constant.
20210         (parser_control): Use relative_time instead of doing it ourselves.
20211         (%union): Add new relative_time rel member.
20212         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
20213         Now typeless.
20214         (relunit, relunit_snumber): Now of type rel.
20215         (zone, rel, relunit, get_date): Adjust to above changes.
20216
20217         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
20218         Do not include unistd-safer.h.
20219         (getloadavg): Don't call fd_safer; no longer needed
20220         now that we include fcntl--.h.
20221
20222         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
20223         (make_dir_parents): Treat ENOSYS like EEXIST.
20224
20225         Improve quality of diagnostics on restore_cwd failure.
20226         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
20227         (make_dir_parents): Last arg is now int * (for errno), not bool *.
20228         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
20229         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
20230         each time through the loop.  Do not diagnose restore_cwd failure;
20231         that is the caller's job (and perhaps the caller does not care).
20232
20233         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
20234         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
20235         If the file already exists but is not a directory, don't bother
20236         to try to make its parents.
20237         Close potential file descriptor leak if we can't chdir("/") (!).
20238         Don't always return true if chdir($PWD) fails; return true only
20239         if the requested action was done successfully (except for the
20240         chdir($PWD)).
20241         Don't log final directory unless we actually made it.
20242         Refactor to avoid duplicate code to fix up permissions.
20243         Don't attempt to fix up parent permissions if chdir($PWD) fails.
20244
20245         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
20246         to make it a bit faster and (I hope) clearer.
20247         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
20248         Fix bug in formats like %2N.
20249
20250         * lib/verify.h: New file.
20251
20252 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
20253
20254         Sync from coreutils.
20255         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
20256
20257 2005-09-22  Jim Meyering  <jim@meyering.net>
20258
20259         Sync from coreutils.
20260
20261         * m4/lstat.m4 (gl_FUNC_LSTAT):
20262         Use AC_LIBSOURCES to require lstat.c and lstat.h.
20263         Remove obsolete comment.
20264         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
20265         * m4/xstrtod.m4: Likewise.
20266
20267         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
20268
20269 2005-09-22  Jim Meyering  <jim@meyering.net>
20270
20271         Sync from coreutils.
20272
20273         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
20274
20275         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
20276         the .tm_year member, since otherwise gcc-4.0 would now warn about
20277         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
20278
20279         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
20280         order to avoid an unsuppressible warning from gcc on 64-bit systems.
20281
20282         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
20283         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
20284         when run in a time zone for which daylight savings time is in effect
20285         for the starting date.
20286
20287         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
20288         stop us from restricting permissions of just-created absolute-named
20289         directories.
20290         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
20291         to restore initial working directory.
20292         * lib/mkdir-p.c (make_dir_parents): New parameter:
20293         different_working_dir, to tell caller if/when we change the working
20294         directory and are unable to return to the initial one.
20295         * lib/mkdir-p.h (make_dir_parents): Update prototype.
20296         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
20297         `return false'.  This fixes a bug introduced on 2004-07-30.
20298
20299         * lib/openat.c (fdopendir): Be sure to close the supplied
20300         file descriptor before returning.  This makes our replacement
20301         implementation a little closer to Solaris's, where fdopendir
20302         ties the file descriptor to the returned DIR* pointer.
20303         * lib/openat.c (unlinkat): New function.
20304         * lib/openat.h (unlinkat): Add prototype.
20305         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
20306         (openat_restore_fail): Rename from openat_restore_die.
20307         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
20308
20309         Provide an alternative to exiting immediately upon save_cwd or
20310         restore_cwd failure.  Now, an application can arrange e.g.,
20311         to perform a longjump in that case.
20312         * lib/openat.c: Include dirname.h.
20313         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
20314         (rpl_openat, fdopendir, fstatat): Call openat_save_die
20315         and openat_restore_die rather than calling error directly.
20316         Don't include "error.h" or "exitfail.h"; they're no longer needed.
20317
20318         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
20319         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
20320         define.
20321
20322         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
20323         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
20324                             int utc, int nanoseconds);
20325         Background:
20326         date should not have to allocate a megabyte of virtual memory to
20327         handle a format argument like +%1048575T.  When implemented with
20328         strftime, it must allocate such a buffer, use strftime to fill it
20329         in, print it, then free it.
20330         With fprintftime, it simply prints everything and exits.
20331         With no need for memory allocation, that's one fewer way to fail.
20332         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
20333         optional field width, not before, so we accept %9:z, not %:9z.
20334         (my_strftime): Be sure to use L_('x') for literals.
20335
20336         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
20337         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
20338         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
20339         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
20340         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
20341         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
20342         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
20343         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
20344         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
20345         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
20346         * lib/xgethostname.c, lib/xreadlink.c:
20347         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
20348
20349         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
20350         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
20351         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
20352         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
20353         and don't include <sys/file.h>).
20354
20355 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
20356
20357         Sync from coreutils.
20358
20359         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
20360         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
20361         [!LDAV_DONE]: Avoid unused variable warning.
20362
20363 2005-09-21  Bruno Haible  <bruno@clisp.org>
20364
20365         * lib/unicodeio.h (unicode_to_mb): New declaration.
20366
20367 2005-09-20  Derek Price  <derek@ximbiot.com>
20368
20369         * lib/getaddrinfo.c: Don't include <netdb.h> included from
20370         getaddrinfo.h.
20371
20372 2005-09-20  Bruno Haible  <bruno@clisp.org>
20373
20374         * gnulib-tool: Remove trailing slashes from the values specified for
20375         --source-base, --m4-base, --tests-base, --aux-dir.
20376         Suggested by Simon Josefsson <jas@extundo.com>.
20377
20378 2005-09-20  Bruno Haible  <bruno@clisp.org>
20379
20380         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
20381         func_modules_to_filelist, func_import, func_create_testdir): Make all
20382         sorting results locale-independent, so that gnulib-cache.m4 doesn't
20383         change when gnulib-tool is invoked in a different locale.
20384
20385 2005-09-19  Simon Josefsson  <jas@extundo.com>
20386
20387         * m4/socklen.m4: Fix typo.
20388
20389 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20390
20391         Use a consistent style for including <config.h>.
20392         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
20393         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
20394         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
20395         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
20396         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
20397         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
20398         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
20399         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
20400         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
20401         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
20402         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
20403         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
20404         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
20405         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
20406         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
20407         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
20408         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
20409         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
20410         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
20411         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
20412         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
20413         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
20414         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
20415         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
20416         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
20417         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
20418         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
20419         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
20420         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
20421         lib/xstrtoumax.c, lib/yesno.c:
20422         Standardize inclusion of config.h.
20423         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
20424         lib/inttostr.h:  Removed inclusion of config.h from header files.
20425         * lib/inttostr.c:  Adjusted in-tree users.
20426         * lib/timespec.h: Remove superfluous warning to include config.h.
20427         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
20428         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
20429         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
20430         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
20431         config.h with HAVE_CONFIG_H.
20432
20433 2005-09-19  Jim Meyering  <jim@meyering.net>
20434
20435         * modules/pathmax (License): Change to LGPL.
20436
20437 2005-09-19  Derek Price  <derek@ximbiot.com>
20438
20439         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
20440
20441 2005-09-19  Bruno Haible  <bruno@clisp.org>
20442
20443         * gnulib-tool (import): Provide default for --tests-base.
20444
20445 2005-09-19  Bruno Haible  <bruno@clisp.org>
20446
20447         * doc/quote.texi: New file, extracted from gnulib.texi.
20448         * doc/ctime.texi: New file, extracted from gnulib.texi.
20449         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
20450         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
20451         * doc/gnulib.texi: Include them.
20452
20453 2005-09-18  Bruno Haible  <bruno@clisp.org>
20454
20455         Portability fix.
20456         * gnulib-tool (func_readlink): New function.
20457         (func_ln_if_changed): Use it.
20458
20459 2005-09-18  Bruno Haible  <bruno@clisp.org>
20460
20461         * gnulib-tool: Support --with-tests also with --import.
20462         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
20463         (func_import): Use variables $testsbase and $inctests. Emit a
20464         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
20465         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
20466         SUBDIRS += $testsdir.
20467         (func_create_testdir): Update.
20468
20469 2005-09-18  Bruno Haible  <bruno@clisp.org>
20470
20471         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
20472         instead of $dry_run.
20473         (func_cp_if_changed, func_mv_if_changed): Remove functions.
20474         (func_ln_if_changed): Don't handle dry-run here.
20475         (func_import): In dry-run mode, detect more precisely which actions
20476         would be performed, and don't use "...ing" verbs.
20477
20478 2005-09-18  Bruno Haible  <bruno@clisp.org>
20479
20480         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
20481         (func_import): Use join on two temporary files instead of three nested
20482         loops, in order to determine which files are new or old.
20483
20484 2005-09-18  Bruno Haible  <bruno@clisp.org>
20485
20486         * gnulib-tool (func_import): Comment out code that spits out the
20487         new files with --dry-run.
20488
20489 2005-09-18  Bruno Haible  <bruno@clisp.org>
20490
20491         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
20492
20493 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20494
20495         * lib/stat-time.h: New file.
20496         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
20497         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
20498         in a different way.
20499         (timespec_cmp): New function.
20500         * lib/utimecmp.c: Include stat-time.h.
20501         (SYSCALL_RESOLUTION): Depend on whether various struct stat
20502         members exist, not on the obsolescent ST_MTIM_NSEC.
20503         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
20504
20505 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20506
20507         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
20508
20509 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
20510
20511         * MODULES.html.sh (File system functions): Add stat-time.
20512         * modules/stat-time: New file.
20513         * modules/timespec (Files): Remove m4/st_mtim.m4; this
20514         is now done in a different way, by the stat-time module.
20515         * modules/utimecmp (Depends-on): Add stat-time.
20516
20517 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20518
20519         * m4/st_mtim.m4: Remove.  Superseded by...
20520         * m4/stat-time.m4: New file.
20521         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
20522         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
20523
20524 2005-09-15  Derek Price  <derek@ximbiot.com>
20525
20526         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
20527
20528 2005-09-15  Derek Price  <derek@ximbiot.com>
20529
20530         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
20531         * lib/regex_internal.c: Ditto, using this...
20532         (__GNUC_PREREQ): ...new macro.
20533         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
20534         using...
20535         (__GNUC_PREREQ): ...this new macro.
20536
20537         * lib/strstr.h: Include string.h. Define strstr as a macro here.
20538
20539 2005-09-15  Derek Price  <derek@ximbiot.com>
20540             Paul Eggert  <eggert@cs.ucla.edu>
20541
20542         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
20543         changes, consolidating in...
20544         * lib/regex_internal.h: ...this file.
20545
20546 2005-09-13  Jim Meyering  <jim@meyering.net>
20547
20548         * lib/canon-host.c: Filter through gnu indent and reword comments
20549         slightly.
20550         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
20551
20552 2005-09-13  Derek Price  <derek@ximbiot.com>
20553
20554         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
20555         failure.
20556         Reported by Jim Meyering  <jim@meyering.net>.
20557
20558 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
20559
20560         * lib/base64.c: Typo.
20561         (base64_encode): Put b64str in initialized data section.
20562
20563 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
20564
20565         Merge glibc and coreutils changes into gnulib, plus a few
20566         extra fixes.
20567         * lib/md5.c: Use #error rather than a string.
20568         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
20569         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
20570         (__attribute__): Define to empty for non recent-GCC.
20571         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
20572         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
20573         Renamed from their non-__ counterparts, with new macros replacing
20574         them if not _LIBC.  Add __THROW attribute.
20575         (rol): Remove.
20576         (struct md5_ctx): Align buffer if using GCC.
20577         * lib/sha1.h (struct sha1_ctx): Likewise.
20578         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
20579         The old name was backwards.
20580         (NOTSWAP): Remove; not used.
20581         (rol): New macro, moved here from md5.h.
20582         (sha1_process_block): Remove a FIXME that doesn't make sense.
20583
20584 2005-09-12  Derek Price  <derek@ximbiot.com>
20585
20586         Return usable errors from canon-host.
20587         * lib/canon-host.h: New file.
20588         * lib/canon-host.c (canon_host): Wrap...
20589         (canon_host_r): ...this new function, which now relies exclusively on
20590         getaddrinfo.
20591         (ch_strerror): New function.
20592         (last_cherror): New global.
20593         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
20594         interface.
20595         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
20596         void *.
20597         (freeaddrinfo): Free ai->ai_canonname when set.
20598
20599 2005-09-12  Derek Price  <derek@ximbiot.com>
20600
20601         Make canon-host require getaddrinfo.
20602         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
20603         AC_LIBSOURCE canon-host.h.  Call...
20604         (gl_PREREQ_CANON_HOST): ...this new function, which requires
20605         gl_GETADDRINFO.
20606         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
20607
20608 2005-09-12  Derek Price  <derek@ximbiot.com>
20609
20610         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
20611         LGPL.
20612         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
20613
20614 2005-09-12  Derek Price  <derek@ximbiot.com>
20615
20616         * lib/gai_strerror.c: Include config.h when available.  Include
20617         getaddrinfo.h before other headers to test interface.
20618         Reported by Larry Jones <lawrence.jones@ugs.com>.
20619
20620 2005-09-12  Derek Price  <derek@ximbiot.com>
20621             Paul Eggert  <eggert@cs.ucla.edu>
20622
20623         * modules/glob (Files): Add glob-libc.h.
20624
20625 2005-09-12  Derek Price  <derek@ximbiot.com>
20626             Paul Eggert  <eggert@cs.ucla.edu>
20627
20628         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
20629         glob_.h, glob-libc.h.
20630         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
20631
20632 2005-09-12  Derek Price  <derek@ximbiot.com>
20633             Paul Eggert  <eggert@cs.ucla.edu>
20634
20635         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
20636         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
20637         protecting things that should be done only in gnulib contexts.
20638         * lib/glob_.h: New file, containing only the glob things needed for
20639         gnulib.
20640         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
20641         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
20642         (glob, globfree, glob_pattern_p): Now defined simply in terms of
20643         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
20644         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
20645         and to respect the namespace rules better.
20646
20647 2005-09-08  Simon Josefsson  <jas@extundo.com>
20648
20649         * modules/socklen: New file.
20650
20651 2005-09-08  Simon Josefsson  <jas@extundo.com>
20652
20653         * m4/socklen.m4: New file.
20654
20655 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20656
20657         * modules/utimens (Files): Add m4/utimbuf.m4, since
20658         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
20659         Reported by Sergey Poznyakoff.
20660
20661 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20662
20663         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
20664         definitions, since that's the preferred style in glibc.
20665         Fix a minor spacing issue, and update copyright notice to match
20666         glibc's.
20667
20668 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20669
20670         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
20671
20672 2005-09-06  Simon Josefsson  <jas@extundo.com>
20673
20674         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
20675         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
20676
20677 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
20678
20679         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
20680         warning.
20681
20682 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
20683
20684         * config/srclist.txt: Add glibc bug 1302.
20685
20686 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20687
20688         Change bitset word type from unsigned int to unsigned long int,
20689         as this has better performance on typical 64-bit hosts.
20690         Port bitset code to hosts with unusual word sizes.
20691         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
20692         (build_collating_symbol):
20693         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
20694         argument is a bitset.  This is merely a style issue, but it makes
20695         it clearer that an entire array is expected.
20696         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
20697         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
20698         Port to the case where bitset_word is not the same as unsigned int.
20699         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20700         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
20701         Likewise.
20702         * lib/regexec.c (check_dst_limits_calc_pos_1,
20703         check_subexp_matching_top):
20704         (build_trtable, group_nodes_into_DFAstates):
20705         Likewise.
20706         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
20707         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
20708         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
20709         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
20710         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
20711         * lib/regcomp.c (optimize_subexps, lower_subexp):
20712         Work even if bitset_word has holes in its bitwise representation.
20713         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
20714         * lib/regexec.c (check_dst_limits_calc_pos_1,
20715         check_subexp_matching_top):
20716         Likewise.
20717         * lib/regex_internal.c (re_string_reconstruct):
20718         Don't assume UCHAR_MAX == 255.
20719         * lib/regex_internal.h (bitset_set_all): Likewise.
20720         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
20721         All uses changed.
20722         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
20723         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
20724         All uses changed.
20725         (BITSET_WORD_MAX): New macro.
20726         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
20727         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
20728         (bitset_empty, bitset_copy):
20729         Prefer sizeof (bitset) to multiplying it out ourselves.
20730         (bitset_not_merge): Remove; unused.
20731         (bitset_contain): Return bool, not unsigned int with one bit on.
20732         All callers changed.
20733         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
20734         alignment than re_node_set; do this by defining a new internal
20735         type struct dests_alloc and using it to allocate memory.
20736
20737 2005-09-05  Bruno Haible  <bruno@clisp.org>
20738
20739         * gnulib-tool (func_import): Fix comparison in handling of symbolic
20740         links.
20741
20742 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
20743
20744         * modules/size_max (Makefile.am): Add size_max.h
20745
20746 2005-09-04  Derek Price  <derek@ximbiot.com>
20747
20748         * gnulib-tool (func_import): Fix reversed $symbolic logic.
20749
20750 2005-09-03  Simon Josefsson  <jas@extundo.com>
20751
20752         * gnulib-tool: Fix typo.
20753
20754 2005-09-03  Simon Josefsson  <jas@extundo.com>
20755
20756         * config/srclist.txt: Add glibc bug 1293.
20757
20758 2005-09-03  Derek Price  <derek@ximbiot.com>
20759
20760         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
20761         From Larry Jones <lawrence.jones@ugs.com>.
20762
20763 2005-09-02  Simon Josefsson  <jas@extundo.com>
20764
20765         * modules/socklen: New file.
20766
20767 2005-09-02  Simon Josefsson  <jas@extundo.com>
20768
20769         * modules/havelib: New module.
20770
20771         * modules/gettext, modules/iconv, modules/lock, modules/readline:
20772         Use havelib.
20773
20774 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
20775
20776         Check for arithmetic overflow when calculating sizes, to prevent
20777         some buffer-overflow issues.  These patches are conservative, in the
20778         sense that when I couldn't determine whether an overflow was possible,
20779         I inserted a run-time check.
20780         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
20781         macros.
20782         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
20783         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
20784         (re_xnrealloc, re_x2nrealloc): New inline functions.
20785         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
20786         parse_bracket_exp):
20787         (build_equiv_class, build_charclass): Check for arithmetic overflow
20788         in size expression calculations.
20789         * lib/regex_internal.c (re_string_realloc_buffers):
20790         (build_wcs_upper_buffer, re_node_set_add_intersect):
20791         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
20792         (re_dfa_add_node, register_state): Likewise.
20793         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
20794         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
20795         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
20796         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
20797
20798 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
20799
20800         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
20801         m4/ulonglong.m4.  Problem reported by Martin Lambers.
20802
20803 2005-09-02  Bruno Haible  <bruno@clisp.org>
20804
20805         Support for lib vs. lib64 distinction on biarch platforms.
20806         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
20807         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
20808         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
20809
20810 2005-09-02  Bruno Haible  <bruno@clisp.org>
20811
20812         * gnulib-tool (import): In the other first-use case, provide defaults
20813         as well.
20814
20815 2005-09-02  Bruno Haible  <bruno@clisp.org>
20816
20817         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
20818         patches not yet found in the latest gettext release.
20819
20820 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20821
20822         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
20823         to avoid a collision with bits/local_lim.h in glibc.
20824         All uses changed.  Problem reported by Dmitry V. Levin in
20825         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
20826
20827         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
20828         bugs in int versus size_t comparisons.
20829         (re_string_context_at): Fix bug where the code assumed that
20830         Idx is signed.
20831
20832         Use bool where appropriate.
20833         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
20834         All callers changed.
20835         (calc_eclosure_iter): Likewise, for ROOT arg.
20836         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
20837         (build_charclass_op): Likewise, for NON_MATCH arg.
20838         * lib/regex_internal.c (re_string_allocate, re_string_construct):
20839         (re_string_construct_common): Likewise, for ICASE arg.
20840         * lib/regexec.c (re_search_2_stub, re_search_stub):
20841         Likewise, for RET_LEN arg.
20842         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
20843         (set_regs): Likewise, for FL_BACKTRACK arg.
20844         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
20845         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
20846         (calc_eclosure_iter, parse_bracket_exp):
20847         Use bool for internal variables that are booleans.
20848         * lib/regexec.c (re_search_internal, check_matching,
20849         proceed_next_node):
20850         (set_regs, build_sifted_states, sift_states_bkref):
20851         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
20852         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
20853         (find_collation_sequence_value):
20854         Likewise.
20855         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
20856         (re_node_set_compare):
20857         Return bool, not int. All callers changed.
20858         * lib/regexec.c (check_halt_node_context, check_dst_limits):
20859         (build_trtable, check_node_accept): Likewise.
20860         * lib/regex_internal.h: Include stdbool.h.
20861
20862         Fix bugs uncovered when converting to bool.
20863         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
20864         failure instead of charging ahead blindly.
20865         * lib/regex_internal.c (register_state): Likewise.
20866         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
20867         for freeing internal storage.
20868         (group_nodes_into_DFA_states): Use unsigned int, not int, for
20869         bitset pieces used as boolean, to avoid undefined behavior
20870         on hosts that do int overflow checking.
20871
20872 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20873
20874         * config/srclist.txt: Add glibc bugs 1285-1287.
20875
20876 2005-09-01  Jim Meyering  <jim@meyering.net>
20877
20878         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
20879         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
20880         Require gl_STAT_MACROS, too.
20881
20882 2005-09-01  Bruno Haible  <bruno@clisp.org>
20883
20884         * gnulib-tool (import): In the first-use case, provide defaults.
20885
20886 2005-09-01  Bruno Haible  <bruno@clisp.org>
20887
20888         * gnulib-tool (func_import): Remove the .tmp files.
20889
20890 2005-09-01  Bruno Haible  <bruno@clisp.org>
20891
20892         * gnulib-tool (func_import): Fix handling of symbolic links.
20893
20894 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20895
20896         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
20897         old glibc regex code mishandles strings longer than 2**31 bytes.
20898         This patch fixes this when the regex code is used in gnulib
20899         (i.e., outside glibc).
20900
20901         This patch should not affect the use of the regex code inside
20902         glibc.  No doubt this problem also needs to be handled for glibc
20903         as well, but the result will be an incompatible change to the
20904         glibc ABI, and the old ABI will have to be supported too.  That
20905         can be the the subject for another patch.
20906
20907         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
20908         governing whether the rest of this patch is active.  By default,
20909         the macro is disabled and the patch has no effect.
20910         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
20911         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
20912         (struct re_pattern_buffer, re_search, re_search_2, re_match):
20913         (re_match_2, re_set_registers): Use the new types.
20914         * lib/regex_internal.h (Idx, re_hashval_t): New types.
20915         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
20916         New macros.
20917         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
20918         (re_string_context_at, bin_tree_t, re_dfastate_t):
20919         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
20920         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
20921         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
20922         (re_string_char_size_at, re_string_wchar_at):
20923         (re_string_elem_size_at):
20924         Use the new types and macros to port to 64-bit hosts.
20925         Use unsigned types for internal values, so that the code
20926         mostly works even for arrays larger than SSIZE_MAX.
20927         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
20928         (search_duplicated_node, calc_eclosure_iter, fetch_number):
20929         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
20930         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
20931         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
20932         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
20933         (calc_inveclosure, parse_dup_op, build_range_exp):
20934         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
20935         (fetch_number, create_token_tree, mark_opt_subexp):
20936         Likewise.
20937         * lib/regex_internal.c (re_string_construct_common,
20938         create_ci_newstate):
20939         (create_cd_newstate, re_string_allocate, re_string_construct):
20940         (re_string_realloc_buffers, build_wcs_upper_buffer):
20941         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
20942         (re_string_reconstruct, re_string_peek_byte_case):
20943         (re_string_fetch_byte_case, re_string_context_at):
20944         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
20945         (re_node_set_init_copy, re_node_set_add_intersect):
20946         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20947         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20948         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
20949         (re_acquire_state, re_acquire_state_context, register_state):
20950         Likewise.
20951         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
20952         search_cur_bkref_entry):
20953         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
20954         (re_search_internal, re_search_2_stub, re_search_stub)
20955         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
20956         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
20957         (update_cur_sifted_state, check_dst_limits):
20958         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20959         (check_subexp_limits, sift_states_bkref, merge_state_array):
20960         (check_subexp_matching_top, get_subexp, get_subexp_sub):
20961         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
20962         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20963         (expand_bkref_cache, check_node_accept_bytes):
20964         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
20965         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
20966         (acquire_init_state_context, check_halt_node_context):
20967         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
20968         (sift_states_backward, clean_state_log_if_needed):
20969         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
20970         (find_recover_state, transit_state_sb, transit_state_mb):
20971         (transit_state_bkref, build_trtable, match_ctx_clean):
20972         Likewise.
20973         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
20974         to work around an assumption that REG_MISSING is negative.
20975
20976         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
20977         (seek_collating_symbol_entry) [defined _LIBC]:
20978         (lookup_collation_sequence_value) [defined _LIBC]:
20979         (build_range_exp, build_collating_symbol) [defined _LIBC]:
20980         Use prototypes rather than old-style function definitions.
20981         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
20982         (transit_state_sb) [0]:
20983         (find_collation_sequence_value) [defined _LIBC]: Likewise.
20984
20985         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
20986         rm_eo.
20987
20988         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
20989         (optimize_subexps, lower_subexp):
20990         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
20991         since the signed shift might overflow.  Use 1u<<31 instead.
20992         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20993         Likewise.
20994         * lib/regexec.c (check_dst_limits_calc_pos_1,
20995         check_subexp_matching_top): Likewise.
20996
20997         * lib/regcomp.c (optimize_subexps, lower_subexp):
20998         Use CHAR_BIT rather than 8, for clarity.
20999         * lib/regexec.c (check_dst_limits_calc_pos_1):
21000         (check_subexp_matching_top): Likewise.
21001         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
21002         have to worry about portability issues when shifting it left.
21003         Remove no-longer-needed test for table_size > 0.
21004         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
21005         in a word, as the resulting behavior is undefined.
21006         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
21007         in one case, a <= should have been an <, and in another case the
21008         whole test was missing.
21009         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
21010         the standard name CHAR_BIT.
21011         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
21012         this is not true on one's complement and signed-magnitude hosts.
21013
21014         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
21015         next_last_offset.
21016         (struct re_dfa_t): Remove unused member states_alloc.
21017         * lib/regcomp.c (init_dfa): Don't initialize unused members.
21018
21019 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21020
21021         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
21022         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
21023         and large-file glibc and in 32-bit large-file Solaris.
21024
21025 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21026
21027         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
21028         lengths fit in regoff_t; this isn't true if regoff_t is the same
21029         width as size_t.
21030         * lib/regex.c (re_search_internal): 5th arg is LAST_START
21031         (= START + RANGE) instead of RANGE.  This avoids overflow
21032         problems when regoff_t is the same width as size_t.
21033         All callers changed.
21034         (re_search_2_stub): Check for overflow when adding the
21035         sizes of the two strings.
21036         (re_search_stub): Check for overflow when adding START
21037         to RANGE; if it occurs, substitute the extreme value.
21038
21039 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21040
21041         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
21042
21043 2005-08-31  Jim Meyering  <jim@meyering.net>
21044
21045         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
21046         a pointer-to-const.
21047         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
21048         (register_state): Likewise.
21049         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
21050         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
21051         (group_nodes_into_DFAstates): Likewise.
21052
21053 2005-08-31  Jim Meyering  <jim@meyering.net>
21054
21055         * check-module: Add a FIXME comment.
21056
21057 2005-08-31  Eric Blake  <ebb9@byu.net>
21058
21059         * modules/unistd-safer (Files): Add unistd--.h.
21060         * modules/stdio-safer (Files): Add stdio--.h.
21061
21062 2005-08-31  Derek Price  <derek@ximbiot.com>
21063
21064         * lib/getdelim.c (getdelim): Return EOF on EOF.
21065         Reported by Larry Jones <lawrence.jones@ugs.com>.
21066
21067 2005-08-31  Bruno Haible  <bruno@clisp.org>
21068
21069         Avoid unnecessary diffs in the generated lib/Makefile.am.
21070         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
21071         the generated files.
21072         (func_import): Don't set cmd.
21073
21074 2005-08-31  Bruno Haible  <bruno@clisp.org>
21075
21076         * lib/strstr.c: Include <stddef.h>, for NULL.
21077         * lib/strcasestr.c: Likewise.
21078         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
21079
21080 2005-08-31  Bruno Haible  <bruno@clisp.org>
21081
21082         * gnulib-tool: New option --macro-prefix.
21083         (func_import): Use macro_prefix.
21084         (import): Handle option --macro-prefix.
21085
21086 2005-08-31  Bruno Haible  <bruno@clisp.org>
21087
21088         * gnulib-tool (import): Rename most ac_* variables to cached_*.
21089         Also use new variables cached_lgpl, cached_libtool.
21090
21091 2005-08-31  Bruno Haible  <bruno@clisp.org>
21092
21093         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
21094         always instantiating them.
21095
21096 2005-08-31  Bruno Haible  <bruno@clisp.org>
21097
21098         * gnulib-tool (func_import): Read the previous cached settings
21099         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
21100         earlier added by gnulib but are now dropped. Warn when a gnulib file
21101         overwrites a non-gnulib file.
21102
21103 2005-08-31  Bruno Haible  <bruno@clisp.org>
21104
21105         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
21106         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
21107         projects that don't keep autogenerated files in CVS. Put into
21108         actioncmd only the specified modules, not the transitive closure.
21109
21110 2005-08-31  Bruno Haible  <bruno@clisp.org>
21111
21112         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
21113         Create directories that shall be filled.
21114         (import): Don't look for gl_* macros in configure.ac. Recurse across
21115         all directories containing a gnulib-cache.m4 files, if meaningful.
21116
21117 2005-08-31  Bruno Haible  <bruno@clisp.org>
21118
21119         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
21120         (import): Set seen_libtool when we see gl_LIBTOOL.
21121
21122 2005-08-31  Bruno Haible  <bruno@clisp.org>
21123
21124         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
21125         declaration macro definitions from generated gnulib.m4.
21126
21127 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
21128
21129         * lib/iconvme.h: Add prototype for iconv_alloc.
21130
21131 2005-08-29  Simon Josefsson  <jas@extundo.com>
21132
21133         * lib/iconvme.c: Fix errno.
21134
21135 2005-08-29  Bruno Haible  <bruno@clisp.org>
21136
21137         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
21138         that it works when the directory contains spaces.
21139
21140 2005-08-29  Bruno Haible  <bruno@clisp.org>
21141
21142         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
21143
21144 2005-08-29  Bruno Haible  <bruno@clisp.org>
21145
21146         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
21147         Emit more advice.
21148
21149 2005-08-29  Bruno Haible  <bruno@clisp.org>
21150         and Stepan Kasal  <kasal@ucw.cz>
21151
21152         * check-module: If more parameters are given, check each of them
21153         separately; add more exceptions, as noted by Jim Meyering.
21154         (check_module): New procedure.
21155         (%exempt_header): Now contains all exceptions.
21156
21157 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
21158
21159         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
21160
21161 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
21162
21163         * lib/iconvme.c: Split iconv_string into iconv_alloc.
21164
21165 2005-08-28  Bruno Haible  <bruno@clisp.org>
21166
21167         * m4/gnulib-tool.m4: New file.
21168
21169 2005-08-27  Jim Meyering  <jim@meyering.net>
21170
21171         * modules/unistd-safer (Files): Add pipe-safer.c.
21172         * modules/fcntl-safer (Files): Add creat-safer.c.
21173
21174 2005-08-27  Jim Meyering  <jim@meyering.net>
21175
21176         * m4/stdlib-safer.m4: New file.  From coreutils.
21177         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
21178         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
21179         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
21180         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
21181         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
21182
21183 2005-08-27  Jim Meyering  <jim@meyering.net>
21184
21185         * lib/fopen-safer.c: Merge minor changes from coreutils.
21186         * lib/dup-safer.c: Likewise.
21187         * lib/fd-safer.c: Likewise.
21188
21189         Merge from coreutils.
21190         * lib/stdio--.h: New file.
21191         * lib/stdlib--.h: New file.
21192         * lib/mkstemp-safer.c: New file.
21193
21194         GNU tar needs these.
21195         * lib/pipe-safer.c: New file.
21196         * lib/creat-safer.c: New file.
21197         * lib/fcntl--.h (creat): Define to creat_safer.
21198         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
21199         * lib/unistd--.h (pipe): Define to pipe_safer.
21200         * lib/unistd-safer.h: Declare pipe_safer.
21201
21202 2005-08-26  Simon Josefsson  <jas@extundo.com>
21203
21204         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
21205         Haible <bruno@clisp.org>.
21206
21207 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21208
21209         * lib/regex_internal.h: Remove all references to
21210         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
21211         or better.
21212         (bitset_not, bitset_merge, bitset_not_merge):
21213         (bitset_mask, re_string_allocate, re_string_construct):
21214         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
21215         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
21216         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
21217         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
21218         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
21219         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
21220         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
21221         (re_acquire_state_context):
21222         Remove unnecessary forward decls.
21223         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
21224         Put __attribute at function definition,
21225         now that the function decl has been removed.
21226         * lib/regex_internal.c (re_string_peek_byte_case):
21227         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
21228         Likewise.
21229
21230 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
21231
21232         * m4/regex.m4: Add AC_PREREQ(2.50).
21233         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
21234
21235 2005-08-25  Simon Josefsson  <jas@extundo.com>
21236
21237         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
21238         __fsetlocking.
21239
21240 2005-08-25  Simon Josefsson  <jas@extundo.com>
21241
21242         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
21243         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
21244         GLIBC specific code.
21245
21246 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21247
21248         Make regex safe for g++.  This fixes one real bug (an "err"
21249         that should have been "*err").  g++ problem reported by
21250         Sam Steingold.
21251         * lib/regex_internal.h (re_calloc): New macro, consistent with
21252         re_malloc etc.  All callers of calloc changed to use re_calloc.
21253         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
21254         not int.  All callers changed.
21255         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
21256         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
21257         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
21258         (find_recover_state): Change "err" to "*err"; this fixes what
21259         appears to be a real bug.
21260         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
21261         versus int.
21262
21263 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21264
21265         * modules/regex (Depends-on): Add malloc, since the code
21266         assumes that !malloc(0) means failure.
21267
21268 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21269
21270         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
21271
21272         alloca modernization/simplification for regex.
21273         * lib/regex.c: Remove portability cruft for alloca.  This no longer
21274         needs to be at the start of the file, and can be moved into
21275         regex_internal.h and simplified.
21276         * lib/regex_internal.h: Include <alloca.h>.
21277         (__libc_use_alloca) [!defined _LIBC]: New macro.
21278         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
21279         now works outside glibc.
21280
21281 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21282
21283         * config/srclist.txt: Add glibc bugs 1241, 1245.
21284
21285 2005-08-25  Jim Meyering  <jim@meyering.net>
21286
21287         * lib/open-safer.c: Include <config.h>.
21288         Otherwise, we'd lose LARGEFILE support in any file using
21289         e.g. "fcntl--.h"
21290
21291 2005-08-25  Bruno Haible  <bruno@clisp.org>
21292
21293         * m4/minmax.m4: Require autoconf 2.52.
21294         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
21295         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
21296         alternatives of translit over the alphabet.
21297         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
21298
21299 2005-08-24  Simon Josefsson  <jas@extundo.com>
21300
21301         * tests/test-getpass.c: New file.
21302
21303 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21304
21305         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
21306         for GNU regex features.
21307
21308 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21309
21310         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
21311         * lib/regex.h (regerror): Likewise.
21312
21313         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
21314         requires this.  (The code never needed it.)
21315
21316         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
21317         All uses of recently-renamed identifiers changed to use the new,
21318         POSIX-compliant names.  The code will build and run just fine
21319         without these changes, but it's better to eat our own dog food
21320         and use the standard-conforming names.
21321
21322         * lib/regex.h: Fix a multitude of POSIX name space violations.
21323         These changes have an effect only for programs that define
21324         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
21325         do not change anything for programs compiled in the normal way.
21326         Also, there is no effect on the ABI.
21327
21328         (_REGEX_SOURCE): New macro.
21329         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
21330         defined and _GNU_SOURCE is not; this fixes a name space violation.
21331
21332         Rename the following macros to obey POSIX requirements.
21333         The old names are still visible as macros if _REGEX_SOURCE is defined.
21334         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
21335         RE_BACKSLASH_ESCAPE_IN_LISTS.
21336         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
21337         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
21338         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
21339         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
21340         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
21341         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
21342         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
21343         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
21344         (REG_INTERVALS): renamed from RE_INTERVALS.
21345         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
21346         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
21347         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
21348         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
21349         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
21350         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
21351         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
21352         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
21353         RE_UNMATCHED_RIGHT_PAREN_ORD.
21354         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
21355         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
21356         (REG_DEBUG): renamed from RE_DEBUG.
21357         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
21358         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
21359         unusual, since we can't clash with the POSIX REG_ICASE.
21360         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
21361         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
21362         (REG_NO_SUB): renamed from RE_NO_SUB.
21363         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
21364         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
21365         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
21366         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
21367         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
21368         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
21369         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
21370         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
21371         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
21372         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
21373         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
21374         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
21375         RE_SYNTAX_POSIX_MINIMAL_BASIC.
21376         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
21377         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
21378         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
21379         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
21380         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
21381         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
21382         (REG_FIXED): Renamed from REGS_FIXED.
21383         (REG_NREGS): Renamed from RE_NREGS.
21384
21385         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
21386         of other REG_* macros, since POSIX says the user is allowed to
21387         #undef these macros selectively.
21388
21389         (reg_errcode_t): Update comment stating what other tables need
21390         to be consistent.
21391
21392         Rename the following enum values to obey POSIX requirements.
21393         The old names are still visible as macros.
21394         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
21395         is not defined, since GNU is supposed to be a superset of POSIX as
21396         much as possible, and since we want reg_errcode_t to be a signed
21397         type for implementation consistency.
21398         (_REG_NOERROR): Renamed from REG_NOERROR.
21399         (_REG_NOMATCH): Renamed from REG_NOMATCH.
21400         (_REG_BADPAT): Renamed from REG_BADPAT.
21401         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
21402         (_REG_ECTYPE): Renamed from REG_ECTYPE.
21403         (_REG_EESCAPE): Renamed from REG_EESCAPE.
21404         (_REG_ESUBREG): Renamed from REG_ESUBREG.
21405         (_REG_EBRACK): Renamed from REG_EBRACK.
21406         (_REG_EPAREN): Renamed from REG_EPAREN.
21407         (_REG_EBRACE): Renamed from REG_EBRACE.
21408         (_REG_BADBR): Renamed from REG_BADBR.
21409         (_REG_ERANGE): Renamed from REG_ERANGE.
21410         (_REG_ESPACE): Renamed from REG_ESPACE.
21411         (_REG_BADRPT): Renamed from REG_BADRPT.
21412         (_REG_EEND): Renamed from REG_EEND.
21413         (_REG_ESIZE): Renamed from REG_ESIZE.
21414         (_REG_ERPAREN): Renamed from REG_ERPAREN.
21415         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
21416         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
21417         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
21418         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
21419
21420         (_REG_RE_NAME, _REG_RM_NAME): New macros.
21421         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
21422         changed.  But support the old name if the new one is not defined
21423         and if _REGEX_SOURCE.
21424
21425         Change the following member names in struct re_pattern_buffer.
21426         The old names are still supported if !_REGEX_SOURCE.
21427         The new names are always supported, regardless of _REGEX_SOURCE.
21428         (re_buffer): Renamed from buffer.
21429         (re_allocated): Renamed from allocated.
21430         (re_used): Renamed from used.
21431         (re_syntax): Renamed from syntax.
21432         (re_fastmap): Renamed from fastmap.
21433         (re_translate): Renamed from translate.
21434         (re_can_be_null): Renamed from can_be_null.
21435         (re_regs_allocated): Renamed from regs_allocated.
21436         (re_fastmap_accurate): Renamed from fastmap_accurate.
21437         (re_no_sub): Renamed from no_sub.
21438         (re_not_bol): Renamed from not_bol.
21439         (re_not_eol): Renamed from not_eol.
21440         (re_newline_anchor): Renamed from newline_anchor.
21441
21442         Change the following member names in struct re_registers.
21443         The old names are still supported if !_REGEX_SOURCE.
21444         The new names are always supported, regardless of _REGEX_SOURCE.
21445         (rm_num_regs): Renamed from num_regs.
21446         (rm_start): Renamed from start.
21447         (rm_end): Renamed from end.
21448
21449         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
21450         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
21451         Prepend __ to parameter names.
21452
21453         Undo yesterday's changes.
21454
21455 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21456
21457         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
21458         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
21459         lib/regex.c.
21460
21461 2005-08-24  Jim Meyering  <jim@meyering.net>
21462
21463         Sync from coreutils.
21464         * m4/fcntl-safer.m4: New file.
21465
21466         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
21467         and object files for this module.
21468
21469 2005-08-24  Jim Meyering  <jim@meyering.net>
21470
21471         Sync from coreutils.
21472         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
21473
21474 2005-08-24  Jim Meyering  <jim@meyering.net>
21475
21476         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
21477         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
21478
21479 2005-08-24  Jim Meyering  <jim@meyering.net>
21480
21481         * modules/fcntl-safer: New module.
21482         * modules/fts (Depends-on): Add fcntl-safer.
21483         * MODULES.html.sh (File descriptor based Input/Output):
21484         Add fcntl-safer.
21485
21486 2005-08-24  Bruno Haible  <bruno@clisp.org>
21487
21488         Support for unit test modules.
21489         * modules/README: Mention tests modules.
21490         * modules/TEMPLATE-TESTS: New file.
21491         * gnulib-tool: New options --extract-tests-module, --with-tests and
21492         --tests-base (unused for the moment).
21493         (testsbase, inctests): New variables.
21494         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
21495         (func_verify_module): Exclude TEMPLATE-TESTS.
21496         (func_verify_nontests_module, func_verify_tests_module): New functions.
21497         (func_get_dependencies): Add implicit dependency for tests modules.
21498         (func_get_tests_module): New function.
21499         (func_modules_transitive_closure): When --with-tests was specified,
21500         include the unit tests as well, unless explicitly avoided.
21501         (func_emit_lib_Makefile_am): Ignore the tests modules here.
21502         (func_emit_tests_Makefile_am): New function.
21503         (func_create_testdir): When --with-tests was specified, emit a
21504         tests/ directory.
21505         * MODULES.html.sh (Future developments): Update.
21506
21507 2005-08-24  Bruno Haible  <bruno@clisp.org>
21508
21509         * modules/tls-tests: New file.
21510         * tests/test-tls.c: New file, from GNU gettext.
21511
21512 2005-08-24  Bruno Haible  <bruno@clisp.org>
21513
21514         * modules/lock-tests: New file.
21515         * tests/test-lock.c: New file, from GNU gettext.
21516
21517 2005-08-24  Bruno Haible  <bruno@clisp.org>
21518
21519         * lib/lock.h: Add multiple inclusion guard.
21520         * lib/tls.h: Add multiple inclusion guard.
21521
21522 2005-08-24  Bruno Haible  <bruno@clisp.org>
21523
21524         * gnulib-tool: Add support for the --aux-dir option to
21525         --create-testdir, --create-megatestdir, --test, --megatest.
21526         (func_create_testdir, func_create_megatestdir): Optionally emit a
21527         AC_CONFIG_AUX_DIR directive.
21528         (create-testdir, create-megatestdir, test, megatest): Provide a
21529         default value for $auxdir.
21530
21531 2005-08-24  Bruno Haible  <bruno@clisp.org>
21532
21533         * gnulib-tool (import): Use compound statement instead of subshell
21534         where possible.
21535
21536 2005-08-24  Bruno Haible  <bruno@clisp.org>
21537
21538         * gnulib-tool (import): Change --aux-dir default to "build-aux".
21539
21540 2005-08-24  Bruno Haible  <bruno@clisp.org>
21541
21542         * gnulib-tool (func_version): Update.
21543
21544 2005-08-24  Bruno Haible  <bruno@clisp.org>
21545
21546         * gnulib-tool (func_import, func_create_testdir,
21547         func_create_megatestdir): Quote all autoconf macro arguments.
21548
21549 2005-08-24  Bruno Haible  <bruno@clisp.org>
21550
21551         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
21552         option --force, because --force causes the aclocal.m4 of each
21553         subdirectory to be newer than the corresponding config.h.in.
21554
21555 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21556
21557         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
21558         All contents moved to gl_REGEX.
21559         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
21560         assume that it does.
21561
21562 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21563
21564         * lib/regex.h (REG_NOSYS)
21565         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
21566         Define, since POSIX requires it as of 2001.
21567         (_REG_ENOSYS)
21568         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
21569         New private symbol, used to keep the enum signed in all cases.
21570         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
21571         Youngman in
21572         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
21573
21574         * lib/regex_internal.c (re_string_skip_chars, register_state):
21575         (calc_state_hash):
21576         Remove forward decls; no longer needed now that we use prototypes.
21577         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
21578         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
21579         (clean_state_log_if_needed): Likewise.
21580
21581 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21582
21583         * config/srclist.txt: Add glibc bugs 1231-1233.
21584
21585 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21586
21587         Fix problems reported by Sam Steingold in
21588         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
21589         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
21590         assumed that reg_errcode_t is a signed type, which is not
21591         necessarily true if _XOPEN_SOURCE is not defined.
21592         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
21593         since some compilers warn about it otherwise.
21594
21595 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21596
21597         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
21598         (init_word_char, create_initial_state, duplicate_node_closure):
21599         (fetch_token, peek_token_bracket, build_range_exp):
21600         (build_collating_symbol): Remove forward decls; no longer needed
21601         now that we use prototypes.
21602
21603         * lib/regcomp.c:
21604         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
21605         (re_compile_fastmap_iter, regcomp, regerror, regfree):
21606         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
21607         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
21608         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
21609         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
21610         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
21611         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
21612         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
21613         (build_range_exp, build_collating_symbol, parse_bracket_exp):
21614         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
21615         (build_charclass, build_charclass_op, fetch_number, create_tree):
21616         (create_token_tree, mark_opt_subexp, duplicate_tree):
21617         Use prototypes rather than old-style definitions.
21618
21619         * lib/regex_internal.c:
21620         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
21621         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
21622         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
21623         (re_string_reconstruct, re_string_peek_byte_case):
21624         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
21625         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
21626         (re_node_set_init_copy, re_node_set_add_intersect):
21627         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
21628         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
21629         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
21630         (re_acquire_state, re_acquire_state_context, register_state):
21631         (create_ci_newstate, create_cd_newstate, free_state):
21632         Likewise.
21633         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
21634         re_search_2):
21635         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
21636         (re_search_internal, prune_impossible_nodes):
21637         (acquire_init_state_context, check_matching, static):
21638         (check_halt_node_context, check_halt_state_context, proceed_next_node):
21639         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
21640         (update_regs, sift_states_backward, build_sifted_states):
21641         (clean_state_log_if_needed, merge_state_array):
21642         (update_cur_sifted_state, add_epsilon_src_nodes):
21643         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
21644         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
21645         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
21646         (find_recover_state, check_subexp_matching_top, transit_state_mb):
21647         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
21648         (check_arrival, check_arrival_add_next_nodes):
21649         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
21650         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
21651         (check_node_accept_bytes, check_node_accept, extend_buffers):
21652         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
21653         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
21654         (sift_ctx_init):
21655         Likewise.
21656
21657         * lib/regex_internal.h:
21658         (re_string_allocate, re_string_construct, re_string_reconstruct):
21659         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
21660         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
21661         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
21662         (re_string_context_at, re_string_peek_byte_case):
21663         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
21664         is defined, since we now use prototypes always.
21665
21666         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
21667         C89 or better.  All uses removed.
21668
21669 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21670
21671         * config/srclist.txt: Add glibc bugs 1220-1227.
21672
21673 2005-08-20  Jim Meyering  <jim@meyering.net>
21674
21675         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
21676         of unused local, dfa.
21677
21678 2005-08-20  Bruno Haible  <bruno@clisp.org>
21679
21680         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
21681
21682 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21683
21684         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
21685         (re_node_set_insert_last, re_dfa_add_node):
21686         Rename local variables to avoid GCC shadowing warnings.
21687
21688 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21689
21690         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
21691         [defined lint]: Suppress bogus uninitialized-variable warnings.
21692
21693         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
21694         and let the caller return REG_ESPACE if out of space.  This
21695         removes an uninitialied-variable warning with GCC 4.0.1, and also
21696         avoids taking the address of a local variable.  All callers
21697         changed.
21698
21699 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21700
21701         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
21702         $LIBCSRC/posix/regexec.c.
21703         Add glibc bug 1217 for regcomp.c.
21704
21705 2005-08-19  Jim Meyering  <jim@meyering.net>
21706
21707         * lib/regexec.c (proceed_next_node): Redo local variables to
21708         avoid GCC shadowing warnings.
21709
21710 2005-08-18  Bruno Haible  <bruno@clisp.org>
21711
21712         * lib/strstr.c (strstr): Fix return value in multibyte case.
21713         * lib/strcasestr.c (strcasestr): Likewise.
21714
21715 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
21716
21717         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
21718
21719 2005-08-17  Jim Meyering  <jim@meyering.net>
21720
21721         Make the %s format (seconds since the epoch) work for a negative
21722         number and when used with a zero-padded field width, e.g. %015s.
21723
21724         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
21725         label so that it precedes the code to set `digits'.  Otherwise,
21726         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
21727         print `00-22'.  Now, it prints `-0022', as it should.
21728
21729 2005-08-17  Bruno Haible  <bruno@clisp.org>
21730
21731         * modules/strstr (Files): Add m4/mbrtowc.m4.
21732         (Depends-on): Add mbuiter.
21733
21734 2005-08-17  Bruno Haible  <bruno@clisp.org>
21735
21736         * modules/strcasestr: New file.
21737         * MODULES.html.sh (String handling, based on ANSI C 89): Add
21738         strcasestr.
21739
21740 2005-08-17  Bruno Haible  <bruno@clisp.org>
21741
21742         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
21743
21744 2005-08-17  Bruno Haible  <bruno@clisp.org>
21745
21746         * modules/mbuiter: New file.
21747         * MODULES.html.sh (Extended multibyte and wide character utilities):
21748         Add mbuiter.
21749
21750 2005-08-17  Bruno Haible  <bruno@clisp.org>
21751
21752         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
21753         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
21754
21755 2005-08-17  Bruno Haible  <bruno@clisp.org>
21756
21757         * m4/strcasestr.m4: New file.
21758
21759 2005-08-17  Bruno Haible  <bruno@clisp.org>
21760
21761         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
21762         * lib/strstr.c: Completely rewritten, with multibyte locale support.
21763
21764 2005-08-17  Bruno Haible  <bruno@clisp.org>
21765
21766         * lib/strcasestr.h: New file.
21767         * lib/strcasestr.c: New file.
21768
21769 2005-08-17  Bruno Haible  <bruno@clisp.org>
21770
21771         * lib/strcasecmp.c: Use mbuiter.h.
21772
21773 2005-08-17  Bruno Haible  <bruno@clisp.org>
21774
21775         * lib/mbuiter.h: New file.
21776
21777 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
21778
21779         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
21780         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
21781         and gl_GETOPT are both invoked via different paths (as happens
21782         with GNU tar CVS because it uses both argp and getopt), the former
21783         wins.
21784
21785 2005-08-16  Bruno Haible  <bruno@clisp.org>
21786
21787         * modules/tls: New file.
21788         * MODULES.html.sh (Multithreading): Add tls.
21789
21790 2005-08-16  Bruno Haible  <bruno@clisp.org>
21791
21792         * modules/strnlen1: New file.
21793         * MODULES.html.sh (String handling): Add strnlen1.
21794
21795 2005-08-16  Bruno Haible  <bruno@clisp.org>
21796
21797         * modules/strcase (Files): Add m4/mbrtowc.m4.
21798         (Depends-on): Add strnlen1, mbchar.
21799
21800 2005-08-16  Bruno Haible  <bruno@clisp.org>
21801
21802         * modules/mbiter: New file.
21803         * MODULES.html.sh (Extended multibyte and wide character utilities):
21804         Add mbiter.
21805
21806 2005-08-16  Bruno Haible  <bruno@clisp.org>
21807
21808         * modules/mbfile: New file.
21809         * MODULES.html.sh (Extended multibyte and wide character utilities):
21810         Add mbfile.
21811
21812 2005-08-16  Bruno Haible  <bruno@clisp.org>
21813
21814         * modules/mbchar: New file.
21815         * MODULES.html.sh (Extended multibyte and wide character utilities):
21816         New section.
21817
21818 2005-08-16  Bruno Haible  <bruno@clisp.org>
21819
21820         * m4/tls.m4: New file, from GNU gettext.
21821
21822 2005-08-16  Bruno Haible  <bruno@clisp.org>
21823
21824         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
21825         always.
21826         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
21827
21828 2005-08-16  Bruno Haible  <bruno@clisp.org>
21829
21830         * m4/mbiter.m4: New file.
21831
21832 2005-08-16  Bruno Haible  <bruno@clisp.org>
21833
21834         * m4/mbfile.m4: New file.
21835
21836 2005-08-16  Bruno Haible  <bruno@clisp.org>
21837
21838         * m4/mbchar.m4: New file.
21839
21840 2005-08-16  Bruno Haible  <bruno@clisp.org>
21841
21842         * lib/tls.h: New file, from GNU gettext.
21843         * lib/tls.c: New file, from GNU gettext.
21844
21845 2005-08-16  Bruno Haible  <bruno@clisp.org>
21846
21847         * lib/strnlen1.h: New file.
21848         * lib/strnlen1.c: New file.
21849
21850 2005-08-16  Bruno Haible  <bruno@clisp.org>
21851
21852         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
21853         (mbi_init): Update.
21854         (mbi_avail, mbi_advance): Let the iteration end before the terminating
21855         NUL byte, not after it.
21856
21857 2005-08-16  Bruno Haible  <bruno@clisp.org>
21858
21859         * lib/strcase.h (strcasecmp): Add note in comments.
21860         * lib/strncasecmp.c: Use code from strcasecmp.c.
21861         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
21862         (strcasecmp): Work correctly in multibyte locales.
21863
21864 2005-08-16  Bruno Haible  <bruno@clisp.org>
21865
21866         * lib/mbiter.h: New file.
21867
21868 2005-08-16  Bruno Haible  <bruno@clisp.org>
21869
21870         * lib/mbfile.h: New file.
21871
21872 2005-08-16  Bruno Haible  <bruno@clisp.org>
21873
21874         * lib/mbchar.h: New file.
21875         * lib/mbchar.c: New file.
21876
21877 2005-08-16  Bruno Haible  <bruno@clisp.org>
21878
21879         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
21880         the valid ones. Makes the comparison operations transitive:
21881         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
21882         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
21883
21884 2005-08-15  Simon Josefsson  <jas@extundo.com>
21885
21886         * modules/ssize_t (License): Change to 'unlimited'.
21887
21888         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
21889
21890 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21891
21892         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
21893         Add comments for each pending glibc patch.
21894
21895 2005-08-15  Bruno Haible  <bruno@clisp.org>
21896
21897         * lib/regex.h (__restrict_arr): Don't define to __restrict if
21898         __cplusplus is defined.
21899
21900 2005-08-14  Jim Meyering  <jim@meyering.net>
21901
21902         Sync from coreutils.
21903
21904         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
21905         Use the hash-table-based cycle-detection code not just when
21906         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
21907         Reported by James Youngman in
21908         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
21909         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
21910         FTS_TIGHT_CYCLE_CHECK.
21911         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
21912         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
21913         once again.
21914         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
21915         * lib/fts.c (fd_safer): Remove decl.
21916         Include fcntl--.h rather than unistd-safer.h
21917         (fts_safe_changedir): Don't call fd_safer; no longer needed
21918         now that we include fcntl--.h.
21919
21920 2005-08-12  Simon Josefsson  <jas@extundo.com>
21921
21922         * modules/getndelim2: Use ssize_t module.
21923         * modules/getnline: Likewise.
21924         * modules/safe-read: Likewise.
21925         * modules/xreadlink: Likewise.
21926
21927         * modules/ssize_t: New file.
21928
21929 2005-08-12  Simon Josefsson  <jas@extundo.com>
21930
21931         * m4/readline.m4: Look for termcap, curses or ncurses if required.
21932
21933 2005-08-12  Simon Josefsson  <jas@extundo.com>
21934
21935         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21936         ssize_t.
21937
21938 2005-08-12  Simon Josefsson  <jas@extundo.com>
21939
21940         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
21941         readline, getdelim and check_version.
21942         (Support for systems lacking ISO C 99: Sizes of integer types):
21943         Add size_max.
21944
21945 2005-08-12  Bruno Haible  <bruno@clisp.org>
21946
21947         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
21948
21949 2005-08-11  Simon Josefsson  <jas@extundo.com>
21950
21951         * modules/readline: New file.
21952
21953         * modules/strnlen (Files): Add strnlen.h.
21954
21955 2005-08-11  Simon Josefsson  <jas@extundo.com>
21956
21957         * m4/readline.m4: New file.
21958
21959 2005-08-11  Simon Josefsson  <jas@extundo.com>
21960
21961         * lib/readline.h, readline.c: New file.
21962
21963 2005-08-11  Simon Josefsson  <jas@extundo.com>
21964
21965         * doc/gnulib.texi (Initial import, Finishing touches): Mention
21966         gl_AVOID.
21967
21968 2005-08-11  Bruno Haible  <bruno@clisp.org>
21969
21970         * lib/strnlen.h (strnlen): Change parameter name to match comment.
21971
21972 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
21973
21974         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
21975
21976 2005-08-10  Simon Josefsson  <jas@extundo.com>
21977
21978         * tests/test-iconvme.c: New file.
21979
21980 2005-08-10  Simon Josefsson  <jas@extundo.com>
21981
21982         * m4/strnlen.m4: New file.
21983
21984         * m4/strndup.m4: Don't check for strnlen declaration, done in
21985         strnlen.m4.
21986
21987 2005-08-10  Simon Josefsson  <jas@extundo.com>
21988
21989         * lib/strndup.c: Use strnlen.h.
21990
21991         * lib/strnlen.h: New file.
21992
21993 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21994
21995         * README: Typos.
21996
21997 2005-08-02  Simon Josefsson  <jas@extundo.com>
21998
21999         * modules/readline: New file.
22000
22001 2005-08-02  Simon Josefsson  <jas@extundo.com>
22002
22003         * modules/getdelim: New file.
22004
22005         * modules/getline: Rewrite, don't use getndelim2.
22006
22007 2005-08-02  Simon Josefsson  <jas@extundo.com>
22008
22009         * m4/getline.m4: Separate out getdelim stuff into separate module.
22010
22011         * m4/getdelim.m4: New file.
22012
22013 2005-08-02  Simon Josefsson  <jas@extundo.com>
22014
22015         * lib/getline.h, getline.c: Rewrite.
22016
22017         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
22018
22019 2005-07-31  Bruno Haible  <bruno@clisp.org>
22020
22021         * lib/lock.h (gl_lock_initializer): New macro.
22022         (gl_lock_define_initialized): Use it.
22023         (gl_rwlock_initializer): New macro.
22024         (gl_rwlock_define_initialized): Use it.
22025         (gl_recursive_lock_initializer): New macro.
22026         (gl_recursive_lock_define_initialized): Use it.
22027
22028 2005-07-30  Karl Berry  <karl@gnu.org>
22029
22030         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
22031         Report from Ben Pfaff, regarding getopt.
22032
22033 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
22034
22035         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
22036         normal way.
22037         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
22038         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
22039         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
22040         (gl_GETOPT): Use the new macros.  Most of the implementation
22041         is moved to the new macros.  This is for programs like Emacs
22042         that don't want all the functionality of gl_GETOPT.
22043
22044 2005-07-26  Bruno Haible  <bruno@clisp.org>
22045
22046         * m4/lock.m4: Update from GNU gettext.
22047
22048 2005-07-26  Bruno Haible  <bruno@clisp.org>
22049
22050         * lib/lock.h: Update from GNU gettext.
22051         * lib/lock.c: Update from GNU gettext.
22052
22053 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
22054
22055         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
22056         obsolescent AC_TRY_RUN.  Include the default includes files, for
22057         'exit'.
22058
22059 2005-07-24  Bruno Haible  <bruno@clisp.org>
22060
22061         * modules/visibility: New file.
22062         * MODULES.html.sh (Misc): Add visibility.
22063
22064 2005-07-24  Bruno Haible  <bruno@clisp.org>
22065
22066         * m4/visibility.m4: New file.
22067
22068 2005-07-24  Bruno Haible  <bruno@clisp.org>
22069
22070         * doc/visibility.texi: New file.
22071
22072 2005-07-22  Bruno Haible  <bruno@clisp.org>
22073
22074         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
22075         $(ALLOCA_H), redundant through BUILT_SOURCES.
22076         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
22077         redundant through BUILT_SOURCES.
22078         * modules/byteswap (Makefile.am): Remove explicit dependency on
22079         $(BYTESWAP_H), redundant through BUILT_SOURCES.
22080         * modules/fnmatch (Makefile.am): Remove explicit dependency on
22081         $(FNMATCH_H), redundant through BUILT_SOURCES.
22082         * modules/getopt (Makefile.am): Remove explicit dependency on
22083         $(GETOPT_H), redundant through BUILT_SOURCES.
22084         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
22085         redundant through BUILT_SOURCES.
22086         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
22087         redundant through BUILT_SOURCES.
22088         * modules/stdbool (Makefile.am): Remove explicit dependency on
22089         $(STDBOOL_H), redundant through BUILT_SOURCES.
22090         * modules/stdint (Makefile.am): Remove explicit dependency on
22091         $(STDINT_H), redundant through BUILT_SOURCES.
22092         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
22093         Remove explicit dependency on $(SYSEXITS_H).
22094         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
22095
22096 2005-07-18  Simon Josefsson  <jas@extundo.com>
22097
22098         * lib/check-version.c (check_version): Accept identical versions too.
22099
22100 2005-07-18  Bruno Haible  <bruno@clisp.org>
22101
22102         * modules/lock: New file.
22103         * MODULES.html.sh (Multithreading): New section.
22104
22105 2005-07-18  Bruno Haible  <bruno@clisp.org>
22106
22107         * m4/lock.m4: New file, from GNU gettext.
22108
22109 2005-07-18  Bruno Haible  <bruno@clisp.org>
22110
22111         * lib/lock.h: New file, from GNU gettext.
22112         * lib/lock.c: New file, from GNU gettext.
22113
22114 2005-07-18  Bruno Haible  <bruno@clisp.org>
22115
22116         * lib/lock.h (gl_once_t): New type.
22117         (gl_once_define, gl_once): New macros.
22118         * lib/lock.c (fresh_once): New variable.
22119         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
22120         functions.
22121
22122 2005-07-16  Simon Josefsson  <jas@extundo.com>
22123
22124         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
22125         workaround, suggested by Bruno.
22126
22127 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
22128
22129         * modules/xalloc (Depends-on): Add xalloc-die.
22130         * modules/xvasprintf (Depends-on): Add xalloc-die.
22131
22132 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
22133
22134         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
22135         with a minor change.
22136
22137 2005-07-15  Bruno Haible  <bruno@clisp.org>
22138
22139         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
22140         When using lib/poll.c, define poll as rpl_poll.
22141
22142 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
22143
22144         * modules/argp (Depends-on): Remove unlocked-io.
22145
22146 2005-07-14  Derek Price  <derek@ximbiot.com>
22147
22148         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
22149         for glob symlink bug.
22150
22151 2005-07-14  Bruno Haible  <bruno@clisp.org>
22152
22153         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
22154         Instead, test for *_unlocked function declarations directly.
22155
22156 2005-07-11  Simon Josefsson  <jas@extundo.com>
22157
22158         * modules/size_max: New file.
22159
22160         * modules/xsize: Depend on size_max module for size_max.m4.
22161
22162 2005-07-11  Simon Josefsson  <jas@extundo.com>
22163
22164         * lib/size_max.h: New file.
22165
22166 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
22167
22168         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
22169         copyright symbol and the year.
22170         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
22171         (version_etc_va): Use parameterized copyright notice.
22172         Reword to conform to the current GNU coding standards.
22173
22174 2005-07-11  Karl Berry  <karl@gnu.org>
22175
22176         * doc/gnulib.texi (Quoting): new node.
22177         (Initial import): more info, from Patrice.
22178
22179 2005-07-11  Bruno Haible  <bruno@clisp.org>
22180
22181         * gnulib-tool (func_usage): Document option --avoid.
22182         (Command line options): Handle --avoid.
22183         (func_acceptable): New function.
22184         (func_modules_transitive_closure): Use it.
22185
22186 2005-07-11  Bruno Haible  <bruno@clisp.org>
22187
22188         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
22189         Reported by Jim Meyering.
22190
22191 2005-07-10  Bruno Haible  <bruno@clisp.org>
22192
22193         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
22194         Needed when size_t is smaller than 'unsigned int'.
22195         Reported by Paul Eggert.
22196
22197 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
22198
22199         * modules/argp (Depends-on): Add unlocked-io
22200
22201 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
22202
22203         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
22204         block of defines.
22205
22206 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
22207
22208         * config/srclist.txt: Comment out regcomp.c, since we have a porting
22209         fix now.
22210
22211 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
22212         and Paul Eggert  <eggert@cs.ucla.edu>
22213
22214         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
22215         in wint_t, not wchar_t.  Remove now-unnecessary cast.
22216
22217 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
22218
22219         * modules/regex (Files): Add lib/regex_internal.c,
22220         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
22221         (Depends-on): Add extensions.
22222         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
22223
22224 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
22225
22226         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
22227         pathconf.
22228         * m4/same.m4 (gl_SAME): Likewise.
22229         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
22230
22231         * m4/regex.m4: Adjust to new libc regex implementation.
22232         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
22233         all the .c and .h parts of (the new) regex.
22234         Quote the m4 stuff better.
22235         Check for RE_ICASE bug of old gnulib.
22236         Check for REG_STARTEND of recent libc.
22237         Rename local variables from jm_* to gl_*.
22238         Quote operand of "test -f".
22239         Say "recent enough" version of libc, not "version 2".
22240         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
22241         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
22242         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
22243         Remove check for btowc, isascii.
22244         Require AM_LANGINFO_CODESET.
22245
22246 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
22247
22248         * lib/regex.c, regex.h: Sync from libc.
22249         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
22250         * lib/regexec.c:
22251         New files, synced from libc, except that regex_internal.h
22252         currently has a small porting fix.
22253
22254 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
22255
22256         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
22257         regex_internal.c, regexec.c.
22258         Add regex_internal.h too, but as a comment, since the libc version
22259         is currently broken in gnulib mode.
22260
22261 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22262
22263         Support programs like Emacs that use gnulib but not gettext.
22264         * MODULES.html.sh (Internationalization functions): Add gettext-h.
22265         * modules/gettext-h: New file.
22266         * modules/gettext (Files): Remove lib/gettext.h.
22267         (Depends-on): Add gettext-h.
22268         (Makefile.am): Remove lib_SOURCES.
22269         * modules/argmatch, modules/c-stack, modules/closeout:
22270         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
22271         * modules/execute, modules/file-type, modules/getaddrinfo:
22272         * modules/getopt, modules/human, modules/javacomp:
22273         * modules/javaexec, modules/mkdir-p, modules/obstack:
22274         * modules/openat, modules/pagealign_alloc, modules/pipe:
22275         * modules/quotearg, modules/regex, modules/rpmatch:
22276         * modules/unicodeio, modules/userspec, modules/version-etc:
22277         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
22278         * modules/xsetenv:
22279         Depend on gettext-h, not gettext.
22280
22281 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22282
22283         * gnulib-tool (func_import): Add support for 'public domain' license.
22284         * modules/alloca, modules/atexit, modules/memmove:
22285         Now public domain, not GPL.
22286         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
22287         * modules/realloc, modules/strerror, modules/strtod:
22288         Now LGPL, not GPL.
22289
22290 2005-07-05  Bruno Haible  <bruno@clisp.org>
22291
22292         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
22293         autoconf CVS. Needed for mingw.
22294
22295 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22296
22297         Remove the dependency of the strftime module on the tzset module.
22298         * modules/strftime (Depends-on): Remove dependency on tzset.
22299
22300 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22301
22302         Remove the dependency of the strftime module on the tzset module.
22303         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
22304         gl_FUNC_TZSET_CLOBBER.
22305
22306 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
22307
22308         Remove the dependency of the strftime module on the tzset module.
22309         * lib/strftime.c (my_strftime)
22310         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
22311         Copy the input structure, to work around some of the bug with
22312         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
22313         Solaris releases, you should also use the tzset module, but we won't
22314         require it as a dependency any more since we don't want LGPLed code
22315         to depend on GPLed code.
22316
22317 2005-07-02  Jim Meyering  <jim@meyering.net>
22318
22319         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
22320         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
22321         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
22322         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
22323
22324 2005-07-02  Jim Meyering  <jim@meyering.net>
22325
22326         * lib/backupfile.c (backup_args): Change a `0' to NULL.
22327
22328 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
22329
22330         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
22331         declares only 'struct timespec;' (!).
22332
22333 2005-07-01  Jim Meyering  <jim@meyering.net>
22334
22335         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
22336         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
22337         * lib/save-cwd.c, tempname.c:
22338         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
22339         and don't include <sys/file.h>).
22340
22341 2005-06-29  Jim Meyering  <jim@meyering.net>
22342
22343         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
22344         type name.  Use the variable name instead.
22345         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
22346         Likewise.
22347
22348 2005-06-28  Simon Josefsson  <jas@extundo.com>
22349
22350         * modules/check-version (Files): Add check-version.m4.
22351
22352 2005-06-28  Simon Josefsson  <jas@extundo.com>
22353
22354         * m4/check-version.m4: New file, suggested by Jim Meyering
22355         <jim@meyering.net>.
22356
22357 2005-06-28  Simon Josefsson  <jas@extundo.com>
22358
22359         * lib/check-version.h, lib/check-version.c: New files.
22360
22361 2005-06-28  Simon Josefsson  <jas@extundo.com>
22362
22363         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
22364         collision with global variable.  Better indentation.  Don't
22365         increment buffer pointer beyond buffer end.  Based on comments
22366         from Paul Eggert <eggert@cs.ucla.edu>.
22367
22368         * lib/base64.h: Indent.
22369
22370 2005-06-28  Simon Josefsson  <jas@extundo.com>
22371
22372         * doc/gnulib.texi (Library version handling): New section.
22373
22374 2005-06-28  Jim Meyering  <jim@meyering.net>
22375
22376         * check-module (find_included_lib_files): Hard-code another
22377         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
22378         but modules/fts-lgpl (correctly) does not list those files.
22379
22380         * modules/canonicalize (Files): Add lib/pathmax.h.
22381
22382 2005-06-25  Simon Josefsson  <jas@extundo.com>
22383
22384         * modules/check-version: New file.
22385
22386 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
22387
22388         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
22389         initializer of struct addrinfo, as an indication that we don't
22390         care how many members the structure has.
22391
22392 2005-06-24  Derek Price  <derek@ximbiot.com>
22393         and Bruno Haible  <bruno@clisp.org>
22394
22395         Remove stat module & update lstat.
22396         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
22397         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
22398         * m4/stat.m4: Remove this file.
22399
22400 2005-06-24  Derek Price  <derek@ximbiot.com>
22401         and Bruno Haible  <bruno@clisp.org>
22402
22403         Remove stat module & update lstat.
22404         * lib/stat.c: Remove this file...
22405         (slash_aware_lstat): ...moving this content and its support...
22406         * lib/lstat.c (rpl_lstat): ...into here.
22407         * lib/lstat.h: New file.
22408
22409 2005-06-24  Derek Price  <derek@ximbiot.com>
22410         and Bruno Haible  <bruno@clisp.org>
22411
22412         Remove stat module & update lstat.
22413         * config/srclist.txt (libc sources): Remove stat.
22414
22415 2005-06-24  Derek Price  <derek@ximbiot.com>
22416         and Bruno Haible  <bruno@clisp.org>
22417
22418         Remove stat module & update lstat.
22419         * MODULES.html.sh (stat): Remove.
22420         * MODULES.html: Regenerated.
22421         * modules/lstat (Description): Correct function name.
22422         (Files): Add "lstat.h".
22423         (Depends-on): Remove stat, add xalloc, stat-macros.
22424         * modules/stat: Remove this file.
22425         (Include): Add "lstat.h", remove <sys/stat.h>.
22426
22427 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22428
22429         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
22430         (ranged_convert): Don't save conversion in a temporary struct.
22431         This causes a warning with GCC 4.0.0, and anyway in the typical
22432         case it's not worth the extra 100 bytes or so of code.
22433         (ranged_convert, __mktime_internal): When calling a function via a
22434         pointer P, use P () rather than (*P) (), as we now assume C89 or
22435         better.
22436
22437 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
22438
22439         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
22440         "who -r" failed to give output.  Problem reported by Tim Waugh.
22441
22442         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
22443         (xcalloc): Use it to avoid needless tests.
22444         Problem reported by Jim Meyering.
22445
22446 2005-06-20  Derek Price  <derek@ximbiot.com>
22447
22448         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
22449         unnecessary for Autoconfs > 2.59c.
22450
22451 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22452
22453         * lib/argp.h (__option_is_short): Check upper limit of
22454         __key. Isprint() requires its argument to have the value
22455         of an unsigned char or EOF.
22456
22457 2005-06-16  Jim Meyering  <jim@meyering.net>
22458
22459         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
22460         when either N or S is zero.
22461
22462 2005-06-16  Derek Price  <derek@ximbiot.com>
22463
22464         * m4/bison.m4: Declare YACC & YFLAGS precious.
22465
22466 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
22467
22468         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
22469         multibyte string or pattern, fall back on unibyte matching.
22470         Problem reported by James Youngman.
22471
22472 2005-06-08  Bruno Haible  <bruno@clisp.org>
22473
22474         * modules/csharpcomp: New file.
22475         * MODULES.html.sh (C#): Add csharpcomp.
22476
22477 2005-06-08  Bruno Haible  <bruno@clisp.org>
22478
22479         * m4/csharpcomp.m4: New file, from GNU gettext.
22480
22481 2005-06-08  Bruno Haible  <bruno@clisp.org>
22482
22483         * lib/csharpcomp.h: New file, from GNU gettext.
22484         * lib/csharpcomp.c: New file, from GNU gettext.
22485         * lib/csharpcomp.sh.in: New file, from GNU gettext.
22486
22487 2005-06-08  Bruno Haible  <bruno@clisp.org>
22488
22489         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
22490         warning on mingw.
22491
22492 2005-06-07  Derek Price  <derek@ximbiot.com>
22493
22494         Sync from CVS.
22495         * lib/glob_.h: Indent nested #ifdef.
22496
22497 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22498
22499         Sync from coreutils.
22500         Use "file name" when talking about file names, instead of "filename"
22501         or "path", as per the GNU coding standards.
22502         * lib/mkdir-p.c: Renamed from makepath.c.
22503         (make_dir_parents): Renamed from make_path.  All callers changed.
22504         * lib/mkdir-p.h: Likewise.  All includers changed.
22505         * lib/filenamecat.c: Renamed from path-concat.c.
22506         (file_name_concat): Renamed from path_concat.  All callers changed.
22507         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
22508         * lib/filenamecat.h: Likewise.  All includers changed.
22509         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
22510         in comments or local variable names.
22511         * lib/basename.c: Likewise.
22512         * lib/canonicalize.c, canonicalize.h: Likewise.
22513         * lib/dirname.c, dirname.h: Likewise.
22514         * lib/euidaccess.c: Likewise.
22515         * lib/exclude.c: Likewise
22516         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
22517         * lib/fsusage.c, fsuage.h: Likewise.
22518         * lib/fts.c, fts_.h: Likewise.
22519         * lib/getcwd.c: Likewise.
22520         * lib/getloadavg.c: Likewise.
22521         * lib/mkstemp.c: Likewise.
22522         * lib/mountlist.c, mountlist.h: Likewise.
22523         * lib/openat.c, openat.h: Likewise.
22524         * lib/readlink-stub.c: Likewise.
22525         * lib/readutmp.c, readutmp.h: Likewise.
22526         * lib/rename.c: Likewise.
22527         * lib/rmdir.c: Likewise.
22528         * lib/same.c: Likewise.
22529         * lib/savedir.c: Likewise.
22530         * lib/stripslash.c: Likewise.
22531         * lib/tempname.c: Likewise.
22532         * lib/xreadlink.c: Likewise.
22533         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
22534         All uses changed.
22535         * lib/exclude.h: Likewise.
22536
22537         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
22538         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
22539         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
22540         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
22541         * lib/pathmax.h: Include <limits.h> unconditionally, since other
22542         files have been getting away with it for years (MORE/BSD 4.3
22543         is extinct now).
22544         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
22545         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
22546
22547         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
22548         Define to 256, not 255, as per modern POSIX.
22549
22550 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22551
22552         Sync from coreutils.
22553         Use "file name" when talking about file names, instead of "filename"
22554         or "path", as per the GNU coding standards.
22555         * MODULES.html.sh: mkdir-p renamed from makepath.
22556         filenamecat renamed from path-concat.
22557         * modules/filenamecat: Renamed from modules/path-concat.
22558         (Files): filenamecat.h and filenamecat.c renamed from
22559         path-concat.h and path-concat.c.
22560         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
22561         (Include): filenamecat.h, not path-concat.h.
22562         * modules/mkdir-p: Renamed from modules/makepath.
22563         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
22564         makepath.c.
22565         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
22566         (Include): mkdir-p.h, not makepath.h.
22567
22568 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22569
22570         Sync from coreutils.
22571         * m4/mkdir-p.m4: Renamed from makepath.m4.
22572         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
22573         Rename files from makepath.c to mkdir-p.c, and from
22574         makepath.h to mkdir-p.h.
22575         * m4/filenamecat.m4: Renamed from path-concat.m4.
22576         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
22577         Rename files from path-concat.c to filenamecat.c,
22578         and from path-concat.h to filenamecat.h.
22579         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
22580         "file name" in local variables or comments.
22581         * m4/rename.m4: Likewise.
22582
22583 2005-06-01  Bruno Haible  <bruno@clisp.org>
22584
22585         * modules/csharpexec: New file.
22586         * MODULES.html.sh (C#): New section.
22587
22588 2005-06-01  Bruno Haible  <bruno@clisp.org>
22589
22590         * m4/csharp.m4: New file, from GNU gettext.
22591         * m4/csharpexec.m4: New file, from GNU gettext.
22592
22593 2005-06-01  Bruno Haible  <bruno@clisp.org>
22594
22595         * lib/csharpexec.h: New file, from GNU gettext.
22596         * lib/csharpexec.c: New file, from GNU gettext.
22597         * lib/csharpexec.sh.in: New file, from GNU gettext.
22598
22599 2005-05-31  Derek Price  <derek@ximbiot.com>
22600             Paul Eggert  <eggert@cs.ucla.edu>
22601
22602         Sync from cvs.
22603         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
22604
22605 2005-05-31  Derek Price  <derek@ximbiot.com>
22606             Paul Eggert  <eggert@cs.ucla.edu>
22607
22608         Sync from cvs.
22609         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
22610
22611 2005-05-29  Derek Price  <derek@ximbiot.com>
22612
22613         * config/srclist.txt (glob_.h, glob.c): Add these files.
22614
22615 2005-05-29  Derek Price  <derek@ximbiot.com>
22616
22617         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
22618         * modules/glob: New file.
22619         * modules/getlogin_r: Add link to POSIX spec in description.
22620
22621 2005-05-29  Derek Price  <derek@ximbiot.com>
22622             Paul Eggert  <eggert@cs.ucla.edu>
22623
22624         * m4/glob.m4: New file.
22625
22626 2005-05-29  Derek Price  <derek@ximbiot.com>
22627             Paul Eggert  <eggert@cs.ucla.edu>
22628
22629         * lib/glob_.h, lib/glob.c: New files.
22630
22631 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22632
22633         * modules/fts (Files): Remove m4/inttypes-pri.m4.
22634         * modules/fts-lgpl (Depends-on): Remove gettext.
22635
22636 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22637
22638         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
22639         and don't require gt_INTTYPES_PRI.
22640
22641 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22642
22643         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
22644
22645         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
22646         the configuration hassle isn't worth it.
22647         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
22648         (LONGEST_MODIFIER, PRIuMAX): Remove.
22649
22650 2005-05-27  Bruno Haible  <bruno@clisp.org>
22651
22652         * lib/getlogin_r.h: Remove second include of <stddef.h>.
22653
22654 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
22655
22656         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
22657         _POSIX_PTHREAD_SEMANTICS for Solaris.
22658
22659 2005-05-25  Derek Price  <derek@ximbiot.com>
22660
22661         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
22662
22663 2005-05-25  Derek Price  <derek@ximbiot.com>
22664             Paul Eggert  <eggert@cs.ucla.edu>
22665
22666         * modules/getlogin_r, m4/getlogin_r.m4: New files.
22667         * lib/getlogin_r.c, getlogin_r.h: New files.
22668
22669 2005-05-25  Bruno Haible  <bruno@clisp.org>
22670             Derek Price  <derek@ximbiot.com>
22671
22672         * lib/getlogin_r.h: Simplify API documentation.
22673
22674 2005-05-23  Derek Price  <derek@ximbiot.com>
22675
22676         * modules/minmax (Files): Add m4/minmax.m4.
22677         (configure.ac): Add gl_MINMAX.
22678
22679 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
22680
22681         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
22682         so that unistd-safer.h (GPL'ed code) need not be included.
22683
22684 2005-05-22  Bruno Haible  <bruno@clisp.org>
22685
22686         * m4/minmax.m4: New file.
22687         Based on a patch by Derek Price <derek@ximbiot.com>.
22688
22689 2005-05-22  Bruno Haible  <bruno@clisp.org>
22690
22691         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
22692         (INT64_MIN): Fix definition.
22693         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
22694
22695         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
22696         NEED_SIGNED_INT_TYPES.
22697
22698         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
22699         HAVE_SYSTEM_INTTYPES.
22700
22701 2005-05-22  Bruno Haible  <bruno@clisp.org>
22702
22703         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
22704         Also include <sys/param.h> if it defines MIN, MAX.
22705         Based on a patch by Derek Price <derek@ximbiot.com>.
22706
22707 2005-05-21  Jim Meyering  <jim@meyering.net>
22708
22709         * modules/fts (Files): Add m4/inttypes-pri.m4.
22710         (Depends-on): Add lstat and remove gettext.  Alphabetize.
22711
22712 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22713
22714         New fts module.
22715         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
22716         (setup_dir, free_dir): New functions.
22717         (enter_dir, leave_dir): Define trivial
22718         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
22719         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
22720         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
22721         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
22722         Move to fts-cycle.c.
22723         (fts_open): Use setup_dir.
22724         (fts_close): Use free_dir.
22725         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
22726         This adds a label and some gotos, but the alternatives were messier.
22727         Check for memory allocation failure when entering a dir.
22728         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
22729         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
22730         (FTS): New member fts_cycle, that is a union that contains the
22731         old active_dir_ht and cycle_state.  All uses changed to mention
22732         fts_cycle.ht and fts_cycle.state.
22733         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
22734         fts.c, with the following changes:
22735         (setup_dir, free_dir): New functions.
22736         (enter_dir): Now returns bool.  Return true if successful, false
22737         if memory exhausted.  All callers changed.
22738         Do not bother partly cleaning up on
22739         memory allocation failure; that is free_dir's job.
22740         However, free ad if hash_insert fails, to avoid memory leak.
22741         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
22742         fts->fts_options to see which union member to use.
22743
22744 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22745
22746         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
22747         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
22748
22749 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22750
22751         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
22752
22753 2005-05-20  Jim Meyering  <jim@meyering.net>
22754
22755         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
22756         Now a macro, to pacify GCC.
22757
22758 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
22759
22760         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
22761         of -1.
22762
22763 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
22764
22765         * lib/chown.c (rpl_chown): Return -1 on failure.
22766
22767 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
22768
22769         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
22770         Don't check for stddef.h.
22771         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
22772         don't use its results.
22773         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
22774         since we include them unconditionally.  Don't require
22775         AM_STDBOOL_H, since stdbool is a prerequisite.
22776         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
22777         since we assume C89 or better.
22778         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
22779         as we don't use their results.
22780         Don't check for fchdir, memmove, memset, strrchr, as we use
22781         them unconditionally.
22782         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
22783         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
22784
22785 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
22786
22787         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
22788         Include <stddef.h> unconditionally, since we assume C89 now.
22789         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
22790         * lib/fts.c: Include fts_.h first, to check interface.
22791         Do not include intprops.h; no longer needed.
22792         Include cycle-check.h and hash.h, since fts_.h no longer does.
22793         Remove unnecessary casts of closedir to void.
22794         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
22795         decide whether to decrement nlinks.
22796         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
22797         (FTS): Use struct hash_table * instead of Hash_table, so that
22798         we no longer need to include hash.h here.
22799
22800 2005-05-18  Jim Meyering  <jim@meyering.net>
22801
22802         * modules/dirfd (License): Change to LGPL.  Most of the code
22803         is already in the public domain.
22804
22805 2005-05-18  Jim Meyering  <jim@meyering.net>
22806
22807         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
22808         Reported by Yoann Vandoorselaere.
22809
22810 2005-05-17  Jim Meyering  <jim@meyering.net>
22811
22812         * m4/fts.m4: New file, from coreutils.
22813
22814 2005-05-17  Jim Meyering  <jim@meyering.net>
22815
22816         * lib/fts.c, lib/fts_.h: New files, from coreutils.
22817
22818 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22819
22820         Sync from coreutils.
22821         * m4/unlinkdir.m4: New file.
22822
22823 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22824
22825         Sync from coreutils.
22826         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
22827         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
22828         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
22829         White space changes only.
22830         * lib/makepath.c (make_path): Port to hosts where leading "//" is
22831         special.
22832         * lib/yesno.c: Include getline.h, not ctype.h.
22833         (yesno): Don't remove leading white space; POSIX doesn't allow it.
22834         Use getline to remove arbitrary restriction on response length.
22835
22836 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22837
22838         * config/srclist-update: Spell out "Street" in FSF postal
22839         mail address; this is the style the FSF seems to prefer.
22840
22841         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
22842         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
22843         this updates FSF postal mail address.
22844
22845         Sync from coreutils.
22846         * modules/unlinkdir: New file.
22847         * modules/yesno (Depends-on): Add getline.
22848         * MODULES.html.sh (File system functions): Add unlinkdir.
22849
22850 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
22851
22852         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
22853         lib/strsep.h:
22854         Change the initial comment to refer to GPL, not LGPL.
22855         gnulib-tool will change it to LGPL as needed.
22856
22857         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
22858         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
22859         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
22860         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
22861         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
22862         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
22863         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
22864         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
22865         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
22866         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
22867         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
22868         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
22869         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
22870         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
22871         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
22872         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
22873         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
22874         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
22875         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
22876         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
22877         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
22878         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
22879         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
22880         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
22881         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
22882         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
22883         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
22884         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
22885         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
22886         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
22887         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
22888         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
22889         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
22890         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
22891         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
22892         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
22893         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
22894         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
22895         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
22896         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
22897         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
22898         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
22899         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
22900         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
22901         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
22902         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
22903         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
22904         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
22905         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
22906         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
22907         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
22908         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
22909         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
22910         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
22911         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
22912         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
22913         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
22914         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
22915         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
22916         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
22917         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
22918         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
22919         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
22920         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
22921         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
22922         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
22923         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
22924         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
22925         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
22926         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
22927         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
22928         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
22929         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
22930         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
22931         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
22932         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
22933         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
22934         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
22935         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
22936         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
22937         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
22938         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
22939         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
22940         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
22941         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
22942         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
22943         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
22944         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
22945         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
22946         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
22947         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
22948         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
22949         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
22950         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
22951         lib/yesno.c, lib/yesno.h:
22952         Update FSF postal mail address.
22953
22954 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
22955
22956         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
22957         tests/test-memmem.c, tests/test-stpncpy.c:
22958         Update FSF postal mail address.
22959
22960 2005-05-13  Bruno Haible  <bruno@clisp.org>
22961
22962         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
22963         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
22964         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
22965         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
22966         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
22967         Add support for 64-bit integers in the MSVC compiler.
22968
22969 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22970
22971         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
22972
22973 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
22974
22975         * gnulib-tool (func_import): Sort and uniquify recommended includes.
22976
22977 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
22978
22979         * doc/getdate.texi (General date syntax): Don't say that date
22980         date --iso-8601=ns generates acceptable dates; it doesn't yet.
22981         Problem reported by Nic Ferrier.
22982
22983 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22984
22985         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
22986         specified in ai_socktype. Fix invalid ai_protocol
22987         check. ai_protocol is usually set to 0 or depending on
22988         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
22989         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
22990         ai_socktype / ai_protocol in the returned addrinfo structure.
22991
22992 2005-05-10  Simon Josefsson  <jas@extundo.com>
22993
22994         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
22995         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22996
22997 2005-05-10  Karl Berry  <karl@gnu.org>
22998
22999         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
23000         (from http://www.gnu.org/licenses).
23001         * doc/COPYING.LIB: also rename to COPYING.LESSER.
23002         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
23003         fdl.texi suffices.
23004
23005 2005-05-10  Karl Berry  <karl@gnu.org>
23006
23007         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
23008         (COPYING.DOC): remove.
23009
23010         * config/srclist-update: new FSF address.
23011
23012 2005-05-10  Derek Price  <derek@ximbiot.com>
23013
23014         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
23015         possible.
23016
23017 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23018             Bruno Haible  <bruno@clisp.org>
23019
23020         * modules/inet_ntop: New file.
23021         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23022         inet_ntop.
23023
23024 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23025             Bruno Haible  <bruno@clisp.org>
23026
23027         * m4/inet_ntop.m4: New file.
23028
23029 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23030             Bruno Haible  <bruno@clisp.org>
23031
23032         * lib/inet_ntop.h: New file.
23033         * lib/inet_ntop.c: New file, from glibc with modifications.
23034
23035 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
23036
23037         * modules/time_r (License): Change to LGPL.
23038         * modules/extensions (License): Change to LGPL.  Actually,
23039         the license is more permissive than that, but currently gnulib-tool
23040         doesn't know how to handle more-permissive licenses.
23041
23042         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
23043         Problem reported by Dave Love.
23044
23045 2005-05-08  Jim Meyering  <jim@meyering.net>
23046
23047         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
23048         blank.
23049
23050 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
23051
23052         * modules/argmatch (Depends-on): Add stdbool.
23053         * modules/backupfile (Depends-on): Likewise.
23054         * modules/chdir-long (Depends-on): Likewise.
23055         * modules/closeout (Depends-on): Likewise.
23056         * modules/cycle-check (Depends-on): Likewise.
23057         * modules/dirname (Depends-on): Likewise.
23058         * modules/fnmatch (Depends-on): Likewise.
23059         * modules/fsusage (Depends-on): Likewise.
23060         * modules/fwriteerror (Depends-on): Likewise.
23061         * modules/getcwd (Depends-on): Likewise.
23062         * modules/getloadavg (Depends-on): Likewise.
23063         * modules/hard-locale (Depends-on): Likewise.
23064         * modules/makepath (Depends-on): Likewise.
23065         * modules/mountlist (Depends-on): Likewise.
23066         * modules/nanosleep (Depends-on): Likewise.
23067         * modules/posixtm (Depends-on): Likewise.
23068         * modules/quotearg (Depends-on): Likewise.
23069         * modules/readtokens (Depends-on): Likewise.
23070         * modules/readtokens0 (Depends-on): Likewise.
23071         * modules/readutmp (Depends-on): Likewise.
23072         * modules/save-cwd (Depends-on): Likewise.
23073         * modules/strftime (Depends-on): Likewise.
23074         * modules/userspec (Depends-on): Likewise.
23075         * modules/utimecmp (Depends-on): Likewise.
23076         * modules/xgetcwd (Depends-on): Likewise.
23077         * modules/xnanosleep (Depends-on): Likewise.
23078         * modules/xstrtod (Depends-on): Likewise.
23079         * modules/yesno (Depends-on): Likewise.
23080
23081 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
23082
23083         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
23084         needless checks.
23085
23086 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
23087
23088         Merge from coreutils.  Among other things,
23089         add bulletproofing for cases where stdin, stdout, or stderr are closed.
23090         * lib/fd-safer.c: New file.
23091         * lib/fcntl-safer.h, open-safer.c: Remove.
23092         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
23093         * lib/dup-safer.c: Include unistd-safer.h first.
23094         Don't include errno.h.
23095         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
23096         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
23097         * lib/file-type.c: Rely on file-type.h change.
23098         * lib/getloadavg.c: Include unistd-safer.h.
23099         (getloadavg): Use safer open.
23100         * lib/getusershell.c: Include "stdio-safer.h".
23101         (getusershell): Use safer fopen.
23102         * lib/long-options.c (long_options): Use NULL rather than 0.
23103         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
23104         'free'.
23105         * lib/modechange.c: Likewise.
23106         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
23107         (MODE_DONE): New constant.
23108         (struct mode_change): Remove 'next' member.
23109         (make_node_op_equals): New function; like the old one of the
23110         same name, except it allocates an array.
23111         (mode_compile, mode_create_from_ref): Use it.
23112         (mode_compile): Allocate result as an array, not a linked list.
23113         Parse octal string ourself, so that we catch mistakes like "+0".
23114         (mode_adjust): Arg is an array, not a linked list.
23115         * lib/modechange.c: Include stat-macros.h, xalloc.h.
23116         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
23117         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
23118         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
23119         Remove.  This is now stat-macros.h's job.
23120         (talloc): Remove.  All callers replaced by xalloc, so that
23121         our invokers don't have to worry about reporting memory failures.
23122         (make_node_op_equals): Remove.
23123         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
23124         New constants.
23125         (struct mode_change): Moved here from modechange.h.
23126         (mode_append_entry): Remove.
23127         (mode_compile): Remove MASKED_OPS arg, since it encouraged
23128         apps to have incorrect behavior.  Use simpler algorithm for head
23129         and tail.  Don't futz with umask; that's now the job of mode_adjust.
23130         Detect more invalid usages rather than having somewhat-random behavior.
23131         Don't insert an "a=" action, as that leads to incorrect behavior.
23132         (mode_compile, mode_create_from_ref): Return NULL on error instead
23133         of an enum, since now there's only one way to have an error.  All
23134         callers changed.
23135         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
23136         at the correct time.  Simplify calculation of "+u" and its ilk.
23137         Don't mishandle "+X".
23138         (mode_free): Remove "register" and localize decls.
23139         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
23140         (struct mode_change): Move to modechange.c; callers don't
23141         need to see this stuff.
23142         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
23143         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
23144         (mode_change, mode_adjust): Reflect the new signatures noted above.
23145         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
23146         that might redefine system include files.
23147         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
23148         (my_usleep): Use NULL rather than (void *) 0.
23149         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
23150         Use siginterrupt to specify that system calls should be interrupted.
23151         (rpl_nanosleep): Move initialization of suspended closer to call of
23152         my_usleep.
23153         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
23154         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
23155         (desirable_utmp_entry): New function.
23156         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
23157         using x2nrealloc, to simplify logic.
23158         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
23159         size calculation.  Do not assume utmp file is a regular file.
23160         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
23161         (READ_UTMP_CHECK_PIDS): New constant.
23162         * lib/save-cwd.c: Include unistd-safer.h.
23163         (save_cwd): Use fd_safer.
23164         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
23165         [!_LIBC] Include "stat-macros.h" instead.
23166         * lib/unistd-safer.h (fd_safer): New decl.
23167
23168 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
23169
23170         * modules/getloadavg (Depends-on): Add unistd-safer.
23171         * modules/getusershell (Depends-on): Add stdio-safer.
23172         * modules/lstat (Depends-on): Remove xalloc.
23173         * modules/mkstemp (Depends-on): Add stat-macros.
23174         * modules/modechange (Depends-on): Remove xstrtol.
23175         Add stat-macros, xalloc.
23176         * modules/save-cwd (Depends-on): Add unistd-safer.
23177         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
23178         * modules/unistd-safer (Files): Add lib/fd-safer.c
23179         (Makefile.am): Remove lib_SOURCES.
23180
23181         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
23182         Remove fcntl-safer; unistd-safer supersedes it.
23183
23184 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
23185
23186         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
23187         AC_HEADER_STAT.
23188         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
23189         (gl_PREREQ_CHOWN): Remove.
23190         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
23191         it.  Don't require AC_HEADER_STAT.
23192         (gl_PREREQ_LSTAT): Remove.
23193         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
23194         Don't require AC_HEADER_STAT.
23195         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
23196         (gl_PREREQ_RMDIR): Remove.
23197         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
23198         mention stat-macros.h or AC_HEADER_STAT, since we'll make
23199         the stat-macros module a prerequisite.
23200         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
23201         * m4/filemode.m4 (gl_FILEMODE): Likewise.
23202         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
23203         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
23204         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
23205         variable names.
23206         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
23207         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
23208         variable prefixes.
23209         * m4/fcntl-safer.m4: Remove.
23210         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
23211         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
23212         Invoke gl_PREREQ_FD_SAFER.
23213         (gl_PREREQ_FD_SAFER): New macro.
23214         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
23215         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
23216         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
23217         Remove duplicate call to AC_LIBOBJ(readutmp).
23218         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
23219
23220         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
23221         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
23222
23223 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
23224
23225         * MODULES.html.sh (Misc): Add byteswap.
23226
23227 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
23228
23229         * modules/getcwd (Depends-on): Add extensions.
23230         * modules/openat (Depends-on): Likewise.
23231
23232 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
23233
23234         * modules/byteswap: New file.
23235
23236 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
23237
23238         * m4/byteswap.m4: New file.
23239
23240 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
23241
23242         * lib/byteswap_.h: New file.
23243
23244 2005-04-25  Karl Berry  <karl@gnu.org>
23245
23246         * m4/gettext.m4: Update from GNU gettext 0.14.4.
23247
23248 2005-04-25  Albert Chin  <china@thewrittenword.com>
23249
23250         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
23251         Toolkit C bug.
23252
23253 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
23254
23255         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
23256         (func_ln_if_changed) Remove forcibly for no error message
23257         in case file does not exist.
23258
23259 2005-04-19  Simon Josefsson  <jas@extundo.com>
23260
23261         * gnulib-tool (Options): Make --symlink mean --symbolic.
23262
23263 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
23264
23265         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
23266
23267 2005-04-16  Simon Josefsson  <jas@extundo.com>
23268
23269         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
23270
23271 2005-04-15  Simon Josefsson  <jas@extundo.com>
23272
23273         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
23274
23275 2005-04-15  Simon Josefsson  <jas@extundo.com>
23276
23277         * gnulib-tool: Rename --symlink to --symbolic.
23278
23279 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
23280
23281         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
23282         symbolic links to files instead of copying/moving.  Add --aux-dir,
23283         specifying directory relative --dir where auxiliary build tools
23284         are placed.
23285
23286 2005-04-14  Bruno Haible  <bruno@clisp.org>
23287
23288         * modules/allocsa (License): Change to LGPL.
23289         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
23290
23291 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
23292
23293         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
23294         that "UTC +1 second" continues to work.  Problem reported
23295         by Dmitry V. Levin.
23296         (relunit_snumber): New rule.
23297         (relunit): Use it.
23298
23299 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
23300
23301         * lib/getdate.y (universal_time_zone_table): New constant.
23302         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
23303         universal_time_zone_table.
23304         (lookup_zone): Prefer universal_time_zone_table to
23305         local_time_zone_table, so that "GMT" time stamps are allowed in
23306         London during the summer.  Problem reported by Ian Abbott.
23307
23308 2005-04-12  Jim Meyering  <jim@meyering.net>
23309
23310         * lib/human.c (humblock): Set *options even when returning due to
23311         xstrtoumax conversion failure.  Thanks to a used-uninitialized
23312         warning from gcc-4.
23313
23314 2005-04-09  Jim Meyering  <jim@meyering.net>
23315
23316         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
23317         -Wuninitialized: initialize tm0.tm_year.
23318
23319 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
23320
23321         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
23322         count, since there's no maximum.  All uses changed.
23323         Add member dsts_seen.
23324         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
23325         not being INT_MAX.
23326         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
23327         Use pc_rels_seen to decide whther a date is absolute.
23328
23329         * lib/getdate.y (number): Don't overwrite year.
23330         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
23331         check.
23332
23333 2005-04-02  Simon Josefsson  <jas@extundo.com>
23334
23335         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
23336         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
23337
23338 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
23339
23340         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
23341         where no absolute path name can be longer than PATH_MAX.
23342
23343 2005-03-27  Jim Meyering  <jim@meyering.net>
23344
23345         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
23346
23347 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
23348
23349         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
23350         "one's complement" -> "ones' complement" in comment, as per Knuth.
23351         "value of type" -> "type or expression" in comment.
23352         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
23353
23354 2005-03-26  Jim Meyering  <jim@meyering.net>
23355
23356         Comment nits.
23357         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
23358         Correct typos: s/or/of/.
23359
23360 2005-03-26  Jim Meyering  <jim@meyering.net>
23361
23362         * modules/check-include-files: Move to ../ and rename to...
23363         * check-module: ...this.
23364
23365 2005-03-25  Jim Meyering  <jim@meyering.net>
23366
23367         * modules/xvasprintf (Files): Add xalloc.h.
23368
23369 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
23370
23371         * modules/gettext (Files): config/config.rpath ->
23372         build-aux/config.rpath
23373         * modules/iconv (Files): Likewise.
23374         Problem reported by Oskar Liljeblad.
23375
23376 2005-03-23  Jim Meyering  <jim@meyering.net>
23377
23378         * modules/check-include-files: New script to check for
23379         missing dependencies, multiple includes, etc.
23380
23381         * modules/c-strtold (Depends-on): Add xalloc.
23382         * modules/c-strtod (Depends-on): Add xalloc.
23383         * modules/hash (Depends-on): Add xalloc.
23384         (Files): Remove lib/xalloc.h.
23385
23386         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
23387         * modules/userspec (Files): Add lib/inttostr.h.
23388
23389 2005-03-23  Jim Meyering  <jim@meyering.net>
23390
23391         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
23392
23393 2005-03-22  Jim Meyering  <jim@meyering.net>
23394
23395         * modules/stat-macros: New module.
23396         * modules/canonicalize, modules/euidaccess, modules/file-type,
23397         * modules/filemode, modules/lchown, modules/makepath,
23398         * modules/rmdir, modules/stat: Depend on new stat-macros module
23399         rather than listing lib/stat-macros.h manually.
23400         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
23401
23402 2005-03-22  Jim Meyering  <jim@meyering.net>
23403
23404         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
23405
23406 2005-03-22  Bruno Haible  <bruno@clisp.org>
23407
23408         * config/srclist.txt: Replace target directory 'config' with
23409         'build-aux'.
23410         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
23411         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
23412         ../build-aux/.
23413
23414 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
23415
23416         * modules/chdir-long (Depends-on): Add mempcpy.
23417
23418         * modules/acl, modules/backupfile, modules/c-strtod,
23419         modules/c-strtold, modules/canon-host, modules/canonicalize,
23420         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
23421         modules/exclude, modules/exitfail, modules/file-type,
23422         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
23423         modules/getdate, modules/getline, modules/getpagesize,
23424         modules/getpass, modules/getugroups, modules/group-member,
23425         modules/hard-locale, modules/hash, modules/human, modules/idcache,
23426         modules/inttostr, modules/long-options, modules/makepath,
23427         modules/md5, modules/memcasecmp, modules/memcoll,
23428         modules/modechange, modules/mountlist, modules/path-concat,
23429         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
23430         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
23431         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
23432         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
23433         modules/strftime, modules/strndup, modules/strverscmp,
23434         modules/timespec, modules/unlocked-io, modules/userspec,
23435         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
23436         modules/yesno:
23437         Remove lib_SOURCES line from Makefile.am section, as this is now
23438         done automatically by the corresponding Autoconf macro.
23439
23440 2005-03-21  Jim Meyering  <jim@meyering.net>
23441
23442         Changes imported from coreutils.
23443
23444         * lib/cycle-check.c: Don't include xalloc.h.
23445
23446         * lib/path-concat.c: Don't include assert.h.
23447         (path_concat): Remove assertion that would have triggered
23448         for ABASE starting with more than one slash.
23449         Reported by Andreas Schwab.
23450
23451         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
23452         properly when ABASE is an absolute file name.
23453         Correct the description of this function.
23454         Include <assert.h>.
23455         Add an assertion and a test driver.
23456         This fixes a bug introduced on 2004-07-02.
23457         Andreas Schwab reported the resulting failure of cp --parents:
23458         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
23459
23460 2005-03-21  Jim Meyering  <jim@meyering.net>
23461
23462         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
23463         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
23464
23465 2005-03-21  Jim Meyering  <jim@meyering.net>
23466         and  Paul Eggert  <eggert@cs.ucla.edu>
23467
23468         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
23469         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
23470         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
23471         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
23472         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
23473         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
23474         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
23475         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
23476         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
23477         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
23478         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
23479         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
23480         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
23481         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
23482         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
23483         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
23484         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
23485         for these modules.
23486
23487 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
23488
23489         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
23490         (which shouldn't happen), generate nothing instead of returning 0
23491         immediately, so that nstrftime (NULL, ...) doesn't return 0.
23492
23493 2005-03-16  Bruno Haible  <bruno@clisp.org>
23494
23495         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
23496         HAVE_LONGLONG_64BIT.
23497
23498 2005-03-16  Bruno Haible  <bruno@clisp.org>
23499
23500         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
23501         HAVE_LONGLONG_64BIT.
23502
23503 2005-03-16  Bruno Haible  <bruno@clisp.org>
23504
23505         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
23506         HAVE_LONGLONG_64BIT.
23507
23508 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
23509
23510         * lib/strftime.c (my_strftime): Prepend space to format so that we can
23511         reliably distinguish strftime failure from empty output on POSIX
23512         hosts.
23513
23514 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
23515
23516         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
23517         (iconv_string): Don't guess a size-zero buffer, as that might cause
23518         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
23519         result would be 'too large', where 'too large' is (heuristically)
23520         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
23521         overflow concerns.  This will prevent some unwanted malloc failures
23522         when the inputs are very large.
23523
23524 2005-03-15  Karl Berry  <karl@gnu.org>
23525
23526         * config/srclist.txt (config.rpath): from gettext.
23527         * config/config.rpath: update.
23528
23529 2005-03-15  Bruno Haible  <bruno@clisp.org>
23530
23531         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
23532         to 'negate'.
23533
23534         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
23535         variable.
23536
23537         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
23538         results.
23539
23540 2005-03-14  Simon Josefsson  <jas@extundo.com>
23541
23542         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
23543         <fx@gnu.org>.
23544
23545 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
23546
23547         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
23548         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
23549         intprops.h.
23550         * lib/strtol.c: Likewise.
23551
23552 2005-03-14  Jim Meyering  <jim@meyering.net>
23553
23554         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
23555         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
23556         to be nonzero so that we (and caller) can detect the difference
23557         between a valid zero-length expansion and an error return, even
23558         when the underlying strftime fails before writing anything into
23559         that location.
23560
23561 2005-03-14  Bruno Haible  <bruno@clisp.org>
23562
23563         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
23564         Update from GNU gettext 0.14.3.
23565
23566 2005-03-10  Jim Meyering  <jim@meyering.net>
23567
23568         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
23569
23570 2005-03-10  Jim Meyering  <jim@meyering.net>
23571
23572         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
23573         so that this module works on systems without fchdir.
23574
23575 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
23576
23577         Factor int-properties macros into a single file, except for
23578         glibc-related files.
23579         * lib/intprops.h: New file.
23580         * lib/getloadavg.c: Include it instead of limits.h.
23581         (INT_STRLEN_BOUND): Remove.
23582         * lib/human.c: Include intprops.h.
23583         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
23584         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
23585         302/1000.
23586         * lib/inttostr.h: Include intprops.h instead of limits.h.
23587         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
23588         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
23589         for consistency with intprops.h.
23590         (time_t_is_integer, twos_complement_arithmetic): Use them.
23591         * lib/sig2str.h: Include <signal.h>, intprops.h.
23592         (INT_STRLEN_BOUND): Remove.
23593         * lib/strftime.c (TYPE_SIGNED): Remove.
23594         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
23595         * lib/strtol.c: Adjust comments to match intprops.h.
23596         * lib/userspec.c: Include intprops.h.
23597         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
23598         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
23599         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
23600         instead of rolling our own expressions.
23601         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
23602
23603         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
23604         instead of int.
23605         (my_strftime): Do not mishandle years close to INT_MAX, by doing
23606         the right thing even if adding 1900 would overflow.  Similarly
23607         for tm_mon + 1 and tm_yday + 1.
23608         Make %Y always equivalent to %C%y, and similarly for %G and %g.
23609         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
23610         (DO_SIGNED_NUMBER): New macro.
23611         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
23612
23613 2005-03-07  Bruno Haible  <bruno@clisp.org>
23614
23615         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
23616
23617 2005-03-07  Bruno Haible  <bruno@clisp.org>
23618
23619         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
23620
23621 2005-03-04  Derek R. Price  <derek@ximbiot.com>
23622
23623         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
23624         (func_import): Only replace files via --import when they have actually
23625         changed.
23626
23627 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23628
23629         * m4/mmap-anon.m4: New file.
23630         * m4/pagealign_alloc.m4: New file.
23631
23632 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23633             Bruno Haible  <bruno@clisp.org>
23634
23635         * modules/pagealign_alloc: New file.
23636         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
23637
23638 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23639             Bruno Haible  <bruno@clisp.org>
23640
23641         * lib/pagealign_alloc.h: New file.
23642         * lib/pagealign_alloc.c: New file.
23643
23644 2005-03-03  Bruno Haible  <bruno@clisp.org>
23645
23646         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
23647         Use an all-permissive copyright notice, recommended by RMS.
23648
23649 2005-03-02  Bruno Haible  <bruno@clisp.org>
23650
23651         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
23652         of AIX, the replacement has to be done only after <string.h> is
23653         included, therefore not in config.h. stpncpy.h does the replacement,
23654         and stpncpy.c uses it.
23655
23656 2005-03-02  Bruno Haible  <bruno@clisp.org>
23657
23658         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
23659         stpncpy.c uses it.
23660
23661 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23662
23663         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
23664         The workaround isn't strictly needed for POSIX conformance, and
23665         it's too much of a pain to configure and maintain.  We'll ask
23666         people to fix their kernels instead.
23667         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
23668         (NANOSLEEP_BUG_WORKAROUND): Remove.
23669         (xnanosleep): Remove the workaround.
23670
23671 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23672
23673         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
23674         Reported by Derek Price.
23675         (Include): Add "timespec.h".
23676
23677         * modules/xnanosleep (Depends-on): Remove gethrxtime.
23678
23679 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23680
23681         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
23682         to detect nanosleep bug.
23683
23684 2005-03-01  Bruno Haible  <bruno@clisp.org>
23685
23686         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
23687
23688 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
23689
23690         * modules/gethrxtime: New file.
23691         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
23692         (Depends-on): Add gethrxtime.
23693         (configure.ac): Add gl_XNANOSLEEP.
23694         (Makefile.am): Remove lib_SOURCES line.
23695
23696 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
23697
23698         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
23699         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
23700
23701 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
23702
23703         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
23704         * lib/timespec.h (gettime): Return void, since it always
23705         succeeds now.  All uses changed.
23706         * lib/gettime.c (gettime) Likewise.
23707         [HAVE_NANOTIME]: Prefer nanotime.
23708         Assume gettimeofday succeeds, as POSIX requires.
23709         Assime time () succeeds, since other code already does.
23710         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
23711         (timespec_subtract): Remove.
23712         (NANOSLEEP_BUG_WORKAROUND): New constant.
23713         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
23714         things considerably.  Use it only on GNU/Linux hosts, since the
23715         workaround shouldn't be needed elsewhere.
23716
23717 2005-02-24  Bruno Haible  <bruno@clisp.org>
23718
23719         * modules/gettext (Files): Add m4/glibc2.m4.
23720
23721 2005-02-24  Bruno Haible  <bruno@clisp.org>
23722
23723         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
23724         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
23725         * m4/progtest.m4:
23726         Update from GNU gettext 0.14.2.
23727         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
23728
23729 2005-02-24  Bruno Haible  <bruno@clisp.org>
23730
23731         * lib/localcharset.c: Update from GNU gettext 0.14.2.
23732         * lib/config.charset: Update from GNU gettext 0.14.2.
23733
23734 2005-02-24  Bruno Haible  <bruno@clisp.org>
23735
23736         * lib/gettext.h: Update from GNU gettext 0.14.2.
23737
23738 2005-02-23  Simon Josefsson  <jas@extundo.com>
23739
23740         * m4/iconvme.m4: New file.
23741
23742 2005-02-23  Jim Meyering  <jim@meyering.net>
23743
23744         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
23745         change.
23746         Thanks to Bruno Haible for catching it.
23747
23748 2005-02-22  Simon Josefsson  <jas@extundo.com>
23749
23750         * modules/iconvme: New file.
23751
23752         * MODULES.html.sh: Add iconvme.
23753
23754 2005-02-22  Simon Josefsson  <jas@extundo.com>
23755
23756         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
23757
23758 2005-02-22  Simon Josefsson  <jas@extundo.com>
23759
23760         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
23761
23762 2005-02-22  Jim Meyering  <jim@meyering.net>
23763
23764         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
23765         s/ifndef/ifdef/.
23766
23767 2005-02-20  Neil Conway  <neilc@samurai.com>
23768
23769         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
23770         returned by OSX/Darwin if the specified buffer is not large
23771         enough for the hostname.
23772
23773 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23774
23775         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
23776         pass it to _help, otherwise the latter coredumps trying to
23777         dereference state.root_argp.
23778
23779 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23780
23781         * modules/chdir-long (Depends-on): Add memrchr.
23782         * modules/memrchr (Files): Add lib/memrchr.h.
23783         (Include): "memrchr.h".
23784
23785 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23786
23787         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
23788
23789 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23790
23791         * lib/memrchr.h: New file.
23792         * lib/chdir-long.c: Include it.
23793         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
23794         Don't bother including stddef.h.
23795
23796 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
23797
23798         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
23799         inclusion.
23800         Include <sys/types.h>, for dev_t.
23801         (ME_DUMMY, ME_REMOTE): Move from here....
23802         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
23803         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
23804         Dmitry V. Levin.
23805         Include mountlist.h first, to test the interface.
23806
23807 2005-01-29  Bruno Haible  <bruno@clisp.org>
23808
23809         * lib/progname.c (program_name): Initialize.
23810         Needed when linking statically on MacOS X.
23811
23812 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23813
23814         Sync from coreutils.
23815         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
23816         (Depends-on): Add c-strtod.
23817         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
23818
23819 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23820
23821         Sync from coreutils.
23822         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
23823
23824         Remove files that are specific to coreutils.
23825         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
23826
23827 2005-01-28  Bruno Haible  <bruno@clisp.org>
23828
23829         * modules/javacomp: New file.
23830         * MODULES.html.sh (Java): Add javacomp.
23831
23832 2005-01-28  Bruno Haible  <bruno@clisp.org>
23833
23834         * m4/javacomp.m4: New file, from GNU gettext.
23835
23836 2005-01-28  Bruno Haible  <bruno@clisp.org>
23837
23838         * lib/javacomp.sh.in: New file, from GNU gettext.
23839         * lib/javacomp.h: New file, from GNU gettext.
23840         * lib/javacomp.c: New file, from GNU gettext.
23841
23842 2005-01-26  Simon Josefsson  <jas@extundo.com>
23843
23844         * lib/gai_strerror.c: Use GPL in header.
23845
23846 2005-01-26  Bruno Haible  <bruno@clisp.org>
23847
23848         * modules/javaexec: New file.
23849         * MODULES.html.sh (Java): Add javaexec.
23850
23851 2005-01-26  Bruno Haible  <bruno@clisp.org>
23852
23853         * m4/javaexec.m4: New file, from GNU gettext.
23854
23855 2005-01-26  Bruno Haible  <bruno@clisp.org>
23856
23857         * lib/javaexec.sh.in: New file, from GNU gettext.
23858         * lib/javaexec.h: New file, from GNU gettext.
23859         * lib/javaexec.c: New file, from GNU gettext.
23860
23861 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23862
23863         * modules/lchown (Depends-on): Remove lchown.h
23864
23865 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23866
23867         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
23868         must be defined if the header file was not found, in order
23869         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
23870
23871 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23872
23873         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
23874         initializers for struct pentry_state.
23875         (__argp_error): Check return value of __asprintf
23876         (__argp_failure): Translate error message
23877
23878         * lib/argp-parse.c: Removed braces around the expansion of N_()
23879
23880 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23881
23882         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
23883         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
23884         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
23885         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
23886         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
23887         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
23888         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
23889         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
23890         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
23891         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
23892         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
23893         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
23894         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
23895         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
23896         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
23897         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
23898         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
23899         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
23900         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
23901         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
23902         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
23903         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
23904         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
23905         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
23906         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
23907         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
23908         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
23909         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
23910         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
23911         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
23912         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
23913         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
23914         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
23915         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
23916         xstrtol.m4, xstrtoumax.m4, yesno.m4:
23917         Use an all-permissive copyright notice, recommended by RMS.
23918
23919 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
23920
23921         * modules/chdir-long (Depends-on): Remove mempcpy.
23922
23923 2005-01-21  Jim Meyering  <jim@meyering.net>
23924
23925         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
23926         same value as for Solaris 9.
23927
23928         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
23929         component length.  This included changing the parameter to be
23930         of type `char *' rather than `char const *'.
23931         * lib/chdir-long.h (chdir_long): Update prototype.
23932
23933         * lib/openat.c (fdopendir, fstatat): New functions.
23934         * lib/openat.h: Include headers required for use of DIR and struct
23935         stat.
23936         [AT_SYMLINK_NOFOLLOW]: Define.
23937         (fdopendir, fstatat): Add prototypes.
23938
23939 2005-01-21  Bruno Haible  <bruno@clisp.org>
23940
23941         * modules/classpath: New file.
23942         * MODULES.html.sh (Java): Add classpath.
23943
23944 2005-01-21  Bruno Haible  <bruno@clisp.org>
23945
23946         * lib/classpath.h: New file, from GNU gettext.
23947         * lib/classpath.c: New file, from GNU gettext.
23948
23949 2005-01-20  Simon Josefsson  <jas@extundo.com>
23950
23951         * modules/version-etc-fsf: New file.
23952
23953 2005-01-20  Simon Josefsson  <jas@extundo.com>
23954
23955         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
23956         * lib/version-etc.c: Remove version_etc_copyright.
23957         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
23958         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
23959
23960 2005-01-20  Simon Josefsson  <jas@extundo.com>
23961
23962         * lib/base64.h (isbase64): Add.
23963
23964         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
23965         using a unsigned prototype, don't inline.
23966         (base64_decode): Use it.
23967
23968 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23969
23970         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
23971         it.
23972
23973 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23974
23975         * lib/save-cwd.c (save_cwd): Remove code to support the case
23976         where fchdir is missing or flaky.
23977
23978 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23979
23980         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
23981
23982 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
23983
23984         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
23985         AC_LIBSOURCES now does this.
23986         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
23987         with new ullong_max module.
23988
23989 2005-01-19  Bruno Haible  <bruno@clisp.org>
23990
23991         * modules/sh-quote: New file.
23992         * MODULES.html.sh (Executing programs): Add sh-quote.
23993
23994 2005-01-19  Bruno Haible  <bruno@clisp.org>
23995
23996         * lib/sh-quote.h: New file, from GNU gettext.
23997         * lib/sh-quote.c: New file, from GNU gettext.
23998
23999 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
24000
24001         Merge from coreutils.
24002         * m4/ullong_max.m4: New file.
24003         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
24004         (gl_MACROS): Assume localeconv exists.
24005
24006 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
24007
24008         Merge changes from coreutils, as described below in several
24009         changelogs dated today.
24010
24011         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
24012         (O_DIRECTORY): Remove; not needed here, since "." must be
24013         a directory.  All uses removed.
24014         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
24015         universal on Suns, and we also need to test for IRIX.
24016         Revamp code to use 'if' rather than '#if'.
24017         Avoid unnecessary comparison of cwd->desc to 0.
24018
24019         * lib/utimens.c (futimens): Robustify the previous patch, by checking
24020         for known valid error numbers rather than observed invalid ones.
24021
24022 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
24023
24024         * modules/ullong_max: New file.
24025
24026         * modules/chdir-long, modules/openat: New files.
24027         * modules/save-cwd (Depends-on): Depend on chdir-long.
24028         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
24029
24030 2005-01-18  Jim Meyering  <jim@meyering.net>
24031
24032         Merge from coreutils.
24033         * m4/chdir-long.m4, m4/openat.m4: New files.
24034         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
24035         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
24036         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
24037         is sane and DOES follow symlinks.  Besides, testing 20 different
24038         systems found no broken chown implementations.
24039         Prompted by a change in rsync's copy of this macro.
24040         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
24041
24042         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
24043
24044         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
24045         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
24046         NULL-means-set-to-current-time semantics.
24047         Remove temporary file immediately, rather than waiting
24048         for configure's at-exit trap code to do it.
24049
24050 2005-01-18  Jim Meyering  <jim@meyering.net>
24051
24052         * lib/version-etc.c (version_etc_copyright): Update copyright date.
24053
24054         * lib/utimens.c (futimens): Account for the fact that futimes
24055         can also fail with errno == ENOSYS or errno == ENOENT.
24056         Patch from Dmitry V. Levin.
24057
24058         Change the name of the robust chdir function from chdir to chdir_long.
24059         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
24060         (restore_cwd): Use chdir_long, not chdir.
24061         * lib/chdir-long.c: Renamed from chdir.c.
24062         * lib/chdir-long.h: Renamed from chdir.h.
24063         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
24064         Hurd.
24065
24066 2005-01-18  Bruno Haible  <bruno@clisp.org>
24067
24068         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
24069         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
24070         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
24071         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
24072         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
24073         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
24074         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
24075         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
24076         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
24077         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
24078         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
24079         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
24080         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
24081         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
24082         Use an all-permissive copyright notice, recommended by RMS.
24083
24084 2005-01-18  Bob Proulx  <bob@proulx.com>
24085
24086         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
24087         simplify offsetof() macro construct to avoid compile failure with
24088         native HP-UX 11.0 ANSI C compiler.
24089
24090 2005-01-17  Bruno Haible  <bruno@clisp.org>
24091
24092         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
24093         redundant because stpncpy.m4 takes care of it.
24094
24095 2005-01-17  Bruno Haible  <bruno@clisp.org>
24096
24097         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
24098
24099 2005-01-17  Bruno Haible  <bruno@clisp.org>
24100
24101         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
24102         used.
24103
24104 2005-01-17  Bruno Haible  <bruno@clisp.org>
24105
24106         * lib/fwriteerror.h (fwriteerror): Change specification to include
24107         fclose.
24108         * lib/fwriteerror.c: Include <stdbool.h>.
24109         (fwriteerror): At the end, close the file stream. Record whether
24110         stdout was already closed.
24111
24112 2005-01-17  Bruno Haible  <bruno@clisp.org>
24113
24114         * lib/execute.c (environ): Declare if needed.
24115         * lib/pipe.c (environ): Likewise.
24116         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
24117
24118 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24119
24120         * modules/argp: Depend on vsnprintf
24121
24122 2005-01-10  Jim Meyering  <jim@meyering.net>
24123
24124         * modules/closeout (Depends-on): Add atexit.
24125
24126 2005-01-06  Bruno Haible  <bruno@clisp.org>
24127
24128         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
24129
24130 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24131
24132         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
24133         definitions to be after all include files, to avoid collisions.
24134         Problem reported by Bob Proulx.
24135
24136 2005-01-04  Jim Meyering  <jim@meyering.net>
24137
24138         Changes imported from coreutils.
24139         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
24140         as the mkstemp template, use a temporary directory and an
24141         8.3-friendly template to avoid trouble on systems like DJGPP.
24142         Reported by Juan M. Guerrero via Stepan Kasal.
24143         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
24144         close. Remove the temporary directory right away, rather than waiting
24145         for configure's at-exit trap code to do it.
24146         Suggestion from Stepan Kasal.
24147
24148 2005-01-01  Simon Josefsson  <jas@extundo.com>
24149
24150         * gnulib-tool: Print #include directives when --import'ing.
24151
24152 2004-12-28  Simon Josefsson  <jas@extundo.com>
24153
24154         * tests/test-base64.c: Include required header files.  Remove
24155         unused variables.
24156
24157 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
24158
24159         * modules/error (Depends-on): Remove gettext.
24160
24161 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
24162
24163         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
24164         not needed.  This removes a dependency on the gettext module.
24165         [defined _LIBC]: Do not include <libintl.h>; not needed.
24166
24167 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
24168
24169         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
24170         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
24171
24172 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
24173
24174         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
24175         HAVE_DECL_STRTOLD.
24176
24177 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
24178
24179         * modules/getdate (Depends-on): Remove alloca-opt.
24180
24181 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
24182
24183         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
24184
24185 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
24186
24187         * lib/argp-parse.c: Include <stddef.h>.
24188         (alignof, alignto): New macros.
24189         (parser_init): Don't assume that void * is aligned sufficiently
24190         for struct option.
24191
24192         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
24193         need to extend the stack.
24194         (YYINITDEPTH): New macro, so that the initial stack isn't overly
24195         large.
24196
24197 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24198
24199         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
24200
24201 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
24202
24203         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
24204         (2004-10-24) change.  Apparently this was a false alarm.
24205
24206         * modules/getdate: Depend on alloca-opt, not alloca.
24207
24208 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
24209
24210         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
24211         Remove now-obsolete comment about AIX.
24212         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
24213         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
24214         (YYMAXDEPTH): New macro.
24215
24216 2004-12-18  Simon Josefsson  <jas@extundo.com>
24217
24218         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
24219
24220 2004-12-18  Bruno Haible  <bruno@clisp.org>
24221
24222         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
24223
24224 2004-12-18  Bruno Haible  <bruno@clisp.org>
24225
24226         * lib/fatal-signal.c (fatal_signals): Make non-const.
24227         (init_fatal_signals): New function.
24228         (uninstall_handlers, install_handlers): Ignore signals that were set to
24229         SIG_IGN.
24230         (at_fatal_signal): Call init_fatal_signals.
24231         (init_fatal_signal_set): Likewise. Ignore signals that were set to
24232         SIG_IGN.
24233         Reported by Paul Eggert.
24234
24235 2004-12-18  Bruno Haible  <bruno@clisp.org>
24236
24237         * doc/alloca.texi: New file.
24238         * doc/alloca-opt.texi: New file.
24239
24240 2004-12-17  Jim Meyering  <jim@meyering.net>
24241
24242         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
24243         Otherwise, install-sh could exit with improper exit status when
24244         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
24245
24246 2004-12-16  Simon Josefsson  <jas@extundo.com>
24247
24248         * tests/test-base64.c: Add license.
24249
24250 2004-12-15  Stepan Kasal  <address@hidden>
24251
24252         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
24253
24254 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
24255
24256         * modules/getcwd (Files): Add m4/d-ino.m4.
24257         Suggested by Mark D. Baushke.
24258
24259 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
24260
24261         * lib/getdate.y (textint): New member "negative".
24262         (time_zone_hhmm): New function.
24263         Expect 14 shift-reduce conflicts, not 13.
24264         (o_colon_minutes): New rule.
24265         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
24266         (yylex): Set the "negative" member of signed numbers.
24267
24268 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
24269
24270         * doc/getdate.texi (Time of day items, Time zone items):
24271         Describe new formats +00:00, UTC+00:00.
24272
24273 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
24274
24275         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
24276         spurious "-l"s.  Problem reported by Stepan Kasal.
24277
24278 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
24279
24280         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
24281         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
24282
24283 2004-12-04  Simon Josefsson  <jas@extundo.com>
24284
24285         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
24286         Vandoorselaere <yoann@prelude-ids.org>.
24287
24288 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
24289
24290         Changes imported from coreutils.
24291         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
24292         exist.
24293         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
24294
24295 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
24296
24297         Changes imported from coreutils.
24298         * lib/hard-locale.c: Assume <locale.h> exists.
24299         Include "strdup.h".
24300         (GLIBC_VERSION): New macro.
24301         (hard_locale): Assume setlocale exists.
24302         Rewrite to avoid #ifdef.
24303         Use strdup rather than malloc + strcpy.
24304         * lib/human.c: Assume <locale.h> exists.
24305         (human_readable): Assume localeconv exists.
24306
24307 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
24308
24309         * modules/hard-locale (Depends-on): Add strdup.
24310
24311 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
24312
24313         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
24314         convert T2, not T.  (Imported from libc.)
24315
24316 2004-11-30  Simon Josefsson  <jas@extundo.com>
24317
24318         * modules/restrict (License): Change to LGPL.
24319
24320 2004-11-30  Simon Josefsson  <jas@extundo.com>
24321
24322         * m4/restrict.m4: Add copyright and copying conditions.
24323
24324 2004-11-30  Simon Josefsson  <jas@extundo.com>
24325
24326         * m4/base64.m4: New file.
24327
24328 2004-11-30  Simon Josefsson  <jas@extundo.com>
24329
24330         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
24331         base64.
24332
24333         * tests/test-base64.c: New file.
24334
24335         * modules/base64: New file.
24336
24337 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
24338
24339         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
24340         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
24341
24342         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
24343
24344 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
24345
24346         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
24347         (__getcwd.c): Don't restore errno; glibc doesn't.
24348         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
24349         first, falling back to our code only if its results look suspicious.
24350         Ensure that the resulting buffer is only as large as necessary.
24351
24352         * lib/readutmp.c: Include readutmp.h first.
24353         Include <errno.h>, since readutmp.h no longer does that.
24354         * lib/readutmp.h: Don't include <errno.h>,
24355         <sys/param.h>, <time.h>; not needed to establish interface.
24356         (errno): Remove decl.
24357         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
24358         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
24359         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
24360
24361 2004-11-28  Simon Josefsson  <jas@extundo.com>
24362
24363         * lib/base64.h, base64.c: New file.
24364
24365 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
24366
24367         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
24368
24369 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
24370
24371         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
24372         (Depends-on): Remove pathmax, same.  Add mempcpy.
24373         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
24374         (Makefile.am): Append getcwd.h to lib_SOURCES.
24375         (Include): Add getcwd.h.
24376         (Maintainer): Change from Jim Meyering to "all, glibc",
24377         since getdate now uses intended-for-glibc code.
24378         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
24379         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
24380
24381 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
24382
24383         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
24384         HP's ANSI C compiler.
24385         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
24386         Declaring int functions causes warnings on some modern systems and
24387         shouldn't be needed to compile on ancient ones.
24388         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
24389         defined.
24390
24391         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
24392         with the following changes.
24393         (__set_errno): Parenthesize properly.
24394         Include <stdbool.h>.
24395         (MIN, MAX, MATCHING_INO): New macros.
24396         (__getcwd): Define with prototype, not K&R form.
24397         Use heuristics to allocate default buffer on stack if possible.
24398         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
24399         behavior, and to avoid the PATH_MAX limit when computing
24400         ../../../../...
24401         Use MATCHING_INO to compare inode number to file.
24402         Check for arithmetic overflow in size calculations.
24403         Fix bug in reallocation of dot array that caused getcwd to fail
24404         on directories nested deeper than 75.
24405         Be more careful about saving errno on error.
24406         Do not use realloc; use only free+malloc, as this is a bit
24407         more flexible and avoids a needless copy operation.
24408         Do not inspect st_dev and st_ino for symbolic links; POSIX
24409         doesn't specify the latter.
24410         Check for closedir errors.
24411         Avoid needless casts.
24412         Use "#ifdef weak_alias" around weak_alias, to be like other
24413         glibc code.
24414         The following changes to getcwd.c have effect only when used in
24415         gnulib; they have no effect inside glibc proper.
24416         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
24417         as alloca isn't used.
24418         (alloca, __alloca): Likewise.
24419         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
24420         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
24421         unconditionally, as gnulib assumes C89 or better.
24422         Do not include <sys/param.h>.
24423         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
24424         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
24425         better.
24426         (NULL) [!defined NULL]: Remove; we assume C89 or better.
24427         Include <dirent.h> in a way that is compatible with modern Autoconf.
24428         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
24429         New macros, if not already defined.
24430         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
24431         Use "_LIBC", not "defined _LIBC", for consistency.
24432         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
24433         a mempcpy module.
24434         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
24435         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
24436         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
24437         credit only to Jim Meyering and adjust the copyright dates.
24438         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
24439         <stdlib.h>, <unistd.h>, "pathmax.h".
24440         Instead, include "xgetcwd.h" (first) and "getcwd.h".
24441         (INITIAL_BUFFER_SIZE): Remove.
24442         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
24443
24444 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
24445
24446         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
24447         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
24448         Use the _ONCE methods, for efficiency.
24449         Check for fcntl.h.  In test program, include <errno.h>
24450         and <fcntl.h> if available.  Remove old K&R cruft from
24451         test program.  Check for common errors in GNU/Linux,
24452         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
24453         don't do AC_LIBOBJ, as that's getcwd.m4's job.
24454         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
24455         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
24456         name accordingly.
24457         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
24458         accommodate new getcwd.c.
24459         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
24460         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
24461         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
24462         that's all we need now.
24463
24464 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24465
24466         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
24467         argp-parse.c depends on getopt internals, that means we should
24468         always use our getopt, to be on the safe side.
24469         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
24470         order not to spoil the result of an eventual previous invocation
24471         of gl_GETOPT_SUBSTITUTE.
24472
24473 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24474
24475         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
24476         redefinition warnings. To avoid them, include the defines
24477         in `#if !defined __need_getopt ... #endif'. The only place
24478         where __getopt_argv_const is used is in definitions
24479         of getopt_long and getopt_long_only below, which are as well
24480         protected by `#ifndef __need_getopt'.
24481         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
24482         __need_getopt after including <stdio.h> and <unistd.h> These
24483         headers might have defined it.
24484
24485 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
24486
24487         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
24488
24489 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
24490
24491         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
24492         (futimens): New function, which uses futimes if available.
24493         (futimens, utimens): Support timespec==NULL, with same semantics
24494         as utime and utimens.
24495         * lib/utimens.h (futimens): New decl.
24496
24497 2004-11-23  Jim Meyering  <jim@meyering.net>
24498
24499         * lib/getopt_.h: Remove trailing blanks.
24500
24501 2004-11-23  Jim Meyering  <jim@meyering.net>
24502
24503         * lib/__fpending.c: Add comment.
24504
24505 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
24506
24507         * modules/canonicalize (Depends-on): Add xreadlink.
24508         Problem reported by James Youngman.
24509
24510 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
24511
24512         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
24513         New macros.
24514         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
24515         optopt): Use them instead of invoking ## directly; otherwise, the
24516         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
24517
24518 2004-11-19  Bruno Haible  <bruno@clisp.org>
24519
24520         * lib/strtok_r.c: Move comments from here...
24521         * lib/strtok_r.h: ... to here.
24522
24523 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
24524
24525         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
24526         implementations that mishandle size_t overflow.
24527
24528 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
24529
24530         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
24531         might fail.  Problem reported by Yoann Vandoorselaere.
24532         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
24533         implementations that mishandle size_t overflow.
24534
24535 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24536
24537         * modules/canon-host (Depends-on): Add strdup.
24538
24539 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24540
24541         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
24542
24543 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24544
24545         * lib/canon-host.c: Include "strdup.h".
24546         (canon_host): Use getaddrinfo if available, so that IPv6 works.
24547         Use strdup instead of malloc/strcpy to duplicate strings.
24548
24549         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
24550         (human_space_before_unit): New constant.
24551         * lib/human.c (human_readable): Support it.
24552
24553         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
24554         (xgetcwd): Set errno correctly when failing.
24555         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
24556         the failure is actually due to a PATH_MAX problem.
24557
24558         Further getopt changes to make it more likely that glibc will
24559         buy the changes back.
24560         * lib/getopt.c (POSIXLY_CORRECT): New constant.
24561         (getopt): Use it, so to preserve glibc semantic
24562         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
24563         when compiling for libc.
24564         * lib/getopt_.h (__getopt_argv_const): Bring it back.
24565         (getopt_long, getopt_long_only): Use it.
24566
24567         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
24568         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
24569         (getopt): Argv is now char * const *, as per standard.
24570         (_getopt_internal_r, _getopt_internal): Argv is now char **,
24571         not char *__getopt_argv_const *.
24572         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
24573         _getopt_long_only_r): Likewise.
24574         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
24575         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
24576         _getopt_long_r, _getopt_long_only_r): Likewise.
24577         * lib/getopt_.h (__getopt_argv_const): Remove.
24578         (getopt): Argv is now char * const *, as per standard.
24579
24580         * lib/getdate.y (tORDINAL): New token.
24581         (day, relunit): Allow it for relative times.
24582         (relative_time_table): Use tORDINAL for ordinals.
24583
24584 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24585
24586         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
24587         Document that "second" isn't allowed as an ordinal number.
24588
24589 2004-11-16  Jim Meyering  <jim@meyering.net>
24590
24591         * modules/closeout (Depends-on): Add fpending.
24592
24593 2004-11-15  Jim Meyering  <jim@meyering.net>
24594
24595         * lib/closeout.c: Include "__fpending.h" once again.
24596         Include <stdbool.h>.
24597         (close_stdout): Don't fail just because stdout was closed initially,
24598         since some programs don't write to stdout in the normal course of
24599         operation (other than --version and --help), and we don't want this
24600         function to make e.g. `touch file >&-' fail.
24601         But do fail if it was closed and someone has tried to write to it.
24602         E.g., `printf foo >&-' must fail.
24603
24604 2004-11-13  Jim Meyering  <jim@meyering.net>
24605
24606         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
24607
24608 2004-11-12  Simon Josefsson  <jas@extundo.com>
24609
24610         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
24611         small doc fix is still pending.
24612
24613 2004-11-11  Simon Josefsson  <jas@extundo.com>
24614
24615         * modules/strtok_r: New file.
24616
24617         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24618         strtok_r.
24619
24620 2004-11-11  Simon Josefsson  <jas@extundo.com>
24621
24622         * m4/strtok_r.m4: New file.
24623
24624         * m4/getopt.m4: Replace opterr.
24625
24626 2004-11-11  Simon Josefsson  <jas@extundo.com>
24627
24628         * lib/strtok_r.h, strtok_r.c: New file.
24629
24630 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
24631
24632         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
24633         of replacing opterr, getopt, etc.  This should handle the
24634         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
24635
24636 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
24637
24638         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
24639         we can stop lying to compilers about the constness of argv when we
24640         are compiled outside glibc.
24641         (getopt, getopt_long, getopt_long_only): Use it.
24642         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
24643         _getopt_internal, getopt): Likewise.
24644         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
24645         _getopt_long_only_r): Likewise.
24646         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
24647         _getopt_long_r, _getopt_long_only_r): Likewise.
24648
24649         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
24650         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
24651         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
24652         the other external symbols.
24653         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
24654         declaration, since the above renaming now works around collisions.
24655
24656 2004-11-11  Jim Meyering  <jim@meyering.net>
24657
24658         * lib/linebreak.c: Remove trailing blanks.
24659         * lib/alloca_.h: Likewise.
24660         * lib/acosl.c: Likewise.
24661         * lib/euidaccess.c: Likewise.
24662         * lib/allocsa.h: Likewise.
24663
24664 2004-11-10  Simon Josefsson  <jas@extundo.com>
24665
24666         * m4/getaddrinfo.m4: New file.
24667
24668 2004-11-10  Simon Josefsson  <jas@extundo.com>
24669
24670         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
24671
24672 2004-11-10  Simon Josefsson  <jas@extundo.com>
24673
24674         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24675         getaddrinfo.
24676
24677         * modules/getaddrinfo: New file.
24678
24679 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24680
24681         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
24682
24683 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24684
24685         * lib/mktime.c (SHR): New macro, which is a portable
24686         substitute for >> that should work even on Crays.
24687         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
24688         Problem reported by Mark D. Baushke in
24689         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
24690         * lib/getdate.y (SHR): Likewise.
24691         (tm_diff): Use it.
24692         * lib/strftime.c (SHR): Likewise.
24693         (tm_diff): Use it.
24694         * lib/quotearg.c (struct quoting_options): Use unsigned int for
24695         quote_these_too, so that right shifts are well defined.  All uses
24696         changed.
24697
24698 2004-11-10  Jim Meyering  <jim@meyering.net>
24699
24700         Ensure that no close failure goes unreported.
24701         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
24702         return early when it seems there's nothing to flush.
24703         Don't include __fpending.h.
24704
24705 2004-11-10  Jim Meyering  <jim@meyering.net>
24706
24707         * modules/closeout (Depends-on): Remove fpending.
24708
24709 2004-11-10  Jim Meyering  <jim@meyering.net>
24710
24711         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
24712
24713 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
24714
24715         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
24716         gl_FUNC_STRFTIME.
24717         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
24718         and AC_REQUIRE when possible, to avoid duplicate checks.
24719         Check for <wchar.h>.
24720
24721 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
24722
24723         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
24724
24725 2004-11-09  Bruno Haible  <bruno@clisp.org>
24726
24727         * m4/sockpfaf.m4: New file.
24728
24729 2004-11-05  Bruno Haible  <bruno@clisp.org>
24730
24731         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
24732         Reported by Mark D. Baushke <mdb@cvshome.org>.
24733
24734 2004-11-04  Bruno Haible  <bruno@clisp.org>
24735
24736         2004-09-11  Bruno Haible  <bruno@clisp.org>
24737                 * allocsa.valgrind: New file.
24738         2004-02-06  Bruno Haible  <bruno@clisp.org>
24739                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
24740                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
24741                 Reported by Christopher Seip <chris.seip@hp.com>.
24742
24743 2004-11-04  Bruno Haible  <bruno@clisp.org>
24744
24745         * modules/allocsa (Files): Add lib/allocsa.valgrind.
24746         (Makefile.am): Distribute it.
24747
24748 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
24749
24750         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
24751         with errno == ERANGE if the buffer is too small.
24752         Problem reported by Mark D. Baushke.
24753
24754 2004-11-03  Albert Chin  <china@thewrittenword.com>
24755             Paul Eggert  <eggert@cs.ucla.edu>
24756
24757         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
24758         equivalent, substitute $ac_type for equivalent type rather than
24759         blindly using uint32_t *always* which won't work if uint32_t is not
24760         available.  Define _UINT32_T to work around typedef of uint32_t if
24761         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
24762         2.5.1.
24763
24764 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24765
24766         * m4/jm-macros.m4: Sync from coreutils.
24767         (gl_MACROS): Check for mbrlen, for pathchk.
24768         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
24769
24770 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24771
24772         * lib/xreadlink.c (MAXSIZE): New macro.
24773         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
24774         size does not exceed MAXSIZE.  Avoid cast.
24775         As suggested by Mark D. Baushke in
24776         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
24777         if readlink fails with buffer size just under MAXSIZE, try again
24778         with MAXSIZE.
24779
24780 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24781
24782         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
24783
24784 2004-11-02  Derek R. Price  <derek@ximbiot.com>
24785         and  Paul Eggert  <eggert@cs.ucla.edu>
24786
24787         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
24788         (get_date): Overparenthesize to avoid GCC warning.
24789
24790 2004-11-02  Bruno Haible  <bruno@clisp.org>
24791
24792         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
24793         returns void.
24794
24795 2004-11-02  Bruno Haible  <bruno@clisp.org>
24796
24797         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
24798         function returns void.
24799
24800 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
24801
24802         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
24803         fflush_unlocked, flockfile, funlockfile, funlockfile,
24804         fputs_unlocked, putc_unlocked.
24805
24806 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
24807
24808         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
24809         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
24810         already declared.
24811
24812 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24813
24814         * modules/getdate (Files): Add doc/getdate.texi.
24815         (Depends-on): Add setenv, xalloc.
24816
24817 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24818
24819         * lib/getdate.y: Add support for TZ="foo" within a date string.
24820         Fix some bugs near time_t boundaries.  Reject dates with
24821         out-of-range components, e.g., "Sept 31".
24822         Include <stdlib.h>, "setenv.h", "xalloc.h".
24823         (ISDIGIT_LOCALE): Remove; unused.
24824         Note that the TZ and time functions used here are not reentrant.
24825         (mktime_ok, get_tz): New functions.
24826         (TZBUFSIZE): New constant.
24827         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
24828         This requires that we sometimes generate our own TZ="XXX..." setting.
24829
24830 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24831
24832         * doc/getdate.texi: New file, from coreutils with modifications for
24833         the new TZ parsing.
24834
24835 2004-10-27  Derek R. Price  <derek@ximbiot.com>
24836
24837         * lib/mktime.c (not_equal_tm): Remove redundant check.
24838
24839 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24840
24841         * modules/regex (lib_SOURCES): Add regex.c.
24842         Reported by James Youngman in
24843         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
24844
24845 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24846
24847         * lib/getdate.y: Use Bison 1.875 features, and some minor
24848         code cleanups.  This change does not affect semantics.
24849         Don't include <stdlib.h>; no longer needed.
24850         Don't include unlocked-io.h; only the "#if TEST" code uses
24851         stdio, and performance isn't crucial there.
24852         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
24853         Bison 1.875 features as described below.
24854         All uses of "PC." replaced by "pc->".
24855         (YYSTYPE): Add a forward declaration.
24856         (yylex, yyerror): Use full prototypes in forward decls.
24857         Use "%pure-parser" rather than obsolescent "%pure_parser".
24858         Use %parse-param and %lex-param instead of obsolescent
24859         YYPARSE_PARAM and YYLEX_PARAM.
24860         (meridian_table, month_and_day_table, time_units_table,
24861         relative_time_table, time_zone_table, military_table,
24862         lookup_zone, lookup_word, get_date):
24863         Use NULL instead of 0 where appropriate.
24864         (to_hour): Avoid abort (), to avoid a dependency on
24865         stdlib.h.
24866         (yyerror, yylex): Now accepts parser_control * arg.
24867         (main) [TEST]: Use '\0' rather than 0 for char.
24868
24869 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
24870
24871         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
24872
24873 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
24874
24875         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
24876         It's now the caller's responsibility to handle the case where
24877         !HAVE_GETPAGESIZE && !defined getpagesize.
24878
24879         * lib/mktime.c (leapyear): Arg is long int, not int.
24880
24881 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
24882
24883         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
24884
24885 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
24886
24887         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
24888         missing.  Problem reported by James Youngman.
24889
24890 2004-10-16  Simon Josefsson  <jas@extundo.com>
24891
24892         * gnulib-tool: Fix comments.  Fix parse problem.
24893         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
24894
24895 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
24896
24897         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
24898         implementation of getopt_long.  Problem reported by Alexander Taler in:
24899         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
24900
24901 2004-10-15  Bruno Haible  <bruno@clisp.org>
24902
24903         * gnulib-tool: Untabify. Initialize supplied_libname.
24904         (func_usage): More homogenous output.
24905         (func_modules_transitive_closure, func_modules_to_filelist,
24906         func_emit_lib_Makefile_am): New functions.
24907         (func_import): New function, extracted from big case statement. Use
24908         func_get_license, func_modules_transitive_closure,
24909         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
24910         opt_lgpl. Don't use test -a, as it's not portable.
24911         (func_create_testdir): Use func_modules_transitive_closure,
24912         func_modules_to_filelist, func_emit_lib_Makefile_am.
24913
24914 2004-10-15  Bruno Haible  <bruno@clisp.org>
24915
24916         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
24917
24918 2004-10-15  Bruno Haible  <bruno@clisp.org>
24919
24920         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
24921         the portions belonging to each module.
24922         Suggested by Derek Robert Price <derek@ximbiot.com>.
24923
24924 2004-10-12  Simon Josefsson  <jas@extundo.com>
24925
24926         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
24927         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
24928         to real functions.
24929
24930 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24931
24932         * modules/vsnprintf: New file.
24933
24934 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24935
24936         * m4/vsnprintf.m4: New file.
24937
24938 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24939
24940         * lib/vsnprintf.h: New file.
24941         * lib/vsnprintf.c: New file.
24942
24943 2004-10-11  Bruno Haible  <bruno@clisp.org>
24944
24945         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
24946         vsnprintf.
24947
24948 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24949
24950         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
24951
24952 2004-10-07  Bruno Haible  <bruno@clisp.org>
24953
24954         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
24955         fits into the provided buffer.
24956
24957 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
24958
24959         * lib/diacrit.c, diacrit.h: Add GPL notice.
24960
24961         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
24962         notice.
24963         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
24964         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
24965         This avoids a potential constant-folding bug.
24966
24967 2004-10-05  Bruno Haible  <bruno@clisp.org>
24968
24969         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
24970         for the declaration of strsep.
24971
24972 2004-10-05  Bruno Haible  <bruno@clisp.org>
24973
24974         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
24975
24976 2004-10-04  Simon Josefsson  <jas@extundo.com>
24977
24978         * modules/memmem: New file.
24979         * tests/test-memmem.c: New file.
24980         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
24981
24982 2004-10-04  Simon Josefsson  <jas@extundo.com>
24983
24984         * m4/memmem.m4: New file.
24985
24986 2004-10-04  Simon Josefsson  <jas@extundo.com>
24987
24988         * lib/memmem.h: New file.
24989         * lib/memmem.c: New file, taken from glibc.
24990
24991 2004-10-04  Simon Josefsson  <jas@extundo.com>
24992
24993         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
24994         '#ifdef USE_UNLOCKED_IO'.
24995
24996 2004-10-04  Simon Josefsson  <jas@extundo.com>
24997
24998         * config/srclist.txt: Add memmem from glibc.
24999
25000 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
25001
25002         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
25003
25004         * modules/argmatch, modules/argp, modules/closeout, modules/error,
25005         modules/exclude, modules/getdate, modules/getline,
25006         modules/getndelim2, modules/getpass, modules/getpass-gnu,
25007         modules/getusershell, modules/linebuffer, modules/md5,
25008         modules/mountlist, modules/posixtm, modules/readtokens,
25009         modules/readutmp, modules/regex, modules/sha1,
25010         modules/version-etc, modules/yesno:
25011         Remove dependency on unlocked-io.
25012
25013 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
25014
25015         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
25016
25017         * m4/unlocked-io.m4: Add copyright notice.
25018         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
25019
25020 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
25021
25022         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
25023         * lib/xmalloc.c (xmemdup): Likewise.
25024         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
25025         XFREE): Remove these long-obsolescent macros.
25026         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
25027         * lib/xstrdup.c: Remove.
25028
25029         * lib/regex.c (re_comp): Cast gettext return value to char *,
25030         Problem reported by Martin Neitzel via Mark D. Baushke.
25031
25032 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
25033
25034         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
25035         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
25036         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
25037         regex.c, sha1.c, version-etc.c, yesno.c:
25038         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
25039         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
25040         the includer's responsibility.
25041
25042         Sync from coreutils.
25043
25044         * lib/modechange.c (mode_compile): Don't decrement a pointer that
25045         points to the start of a string, as the C Standard says the
25046         resulting behavior is undefined.
25047
25048         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
25049         simple -> simple_backups, numbered_existing ->
25050         numbered_existing_backups, numbered -> numbered_backups
25051         to avoid shadowing problems.  All uses changed.
25052         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
25053         * lib/backupfile.c (check_extension, numbered_backup):
25054         Rename locals to avoid shadowing 'basename'.
25055         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
25056         once.
25057
25058         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
25059         * lib/.cvsignore: Add getopt.h.
25060
25061 2004-10-04  Bruno Haible  <bruno@clisp.org>
25062
25063         * modules/README: New file.
25064         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
25065         not a module.
25066
25067 2004-10-02  Jim Meyering  <jim@meyering.net>
25068
25069         * lib/dirfd.h, getpagesize.h: Add copyright notice.
25070
25071 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
25072
25073         * modules/strsep: New file.
25074
25075 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
25076
25077         * m4/strsep.m4: New file.
25078
25079 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
25080
25081         * lib/strsep.h: New file.
25082         * lib/strsep.c: New file.
25083
25084 2004-10-01  Simon Josefsson  <jas@extundo.com>
25085
25086         * lib/snprintf.c (snprintf): Handle size==0.
25087
25088 2004-10-01  Simon Josefsson  <jas@extundo.com>
25089             Bruno Haible  <bruno@clisp.org>
25090
25091         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
25092         (snprintf): Declare 'args'.
25093
25094 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
25095
25096         * lib/snprintf.c: Remove comments as to why each header is needed.
25097
25098 2004-10-01  Bruno Haible  <bruno@clisp.org>
25099
25100         * MODULES.html.sh: Add strsep.
25101
25102 2004-09-30  Simon Josefsson  <jas@extundo.com>
25103
25104         * modules/snprintf: New file.
25105
25106 2004-09-30  Simon Josefsson  <jas@extundo.com>
25107
25108         * m4/snprintf.m4: New file.
25109
25110 2004-09-30  Simon Josefsson  <jas@extundo.com>
25111
25112         * lib/snprintf.h, lib/snprintf.c: New files.
25113
25114 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
25115
25116         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
25117         (hol_entry_help): Never translate an empty string.
25118         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
25119         * lib/argp.h (OPTION_NO_TRANS): New option.
25120
25121 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
25122
25123         * modules/argp (Maintainer): Replace Simon Josefsson
25124         by Sergey Poznyakoff.
25125
25126 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
25127
25128         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
25129         changes merged back into glibc.
25130
25131 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
25132
25133         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
25134
25135 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
25136
25137         * lib/xvasprintf.c: Include xalloc.h.
25138         (xvasprintf): Use xalloc_die, not xmalloc_die.
25139
25140 2004-09-29  Bruno Haible  <bruno@clisp.org>
25141
25142         * modules/alloca-opt: New file, derived from modules/alloca.
25143         * modules/allocsa: Depend on alloca-opt instead of alloca.
25144         * modules/setenv: Likewise.
25145         * modules/vasnprintf: Likewise.
25146         * MODULES.html.sh: Add alloca-opt.
25147
25148 2004-09-28  Simon Josefsson  <jas@extundo.com>
25149
25150         * gnulib-tool: New parameter --lgpl, to asseert that modules are
25151         LGPL, and to replace license template from GPL to LGPL.
25152
25153 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
25154
25155         * modules/dummy: Change license to LGPL.
25156
25157 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
25158
25159         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
25160
25161 2004-09-24  Simon Josefsson  <jas@extundo.com>
25162
25163         * modules/minmax (License): Change from GPL to LGPL.
25164
25165 2004-09-23  Simon Josefsson  <jas@extundo.com>
25166
25167         * gnulib-tool (--import): Typo.
25168
25169 2004-09-23  Simon Josefsson  <jas@extundo.com>
25170
25171         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
25172
25173 2004-09-22  Bruno Haible  <bruno@clisp.org>
25174
25175         * modules/*: Add 'License' field.
25176         * gnulib-tool: Accept --extract-license option.
25177         (func_get_license): New function.
25178
25179 2004-09-21  Bruno Haible  <bruno@clisp.org>
25180
25181         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
25182         Reported by Simon Josefsson.
25183
25184 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
25185
25186         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
25187         gl_AC_TYPE_LONG_LONG.
25188
25189 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
25190
25191         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
25192
25193 2004-09-18  Simon Josefsson  <jas@extundo.com>
25194         and  Paul Eggert  <eggert@cs.ucla.edu>
25195
25196         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
25197         calls with autoreconf.  Define GL_LIB.
25198
25199 2004-09-14  Karl Berry  <karl@gnu.org>
25200
25201         * config/srclist.txt: unsync setenv.c, sigh.
25202
25203 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
25204
25205         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
25206         Problem reported by Bruno Haible in:
25207         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
25208
25209 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
25210
25211         * config/srclist.txt: Comment out argp-pvh.c.
25212
25213 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
25214
25215         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
25216         in case some system header has #define'd it.  Problem reported by
25217         Soeren D. Schulze in
25218         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
25219
25220 2004-09-09  Karl Berry  <karl@gnu.org>
25221
25222         * regex.[ch]: delete from the root.  These were supposed to be
25223                 synced with emacs cvs, but this has not happened for about
25224                 a year, and anyway nothing else uses emacs regex.[ch].
25225                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
25226                 lib/regex[.ch] is untouched.
25227
25228 2004-09-09  Bruno Haible  <bruno@clisp.org>
25229
25230         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
25231
25232 2004-09-09  Bruno Haible  <bruno@clisp.org>
25233
25234         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
25235         modifications.
25236         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
25237
25238 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
25239
25240         * modules/xvasprintf: New file.
25241         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
25242
25243 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
25244
25245         * lib/xvasprintf.h: New file.
25246         * lib/xvasprintf.c: New file.
25247         * lib/xasprintf.c: New file.
25248
25249 2004-09-08  Bruno Haible  <bruno@clisp.org>
25250
25251         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
25252
25253 2004-09-08  Bruno Haible  <bruno@clisp.org>
25254
25255         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
25256         length is > INT_MAX.
25257         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
25258         more.
25259
25260 2004-09-08  Bruno Haible  <bruno@clisp.org>
25261
25262         * lib/stdint_.h: New file, taken from GNU clisp.
25263
25264 2004-09-08  Bruno Haible  <bruno@clisp.org>
25265             Oskar Liljeblad  <oskar@osk.mine.nu>
25266
25267         * modules/stdint: New file.
25268         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
25269
25270 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25271
25272         Import from coreutils.
25273         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
25274         strings on unbounded length.  alloca's performance benefits aren't
25275         that important here.
25276         (V_STRDUP): Remove.
25277         (parse_with_separator): New function, with most of the internals
25278         of the old parse_user_spec.  Allow user to omit both user and group,
25279         for compatibility with FreeBSD.
25280         Clone only the user name, not the entire spec.
25281         Do not set *uid, *gid unless entirely successful.
25282         Avoid memory leak in some failing cases.
25283         Fix regression for USER.GROUP reported by Dmitry V. Levin in
25284         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
25285         (parse_user_spec): Rewrite to use parse_with_separator.
25286
25287 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25288
25289         * modules/userspec: Don't depend on alloca.
25290
25291 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
25292
25293         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
25294
25295 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
25296
25297         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
25298         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
25299         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
25300
25301 2004-08-16  Simon Josefsson  <jas@extundo.com>
25302
25303         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
25304         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
25305         Add --dry-run for --import.
25306         Let user provided command line parameters override configure.ac
25307         settings.
25308
25309 2004-08-12  Simon Josefsson  <jas@extundo.com>
25310
25311         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
25312         as discussed with Paul Eggert in threads rooted at
25313         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
25314         and
25315         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
25316         Before, the test was empty, and relied on ELIDE_CODE in source
25317         code.)
25318         (gl_PREREQ_GETOPT): New macro.
25319         (gl_GETOPT): Use them.
25320
25321 2004-08-12  Simon Josefsson  <jas@extundo.com>
25322
25323         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
25324         * lib/getopt_.h: Renamed from getopt.h.
25325
25326 2004-08-12  Simon Josefsson  <jas@extundo.com>
25327
25328         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
25329         Change default library name from libfoo to libgnu.
25330         Now, if you have a configure.ac that says:
25331                 gl_SOURCE_BASE(gl)
25332                 gl_M4_BASE(gl/m4)
25333                 gl_MODULES(error getopt etcetera)
25334                 gl_INIT
25335         you can import all you need by running:
25336                 ../gnulib/gnulib-tool --import
25337
25338         * modules/getopt (Files): Rename getopt.h to getopt_.h.
25339         (Makefile.am): Rewrite, use logic from argz.
25340         (Include): Use <getopt.h> instead of "getopt.h".
25341
25342 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
25343
25344         * modules/argp (Files): Add m4/unlocked-io.m4.
25345         (Depends-on): Add extensions.
25346
25347 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
25348
25349         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
25350         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
25351         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
25352         Check for program_invocation_name, program_invocation_short_name,
25353         flockfile, funlockfile, features.h, _getopt_long_only_r.
25354
25355 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
25356
25357         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
25358         its complicated substitute.
25359         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
25360         and program_invocation_name.
25361         (__argp_basename) [!_LIBC]: Remove; the only use was
25362         replaced by its body.
25363         (__argp_short_program_name): Change condition from
25364         !defined __argp_short_program_name to
25365         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
25366         to match argp-namefrob.h.
25367         (__argp_failure): Don't assume strerror_r returns char *.
25368         * lib/argp-parse.c (N_): Define unconditionally.
25369         (argp_default_options): Fill out initializers with 0 to avoid
25370         gcc warnings.
25371
25372 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
25373
25374         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
25375         getopt1.c.
25376
25377 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
25378
25379         Merge from coreutils.
25380
25381         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
25382
25383         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
25384         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
25385
25386 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
25387
25388         Merge from coreutils.
25389
25390         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
25391         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
25392         for Reliant Unix 5.43.
25393
25394         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
25395         (union fooround): Use uintmax_t, not long int.
25396         The rest is a merge from libc:
25397         [defined _LIBC]: Include <shlib-compat.h>.
25398         (_obstack) [defined _LIBC]: Remove after 2.3.4.
25399
25400         * lib/settime.c (settime): Recode to avoid warning with
25401         Sun Forte C 6U2.
25402
25403         * lib/strverscmp.c: Convert to UTF-8.
25404
25405 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
25406
25407         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
25408         m4/uintmax_t.m4.
25409
25410 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
25411
25412         * modules/xalloc-die: New file.
25413         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
25414
25415         * modules/md5 (Files): Add m4/uint32_t.m4.
25416         * modules/sha1: Renamed from modules/sha.
25417         (Files):
25418         Rename lib/sha.h to lib/sha1.h.
25419         Rename lib/sha.c to lib/sha1.c.
25420         Rename m4/sha.m4 to m4/sha1.m4.
25421         (lib_SOURCES): Likewise.
25422         (configure.ac): Rename gl_SHA to gl_SHA1.
25423         (Include): sha.h -> sha1.h.
25424
25425 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
25426
25427         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
25428         * m4/sha1.m4: Renamed from sha.m4.
25429         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
25430
25431 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
25432
25433         * lib/obstack.h (obstack_empty_p):
25434         Don't assume that chunk->contents is suitably aligned.
25435         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
25436         Likewise. Problem reported by Benno in
25437         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
25438
25439         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
25440         readable.  This could be improved further but it'd take some work.
25441
25442 2004-08-08  Simon Josefsson  <jas@extundo.com>
25443
25444         * modules/xgethostname (Depends-on): Remove exit and error (not
25445         used).
25446
25447         * modules/getpass-gnu: Add getpass.h.
25448         (Depends-on): Add stdbool.
25449         * modules/getpass: Add getpass.h.
25450
25451 2004-08-08  Simon Josefsson  <jas@extundo.com>
25452
25453         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
25454         Check getpass declaration.
25455
25456 2004-08-08  Simon Josefsson  <jas@extundo.com>
25457
25458         * lib/xgethostname.c: Don't include error.h (not used).
25459
25460         * lib/getpass.h: Add.
25461         * lib/getpass.c: Include getpass.h first.
25462
25463 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
25464
25465         * lib/xalloc-die.c: New file.
25466         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
25467         All uses removed.
25468         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
25469         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
25470         xalloc-die.c.
25471         (_, N_, xalloc_die): Move to xalloc-die.c.
25472         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
25473         so that we needn't mess with xalloc_msg_memory_exhausted.
25474
25475         * lib/sha1.h: Renamed from sha.h.
25476         (SHA1_H): Renamed from _SHA_H.
25477         (sha1_ctx): Renamed from sha_ctx.
25478         (sha1_init_ctx): Renamed from sha_init_ctx.
25479         (sha1_process_block): Renamed from sha_process_block.
25480         (sha1_process_bytes): Renamed from sha_process_bytes.
25481         (sha1_finish_ctx): Renamed from sha_finish_ctx.
25482         (sha1_read_ctx): Renamed from sha_read_ctx.
25483         (sha1_stream): Renamed from sha_stream.
25484         (sha1_buffer): Renamed from sha_buffer.
25485         * lib/sha1.c: Likewise; renamed from sha.c.
25486         Do not include <sys/types.h>.
25487         Include <stddef.h> rather than <stdlib.h>.
25488
25489 2004-08-08  Bruno Haible  <bruno@clisp.org>
25490
25491         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
25492         FILESYSTEM_PREFIX_LEN.
25493         * lib/progreloc.c: Likewise.
25494         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
25495
25496 2004-08-06  Simon Josefsson  <jas@extundo.com>
25497
25498         * modules/progname (Depends-on): Don't depend on stdbool.
25499
25500 2004-08-06  Simon Josefsson  <jas@extundo.com>
25501
25502         * modules/getsubopt: New file.
25503         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
25504         getsubopt.
25505
25506 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
25507
25508         More merge from coreutils.
25509
25510         * m4/utimens.m4, m4/utimecmp.m4: New files.
25511         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
25512         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
25513         prereq.m4, sha.m4: Import changes from coreutils.
25514
25515 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
25516
25517         More merge from coreutils.
25518         * modules/raise, modules/readtokens0, modules/utimens:
25519         * modules/utimecmp, module/xnanosleep: New files.
25520         * modules/strftime: Add lib/strftime.h.
25521         Change include from <time.h> to "strftime.h".
25522         * modules/yesno: Add lib/yesno.h.
25523         * modules/backupfile: Remove lib/addext.c.
25524         * modules/euidaccess: Add stat-macros.h.
25525         * modules/canonicalize, modules/euidaccess,
25526         modules/filemode, modules/lchown, modules/makepath,
25527         modules/rmdir, modules/stat: Likewise.
25528
25529 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
25530
25531         Merge from tar.
25532         * lib/argp-help.c (make_hol, hol_append): Don't assume that
25533         SIZE_MAX is a valid preprocessor constant.
25534         (__argp_basename): Change from "#ifndef _LIBC"
25535         to "#ifndef __argp_short_program_name", so that
25536         we don't compile these functions for tar.
25537
25538         More merges from coreutils.
25539         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
25540         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
25541         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
25542         * lib/addext.c: Remove; no longer needed.
25543         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
25544         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
25545         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
25546         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
25547         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
25548         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
25549         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
25550         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
25551         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
25552         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
25553         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
25554         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
25555         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
25556         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
25557         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
25558         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
25559         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
25560         Import changes from coreutils.
25561
25562 2004-08-05  Simon Josefsson  <jas@extundo.com>
25563
25564         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
25565
25566 2004-08-05  Simon Josefsson  <jas@extundo.com>
25567
25568         * m4/getsubopt.m4: New file.
25569
25570 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25571
25572         Merge from coreutils.
25573
25574         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
25575         * m4/getcwd-path-max.m4: New files.
25576
25577         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
25578         FILESYSTEM_PREFIX_LEN ->
25579         FILE_SYSTEM_PREFIX_LEN.
25580         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
25581         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
25582         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
25583         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
25584
25585         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
25586         prerequisite modules now handle the DOS stuff.
25587         Don't check for unistd.h.
25588
25589 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25590
25591         Merge from coreutils.
25592
25593         * lib/.gdb-history: Remove; this doesn't belong here.
25594
25595         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
25596         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
25597         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
25598         * lib/getcwd.c: New files.
25599
25600         * lib/dirname.h: Include <stdbool.h>.
25601         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
25602         for consistency with POSIX terminology.  All uses changed.
25603         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
25604         (strip_trailing_slashes): Use bool for booleans.
25605         * lib/stripslash.c (strip_trailing_slashes): Likewise.
25606
25607         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
25608         sometimes returns a positive errno value even when it succeeds.
25609         (print_errno_message) [!LIBC]: Fall back on strerror if
25610         __strerror_r fails.
25611
25612         * lib/path-concat.c (mempcpy): Don't define if a system header defines
25613         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
25614         (longest_relative_suffix): New function.
25615         (path_concat): Use it.  Assume first argument is not NULL.
25616         Port to DOS.  Omit redundant separators.
25617         Report an error instead of returning NULL.
25618         Use mempcpy instead of memcpy.
25619         (xpath_concat): Remove: not declared or used.
25620
25621         * lib/same.h: Include <stdbool.h>
25622         (same_name): Return bool, not int.
25623         * lib/same.c (same_name): Likewise.
25624         (errno): Don't declare; we assume C89 or better now.
25625
25626         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
25627         if not already defined.
25628
25629         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
25630         * lib/dup-safer.c (errno): Likewise.
25631
25632 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25633
25634         Merge from coreutils.
25635         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
25636         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
25637         * modules/path-concat: Don't depend on strdup.
25638
25639 2004-08-03  Simon Josefsson  <jas@extundo.com>
25640
25641         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
25642         * lib/progname.h: Don't include stdbool.h.
25643
25644 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25645
25646         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
25647         * MODULES.html.sh (func_all_modules): Remove fatal.
25648
25649 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25650
25651         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
25652
25653 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25654
25655         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
25656         working.
25657
25658 2004-08-02  Simon Josefsson  <jas@extundo.com>
25659
25660         * lib/getsubopt.h: New file, with comments from Bruno Haible.
25661         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
25662         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
25663
25664 2004-08-01  Simon Josefsson  <jas@extundo.com>
25665
25666         * lib/xgetdomainname.c: Include stdlib.h, for free().
25667
25668 2004-07-19  Bruno Haible  <bruno@clisp.org>
25669
25670         * MODULES.html.sh (func_all_modules): Add dummy.
25671
25672 2004-07-16  Simon Josefsson  <jas@extundo.com>
25673
25674         * modules/dummy: New file.
25675
25676 2004-07-16  Simon Josefsson  <jas@extundo.com>
25677
25678         * lib/dummy.c: New file.
25679
25680 2004-07-16  Bruno Haible  <bruno@clisp.org>
25681
25682         * lib/backupfile.h: Add extern "C" for C++.
25683         * lib/closeout.h: Likewise.
25684         * lib/copy-file.h: Likewise.
25685         * lib/findprog.h: Likewise.
25686         * lib/full-write.h: Likewise.
25687         * lib/pathname.h: Likewise.
25688         * lib/progname.h: Likewise.
25689         * lib/stpcpy.h: Likewise.
25690         * lib/stpncpy.h: Likewise.
25691         * lib/strcase.h: Likewise.
25692         * lib/strstr.h: Likewise.
25693         * lib/xalloc.h: Likewise.
25694
25695         * lib/mbswidth.h: Add extern "C" for C++.
25696         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
25697
25698 2004-07-13  Robert Millan  <robertmh@gnu.org>
25699
25700         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
25701
25702 2004-07-09  Simon Josefsson  <jas@extundo.com>
25703
25704         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
25705         failed without this.)
25706
25707 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25708
25709         * modules/chown (Files): Add lib/fchown-stub.c, since
25710         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
25711
25712 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25713
25714         * lib/fchown-stub.c: New file.
25715
25716 2004-06-24  Jim Meyering  <jim@meyering.net>
25717
25718         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
25719
25720 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25721
25722         * modules/argz: Omit "#include".
25723
25724         * MODULES.html.sh (func_all_modules): Add calloc, to match
25725         2004-06-01 addition of calloc module.
25726
25727 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25728
25729         * m4/argz.m4: New file, which is autoupdated from libtool.
25730
25731 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25732
25733         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
25734         libtool.
25735
25736 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25737
25738         * config/srclist-update: Don't insist on "USA." before the
25739         close-comment, as libtool omits the period and puts the */ on a
25740         separate line.
25741         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
25742         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
25743
25744 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
25745
25746         * modules/argz: New file.
25747         * MODULES.html.sh (func_all_modules): Add argz.
25748
25749 2004-06-12  Jim Meyering  <jim@meyering.net>
25750         and  Paul Eggert  <eggert@cs.ucla.edu>
25751
25752         * modules/hash (Files): Add lib/xalloc.h.
25753         * modules/pipe (Depends-on): Add wait-process.
25754         * modules/stat (Depends-on): Add xalloc.
25755         * modules/userspec (Files): Add lib/userspec.h.
25756         * modules/xstrto
25757
25758         Upgrade from gettext-0.13.
25759         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
25760         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
25761         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
25762
25763 2004-06-10  Jim Meyering  <jim@meyering.net>
25764
25765         * lib/calloc.c: New file.
25766
25767 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
25768
25769         * lib/getdate.y (yylex): Allow space between sign and number.
25770         Problem reported by Dan Jacobson.
25771
25772 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
25773
25774         Merge from coreutils CVS.
25775
25776         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
25777         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
25778         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
25779         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
25780         xstrtol.m4: Fix copyright date and/or serial number.
25781
25782         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
25783         See if we need an fchown replacement.
25784         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
25785         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
25786         and use the replacement function if we detect either defect.
25787
25788         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
25789         gl_UTIMECMP.
25790
25791 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
25792         and  Jim Meyering  <jim@meyering.net>
25793
25794         Merge from coreutils CVS.
25795
25796         * lib/stat-macros.h: New file, with contents from file-type.h
25797         and coreutils' system.h.
25798         * lib/file-type.c: Include "stat-macros.h".
25799         * lib/file-type.h (file_type): Move all macro definitions to new file,
25800         stat-macros.h.
25801
25802         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
25803         Wrap old code with this conditional.
25804         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
25805         function that does not dereference symlinks.
25806         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
25807
25808         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
25809         dependency problems.
25810         (xreadlink): Accept new arg SIZE, for efficiency.
25811         All decls and uses changed.
25812         * lib/xreadlink.h: Include <stddef.h>, for size_t.
25813
25814         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
25815         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
25816
25817         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
25818         sysexits.h.
25819
25820 2004-06-01  Jim Meyering  <jim@meyering.net>
25821
25822         * m4/calloc.m4: New file.
25823
25824 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
25825
25826         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
25827         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
25828         Also, fix a typo in a diagnostic.
25829
25830 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
25831
25832         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
25833         or AC_FUNC_REALLOC.
25834
25835 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
25836
25837         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
25838         macros to be defined.
25839         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
25840         the allocator returns NULL because the requested size is zero.
25841
25842 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
25843
25844         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
25845         var.  Add comment explaining why libc still defines it.  This
25846         merges the following patch from glibc:
25847         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
25848
25849 2004-05-20  Andreas Schwab  <schwab@suse.de>
25850
25851         * m4/free.m4: Replace free if it not known to work, not the other
25852         way round.
25853
25854 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
25855
25856         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
25857         present in glibc since revision 1.1 of this file.
25858         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
25859         obstack_alignment_mask, obstack_alloc, obstack_base,
25860         obstack_blank, obstack_blank_fast, obstack_chunk_size,
25861         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
25862         obstack_grow0, obstack_init, obstack_int_grow,
25863         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
25864         obstack_next_free, obstack_object_size, obstack_ptr_grow,
25865         obstack_ptr_grow_fast, obstack_room): Remove declarations of
25866         nonexistent functions.
25867
25868 2004-05-18  Karl Berry  <karl@gnu.org>
25869
25870         * config/srclist.txt: break link for vasnprintf.c.
25871
25872 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
25873
25874         Port obstack to the AS/400, where pointers are 16 bytes wide and
25875         you cannot cast an integer to a valid pointer.  This patch is
25876         currently waiting to be integrated into glibc; see
25877         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
25878
25879         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
25880         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
25881         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
25882         (struct obstack): temp member is now a union of a pointer and
25883         an integer, instead of an integer.  All integer uses changed.
25884         This does not affect the physical layout of struct obstack,
25885         except on hosts (like the AS/400) where the size or alignment of
25886         void * is greater than that of ptrdiff_t.
25887         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
25888         __STDC__)]: Store temporary in pointer member of union, not
25889         integer member.
25890         * lib/obstack.c: Include <stddef.h>, for offsetof.
25891         (struct fooalign): Remove; it doesn't need a name.
25892         (union fooround): Change double to long double, and add void *.
25893         (DEFAULT_ALIGNMENT): Use offsetof to compute.
25894         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
25895         not a macro.  Hence the values are always int; so remove all
25896         casts-to-int in uses.
25897
25898 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
25899
25900         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
25901         we can get this patch merged into glibc.
25902
25903 2004-05-17  Derek R. Price  <derek@ximbiot.com>
25904             Paul Eggert  <eggert@cs.ucla.edu>
25905
25906         * m4/argp: Depend on alloca.
25907
25908 2004-05-17  Derek R. Price  <derek@ximbiot.com>
25909             Paul Eggert  <eggert@cs.ucla.edu>
25910
25911         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
25912         freecoding.
25913
25914 2004-05-17  Bruno Haible  <bruno@clisp.org>
25915
25916         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
25917         precision that consists of a '.' followed by an empty digit string.
25918         Patch by Tor Lillqvist <tml@iki.fi>.
25919
25920 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25921
25922         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
25923         for backward compatibility with older code.  We need our own
25924         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
25925         it under some other name, and our alloca.h will define it.
25926
25927 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25928             Derek Price  <derek@ximbiot.com>
25929
25930         * lib/alloca.c: Include <alloca.h>, to get our interface.
25931         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
25932         include <alloca.h> first.  Use C89 prototype for alloca; this
25933         requires including <stddef.h> for size_t.  Use extern "C" if C++.
25934         Use #elif for simplicity, since we can assume C89 now.
25935         Don't try to source the system alloca.h since it will not be found
25936         and to prevent recursively including its replacement.
25937         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
25938         * lib/regex.c: Likewise.
25939
25940 2004-05-16  Derek Price  <derek@ximbiot.com>
25941             Paul Eggert  <eggert@cs.ucla.edu>
25942
25943         getline cleanup.  This changes the getndelim2 API: both order of
25944         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
25945         no delimiter).
25946
25947         * lib/getline.c: Don't include stddef.h or stdio.h, since our
25948         interface does that.
25949         (getline): Always use getdelim, so that we don't have two
25950         copies of this code.
25951         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
25952         if available.
25953         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
25954         (GETNDELIM2_MAXIMUM): New macro.
25955         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
25956         instead of the old practice of delim2==0.  All callers changed.
25957         Return -1 on overflow, instead of returning junk.
25958         Do not set *linesize unless allocation succeeds.
25959         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
25960         that we include sys/types.h.
25961         * lib/getnline.h: Likewise.
25962         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
25963         (getndelim2): Reorder arguments.
25964         * lib/getnline.c (getnline, getndelim):
25965         Don't discard the NMAX argument.
25966         (getnline): Invoke getndelim, to avoid code duplication.
25967         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
25968         of (size_t) -1 by callers of the getnline family.
25969
25970 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25971
25972         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
25973         Check for gettimeofday.
25974         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
25975         Check for settimeofday, stime.
25976
25977 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25978
25979         * lib/nanosleep.c (suspended): Change its type from int to
25980         sig_atomic_t volatile.
25981         (first_call): Make it private to rpl_nanosleep, and have it
25982         be zero initially as that's a bit faster.
25983         (my_usleep): Round up fractional times instead of truncating them,
25984         as this is the usual meaning for 'sleep'.
25985
25986         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
25987         doesn't work.
25988         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
25989         (ENOSYS): Define if not defined.
25990         (settime): Fall back on stime if it exists and settimeofday fails.
25991         But don't bother with fallbacks if a method fails with errno == EPERM.
25992
25993 2004-05-11  Jim Meyering  <jim@meyering.net>
25994
25995         Prior to this change, the save_cwd caller required read access to the
25996         current directory on most systems (ones with the fchdir function).
25997
25998         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
25999         fails, try write-only, and finally, resort to using xgetcwd.
26000
26001 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
26002
26003         * lib/obstack.c, obstack.h: Import changes from libc.
26004
26005 2004-04-28  Bruno Haible  <bruno@clisp.org>
26006
26007         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
26008         also implicitly appends .exe to executables.
26009         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
26010         accepts Windows pathnames.
26011         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
26012         Treat Cygwin like Windows, since it now accepts Windows pathnames.
26013         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
26014         Treat Cygwin like Windows, since it now accepts Windows pathnames.
26015         Reported by Derek Robert Price <derek@ximbiot.com>.
26016
26017 2004-04-21  Karl Berry  <karl@gnu.org>
26018
26019         * config/srclist.txt (localcharset.c): break sync.
26020
26021 2004-04-20  Paul Eggert  <eggert@twinsun.com>
26022
26023         * m4/host-os.m4: Add a copyright notice.
26024
26025 2004-04-20  Jim Meyering  <jim@meyering.net>
26026
26027         Change UTILS_ to gl_ in AC_DEFINE'd names.
26028         Change utils_- and jm_-prefixed variables, too.
26029         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
26030         UTILS_FUNC_MKDIR_TRAILING_SLASH.
26031         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
26032
26033         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
26034         Don't emit trailing blanks.
26035         Also rename jm_-prefixed variables to have gl_ prefix.
26036
26037         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
26038         Also rename jm_-prefixed variables to have gl_ prefix.
26039
26040         * m4/jm-macros.m4: Reflect the renamings.
26041         * m4/prereq.m4: Likewise.
26042
26043 2004-04-20  Jim Meyering  <jim@meyering.net>
26044
26045         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
26046         memory.
26047
26048 2004-04-20  Jim Meyering  <jim@meyering.net>
26049             Bruno Haible  <bruno@clisp.org>
26050
26051         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
26052         memory when realloc fails.
26053
26054 2004-04-19  Jim Meyering  <jim@meyering.net>
26055
26056         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
26057         now that readutmp.c may call `free (0)'.
26058
26059 2004-04-19  Bruno Haible  <bruno@clisp.org>
26060
26061         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
26062         * m4/inttypes_h.m4: Likewise.
26063         * m4/stdint_h.m4: Likewise.
26064         * m4/intmax_t.m4: Likewise.
26065         * m4/uintmax_t.m4: Likewise.
26066
26067 2004-04-18  Jim Meyering  <jim@meyering.net>
26068
26069         * m4/prereq.m4: Don't forbid jm_ prefix.
26070
26071         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
26072         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
26073         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
26074         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
26075         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
26076         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
26077         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
26078         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
26079         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
26080         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
26081         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
26082         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
26083         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
26084         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
26085         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
26086         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
26087         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
26088         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
26089         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
26090
26091 2004-04-18  Jim Meyering  <jim@meyering.net>
26092
26093         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
26094         failure, don't leak memory and do call END_UTMP_ENT.
26095
26096 2004-04-16  Jim Meyering  <jim@meyering.net>
26097
26098         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
26099         coreutils' stat program.
26100         (gl_PREREQ): Don't require jm_PREREQ_STAT.
26101
26102 2004-04-11  Paul Eggert  <eggert@twinsun.com>
26103
26104         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
26105         C89.
26106         (CHAR_BIT): Remove, since we assume C89.
26107         Include <stdint.h> if available, as per current Autoconf CVS advice.
26108
26109 2004-03-31  Jim Meyering  <jim@meyering.net>
26110
26111         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
26112         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
26113         * m4/xalloc.m4: Likewise.
26114
26115 2004-03-30  Paul Eggert  <eggert@twinsun.com>
26116
26117         Merge from coreutils.
26118
26119         * m4/inttostr.m4: New file.
26120         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
26121         Require AM_STDBOOL_H and gl_TIMESPEC instead.
26122         Require gl_CLOCK_TIME.
26123         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
26124
26125 2004-03-30  Paul Eggert  <eggert@twinsun.com>
26126
26127         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
26128         not bool, to be more consistent with Unix conventions.
26129         Suggested by Bruno Haible.
26130
26131         Merge from coreutils.
26132
26133         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
26134         * lib/umaxtostr.c: New files.
26135
26136         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
26137         the usual <time.h> dance.
26138         (get_date): Change signature to support fractional time stamps.
26139         All callers changed.
26140         * lib/getdate.y: Include "getdate.h" first, as we can now
26141         assume C89 and don't need to worry about 'const'.
26142         Similarly, include "unlocked-io.h" near start, not in middle.
26143         Include <limits.h>.
26144         (textint.value): Use long int rather than int.
26145         (textint.digits): Use size_t rather than int.
26146         (BILLION, LOG10_BILLION): New constants.
26147         (parser_control): New member rel_ns.  Members day_ordinal,
26148         time_zone, month, day, hour, minutes, rel_year, rel_month,
26149         rel_day, rel_hour, rel_minutes, rel_seconds
26150         are now long int, not int.  Member seconds is now struct timespec,
26151         not int.  New member timespec_seen.  Members dates_seen, days_seen,
26152         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
26153         not int.
26154         (%union.intval): Now long int, not int.
26155         New member timespec.
26156         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
26157         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
26158         (spec): Now is a timespec or an item list.
26159         (timespec, items): New nonterminals.
26160         (time, rel, relunit, number, get_date):
26161         Add support for fractional seconds.
26162         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
26163         (gmtime, localtime, mktime): Remove decls; not needed with C89.
26164         (to_hour): First arg is now long int, not int.
26165         (to_year): Returns long int, not int.
26166         Don't treat year -70 like 70.
26167         (tm_diff): Returns long int, not int.
26168         (lookup_word): Use bool instead of int when appropriate.
26169         (yylex): Use size_t for count, not int.
26170         Detect overflow when parsing large integer constants.
26171         Add support for fractions.
26172         (get_date): Make pointers 'const' if possible.
26173         Use more-portable code to detect integer overflow.
26174         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
26175         Don't use ctime; it's not reliable if the year has >4 digits.
26176
26177         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
26178         This is for compatibility with BSD.
26179
26180         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
26181         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
26182         From coreutils' system.h.
26183
26184         * lib/userspec.c: Don't include "posixver.h".
26185         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
26186         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
26187         compatible extension.  Simplify code by removing a boolean int
26188         that was always nonzero if a string was nonnull.
26189
26190 2004-03-30  Jim Meyering  <jim@meyering.net>
26191
26192         Merge from coreutils.
26193
26194         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
26195         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
26196         on some systems one must include <grp.h> before it.
26197         Reported by Christian Krackowizer.
26198
26199 2004-03-30  Jim Meyering  <jim@meyering.net>
26200
26201         Merge from coreutils.
26202
26203         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
26204
26205         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
26206         an empty input stream.
26207
26208         * lib/readtokens.c: Include <stdbool.h>.
26209         (readtoken): Use `size_t' rather than int/long.
26210         All callers adjusted.
26211         Use `bool' rather than `int' where appropriate.
26212         Use memset rather than an explicit loop.
26213         Use x2nrealloc rather than xrealloc.
26214         Allow the use of `\0' as a delimiter.
26215         (readtokens): Likewise.
26216         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
26217
26218 2004-03-30  Jim Meyering  <jim@meyering.net>
26219
26220         * m4/realloc.m4: Remove file, since now it does no more than
26221         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
26222         the `configure.ac' section of module/realloc.
26223         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
26224
26225 2004-03-30  Bruno Haible  <bruno@clisp.org>
26226
26227         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
26228         nonnull.
26229
26230 2004-03-29  Paul Eggert  <eggert@twinsun.com>
26231
26232         Merge changes to getloadavg.c from coreutils and Emacs.
26233
26234         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
26235         Define to an expression, not to the empty string.
26236         Include cloexec.h and xalloc.h.
26237         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
26238         Use set_cloexec_flag rather than rolling our own.
26239         * lib/cloexec.c, lib/cloexec.h: New files.
26240
26241 2004-03-29  Paul Eggert  <eggert@twinsun.com>
26242
26243         * m4/cloexec.m4: New file.
26244
26245 2004-03-18  Paul Eggert  <eggert@twinsun.com>
26246
26247         * lib/getopt.h: Sync with libc CVS.
26248
26249 2004-03-18  Paul Eggert  <eggert@twinsun.com>
26250             Bruno Haible  <bruno@clisp.org>
26251
26252         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
26253         mbswidth.
26254
26255 2004-03-18  Paul Eggert  <eggert@twinsun.com>
26256             Bruno Haible  <bruno@clisp.org>
26257
26258         * lib/mbswidth.h: Include <wchar.h> only if
26259         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
26260         <wchar.h>.
26261         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
26262
26263 2004-03-09  Paul Eggert  <eggert@twinsun.com>
26264
26265         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
26266         Sync with libc CVS.
26267         * lib/getopt_int.h: New file, also synced from libc.
26268
26269 2004-03-09  Paul Eggert  <eggert@twinsun.com>
26270
26271         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
26272         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
26273         Bring back getopt.c, getopt.h, getopt1.c.
26274
26275 2004-03-07  Paul Eggert  <eggert@twinsun.com>
26276
26277         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
26278         All uses changed.  Check for sa_sigaction member; this fixes
26279         a bug first reported by Jason Andrade in
26280         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
26281
26282 2004-03-07  Paul Eggert  <eggert@twinsun.com>
26283
26284         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
26285         '#if' expressions.  Unlike the code it replaces, it does not
26286         depend on (defined _SC_PAGESIZE).  However, it does depend on
26287         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
26288         first reported by Jason Andrade in
26289         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
26290
26291 2004-02-25  Simon Josefsson  <jas@extundo.com>
26292
26293         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
26294
26295 2004-02-25  Simon Josefsson  <jas@extundo.com>
26296
26297         * lib/strdup.h: New file.
26298         * lib/strdup.c: Include it.
26299         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
26300         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
26301
26302 2004-02-23  Karl Berry  <karl@gnu.org>
26303
26304         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
26305         (from fencepost.gnu.org:/gd/gnuorg).
26306
26307 2004-02-23  Karl Berry  <karl@gnu.org>
26308
26309         * config/srclistvars.sh (GNUORG) [karl]: redefine.
26310         * config/srclist.txt: add maintain/standards documents.
26311
26312 2004-02-18  Bruno Haible  <bruno@clisp.org>
26313
26314         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
26315         Reported by Derek Robert Price <derek@ximbiot.com>.
26316
26317 2004-02-16  Karl Berry  <karl@gnu.org>
26318
26319         * config/mkinstalldirs, install-sh: update from automake.
26320
26321 2004-02-06  Karl Berry  <karl@gnu.org>
26322
26323         * m4/po.m4: update from gettext 0.14.1.
26324
26325 2004-02-06  Karl Berry  <karl@gnu.org>
26326
26327         * lib/config.charset: update from gettext 0.14.1.
26328
26329 2004-02-05  Paul Eggert  <eggert@twinsun.com>
26330
26331         Add comments and code, prompted by suggestions from Bruno Haible
26332         for sh-quote.
26333         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
26334         describing the enum quoting_style values.
26335         * lib/quotearg.c (quotearg_alloc): New function.
26336         (quotearg_buffer_restyled): Treat lone { and } as special.
26337         Treat = as special.  Work around bug with older shells
26338         that "see" a '\' that is really the 2nd byte of a multibyte char.
26339         Quote empty string with shell_quoting_style.
26340
26341 2004-02-03  Bruno Haible  <bruno@clisp.org>
26342
26343         * m4/pipe.m4: New file, from GNU gettext.
26344
26345 2004-02-03  Bruno Haible  <bruno@clisp.org>
26346
26347         * lib/pipe.h: New file, from GNU gettext.
26348         * lib/pipe.c: New file, from GNU gettext.
26349
26350 2004-01-27  Bruno Haible  <bruno@clisp.org>
26351
26352         * m4/execute.m4: New file, from GNU gettext.
26353
26354 2004-01-27  Bruno Haible  <bruno@clisp.org>
26355
26356         * lib/execute.h: New file, from GNU gettext.
26357         * lib/execute.c: New file, from GNU gettext.
26358         * lib/w32spawn.h: New file, from GNU gettext.
26359
26360 2004-01-24  Paul Eggert  <eggert@twinsun.com>
26361
26362         Merge from diffutils.
26363
26364         * lib/file-type.c (file_type): Add typed memory objects.
26365         * lib/file-type.h (S_TYPEISTMO): New macro.
26366
26367         * lib/c-stack.h (c_stack_action): Remove argv argument.
26368         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
26369         (die): Don't calculate message unless segv_action returns.
26370         (get_stack_location, min_address_from_argv, max_address_from_argv,
26371         volatile stack_base, volatile_stack_size): Remove.
26372         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
26373         that every segmentation violation is a stack overflow.  (Ouch!)
26374         See Debian bug 136249 (still outstanding) for more info about why
26375         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
26376
26377 2004-01-24  Paul Eggert  <eggert@twinsun.com>
26378
26379         Exit-status fix from coreutils.
26380
26381         Use exit_failure consistently in place of EXIT_FAILURE,
26382         so that program exit statuses are consistent on failure.
26383
26384         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
26385         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
26386         * lib/argmatch.h: Comment fix to match the above.
26387         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
26388         Now a macro referring to exit_failure, instead of a separate
26389         variable.  Include "exitfail.h" to get it.
26390         * lib/xstrtol.h: Include "exitfail.h".
26391         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
26392
26393         * lib/long-options.c (parse_long_options): Use prototype
26394         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
26395         for clarity.
26396
26397 2004-01-21  Jim Meyering  <jim@meyering.net>
26398
26399         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
26400         so as not to conflict with a different-sized __mktime_internal
26401         function in GNU libc.
26402         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
26403         Problem building statically-linked `ls' reported by Michael Brunnbauer.
26404
26405 2004-01-20  Karl Berry  <karl@gnu.org>
26406
26407         * config/config.guess: update from config.
26408
26409         * config/srclistvars.sh: GNUWWWLICENSES for karl.
26410
26411 2004-01-20  Bruno Haible  <bruno@clisp.org>
26412
26413         Safer stack allocation.
26414         * lib/setenv.c: Include allocsa.h.
26415         (alloca): Remove fallback definition.
26416         (freea): Remove macro.
26417         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
26418         instead of freea.
26419
26420 2004-01-20  Bruno Haible  <bruno@clisp.org>
26421
26422         * m4/eealloc.m4: New file, from GNU gettext.
26423
26424 2004-01-20  Bruno Haible  <bruno@clisp.org>
26425
26426         * m4/allocsa.m4: New file, from GNU gettext.
26427
26428 2004-01-20  Bruno Haible  <bruno@clisp.org>
26429
26430         * lib/xallocsa.h: New file, from GNU gettext.
26431         * lib/xallocsa.c: New file, from GNU gettext.
26432
26433 2004-01-20  Bruno Haible  <bruno@clisp.org>
26434
26435         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
26436
26437 2004-01-20  Bruno Haible  <bruno@clisp.org>
26438
26439         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
26440         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
26441         specially.
26442
26443 2004-01-20  Bruno Haible  <bruno@clisp.org>
26444
26445         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
26446         patch.
26447
26448 2004-01-20  Bruno Haible  <bruno@clisp.org>
26449
26450         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
26451
26452 2004-01-20  Bruno Haible  <bruno@clisp.org>
26453
26454         * lib/eealloc.h: New file.
26455
26456 2004-01-20  Bruno Haible  <bruno@clisp.org>
26457
26458         * lib/binary-io.h: Avoid warnings on Cygwin.
26459
26460 2004-01-20  Bruno Haible  <bruno@clisp.org>
26461
26462         * lib/allocsa.h: New file, from GNU gettext.
26463         * lib/allocsa.c: New file, from GNU gettext.
26464
26465 2004-01-18  Karl Berry  <karl@gnu.org>
26466
26467         * doc/gpl.texi, doc/lgpl.texi: new files.
26468
26469 2004-01-18  Karl Berry  <karl@gnu.org>
26470
26471         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
26472         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
26473
26474 2004-01-15  Paul Eggert  <eggert@twinsun.com>
26475
26476         Merge from coreutils.
26477
26478         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
26479         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
26480         (gl_DEFAULT_POSIX2_VERSION): Move
26481         the documentation from 'configure' into 'config.hin',
26482         so that 'configure --help' isn't burdened by it and
26483         we don't have to worry about its formatting there.
26484         Reword the documentation so that it's more succinct
26485         and can be run together into a single paragraph.
26486         * m4/same.m4 (gl_SAME): Check for pathconf.
26487
26488 2004-01-15  Paul Eggert  <eggert@twinsun.com>
26489
26490         Merge from coreutils.
26491
26492         * lib/posixver.c: Include posixver.h.
26493
26494         * lib/same.c: Include <stdbool.h>, <limits.h>.
26495         (_POSIX_NAME_MAX): Define if not defined.
26496         (MIN): New macro.
26497         (same_name): If file names are silently truncated, report
26498         that the file names are the same if they are the same after
26499         the silent truncation.
26500
26501         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
26502         conversion function.
26503         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
26504         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
26505         longer needed.
26506
26507 2004-01-15  Jim Meyering  <jim@meyering.net>
26508
26509         Merge from coreutils.
26510
26511         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
26512         if no library is required.
26513         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
26514         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
26515         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
26516         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
26517         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
26518         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
26519         value, $ac_cv_search_crypt, if it's "none required".
26520         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
26521         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
26522         not gl_FUNC_GETLOADAVG.
26523         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
26524         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
26525
26526 2004-01-15  Jim Meyering  <jim@meyering.net>
26527
26528         Merge from coreutils.
26529
26530         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
26531         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
26532         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
26533
26534         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
26535         optional configure-time default.
26536
26537         * lib/version-etc.c (version_etc_copyright): Update copyright date.
26538
26539         * lib/xreadlink.c (xreadlink): Correct outdated comment.
26540
26541 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
26542
26543         Merge from coreutils.
26544
26545         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
26546         value, $ac_cv_search_nanosleep, if it's "none required".
26547
26548 2004-01-14  Paul Eggert  <eggert@twinsun.com>
26549
26550         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
26551         with like-named macro in fnmatch.c.
26552         (EXT): Use an internal constant instead.
26553
26554         Merge fnmatch patches from glibc.
26555         * lib/fnmatch.c (mbsinit): Remove define.
26556         Add libc_hidden_ver (__fnmatch, fnmatch).
26557         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
26558         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
26559
26560 2004-01-14  Karl Berry  <karl@gnu.org>
26561
26562         * config/install-sh: update from automake.
26563
26564 2004-01-13  Karl Berry  <karl@gnu.org>
26565
26566         * config/install-sh: update from automake.
26567
26568 2004-01-09  Karl Berry  <karl@gnu.org>
26569
26570         * config/install-sh: update from automake.
26571
26572 2004-01-05  Karl Berry  <karl@gnu.org>
26573
26574         * config/config.{sub,guess}: update from config.
26575
26576 2003-12-31  Karl Berry  <karl@gnu.org>
26577
26578         * config/depcomp: update from automake.
26579
26580 2003-12-14  Karl Berry  <karl@gnu.org>
26581
26582         * lib/config.charset: update from gettext-runtime.
26583
26584 2003-12-03  Paul Eggert  <eggert@twinsun.com>
26585
26586         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
26587         Bug reported by Alfred M. Szmidt.
26588
26589 2003-12-03  Bruno Haible  <bruno@clisp.org>
26590
26591         * m4/gettext.m4: Upgrade from gettext-0.13.
26592         * m4/po.m4: Upgrade from gettext-0.13.
26593         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
26594         * m4/intmax.m4: New file, from gettext-0.13.
26595         * m4/printf-posix.m4: New file, from gettext-0.13.
26596
26597 2003-11-29  Karl Berry  <karl@gnu.org>
26598
26599         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
26600
26601 2003-11-25  Paul Eggert  <eggert@twinsun.com>
26602             Bruno Haible  <bruno@clisp.org>
26603
26604         * lib/printf-parse.h: Don't include sys/types.h.
26605         (ARG_NONE): New macro.
26606         (char_directive): Change type of *arg_index fields to size_t.
26607         * lib/printf-parse.c: Don't include sys/types.h.
26608         (SSIZE_MAX): Remove macro.
26609         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
26610         Remove unnecessary overflow check.
26611         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
26612         fields.
26613
26614 2003-11-25  Bruno Haible  <bruno@clisp.org>
26615
26616         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
26617
26618 2003-11-25  Bruno Haible  <bruno@clisp.org>
26619
26620         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
26621         gt_TYPE_SSIZE_T.
26622
26623 2003-11-24  Paul Eggert  <eggert@twinsun.com>
26624
26625         * modules/alloca: Remove dependency on xalloc.
26626
26627 2003-11-24  Paul Eggert  <eggert@twinsun.com>
26628
26629         * lib/alloca.c: Remove dependency on xalloc module.
26630         (xalloc_die): Remove.
26631         (memory_full) [!defined emacs]: New macro.
26632         [!defined emacs]: Don't include xalloc.h.
26633         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
26634         address arithmetic overflows.  Change datatypes a bit to avoid
26635         unnecessary casts.
26636
26637 2003-11-22  Jim Meyering  <jim@meyering.net>
26638
26639         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
26640         s/size/size_t/.
26641
26642 2003-11-21  Karl Berry  <karl@gnu.org>
26643
26644         * config/config.{sub,guess}: update from config.
26645
26646 2003-11-18  Karl Berry  <karl@gnu.org>
26647
26648         * config/config.{sub,guess}: update from config.
26649
26650         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
26651
26652 2003-11-17  Paul Eggert  <eggert@twinsun.com>
26653
26654         * README: Mention that S+T cannot overflow if S is the size of
26655         an existing object and T is sufficiently small.
26656
26657 2003-11-17  Jim Meyering  <jim@meyering.net>
26658
26659         On systems without utime and without a utimes function capable of
26660         dealing with a NULL struct utimbuf* argument, this utime replacement
26661         could -- in unusual circumstances -- leak a file descriptor.
26662         * lib/utime.c: Include <unistd.h> and <errno.h>.
26663         (utime_null): Be sure to close `fd' and to preserve errno.
26664         Reported by Geoff Collyer via Arnold Robbins.
26665
26666 2003-11-17  Bruno Haible  <bruno@clisp.org>
26667
26668         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
26669         (Depends-on): Add xsize.
26670
26671 2003-11-17  Bruno Haible  <bruno@clisp.org>
26672
26673         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
26674
26675 2003-11-17  Bruno Haible  <bruno@clisp.org>
26676
26677         * lib/vasnprintf.c (alloca): Remove fallback definition.
26678         (freea): Remove definition.
26679         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
26680         Reported by Paul Eggert.
26681
26682 2003-11-16  Paul Eggert  <eggert@twinsun.com>
26683             Bruno Haible  <bruno@clisp.org>
26684
26685         Protect against address arithmetic overflow.
26686         * lib/printf-args.h: Include stddef.h.
26687         (arguments): Change type of field 'count' to size_t.
26688         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
26689         'unsigned int' where appropriate.
26690         * lib/printf-parse.h: Include sys/types.h.
26691         (char_directive): Change type of *arg_index fields to ssize_t.
26692         (char_directives): Change type of fields 'count', max_*_length to
26693         size_t.
26694         * lib/printf-parse.c: Include sys/types.h and xsize.h.
26695         (SSIZE_MAX): Define fallback value.
26696         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
26697         instead of 'int' where appropriate. Check a_allocated, d_allocated
26698         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
26699         * lib/vasnprintf.c: Include xsize.h.
26700         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
26701         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
26702         overflow. Avoid wraparound when converting a width or precision from
26703         decimal to binary.
26704
26705 2003-11-16  Bruno Haible  <bruno@clisp.org>
26706
26707         Update from GNU gettext.
26708         * lib/printf-parse.c: Generalize to it can be compiled for wide
26709         strings.
26710         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
26711         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
26712         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
26713         SNPRINTF): New macros.
26714         Don't include <alloca.h> if the file is used inside libintl.
26715         (local_wcslen): New function, for Solaris 2.5.1.
26716         (VASNPRINTF): Use it instead of wcslen.
26717
26718 2003-11-16  Bruno Haible  <bruno@clisp.org>
26719
26720         * lib/xsize.h (xmax): New function.
26721         (xsum, xsum3, xsum4): Declare as "pure" functions.
26722
26723 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26724
26725         * modules/xalloc (Files): Undo latest change, since xalloc.h
26726         no longer needs SIZE_MAX or PTRDIFF_MAX.
26727
26728 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26729
26730         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
26731         gl_PTRDIFF_MAX.
26732
26733 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26734
26735         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
26736         "return", to pacify some unknown compiler.  Problem reported
26737         by Joerg Schilling.
26738
26739 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26740
26741         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
26742         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
26743         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
26744         heuristic is just as accurate as far as we know, and it removes a
26745         dependency on size_max.m4 and ptrdiff_max.m4.
26746
26747 2003-11-11  Bruno Haible  <bruno@clisp.org>
26748
26749         * modules/xsize (Files): Add m4/size_max.m4.
26750         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
26751
26752 2003-11-11  Bruno Haible  <bruno@clisp.org>
26753
26754         * m4/size_max.m4: New file.
26755         * m4/ptrdiff_max.m4: New file.
26756         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
26757         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
26758         (gl_XALLOC): Invoke it.
26759
26760 2003-11-11  Bruno Haible  <bruno@clisp.org>
26761
26762         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
26763         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
26764         defined.
26765
26766 2003-11-10  Paul Eggert  <eggert@twinsun.com>
26767
26768         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
26769         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
26770         rejected some allocations of exactly SIZE_MAX - 2 bytes.
26771         From Bruno Haible.
26772         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
26773         not (size_t) -1, since it's defined here.
26774
26775 2003-11-09  Karl Berry  <karl@gnu.org>
26776
26777         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
26778
26779 2003-11-06  Paul Eggert  <eggert@twinsun.com>
26780
26781         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
26782         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
26783         Reject sizes of exactly SIZE_MAX bytes.
26784         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
26785         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
26786
26787 2003-11-05  Bruno Haible  <bruno@clisp.org>
26788
26789         * lib/xsize.h: Include limits.h, to avoid a possible collision with
26790         SIZE_MAX defined in <limits.h> on Solaris.
26791
26792 2003-11-04  Jim Meyering  <jim@meyering.net>
26793
26794         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
26795         variable names, rather than @VAR@.
26796         * modules/poll: Likewise.
26797
26798 2003-11-04  Bruno Haible  <bruno@clisp.org>
26799
26800         * modules/xsize: New file.
26801         * modules/linebreak: Depend on xsize.
26802         * MODULES.html.sh (func_all_modules): Add xsize.
26803
26804 2003-11-04  Bruno Haible  <bruno@clisp.org>
26805
26806         * m4/xsize.m4: New file.
26807
26808 2003-11-04  Bruno Haible  <bruno@clisp.org>
26809
26810         * lib/xsize.h: New file.
26811         * lib/linebreak.c: Include xsize.h.
26812         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
26813         argument for overflow.
26814         Suggested by Paul Eggert.
26815
26816 2003-11-03  Karl Berry  <karl@gnu.org>
26817
26818         * config/config.{guess,sub}: update from config.
26819
26820 2003-11-03  Jim Meyering  <jim@meyering.net>
26821
26822         * modules/userspec (lib_SOURCES): Add userspec.h.
26823         (Include): Add "userspec.h".
26824         Improve description.
26825
26826 2003-11-03  Jim Meyering  <jim@meyering.net>
26827
26828         * lib/userspec.c: Include "userspec.h".
26829         * lib/userspec.h: New file.
26830
26831 2003-11-03  Bruno Haible  <bruno@clisp.org>
26832
26833         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
26834
26835 2003-11-03  Bruno Haible  <bruno@clisp.org>
26836
26837         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
26838         available, to avoid (extremely rare) race condition.
26839         Suggested by Paul Eggert.
26840
26841 2003-11-02  Karl Berry  <karl@gnu.org>
26842
26843         * config/srclist.txt (vasprintf.c): sync broken, sigh.
26844
26845 2003-10-31  Paul Eggert  <eggert@twinsun.com>
26846
26847         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
26848         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
26849         (read_filesystem_list): Set and use me_type_malloced.
26850         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
26851         whatever the type happens to be), for brevity and consistency.
26852         Check for size calculation overflow on Alphas running OSF/1.
26853
26854 2003-10-31  Jim Meyering  <jim@meyering.net>
26855
26856         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
26857
26858         * lib/linebuffer.c: Include <string.h> for declaration of memset.
26859
26860 2003-10-30  Paul Eggert  <eggert@twinsun.com>
26861             Bruno Haible  <bruno@clisp.org>
26862
26863         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
26864         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
26865
26866 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
26867
26868         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
26869         netbsd*-gnu*.  Suggested by Robert Millan.
26870
26871 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26872
26873         * modules/group-member: Depend on stdbool.
26874
26875 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26876
26877         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
26878
26879 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26880
26881         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
26882         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
26883         after the 'gnu' in these cases.  This fixes some bugs in the
26884         previous change, and is based on suggestions by Robert Millan.
26885
26886 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26887
26888         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
26889         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
26890         no longer needed.
26891         * lib/quotearg.c (quotearg_n_options): Use it.
26892         * lib/group-member.c: Include <stdbool.h>.
26893         (free_group_info): Arg is now const *; don't free arg.
26894         (get_group_info): Now returns bool and accepts struct group_info *,
26895         rather than returning a malloc'ed struct group_info *.
26896         All uses changed.  Check for overflow in internal size calculation.
26897
26898         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
26899         rather than xmalloc/xrealloc.
26900         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
26901         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
26902         conformance bug: the old code used a pointer after freeing the
26903         storage that it addressed.
26904         * lib/hash.c (hash_initialize): Simplify the code by using
26905         xalloc_oversized rather than doing it by hand.
26906         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
26907         the buffer preserved.  Use free and xmalloc instead.
26908         * lib/quotearg.c (quotearg_n_options): Likewise.
26909         Use a simpler test for size overflow.  Don't use xalloc_oversized
26910         because unsigned int might be wider than size_t (!); this suggests
26911         that we should switch from unsigned int to size_t for slot numbers.
26912
26913 2003-10-28  Paul Eggert  <eggert@twinsun.com>
26914
26915         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
26916         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
26917         NetBSD kernels.  Requested by Richard Stallman.
26918
26919 2003-10-27  Paul Eggert  <eggert@twinsun.com>
26920
26921         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
26922         to allocate the returned structure.  Do not allocate a subarray,
26923         as x2nrealloc will do that.
26924         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
26925         instead of xnrealloc.
26926         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
26927
26928 2003-10-27  Bruno Haible  <bruno@clisp.org>
26929
26930         * lib/stdbool_.h: Better support for BeOS.
26931
26932 2003-10-26  Paul Eggert  <eggert@twinsun.com>
26933
26934         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
26935         now uses inline.
26936
26937 2003-10-26  Paul Eggert  <eggert@twinsun.com>
26938
26939         * lib/xalloc.h (xalloc_oversized): New static inline function, for
26940         callers that want to do their own size-overflow checking.  Include
26941         <stdbool.h>, since xalloc_oversized returns bool.
26942         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
26943         to use xalloc_oversized.
26944
26945         Add two functions x2realloc, x2nrealloc, for programs that grow
26946         arrays dynamically by doubling their sizes.
26947         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
26948         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
26949         New functions.
26950
26951         Port to C99 semantics for 'inline' of external functions.
26952         Bug reported by Bruno Haible.
26953         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
26954         with the old contents of xnmalloc.
26955         (xnmalloc, xmalloc): Use it.
26956         (xnrealloc_inline): New static inline function,
26957         with the old contents of xnrealloc.
26958         (xnrealloc, xrealloc): Use it.
26959
26960         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
26961         that.
26962
26963 2003-10-26  Karl Berry  <karl@gnu.org>
26964
26965         * config/srclist.txt (COPYING.DOC): no longer available from
26966         /gd/gnuorg; don't know where the ultimate source is.
26967
26968 2003-10-25  Paul Eggert  <eggert@twinsun.com>
26969
26970         Fix several address-calculation bugs in the hash modules,
26971         plus some minor code cleanup.
26972
26973         * lib/hash.h: Include <stdbool.h>, for bool.
26974         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
26975         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
26976         hash_get_n_entries, hash_get_max_bucket_length,
26977         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
26978         hash_rehash): Use size_t rather than unsigned.
26979         * lib/hash.c (struct hash_table, hash_get_n_buckets,
26980         hash_get_n_buckets_used, hash_get_n_entries,
26981         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
26982         hash_get_entries, hash_do_for_each, hash_string, is_prime,
26983         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
26984         Likewise.
26985         (SIZE_MAX): Define if not defined.
26986         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
26987         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
26988         hash_print):
26989         Use const * when possible.
26990         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
26991         (check_tuning): Fix bug: if tuning parameters were very close to
26992         0 or 1, rounding errors could have caused subscript violations.
26993         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
26994         (hash_initialize): Add 'fail:' label
26995         to free table and return NULL, and use it to simplify code.
26996         Use calloc rather than clearing the storage ourself.
26997         (hash_initialize, hash_rehash): Check for arithmetic overflow in
26998         buffer size calculations.
26999         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
27000         Include <stddef.h>, for size_t.
27001         * lib/hash-pjw.c (hash_pjw): Likewise.
27002         Switch to method described by Bruno Haible.
27003         Include <limits.h>, for CHAR_BIT.
27004         (SIZE_BITS): New macro.
27005
27006 2003-10-23  Paul Eggert  <eggert@twinsun.com>
27007
27008         * m4/getline.m4 (AM_FUNC_GETLINE):
27009         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
27010         hosts.  Problem reported by Derek Robert Price in
27011         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
27012         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
27013         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
27014
27015 2003-10-21  Paul Eggert  <eggert@twinsun.com>
27016
27017         * lib/getndelim2.c (getndelim2): When size calculation overflows,
27018         ceiling the allocation at NMAX bytes rather than silently
27019         discarding input bytes before NMAX is reached.  This makes
27020         a difference only if NMAX exceeds SIZE_MAX / 2.
27021
27022         * lib/obstack.c: Merge from glibc.
27023         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
27024         Add libc_hidden_def (_obstack_newchunk).
27025         (_obstack_free) [! defined _LIBC]: Remove.
27026         [defined _LIBC]: Make a strong alias from obstack_free, rather than
27027         a clone of the function body.
27028         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
27029         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
27030
27031         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
27032         glibc.
27033         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
27034         arg to memcpy.
27035
27036         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
27037         (obstack_ptr_grow_fast, obstack_int_grow_fast):
27038         Don't use lvalue casts, as GCC plans to remove support for them
27039         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
27040         was also present in the non-GCC version, indicating that this
27041         code had always been buggy and had never been widely used.
27042         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
27043         Use the fast variant of each macro, rather than copying the
27044         definiens of the fast variant; that way, we'll be more likely to
27045         catch future bugs in the fast variants.
27046
27047 2003-10-20  Bruno Haible  <bruno@clisp.org>
27048
27049         * modules/wait-process: New file.
27050         * MODULES.html.sh (func_all_modules): Add wait-process.
27051
27052 2003-10-20  Bruno Haible  <bruno@clisp.org>
27053
27054         * m4/wait-process.m4: New file.
27055
27056 2003-10-20  Bruno Haible  <bruno@clisp.org>
27057
27058         * lib/wait-process.h: New file, from GNU gettext.
27059         * lib/wait-process.c: New file, from GNU gettext.
27060
27061 2003-10-19  Jim Meyering  <jim@meyering.net>
27062
27063         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
27064         HPUX 10.20.
27065
27066 2003-10-18  Karl Berry  <karl@gnu.org>
27067
27068         * config/config.guess: update from config.
27069
27070 2003-10-16  Paul Eggert  <eggert@twinsun.com>
27071
27072         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
27073         (getgroups): First arg is int, not size_t.
27074         Don't let 'free' mangle errno.
27075
27076 2003-10-16  Paul Eggert  <eggert@twinsun.com>
27077
27078         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
27079
27080 2003-10-16  Karl Berry  <karl@gnu.org>
27081
27082         * config/config.{guess,sub}: update from config.
27083
27084 2003-10-16  Jim Meyering  <jim@meyering.net>
27085
27086         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
27087         memcpy.
27088
27089 2003-10-15  Paul Eggert  <eggert@twinsun.com>
27090
27091         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
27092         (SIZE_MAX): Remove.
27093         (new_exclude, add_exclude_file): Initial size no longer needs to
27094         be a power of 2.
27095         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
27096         our own address arithmetic overflow checking.
27097
27098         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
27099         (fnmatch): Do not alloca more than 2000 wide characters;
27100         instead, use malloc for large buffers.
27101         Check for address arithmetic overflow, and return -1
27102         with errno set to ENOMEM in that case.
27103         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
27104         (NEW_PATTERN): Do not alloca more than 8000 bytes;
27105         instead, return -1.  Check for address arithmetic overflow.
27106
27107 2003-10-14  Paul Eggert  <eggert@twinsun.com>
27108
27109         Handle invalid suffixes and overflow independently, so that
27110         callers can treat them independently as needed.  Fix some bugs in
27111         suffix handling, e.g., "100k@" was not diagnosed as an invalid
27112         suffix for a human-readable blocksize.  The major caller-visible
27113         change is the addition of a new
27114         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
27115         that both overflow and suffix chars were found.
27116
27117         * lib/human.c (humblock): Don't check separately for invalid suffix
27118         char; that is xstrtoumax's job (now that its bug is fixed).
27119         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
27120         INTMAX_MAX]: New macros.
27121         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
27122         TYPE_MAXIMUM): New macros.
27123         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
27124         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
27125         if overflow occurs, as it's what __strtol does and it's more useful
27126         in practice.
27127         (__xstrtol): If __strtol reports some error other than ERANGE,
27128         reflect it to the caller as LONGINT_INVALID.  If it reports
27129         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
27130         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
27131         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
27132         value.
27133         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
27134         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
27135         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
27136         [defined UINTMAX_MAX]: New macros.
27137
27138 2003-10-14  Bruno Haible  <bruno@clisp.org>
27139
27140         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
27141
27142 2003-10-14  Bruno Haible  <bruno@clisp.org>
27143
27144         * m4/sig_atomic_t: New file, from GNU gettext.
27145         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
27146
27147 2003-10-14  Bruno Haible  <bruno@clisp.org>
27148
27149         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
27150         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
27151         Also use volatile where needed.
27152
27153 2003-10-12  Paul Eggert  <eggert@twinsun.com>
27154
27155         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
27156         Change maintainer from Bruno Haible to 'all'.
27157
27158 2003-10-12  Paul Eggert  <eggert@twinsun.com>
27159
27160         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
27161
27162 2003-10-12  Paul Eggert  <eggert@twinsun.com>
27163
27164         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
27165         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
27166         and define in terms of the other primitives.
27167         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
27168         (SIZE_MAX): Define if not already defined.
27169         (array_size_overflow): New function.
27170         (xalloc_die): Abort instead of exiting if 'error' returns.
27171         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
27172         (xmalloc, xrealloc): Use them.
27173         (xcalloc): Check for address arithmetic overflow.
27174         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
27175         a bit faster than strcpy.
27176
27177 2003-10-10  Simon Josefsson  <jas@extundo.com>
27178
27179         * modules/argp (Depends-on): Add restrict and strcase.
27180
27181 2003-10-10  Simon Josefsson  <jas@extundo.com>
27182
27183         * m4/argp.m4: Add AC_C_INLINE.
27184
27185 2003-10-08  Paul Eggert  <eggert@twinsun.com>
27186
27187         Merge getpass from libc, plus a few fixes.
27188
27189         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
27190         Include <stdbool.h>.
27191         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
27192         __fsetlocking to empty.
27193         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
27194         do include <bits/libc-lock.h>.
27195         Do not include <fcntl.h>; not needed.
27196         [_LIBC]: Include <wchar.h>.
27197         (NOTCANCEL_MODE): New macro.
27198         (flockfile, funlockfile) [_LIBC]: New macros.
27199         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
27200         [!_LIBC]: New macros.
27201         (call_fclose): New function.
27202         (getpass): Use it.  Save tty stream separately; this simplifies the
27203         code and makes it more reliable if stdin happens to equal stdout.
27204         Invoke __fsetlocking on tty.
27205         Handle thread cancellation if needed.
27206         Namespace cleanup (use __tcgetattr, __getline).
27207         Use bool for Booleans.
27208         [USE_IN_LIBIO]: Handle wide streams.
27209         [!_LIBC]: Unconditionally do the fseek, since we don't know what
27210         stream might go where.
27211
27212         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
27213         doesn't have to include <stdio.h> before us.
27214         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
27215         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
27216         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
27217         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
27218         if not declared, so that we can use getpass.c code from libc without
27219         rewriting it.
27220         (flockfile, ftrylockfile, funlockfile): New macros.
27221
27222 2003-10-08  Paul Eggert  <eggert@twinsun.com>
27223
27224         * modules/getpass: Depend on stdbool.
27225
27226 2003-10-08  Paul Eggert  <eggert@twinsun.com>
27227
27228         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
27229
27230 2003-10-07  Karl Berry  <karl@gnu.org>
27231
27232         * config/config.{guess,sub}: update from config.
27233
27234 2003-10-06  Jim Meyering  <jim@meyering.net>
27235             Bruno Haible  <bruno@clisp.org>
27236
27237         This lets translators provide better translations for the
27238         "Written by ..." part of --version output.
27239         * lib/version-etc.h: Include stdarg.h.
27240         (version_etc_copyright): Declare as readonly.
27241         (version_etc): Make this function variadic with a NULL-terminated list
27242         of author name strings.
27243         (version_etc_va): New declaration.
27244         * lib/version-etc.c: Include stdarg.h, stdlib.h.
27245         (version_etc_copyright): Declare as readonly.
27246         (version_etc_va): New function. Provide a different translatable string
27247         for each possible number of authors < 10. Abbreviate when there are 10
27248         authors or more.
27249         (version_etc): Make this function variadic. Call version_etc_va.
27250         Suggestion from Gary V. Vaughan.
27251
27252         * lib/long-options.h (parse_long_options): Change prototype: the
27253         authors string is moved to the end and becomes variadic.
27254         * lib/long-options.c: Include stdarg.h.
27255         (parse_long_options): Make this function variadic, too.
27256         Call version_etc_va, not version_etc.
27257
27258 2003-10-06  Bruno Haible  <bruno@clisp.org>
27259
27260         * modules/version-etc-2: Remove file.
27261         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
27262
27263 2003-10-06  Bruno Haible  <bruno@clisp.org>
27264
27265         * modules/fatal-signal: New file.
27266         * MODULES.html.sh (func_all_modules): Add fatal-signal.
27267
27268 2003-10-06  Bruno Haible  <bruno@clisp.org>
27269
27270         * m4/fatal-signal.m4: New file.
27271         * m4/signalblocking.m4: New file, from GNU gettext.
27272
27273 2003-10-06  Bruno Haible  <bruno@clisp.org>
27274
27275         * lib/version-etc-2.h: Remove file.
27276         * lib/version-etc-2.c: Remove file.
27277
27278 2003-10-06  Bruno Haible  <bruno@clisp.org>
27279
27280         * lib/fatal-signal.h: New file, from GNU gettext.
27281         * lib/fatal-signal.c: New file, from GNU gettext.
27282
27283 2003-10-05  Paul Eggert  <eggert@twinsun.com>
27284
27285         * README: Rework advice for preventing empty .o files.
27286         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
27287         not <sys/types.h>.
27288
27289 2003-10-04  Karl Berry  <karl@gnu.org>
27290
27291         * lib/argp*: update from libc.
27292
27293 2003-10-04  Karl Berry  <karl@gnu.org>
27294
27295         * config/config.{guess,sub}: update from config.
27296
27297 2003-10-02  Bruno Haible  <bruno@clisp.org>
27298
27299         * modules/lchown (Include): Add lchown.h.
27300         * modules/time_r (Include): Use "..." syntax.
27301         * modules/xgetdomainname (Include): Add xgetdomainname.h.
27302
27303 2003-10-01  Simon Josefsson  <jas@extundo.com>
27304
27305         * MODULES.html.sh (func_all_modules): Move gethostname from section
27306         'based on' to section 'lacking' POSIX:2001.
27307
27308 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
27309
27310         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
27311         to output mode on the same stream.
27312
27313 2003-09-29  Paul Eggert  <eggert@twinsun.com>
27314
27315         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
27316         Fix arg typo in previous patch.
27317
27318 2003-09-28  Jim Meyering  <jim@meyering.net>
27319
27320         * lib/error.c: Correct cpp indentation.
27321
27322 2003-09-27  Paul Eggert  <eggert@twinsun.com>
27323
27324         * modules/free: New file.
27325
27326 2003-09-27  Paul Eggert  <eggert@twinsun.com>
27327
27328         * m4/free.m4: New file.
27329
27330 2003-09-27  Paul Eggert  <eggert@twinsun.com>
27331
27332         * lib/minmax.h (MIN, MAX)
27333         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
27334         Omit the special code that used __typeof__, since we worry that
27335         it could be more trouble than it's worth.  See:
27336         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
27337         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
27338
27339         * lib/free.c: New file.
27340
27341 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
27342
27343         Trivial fixes to Makefile.am parts of module listings.
27344         * modules/strstr: Append strstr.h to lib_SOURCES.
27345         * modules/strcase: Likewise, for strcase.h.
27346
27347 2003-09-27  Karl Berry  <karl@gnu.org>
27348
27349         * config/mkinstalldirs: update from automake.
27350
27351 2003-09-26  Paul Eggert  <eggert@twinsun.com>
27352
27353         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
27354         (error_tail): Do not loop, reallocating temporary buffer, since
27355         the output cannot contain more wide characters than the input
27356         contains bytes, the size must be big enough already.  This avoids
27357         one potential size overflow calculation.  Check for size overflow
27358         when calculating temporary buffer size.  Free temporary buffer
27359         when done, if it was allocated with malloc; this plugs a memory
27360         leak.  Remove casts from void * to pointers, that are no longer
27361         needed now that we're assuming C89 or better.
27362
27363         Merge error changes from glibc.
27364
27365         * lib/error.c, error.h: Update copyright notice header to match glibc.
27366         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
27367         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
27368         Disable cancellation while printing error.
27369         * lib/error.h: Prepend __ to parameter names.
27370
27371 2003-09-26  Jim Meyering  <jim@meyering.net>
27372
27373         * lib/error.c (error_tail): Move some declarations
27374         into inner scope where the local variables are used.
27375
27376 2003-09-26  Bruno Haible  <bruno@clisp.org>
27377
27378         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
27379         stpncpy().
27380         Don't define stpncpy through config.h; it's now done through stpncpy.h.
27381
27382 2003-09-26  Bruno Haible  <bruno@clisp.org>
27383
27384         * lib/stpncpy.h (gnu_stpncpy): New declaration.
27385         (stpncpy): Define as alias for gnu_stpncpy.
27386         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
27387
27388 2003-09-25  Simon Josefsson  <jas@extundo.com>
27389
27390         * lib/xgetdomainname.h: New file.
27391         * lib/xgetdomainname.c: New file.
27392
27393 2003-09-25  Simon Josefsson  <jas@extundo.com>
27394             Bruno Haible  <bruno@clisp.org>
27395
27396         * modules/getdomainname: New file.
27397         * modules/xgetdomainname: New file.
27398         * MODULES.html.sh (func_all_modules): Add getdomainname,
27399         xgetdomainname.
27400
27401 2003-09-25  Simon Josefsson  <jas@extundo.com>
27402             Bruno Haible  <bruno@clisp.org>
27403
27404         * m4/getdomainname.m4: New file.
27405
27406 2003-09-25  Simon Josefsson  <jas@extundo.com>
27407             Bruno Haible  <bruno@clisp.org>
27408
27409         * lib/getdomainname.h: New file.
27410         * lib/getdomainname.c: New file.
27411
27412 2003-09-25  Karl Berry  <karl@gnu.org>
27413
27414         * lib/argp-fmtstream.c, argp-help.c: update from libc.
27415
27416 2003-09-25  Karl Berry  <karl@gnu.org>
27417
27418         * config/install-sh: update from automake.
27419
27420 2003-09-25  Bruno Haible  <bruno@clisp.org>
27421
27422         * modules/version-etc-2: New file, from modules/version-etc with
27423         modifications.
27424         * MODULES.html.sh (func_all_modules): Add version-etc-2.
27425
27426 2003-09-25  Bruno Haible  <bruno@clisp.org>
27427
27428         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
27429         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
27430
27431 2003-09-24  Simon Josefsson  <jas@extundo.com>
27432
27433         * modules/xgethostname: Add xgethostname.h.
27434
27435 2003-09-24  Paul Eggert  <eggert@twinsun.com>
27436
27437         * lib/linebuffer.c (freebuffer): Don't free the argument, just
27438         the buffer associated with the argument.  Bug reported by
27439         Simon Josefsson.
27440
27441 2003-09-24  Paul Eggert  <eggert@twinsun.com>
27442
27443         * README: Document assumptions that 'int' is at least 32 bits
27444         wide, that integer arithmetic is 2's complement without overflow,
27445         that there are no holes in integer values, that adding sizes of
27446         two nonoverlapping objects can't overflow, and that all-bits-zero
27447         yields scalar zero.  Fix spelling and capitalization typos.
27448
27449 2003-09-19  Karl Berry  <karl@gnu.org>
27450
27451         * lib/argp.h: update from libc.
27452
27453 2003-09-17  Paul Eggert  <eggert@twinsun.com>
27454
27455         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
27456         to avoid spurious warnings like "AC_RUN_IFELSE was called before
27457         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
27458
27459 2003-09-17  Paul Eggert  <eggert@twinsun.com>
27460
27461         * gnulib-tool: Use "test -h", not "test -L", for portability
27462         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
27463         (tags_regexp): Remove, since \| doesn't conform to POSIX.
27464         (sed_extract_prog): Issue s commands one-by-one, rather than
27465         using \| in one s command.
27466
27467 2003-09-16  Paul Eggert  <eggert@twinsun.com>
27468
27469         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
27470         input error, instead of returning NULL the next time we are called
27471         (and therefore losing track of errno).
27472
27473 2003-09-16  Bruno Haible  <bruno@clisp.org>
27474
27475         * gnulib-tool (func_create_testdir): Warn about duplicated
27476         dependencies.
27477
27478 2003-09-15  Paul Eggert  <eggert@twinsun.com>
27479
27480         * modules/argmatch, modules/fatal, modules/obstack,
27481         modules/xalloc, modules/xgethostname: Sort dependencies by
27482         importance, not alphabetically.
27483
27484 2003-09-15  Paul Eggert  <eggert@twinsun.com>
27485
27486         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
27487         fails, so that the caller gets the proper errno.
27488
27489         * lib/readutmp.c (read_utmp): Likewise.
27490         Check for fstat error.  Close stream and free storage
27491         when failing.
27492
27493 2003-09-14  Karl Berry  <karl@gnu.org>
27494
27495         * config/srclist.txt (strdup.c): disable for c89 changes.
27496
27497 2003-09-14  Jim Meyering  <jim@meyering.net>
27498
27499         * lib/getloadavg.c: Correct cpp indentation.
27500         * lib/strdup.c: Likewise.
27501         * lib/vasnprintf.c: Likewise.
27502
27503 2003-09-14  Bruno Haible  <bruno@clisp.org>
27504
27505         * modules/fwriteerror: New file.
27506         * MODULES.html.sh (func_all_modules): Add fwriteerror.
27507
27508 2003-09-14  Bruno Haible  <bruno@clisp.org>
27509
27510         * lib/fwriteerror.h: New file.
27511         * lib/fwriteerror.c: New file.
27512
27513 2003-09-12  Paul Eggert  <eggert@twinsun.com>
27514
27515         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
27516         modules/xgethostname, modules/xalloc: Depend on exit.
27517
27518 2003-09-12  Paul Eggert  <eggert@twinsun.com>
27519
27520         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
27521
27522         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
27523         and AC_MINIX, too, so that their extensions are available.
27524
27525         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
27526         This macro has been superseded by gl_BACKUPFILE.
27527
27528         More patches to assume C89 or better.
27529
27530         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
27531
27532         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
27533         unconditionally.
27534         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
27535         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
27536         Include <string.h>, <stdlib.h> unconditionally.
27537         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
27538         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
27539         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
27540         headers or for string.h.
27541         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
27542         or strtoul.
27543
27544         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
27545         headers.
27546         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
27547         * m4/userspec.m4 (gl_USERSPEC): Likewise.
27548         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
27549         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
27550         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
27551         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
27552         memcpy, memset.
27553         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
27554         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
27555         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
27556         strtol.
27557         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
27558         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
27559         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
27560         strtoul.
27561
27562 2003-09-12  Paul Eggert  <eggert@twinsun.com>
27563
27564         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
27565         * lib/obstack.c [!defined _LIBC]: Likewise.
27566         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
27567         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
27568         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
27569
27570         More changes to assume C89 or better.
27571
27572         * lib/error.c (error_tail): Assume vprintf.
27573
27574         * lib/argmatch.c (getenv): Remove decl.
27575         * lib/progreloc.c (get_full_program_name): Define via prototype.
27576         * lib/setenv.c (clearenv): Likewise.
27577         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
27578         needed.
27579         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
27580         (malloc, memcpy): Remove decls.
27581         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
27582         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
27583         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
27584         (memcpy): Remove macro.
27585         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
27586         (__P): Remove.  All uses removed.
27587         (PTR): Remove.  All uses changed to void *.
27588         (CHAR_BIT, NULL): Remove.
27589         (spaces, zeros, memset_space, memset_zero)
27590         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
27591         Remove.
27592         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
27593         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
27594         Define with prototype.
27595         Remove now-unnecessary prototype decl.
27596         (extra_args_spec): Assume ANSI C.  All uses changed.
27597         (extra_args_spec_iso): Remove.
27598         (my_strftime, emacs_strftimeu): Define via prototype.
27599         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
27600         unconditionally.
27601         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
27602         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
27603         (strtoul, strtol): Remove decls.
27604         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
27605         LONG_MAX): Remove.
27606         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
27607         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
27608         (LOCALE_PARAM_PROTO): New macro.
27609         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
27610         (INTERNAL (strtol), strtol): Define with a prototype.
27611         (PARAMS): Remove.  All uses removed.
27612         * lib/tempname.c: Include <string.h> unconditionally.
27613         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
27614         * lib/xgethostname.c (main): Define with a prototype.
27615         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
27616         Include <stdlib.h> unconditionally.
27617         (calloc, malloc, realloc, free): Remove decls.
27618         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
27619         Include <stdlib.h> unconditionally.  Sort include file names.
27620         (strtod): Remove.
27621         (xstrtod): Define with a prototype.
27622         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
27623         (strtol, strtoul): Remove decls.
27624
27625 2003-09-11  Paul Eggert  <eggert@twinsun.com>
27626
27627         More patches to assume C89 or better.
27628         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
27629         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
27630         string.h, memchr, STDC_HEADERS.
27631
27632 2003-09-11  Paul Eggert  <eggert@twinsun.com>
27633
27634         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
27635         Include <stdlib.h>, <string.h> unconditionally.
27636         Remove now-unnecessary cast to char *.
27637         * lib/strnlen.c: Include <string.h> unconditionally.
27638         * lib/yesno.c (yesno): Define with a prototype.
27639
27640 2003-09-11  Bruno Haible  <bruno@clisp.org>
27641
27642         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
27643
27644 2003-09-10  Jim Meyering  <jim@meyering.net>
27645
27646         * lib/error.c: Correct indentation of cpp directives.
27647
27648 2003-09-10  Bruno Haible  <bruno@clisp.org>
27649
27650         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
27651         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
27652         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
27653         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
27654         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
27655         <stdlib.h> and <string.h> checks.
27656         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
27657         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
27658
27659 2003-09-10  Bruno Haible  <bruno@clisp.org>
27660
27661         * lib/strcspn.c: Include <string.h> unconditionally.
27662         * lib/strpbrk.c: Include <string.h> unconditionally.
27663         * lib/strstr.c: Include <string.h> unconditionally.
27664         * lib/unicodeio.c: Include <string.h> unconditionally.
27665         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
27666         * lib/unsetenv.c: Likewise.
27667         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
27668         * lib/yesno.c: Include <stdlib.h> unconditionally.
27669         (rpmatch): Add prototype.
27670
27671 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27672
27673         More patches to assume C89 or better.
27674         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
27675         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
27676         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
27677         or for string.h.
27678         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
27679         stdlib.h.
27680         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
27681         C headers.
27682         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
27683         string.h.
27684         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
27685         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
27686         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
27687         or for string.h.
27688         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
27689         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
27690         C headers.
27691         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
27692         memcpy.
27693         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
27694         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
27695         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
27696         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
27697         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
27698         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
27699         string.h, free.
27700         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
27701         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
27702         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
27703         C headers, or for string.h.
27704         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
27705         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
27706         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
27707         headers, memory.h, stdlib.h, string.h, strings.h.
27708         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
27709         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
27710         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
27711         strchr.
27712         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
27713         headers, memory.h, string.h.
27714         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
27715         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
27716         free.
27717         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
27718         headers.
27719         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
27720         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
27721         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
27722         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
27723         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
27724
27725 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27726
27727         More K&R removal.
27728
27729         * lib/acosl.c (main): Use a prototype.
27730         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
27731         tanl.c: Likewise.
27732
27733         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
27734
27735         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
27736         (getopt, etopt_long, getopt_long_only, _getopt_internal)
27737         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
27738         with a prototype.
27739         * lib/getopt.c (const): Remove macro.
27740         Include <string.h> unconditionally.
27741         (my_index): Remove; all uses changed to strchr.
27742         (strlen): Remove decl.
27743         (exchange): Remove forward decl; no longer needed.
27744         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
27745         Define with prototype.
27746         * lib/getopt1.c (const): Remove macro.
27747         (getopt_long, getopt_long_only, main): Define with prototype.
27748
27749         * lib/getugroups.c: Include <string.h> unconditionally.
27750
27751         * lib/getusershell.c: Include <stdlib.h> unconditionally.
27752         (getusershell, setusershell, endusershell, readname, main):
27753         Define with prototypes.
27754
27755         * lib/group-member.c: Include group-member.h first.
27756         Include <stdlib.h> unconditionally.
27757
27758         * lib/hard-locale.c: Include hard-locale.h first.
27759         Include <stdlib.h>, <string.h> unconditionally.
27760
27761         * lib/hash.c (free, malloc): Remove decls.
27762         Include <stdlib.h> unconditionally.
27763
27764         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
27765         (getenv): Do not declare.
27766
27767         * lib/idcache.c: Include <string.h> unconditionally.
27768
27769         * lib/long-options.c: Include long-options.h first, to test interface.
27770         Include <stdlib.h> unconditionally.
27771
27772         * lib/makepath.c: Include makepath.h first, to test interface.
27773         Include <stdlib.h> and <string.h> unconditionally.
27774
27775         * lib/linebuffer.c: Include <stdlib.h>.
27776         (free): Remove decl.
27777
27778         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
27779         stddef.h. rpl_malloc returns void *, not char *.
27780         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
27781         prototype.
27782
27783         * lib/md5.h: Include <limits.h> unconditionally.
27784         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
27785         (__P): Remove; all uses removed.
27786         * lib/md5.c: Include "md5.h" first.
27787         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
27788         md5_buffer, md5_process_bytes, md5_process_block):
27789         Define with prototypes.
27790         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
27791         * lib/sha.c: Include "sha.h" first.
27792         Include <stdlib.h>, <string.h> unconditionally.
27793
27794         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
27795         * lib/memcmp.c (__ptr_t): Likewise.
27796         * lib/memrchr.c (__ptr_t): Likewise.
27797         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
27798         Include <string.h> unconditionally.
27799         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
27800         * lib/memchr.c: Include <stdlib.h> unconditionally.
27801         * lib/memchr.c (LONG_MAX): Remove.
27802         * lib/memrchr.c (LONG_MAX): Likewise.
27803         * lib/memchr.c (__memchr): Define via a prototype.
27804         * lib/memrchr.c (__memrchr): Likewise.
27805         * lib/memcmp.c (__P): Remove, and remove all uses.
27806         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
27807         Remove forward decls; no longer needed.
27808         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
27809         Use types required by C89 in prototype.
27810
27811         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
27812         * lib/savedir.c: Likewise.
27813         * lib/mkdir.c (free): Remove decl.
27814         * lib/rmdir.c (rmdir): Define with a prototype.
27815         * lib/savedir.c: Include savedir.h first, to test interface.
27816
27817         * lib/mktime.c (STDC_HEADERS): Remove.
27818         Include <stdlib.h>, <string.h> unconditionally.
27819
27820         * lib/modechange.c: Include <stdlib.h> unconditionally.
27821         (malloc): Remove decl.
27822
27823         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
27824         (free): Remove decl.
27825
27826         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
27827         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
27828         (This type really should be intptr_t, but that's a C99ism.)
27829         (_obstack_memcpy): Remove: all uses changed to memcpy.
27830         Include <string.h> unconditionally.
27831         (struct obstack): Assume __STDC__ for types of members
27832         chunkfun, freefun, extra_arg.
27833         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
27834         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
27835         obstack_begin, obstack_specify_allocation,
27836         obstack_specify_allocation_with_arg, obstack_chunkfun,
27837         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
27838         Remove unprototyped decls and the macros that use them.
27839         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
27840         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
27841         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
27842         (defined __STDC__ && __STDC__)]:
27843         Remove nonprototyped code.
27844         Include <stdlib.h> unconditionally.
27845         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
27846         _obstack_allocated_p, _obstack_free, obstack_free,
27847         _obstack_memory_used, print_and_abort):
27848         Define using prototypes.
27849         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
27850         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
27851         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
27852         obstack_next_free, obstack_object_size, obstack_room) [0]:
27853         Remove unused, unprototyped code.
27854
27855         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
27856
27857         * lib/physmem.c (physmem_total, physmem_available, main): Define
27858         with prototypes.
27859
27860         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
27861         (main): Define with a prototype.
27862
27863         * lib/posixver.c (getenv): Remove decl.
27864
27865         * lib/putenv.c (malloc): Returns void *, not char *.
27866         Include <string.h> unconditionally.
27867         (strchr, memcpy, NULL): Do not define.
27868
27869         * lib/readtokens.c: Include readtokens.h first, to test interface.
27870         Include <stdlib.h>, <string.h> unconditionally.
27871         (init_tokenbuffer): Define with a prototype.
27872
27873         * lib/regex.c (PARAMS): Remove.  All uses removed.
27874         All uses of _RE_ARGS removed, too.
27875         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
27876         unconditionally.
27877         (bzero): Assume memset exists.
27878         (memcmp, memcpy, NULL): Remove.
27879         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
27880         char, or assignments to local vars of type signed char.
27881         (init_syntax_once, PREFIX(extract_number_and_incr),
27882         PREFIX(print_partial_compiled_pattern),
27883         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
27884         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
27885         PREFIX(regex_grow_registers), PREFIX(regex_compile),
27886         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
27887         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
27888         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
27889         wcs_compile_range, byte_compile_range, truncate_wchar,
27890         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
27891         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
27892         count_mbs_length, wcs_re_match_2_internal,
27893         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
27894         PREFIX(alt_match_null_string_p),
27895         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
27896         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
27897         regfree, PREFIX(extract_number)): Define with prototype.  Remove
27898         now-unnecessary declaration, if any.
27899         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
27900         regcomp, regexec):
27901         Remove now-unnecessary casts among pointer types.
27902         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
27903
27904         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
27905         (free): Remove decl.
27906
27907         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
27908
27909         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
27910         (free): Remove decl.
27911
27912         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
27913         * lib/xgetcwd.c: Likewise.
27914
27915         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
27916         (free): Remove decl.
27917
27918         * lib/strchrnul.c (strchrnul): Define with a prototype.
27919         Fix bug: c_in was not converted to char before searching.
27920
27921         The following changes are not K&R related:
27922
27923         * lib/group-member.h: Include <sys/types.h>, so that this file is
27924         self-contained.
27925         * lib/makepath.h: Likewise.
27926
27927         * lib/getusershell.c (readname, default_index, line_size, readname):
27928         Use size_t, not int, for sizes.
27929         (readname): If the size overflows, report an error instead of
27930         looping forever.
27931
27932 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27933
27934         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
27935         libc.
27936
27937 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27938
27939         * README: New section: portability guidelines.
27940
27941 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27942
27943         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
27944         C89 spec.
27945
27946 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27947
27948         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
27949
27950 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27951
27952         Assume C89 or better; remove K&R cruft.
27953         A few of these changes were first proposed by Derek Robert Price
27954         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
27955
27956         * lib/addext.c: Include <string.h> unconditionally.
27957         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
27958         Don't declare getenv or malloc.
27959
27960         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
27961         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
27962         (NULL): Remove.
27963         (find_stack_direction, alloca): Use prototypes.
27964
27965         * lib/atexit.c (atexit): Define using a prototype.
27966
27967         * lib/basename.c, dirname.c, stripslash.c:
27968         Include <string.h> unconditionally.
27969
27970         * lib/bcopy.c: Include <stddef.h>.
27971         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
27972
27973         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
27974
27975         * lib/error.h (error, error_at_line, error_print_progname)
27976         [! (defined (__STDC__) && __STDC__)]: Remove decls.
27977         * lib/error.c: Include error.h first, to check interface.
27978         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27979         (VA_START): Remove; all uses changeed to va_start.
27980         (exit, strerror): Remove decls.
27981         (error_print_progname): Prototype uncondionally.
27982         Don't include <errno.h>; no longer needed.
27983         (private_strerror): Remove.
27984         (error_tail): Always define.
27985         (error, error_at_line): Assume C89 or better; always use prototypes.
27986         * lib/fatal.c: Include "fatal.h" first, to test interface.
27987         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27988         (VA_START): Remove; all uses changed to va_start.
27989         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
27990         this case.
27991         (exit): Remove decl.
27992         (fatal): Prototype unconditionally.  Assume va_start works.
27993         Abort at end, to pacify gcc.
27994
27995         * lib/euidaccess.c (main): Define with a prototype.
27996
27997         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
27998
27999         * lib/exitfail.c: Include <stdlib.h> unconditionally.
28000
28001         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
28002         prototypes.
28003         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
28004         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
28005         (getenv): Remove decl.
28006         (fnmatch): Define using a prototype.
28007         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
28008         (FCT): Define using a prototype.
28009
28010         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
28011
28012         * lib/gethostname.c: Include <stddef.h>.
28013         (gethostname): Define with prototype.  Length is size_t, not int.
28014
28015 2003-09-08  Paul Eggert  <eggert@twinsun.com>
28016
28017         Assume C89 or better; remove K&R cruft.
28018         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
28019         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
28020         string.h, getenv, malloc.
28021         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
28022         headers.
28023         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
28024         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
28025         do not check for strerror.
28026         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
28027         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
28028         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
28029         do not check for doprnt or vprintf.
28030         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
28031         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
28032
28033 2003-09-08  Paul Eggert  <eggert@twinsun.com>
28034
28035         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
28036         getversion.c should have been removed then, but was accidentally
28037         preserved.
28038
28039         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
28040         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
28041
28042 2003-09-08  Karl Berry  <karl@gnu.org>
28043
28044         * config/config.sub, config.guess, srclistvars.sh: update from savannah
28045                 config, forget about prep.
28046
28047         * config/depcomp, missing: update from automake.
28048
28049 2003-09-07  Paul Eggert  <eggert@twinsun.com>
28050
28051         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
28052         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
28053
28054 2003-09-07  Paul Eggert  <eggert@twinsun.com>
28055
28056         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
28057         copy_tm_result.  Bug reported by Simon Josefsson in
28058         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
28059
28060 2003-09-06  Paul Eggert  <eggert@twinsun.com>
28061
28062         * m4/time_r.m4: New file.
28063         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
28064         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
28065         is. Check for timegm declaration.
28066         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
28067         Do not check for gmtime_r.
28068         Replace mktime if __mktime_internal does not exist and if mktime
28069         hasn't been replaced already.
28070
28071 2003-09-06  Paul Eggert  <eggert@twinsun.com>
28072
28073         * lib/time_r.c, lib/time_r.h: New files.
28074
28075         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
28076         __localtime_r.
28077         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
28078         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
28079
28080         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
28081         __gmtime_r.
28082         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
28083         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
28084         Include <time_r.h>.
28085
28086         * lib/timegm.c: Switch to glibc implementation, with the following
28087         changes:
28088         [defined HAVE_CONFIG_H]: Include <config.h>.
28089         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
28090         (__mktime_internal) [!defined _LIBC]: New decl.
28091         (__gmtime_r) [!defined _LIBC]: New macro and function.
28092         (timegm): Use a prototype, since gnulib assumes C89.
28093         Do not bother declaring tmp to be const, as it's not really usefu.
28094         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
28095         (timegm): Declare only if HAVE_DECL_TIMEGM.
28096
28097 2003-09-06  Paul Eggert  <eggert@twinsun.com>
28098
28099         * MODULES.html.sh (func_all_modules): Add time_r.
28100         * modules/time_r: New file.
28101         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
28102         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
28103
28104 2003-09-03  Paul Eggert  <eggert@twinsun.com>
28105
28106         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
28107         Bug reported by Lute Kamstra in
28108         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
28109
28110         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
28111         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
28112         course with correspondingly smaller numbers for tomorrow and
28113         yesterday.  From Tadayoshi Funaba.  Originally installed into
28114         sh-utils on 1999-08-07, but the patch got lost (I guess during the
28115         coreutils merge?).
28116
28117 2003-08-31  Simon Josefsson  <jas@extundo.com>
28118
28119         * modules/timegm: New file.
28120         * MODULES.html.sh (func_all_modules): Add timegm.
28121
28122 2003-08-31  Simon Josefsson  <jas@extundo.com>
28123
28124         * m4/timegm.m4: New file.
28125
28126 2003-08-31  Simon Josefsson  <jas@extundo.com>
28127
28128         * lib/timegm.h: New file.
28129         * lib/timegm.c: New file.  Based on
28130         wget-1.8.2/src/http.c:mktime_from_utc.
28131
28132 2003-08-31  Karl Berry  <karl@gnu.org>
28133
28134         * lib/argp.h: update from libc.
28135
28136 2003-08-28  Bruno Haible  <bruno@clisp.org>
28137
28138         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
28139         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
28140         followed by '#define fnmatch fnmatch_posix' gives an error.
28141
28142 2003-08-28  Bruno Haible  <bruno@clisp.org>
28143
28144         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
28145         warning on QNX, which defines O_BINARY to 000000.
28146
28147 2003-08-27  Jim Meyering  <jim@meyering.net>
28148
28149         * m4/mkstemp.m4: Require that the system mkstemp be able to create
28150         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
28151         would fail after 32.  Reported by Danny Levinson.  Details here:
28152         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
28153
28154 2003-08-24  Bruno Haible  <bruno@clisp.org>
28155
28156         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
28157         MSVC7 <stdio.h> is included later.
28158
28159 2003-08-22  Simon Josefsson  <jas@extundo.com>
28160
28161         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
28162
28163 2003-08-20  Karl Berry  <karl@gnu.org>
28164
28165         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
28166
28167 2003-08-20  Bruno Haible  <bruno@clisp.org>
28168
28169         * modules/progname: New file.
28170         * MODULES.html.sh (func_all_modules): Add progname.
28171
28172 2003-08-20  Bruno Haible  <bruno@clisp.org>
28173
28174         * lib/progname.h: New file, from GNU gettext.
28175         * lib/progname.c: New file, from GNU gettext.
28176         * lib/progreloc.c: New file, from GNU gettext.
28177
28178 2003-08-19  Jim Meyering  <jim@meyering.net>
28179
28180         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
28181         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
28182
28183 2003-08-19  Bruno Haible  <bruno@clisp.org>
28184
28185         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
28186         more.
28187
28188 2003-08-19  Bruno Haible  <bruno@clisp.org>
28189
28190         * lib/xstrdup.c: Assume <string.h> exists.
28191
28192 2003-08-18  Paul Eggert  <eggert@twinsun.com>
28193
28194         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
28195         in makefile rules.
28196
28197 2003-08-18  Jim Meyering  <jim@meyering.net>
28198
28199         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
28200         * m4/lib-ld.m4: Likewise.
28201
28202 2003-08-18  Jim Meyering  <jim@meyering.net>
28203
28204         * lib/setenv.h: Indent nested cpp directive.
28205         * lib/vasnprintf.c: Remove trailing blanks.
28206
28207 2003-08-17  Simon Josefsson  <jas@extundo.com>
28208
28209         * modules/xstrndup: New file.
28210         * MODULES.html.sh (func_all_modules): Add xstrndup.
28211
28212 2003-08-17  Simon Josefsson  <jas@extundo.com>
28213
28214         * modules/argp: Fix autoconf macro name. Add more dependencies.
28215
28216 2003-08-17  Simon Josefsson  <jas@extundo.com>
28217
28218         * m4/xstrndup.m4: New file.
28219
28220 2003-08-17  Simon Josefsson  <jas@extundo.com>
28221
28222         * m4/argp.m4: New file.
28223
28224 2003-08-17  Simon Josefsson  <jas@extundo.com>
28225             Bruno Haible  <bruno@clisp.org>
28226
28227         * lib/xstrndup.h: New file.
28228         * lib/xstrndup.c: New file.
28229
28230 2003-08-17  Bruno Haible  <bruno@clisp.org>
28231
28232         * modules/strndup (Files, Include): Add lib/strndup.h.
28233
28234 2003-08-17  Bruno Haible  <bruno@clisp.org>
28235
28236         * modules/euidaccess (Files): Add lib/euidaccess.h.
28237
28238 2003-08-17  Bruno Haible  <bruno@clisp.org>
28239
28240         * lib/strndup.h: New file.
28241
28242 2003-08-17  Bruno Haible  <bruno@clisp.org>
28243
28244         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
28245         like AC_GNU_SOURCE.
28246         * modules/extensions (configure.ac): Comment out the invocation of
28247         gl_USE_SYSTEM_EXTENSIONS.
28248
28249 2003-08-16  Paul Eggert  <eggert@twinsun.com>
28250
28251         Merges from coreutils, etc.
28252         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
28253         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
28254         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
28255         fixing a typo.
28256         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
28257         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
28258
28259 2003-08-16  Paul Eggert  <eggert@twinsun.com>
28260
28261         Document merge from coreutils.
28262         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
28263         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
28264         * modules/utime: Add m4/utimes-null.m4.
28265
28266 2003-08-16  Paul Eggert  <eggert@twinsun.com>
28267
28268         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
28269         space, undoing this 2003-08-12 change:
28270         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
28271
28272 2003-08-16  Paul Eggert  <eggert@twinsun.com>
28273
28274         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
28275         strtoul.c from libc, undoing this 2003-08-12 change:
28276         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
28277
28278 2003-08-16  Jim Meyering  <jim@meyering.net>
28279
28280         Merges from coreutils.
28281         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
28282         prefix.  Adjust cache variables similarly.  Create 500 rather than
28283         just 300 files, to exercise bug on Darwin6.5, too.
28284         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
28285         $missing_dir.
28286         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
28287         AM_SYS_POSIX_TERMIOS.
28288         Reported by mkc@mathdogs.com.
28289         Also change use of $am_cv_sys_posix_termios
28290         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
28291         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
28292         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
28293         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
28294         in /proc/mounts until it finds one with matching device number.  This
28295         is unnecessary when the FILE argument *is* a mount point.  No stat call
28296         is necessary in that case.  So, disable the statvfs-testing code on
28297         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
28298         as RedHat bug# 84846.
28299         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
28300         to 1MB, so as not to render systems with no stack size limit (e.g.,
28301         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
28302         Include <unistd.h>.  On some systems,
28303         it is required for the definition of _SC_PAGESIZE.
28304
28305 2003-08-16  Jim Meyering  <jim@meyering.net>
28306
28307         Merge from coreutils.
28308         * lib/xstrtoimax.c: #else #if -> #elif.
28309         * lib/xstrtoumax.c: Likewise.
28310
28311 2003-08-16  Jim Meyering  <jim@meyering.net>
28312
28313         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
28314         * m4/utimes.m4: Removed.
28315         * m4/utimes-null.m4: Renamed from utimes.m4.
28316
28317         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
28318         to 1MB, so as not to render systems with no stack size limit (e.g.,
28319         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
28320         Include <unistd.h>.  On some systems,
28321         it is required for the definition of _SC_PAGESIZE.
28322
28323 2003-08-16  Jim Meyering  <jim@meyering.net>
28324         and Paul Eggert  <eggert@cs.ucla.edu>
28325
28326         Merges from coreutils, etc.
28327
28328         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
28329         using the latest version from cvs.  This avoids problems with #line
28330         directives using a vendor (Sun) compiler.
28331         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
28332         Don't set GETGROUPS_LIB here; now it's
28333         done via getgroups.m4's wrapper function.
28334         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
28335         rather than just in sh-util/configure.in, so that the
28336         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
28337         same.
28338         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
28339         AC_FUNC_GETLOADAVG where to find getloadavg.c.
28340         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
28341         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
28342         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
28343         Remove code that is now done by the newly-required macros.
28344         Append $(EXEEXT) to DF_PROG.
28345         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
28346         Do not invoke or require the following here,
28347         since prereq.m4 or some gnulib .m4 now does this for us:
28348         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
28349         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
28350         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
28351         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
28352         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
28353         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
28354         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
28355         AC_FUNC_OBSTACK.
28356         Do not replace the following functions, as this is now the job
28357         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
28358         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
28359         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
28360         atexit getpass, strdup, getpagesize.
28361         Replace 'raise'.
28362         Do not check for the following functions, as this is now the job
28363         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
28364         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
28365         setregid.
28366         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
28367         Check for sys/sysctl.h.
28368         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
28369         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
28370         of checking for ssize_t ourselves.
28371
28372         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
28373         Require every macro that gnulib/modules/* suggests for us.
28374         (jm_PREREQ_ADDEXT): New macro.
28375         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
28376         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
28377
28378         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
28379         (gl_PHYSMEM): Use it.
28380         Also check for `table' function.
28381         Check for new headers and functions.
28382         Add check for sys/sysmp.h.
28383         With suggestions from Kaveh Ghazi.
28384         Ignore headers that are present but cannot be compiled.  This
28385         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
28386         C 5.4.
28387
28388 2003-08-15  Paul Eggert  <eggert@twinsun.com>
28389
28390         Document merge from coreutils.
28391         * modules/userspec: Depend on posixver.
28392         * modules/strftime: Depend on tzset.
28393
28394 2003-08-15  Paul Eggert  <eggert@twinsun.com>
28395
28396         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
28397         rather than tab, after '#' in shell-script copyright notices.
28398         Suggested by Bruno Haible.
28399
28400 2003-08-15  Paul Eggert  <eggert@twinsun.com>
28401
28402         * config/srclist-update: Use three spaces, rather than tab, after '#'
28403         in shell-script copyright notices.  Suggested by Bruno Haible.
28404         Remove unnecessary parenthesization in regular expression.
28405
28406 2003-08-15  Jim Meyering  <jim@meyering.net>
28407
28408         Merge from coreutils.
28409         * lib/xgethostname.c: Include <stdlib.h>.
28410         (xghostname): Don't exit for anything other than memory-related
28411         failure; just return NULL.
28412         * lib/userspec.c: Include "posixver.h".
28413         (parse_user_spec): Accept `.' as a separator only
28414         in pre-POSIX-200112 mode.
28415         * lib/strtoimax.c: Use #elif rather than #else #if.
28416         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
28417         Remove function, now that we can rely on a working tzset function.
28418         [!_LIBC]: Ensure that the required autoconf test has been run.
28419         [!defined _NL_CURRENT && HAVE_STRFTIME]:
28420         Use underlying_strftime for %r.
28421         * lib/sha.c: Merge in some clean-up and optimization changes from
28422         glibc.
28423         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
28424         Ensure that it is a multiple of 64.
28425         Rearrange loop exit tests so as to avoid performing an
28426         additional fread after encountering an error or EOF.
28427         * lib/realloc.c: Update copyright date.
28428
28429 2003-08-15  Jim Meyering  <jim@meyering.net>
28430         and Paul Eggert  <eggert@twinsun.com>
28431
28432         Merge from coreutils.
28433         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
28434         member but strut utmpx does not.  Needed for AIX 4.3.3.
28435         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
28436
28437 2003-08-15  Jim Meyering  <jim@meyering.net>
28438         and Paul Eggert  <eggert@cs.ucla.edu>
28439
28440         Merges from coreutils, etc.
28441         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
28442         Require gl_FUNC_TZSET_CLOBBER.
28443         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
28444         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
28445         members.
28446
28447 2003-08-14  Paul Eggert  <eggert@twinsun.com>
28448
28449         Help the merge from coreutils.
28450         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
28451         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
28452         * m4/tzset.m4: Use it too.
28453
28454 2003-08-14  Paul Eggert  <eggert@twinsun.com>
28455
28456         * modules/tzset: New file.
28457
28458 2003-08-14  Jim Meyering  <jim@meyering.net>
28459
28460         Merges from coreutils.
28461         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
28462         variable names, rather than @FNMATCH_H@.
28463         * modules/alloca: Likewise for $(ALLOCA_H).
28464
28465         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
28466         the three copies of the literal target, `fnmatch.h'.
28467         * modules/alloca (alloca.h): Likewise.
28468
28469 2003-08-14  Jim Meyering  <jim@meyering.net>
28470
28471         Merge from coreutils.
28472         * m4/tzset.m4: New file.
28473         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
28474         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
28475         otherwise, AIX 5.1 systems would end up using the latter.
28476         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
28477         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
28478         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
28479         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
28480
28481 2003-08-14  Jim Meyering  <jim@meyering.net>
28482
28483         Merge from coreutils.
28484         * lib/obstack.h: Whitespace changes.
28485         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
28486         and xcalloc return values.
28487         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
28488         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
28489         hang on OSF/1 5.1 for DIR on both local and remote file systems.
28490         Reported by (and fix confirmed by) Nelson H. F. Beebe.
28491         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
28492         error from mntctl.
28493         Use mntctl's return value to drive the entry-processing loop, since
28494         we can't rely on the value of the vmt_length member in the last
28495         entry.  On some systems doing so could result in exhausting
28496         virtual memory.  Based in part on a patch from Mike Jetzer.
28497
28498 2003-08-14  Jim Meyering  <jim@meyering.net>
28499         and Paul Eggert  <eggert@twinsun.com>
28500
28501         Merges from coreutils, plus other fixes.
28502         * lib/physmem.c: Merge in portability changes from gcc/libiberty
28503         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
28504         for credits and details.  Thanks to Kaveh Ghazi for helping
28505         to keep these files in sync.
28506         (ARRAY_SIZE): Define it.
28507         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
28508         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
28509         (memcasecmp): Don't assume size_t fits in unsigned int.
28510         Remove casts and duplicate code.
28511         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
28512         (memcpy): Remove definition.
28513         Merge in some clean-up and optimization changes from glibc.
28514         [BLOCKSIZE]: Move definition to top of file.
28515         Ensure that it is a multiple of 64.
28516         Rearrange loop exit tests so as to avoid performing an
28517         additional fread after encountering an error or EOF.
28518         * lib/md5.h (md5_uintptr): Define.
28519         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
28520         return to the initial working directory.  Preserve errno
28521         for caller.
28522         * lib/idcache.c: Include "xalloc.h".
28523         (xmalloc, xrealloc): Remove decls.
28524         (getuser): Remove casts no longer required in C89.
28525         * lib/human.c: Include stdio.h, for sprintf.
28526         * lib/group-member.c: Include "xalloc.h".
28527         (xmalloc, xrealloc): Remove decls.
28528         (get_group_info): Remove casts no longer required in C89.
28529         * lib/getusershell.c (readname): Remove casts no longer required in
28530         C89.
28531         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
28532         * lib/getline.c: Whitespace fix, from coreutils.
28533
28534 2003-08-13  Paul Eggert  <eggert@twinsun.com>
28535
28536         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
28537         Check for isascii.
28538
28539         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
28540         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
28541         Undo previous (whitespace-only) change.
28542
28543 2003-08-13  Paul Eggert  <eggert@twinsun.com>
28544
28545         * lib/exclude.c: Include <ctype.h>
28546         (IN_CTYPE_DOMAIN): New macro.
28547         (is_space): New fn.
28548         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
28549         and empty lines.
28550
28551         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
28552         Undo previous (whitespace-only) change.
28553
28554 2003-08-13  Paul Eggert  <eggert@twinsun.com>
28555
28556         * config/srclist-update: Change update back to the old behavior,
28557         leaving whitespace alone.  Use one 'sed' command rather than a
28558         pipeline.
28559         (fixlicense): Now a variable, not a function.
28560         (remove_trailing_blanks): Remove.
28561         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
28562         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
28563         Undo previous (whitespace-only) change.
28564
28565 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28566
28567         Merge from coreutils.
28568         * modules/euidaccess: Add lib_SOURCES, include for new
28569         file euidaccess.h
28570
28571 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28572
28573         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
28574         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
28575         Normalize leading white space and remove trailing white space.
28576
28577         Merge from coreutils
28578         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
28579
28580         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
28581         0.12.1.  These files are now being upgraded automatically by
28582         ../config/srclist-update.
28583
28584 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28585
28586         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
28587         Normalize leading white space and remove trailing white space.
28588         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
28589         notice, as per ../config/srclist-update.
28590
28591         Merge from coreutils.
28592         * lib/euidaccess.h: New file.
28593         * lib/euidaccess.c: Include it.
28594         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
28595         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
28596         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
28597
28598 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28599
28600         * config/srclist-update: Add copyright notice.
28601         (remove_id_lines, remove_trailing_blanks): New constants.
28602         (fixfile): Use them to normalize spacing a bit in copied files.
28603         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
28604         Normalize leading white space and remove trailing white space.
28605
28606         * config/texinfo.tex: Sync with texinfo.
28607
28608         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
28609         strtoul.c from libc, to merge coreutils whitespace changes.
28610
28611         * config/srclist.txt: Get the following m4 files from gettext:
28612         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
28613         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
28614         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
28615         wint_t.m4.
28616
28617 2003-08-12  Karl Berry  <karl@gnu.org>
28618
28619         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
28620         been made.
28621
28622 2003-08-11  Paul Eggert  <eggert@twinsun.com>
28623
28624         * modules/gnu-source, m4/gnu-source.m4:
28625         Remove; we're assuming Autoconf 2.54 or later now.
28626         Suggested by Bruno Haible.
28627         * MODULES.html.sh (func_all_modules): Remove gnu-source.
28628
28629 2003-08-11  Bruno Haible  <bruno@clisp.org>
28630
28631         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
28632
28633 2003-08-11  Bruno Haible  <bruno@clisp.org>
28634
28635         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
28636         (vasnprintf): Use it instead of wcslen.
28637
28638 2003-08-11  Bruno Haible  <bruno@clisp.org>
28639
28640         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
28641         value to ensure that _Bool promotes to int. Use #define for _Bool when
28642         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
28643
28644 2003-08-10  Karl Berry  <karl@gnu.org>
28645
28646         * lib/regex.h: update from libc (whitespace fix).
28647
28648 2003-08-09  Paul Eggert  <eggert@twinsun.com>
28649
28650         Merge some files from coreutils.  These changes were
28651         originally made by Jim Meyering.
28652         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
28653         many older Unixes require this.
28654         * lib/alloca.c (alloca): Remove cast to argument of free;
28655         no longer needed in C89.
28656         * lib/alloca_.h, regex.h: Fix white space to match
28657         what GNU indent does.
28658
28659 2003-08-09  Paul Eggert  <eggert@twinsun.com>
28660
28661         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
28662         apparently Emacs's Unicode mode got confused before my 2003-08-05
28663         checkin.
28664
28665 2003-08-08  Paul Eggert  <eggert@twinsun.com>
28666
28667         * m4/extensions.m4: New file.
28668         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
28669         Require gl_USE_SYSTEM_EXTENSIONS.
28670         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
28671         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
28672
28673 2003-08-08  Paul Eggert  <eggert@twinsun.com>
28674
28675         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
28676         * modules/extensions, modules/gnu-source: New files.
28677         * modules/timespec, modules/unlocked-io: Depend on extensions.
28678
28679 2003-08-07  Paul Eggert  <eggert@twinsun.com>
28680
28681         * modules/restrict: New file.
28682         * MODULES.html.sh (func_all_modules): Add restrict.
28683         * modules/regex: Depend on restrict.
28684
28685 2003-08-07  Paul Eggert  <eggert@twinsun.com>
28686
28687         * m4/restrict.m4: New file.
28688         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
28689
28690 2003-08-07  Bruno Haible  <bruno@clisp.org>
28691
28692         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
28693         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
28694
28695 2003-08-07  Bruno Haible  <bruno@clisp.org>
28696
28697         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
28698         makes the module 'getndelim2' compatible with the module 'getline'.
28699
28700 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28701
28702         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
28703         byte with "\201" to avoid glitches when editing that source file
28704         with multi-gnome-terminal.
28705
28706 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28707
28708         * lib/bumpalloc.h: Remove.
28709
28710 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28711
28712         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
28713         * modules/bumpalloc: Remove.
28714
28715 2003-08-04  Paul Eggert  <eggert@twinsun.com>
28716
28717         * lib/getloadavg.c: Change copyright notice and spacing to conform to
28718         GNU coding style.
28719
28720         Merge from coreutils.
28721         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
28722         1. From glibc.
28723         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
28724         from Karl Berry, implemented by Jim Meyering.
28725         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
28726         from Dmitry V. Levin.
28727         Remove anachronistic cast of xrealloc.
28728         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
28729         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
28730         type. Otherwise, it wouldn't compile with at least /bin/cc on
28731         ymp-cray-unicos9.0.2.X.
28732         Combine two mostly-identical uses of alloca into one.
28733         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
28734
28735 2003-08-04  Dave Love  <d.love@dl.ac.uk>
28736
28737         [From Emacs.]
28738
28739         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
28740         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
28741         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
28742         obsolete NLIST_NAME_UNION.
28743         [__GNU__]: Undef BSD and FSCALE.
28744         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
28745
28746 2003-08-03  Paul Eggert  <eggert@twinsun.com>
28747
28748         * lib/stdbool_.h (_Bool): Make it signed char, instead of
28749         an enum type, so that it's guaranteed to promote to int.  See:
28750         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
28751
28752 2003-08-03  Karl Berry  <karl@gnu.org>
28753
28754         * config/depcomp: update from automake.
28755
28756 2003-07-31  Paul Eggert  <eggert@twinsun.com>
28757
28758         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
28759         (strerror): Don't assume that a printable int fits in 14 bytes.
28760
28761 2003-07-31  Bruno Haible  <bruno@clisp.org>
28762
28763         * modules/getpass-gnu: New file.
28764         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
28765
28766 2003-07-31  Bruno Haible  <bruno@clisp.org>
28767
28768         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
28769
28770 2003-07-24  Karl Berry  <karl@gnu.org>
28771
28772         * config/missing: update from automake.
28773
28774 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
28775             Bruno Haible  <bruno@clisp.org>
28776
28777         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
28778         * lib/getline.c (getline, getdelim): Likewise.
28779         Remove _GNU_SOURCE define; now it's defined in config.h through
28780         m4/getline.m4.
28781
28782 2003-07-23  Karl Berry  <karl@gnu.org>
28783
28784         * config/config.sub: update from prep.
28785
28786 2003-07-22  Paul Eggert  <eggert@twinsun.com>
28787
28788         * modules/xalloc (Depends-on): Add exitfail.
28789         * modules/xmemcoll: Likewise.
28790
28791 2003-07-22  Paul Eggert  <eggert@twinsun.com>
28792
28793         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
28794         over-parenthesization in macros.
28795
28796         Sync with coreutils.
28797
28798         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
28799         required by C99.
28800
28801         Use `exit_failure' for xalloc and xmemcoll instead of their own
28802         private exit-failure variables.
28803         * lib/xalloc.h (xalloc_exit_failure): Remove.
28804         * lib/xmalloc.c: Likewise.  Include exitfail.h.
28805         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
28806         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
28807         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
28808         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
28809
28810 2003-07-20  Jim Meyering  <jim@meyering.net>
28811
28812         * modules/closeout (Depends-on): Add exitfail.
28813         Suggestion from Bruno Haible.
28814
28815 2003-07-19  Karl Berry  <karl@gnu.org>
28816
28817         * config/config.sub: update from prep.
28818
28819 2003-07-18  Paul Eggert  <eggert@twinsun.com>
28820
28821         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
28822         Remove.
28823         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
28824         to test that it can stand by itself.  Include "exitfail.h".
28825         Clients should set exit_failure instead.
28826         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
28827
28828 2003-07-18  Bruno Haible  <bruno@clisp.org>
28829
28830         * modules/getndelim2: New file.
28831         * modules/getline: Share files with module getndelim2.
28832         * modules/getnline: Depend on getndelim2 instead of sharing files with
28833         it. Add getnline.c to lib_SOURCES.
28834         * MODULES.html.sh (func_all_modules): Add getndelim2.
28835
28836 2003-07-18  Bruno Haible  <bruno@clisp.org>
28837
28838         * m4/getndelim2.m4: New file.
28839         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
28840         invoke gl_PREREQ_GETNDELIM2.
28841         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
28842         gl_PREREQ_GETNDELIM2.
28843         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
28844         gl_GETNDELIM2.
28845
28846 2003-07-18  Bruno Haible  <bruno@clisp.org>
28847
28848         * lib/getndelim2.h: New file.
28849         * lib/getndelim2.c: Make into a module of its own. Include config.h,
28850         getndelim2.h.
28851         (getndelim2): Make non-static. Change return type to ssize_t.
28852         * lib/getline.h: Change argument names.
28853         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
28854         * lib/getnline.c: Include getndelim2.h.
28855
28856 2003-07-18  Andreas Schwab  <schwab@suse.de>
28857
28858         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
28859
28860 2003-07-17  Karl Berry  <karl@gnu.org>
28861
28862         * config/config.sub: update from prep.
28863
28864 2003-07-17  Bruno Haible  <bruno@clisp.org>
28865
28866         * modules/getnline: New file.
28867         * modules/getline: Add lib/getndelim2.c to source file list.
28868         * MODULES.html.sh (func_all_modules): Add getnline.
28869
28870 2003-07-17  Bruno Haible  <bruno@clisp.org>
28871
28872         * m4/getnline.m4: New file.
28873
28874 2003-07-17  Bruno Haible  <bruno@clisp.org>
28875
28876         * m4/Makefile.am.in: Remove file.
28877         * m4/Makefile.am: Remove file.
28878         * m4/Makefile.in: Remove file.
28879
28880 2003-07-17  Bruno Haible  <bruno@clisp.org>
28881
28882         * lib/getnline.h: New file.
28883         * lib/getnline.c: New file.
28884         * lib/getndelim2.c: New file, extracted from getline.c.
28885         (getndelim2): Renamed from getdelim2, with added nmax argument.
28886         * lib/getline.c: Include getndelim2.c.
28887         (getdelim2): Moved out to getndelim2.c.
28888         (getline, getdelim): Update.
28889
28890 2003-07-17  Bruno Haible  <bruno@clisp.org>
28891
28892         * lib/Makefile.am: Remove file.
28893         * lib/Makefile.in: Remove file.
28894
28895 2003-07-17  Bruno Haible  <bruno@clisp.org>
28896
28897         * configure.in: Remove file.
28898         * Makefile.in: Remove file.
28899
28900 2003-07-17  Bruno Haible  <bruno@clisp.org>
28901
28902         * MODULES.html.sh: Put the </BODY> right before </HTML>.
28903
28904 2003-07-16  Karl Berry  <karl@gnu.org>
28905
28906         * config/srclist-update: was running fixlicense twice, which caused
28907                 texinfo.tex to be nullified for some reason.  Simplify,
28908                 $gplsrc is no longer needed as far as I can see?
28909
28910 2003-07-16  Jim Meyering  <jim@meyering.net>
28911
28912         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
28913
28914 2003-07-15  Paul Eggert  <eggert@twinsun.com>
28915
28916         * config/srclist.txt: Get the following files from gettext-runtime/intl
28917         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
28918         ref-del.sin.  From Bruno Haible.
28919         * config/srclist-update (fixfile): Change grep pattern again, since the
28920         previous fix didn't work (there was another trailing $).  Use
28921         '[$]' to escape the $s.
28922
28923 2003-07-15  Karl Berry  <karl@gnu.org>
28924
28925         * lib/vasnprintf.c: update from gettext.
28926
28927 2003-07-15  Karl Berry  <karl@gnu.org>
28928
28929         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
28930         gets expanded when surrounded by '$'.
28931
28932 2003-07-15  Jim Meyering  <jim@meyering.net>
28933
28934         * modules/save-cwd: Don't depend on error.  From Derek Price.
28935
28936 2003-07-15  Jim Meyering  <jim@meyering.net>
28937
28938         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
28939
28940 2003-07-14  Simon Josefsson  <jas@extundo.com>
28941
28942         * modules/mempcpy: New file.
28943         * MODULES.html.sh (func_all_modules): Add mempcpy.
28944
28945 2003-07-14  Simon Josefsson  <jas@extundo.com>
28946
28947         * m4/mempcpy.m4: New file.
28948
28949 2003-07-14  Simon Josefsson  <jas@extundo.com>
28950
28951         * lib/mempcpy.h: New file.
28952         * lib/mempcpy.c: New file.
28953
28954 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28955
28956         * modules/getdate, modules/posixtm: Depend on mktime.
28957
28958 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28959
28960         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
28961         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
28962         unicodeio.c, unicodeio.h, unlocked-io.h:
28963         Switch from LGPL to GPL.
28964
28965 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28966
28967         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
28968         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
28969         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
28970         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
28971         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
28972         updated automatically by ../config/srclist-update.  This changes
28973         their license from LPGL to GPL.
28974
28975 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28976
28977         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
28978         assumed to refer to the root of the most recent stable gettext version.
28979         * config/srclistvars.sh: Add defaults for eggert.
28980         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
28981         Match "This program" as well as "The program".  This is needed
28982         for gettext.
28983
28984 2003-07-14  Jim Meyering  <jim@meyering.net>
28985
28986         Don't emit diagnostics.  Let callers do that.
28987         * lib/save-cwd.c: Don't include "error.h".
28988         (save_cwd): Don't call error.  Ensure that errno is valid
28989         when returning nonzero.
28990
28991         * lib/save-cwd.h (restore_cwd): Update prototype.
28992         * lib/save-cwd.c (restore_cwd): Remove two parameters.
28993         Simplify.  Don't call error upon failure.  Let callers do that.
28994         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
28995         when auditing is enabled.  But don't bother updating the #if.
28996
28997 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
28998
28999         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
29000         it breaks C++ compilation.
29001         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
29002
29003 2003-07-10  Simon Josefsson  <jas@extundo.com>
29004
29005         * modules/strchrnul (Makefile.am): Add strchrnul.h.
29006
29007 2003-07-10  Jim Meyering  <jim@meyering.net>
29008
29009         * m4/clock_time.m4: Remove trailing blank.
29010         * m4/intmax_t.m4: Likewise.
29011
29012 2003-07-10  Jim Meyering  <jim@meyering.net>
29013
29014         * lib/vasnprintf.c: Remove trailing blanks.
29015         Make cpp indentation consistent.
29016
29017 2003-07-09  Paul Eggert  <eggert@twinsun.com>
29018
29019         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
29020         posixver.c, strftime.c, strnlen.c, strverscmp.c:
29021         Switch from LGPL to GPL.
29022
29023 2003-07-09  Paul Eggert  <eggert@twinsun.com>
29024
29025         * config/srclist.txt: Sort sublists.  Add
29026         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
29027         that differ from gnulib for one reason or another; we'd like this list
29028         to be smaller but for now let's document what we have.
29029
29030 2003-07-08  Paul Eggert  <eggert@twinsun.com>
29031
29032         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
29033         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
29034         and sweeter "eval x=$x".
29035         * config/srclist.txt: Get lib/argp* from glibc.
29036
29037 2003-07-07  Paul Eggert  <eggert@twinsun.com>
29038
29039         * lib/mktime.c: Fix some boundary cases and remove need for floating
29040         point.
29041
29042         Issue a compile-time diagnostic if time_t is floating point, or if
29043         two's complement arithmetic is not in effect, or if arithmetic
29044         right shift does not propagate the sign.  These assumptions were
29045         all in the original code but they weren't checked.
29046
29047         (TIME_T_MIDPOINT, verify): New macros.
29048         (__isleap): Remove; it has integer overflow problems.
29049         (leapyear): New function, without those problems.
29050         (ydhms_tm_diff): Remove; splitting into two parts.
29051         (ydhms_diff): New function, containing the arithmetic part of
29052         the old ydhms_tm_diff function.  Issue a compile-time
29053         diagnostic if we are not using C99 integer division.
29054         Avoid casts when possible.
29055         (guess_time_tm): New function, containing the checking part of
29056         the old ydhms_tm_diff function.  Return the new value, rather than
29057         the difference between it and the old.  Accept a new argument T
29058         so that *T specifies the old value.  Check for overflow in the result.
29059
29060         (__mktime_internal): Use a time_t offset, not a long int offset.
29061         This undoes the 2003-06-04 change, which is no longer needed now
29062         that we have better overflow checking.
29063         (localtime_offset): Likewise.
29064
29065         (__mktime_internal): Avoid harmful overflow on hosts where time_t
29066         and long are 64-bit but int is only 32-bit.
29067         (ydhms_diff): Use long int to store year1 and yday1.
29068         Issue a compile-time diagnostic if long int is not wide enough.
29069
29070         (__mktime_internal): Use long int to store adjusted year and yday.
29071         Use plain C rather than preprocessor commands, if that doesn't
29072         affect efficiency.
29073         Check for overflow (and try to repair) after each probe
29074         rather than checking only at the very end.  This avoids some bugs
29075         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
29076         does not equal GMT offset at maximum time).
29077         Use integer to check for overflow rather than floating point; this
29078         is more portable to non-IEEE hosts, and is a tad faster.
29079         When we detect that we are oscillating between two values,
29080         don't check whether tm_isdst has the requested value, since
29081         we already know the answer.  When tm_isdst has the wrong value,
29082         use a different heuristic to find the right one, based on the
29083         extreme values actually observed in practice in tz2003a,
29084         rather than the (overly optimistic) "previous 3 calendar quarters".
29085
29086         (not_equal_tm, print_tm, check_result): Use "const T" rather than
29087         "T const" to accommodate glibc style.
29088         (check_result): Use less-confusing report format.  "long" -> "long int.
29089         (main): Likewise.
29090         Don't loop if the iteration overflows time_t.
29091         Allow a negative step in the iteration.
29092
29093 2003-07-06  Karl Berry  <karl@gnu.org>
29094
29095         * config/depcomp: update from automake.
29096         * config/config.sub: update from prep.
29097
29098 2003-07-03  Karl Berry  <karl@gnu.org>
29099
29100         * config/config.guess: update from prep.
29101
29102 2003-07-01  Paul Eggert  <eggert@twinsun.com>
29103
29104         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
29105         xreadlink.c now includes it unconditionally.
29106
29107 2003-07-01  Paul Eggert  <eggert@twinsun.com>
29108
29109         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
29110         having it depend on HAVE_SYS_TYPES_H.
29111
29112 2003-07-01  Bruno Haible  <bruno@clisp.org>
29113
29114         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
29115         <sys/types.h> should be sufficient.
29116         Reported by Paul Eggert.
29117
29118 2003-06-26  Karl Berry  <karl@gnu.org>
29119
29120         * config/depcomp: update from automake.
29121
29122 2003-06-26  Bruno Haible  <bruno@clisp.org>
29123
29124         * modules/human: Depend on module stdbool.
29125
29126 2003-06-25  Bruno Haible  <bruno@clisp.org>
29127
29128         * modules/readlink: New file.
29129         * modules/xreadlink: Depend on it.
29130         * MODULES.html.sh (func_all_modules): Add readlink.
29131
29132 2003-06-25  Bruno Haible  <bruno@clisp.org>
29133
29134         * m4/readlink.m4: New file.
29135
29136 2003-06-25  Bruno Haible  <bruno@clisp.org>
29137
29138         * lib/readlink.c: New file.
29139
29140 2003-06-22  Karl Berry  <karl@gnu.org>
29141
29142         * config/srclist.txt: update mkinstalldirs from automake.
29143         * config/mkinstalldirs: update.
29144
29145 2003-06-22  Bruno Haible  <bruno@clisp.org>
29146
29147         Portability to mingw32.
29148         * m4/ssize_t.m4: New file, from GNU gettext.
29149         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
29150         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
29151
29152 2003-06-22  Bruno Haible  <bruno@clisp.org>
29153
29154         * modules/safe-read: Add m4/ssize_t.m4.
29155         * modules/xreadlink: Add m4/ssize_t.m4.
29156
29157 2003-06-20  Bruno Haible  <bruno@clisp.org>
29158
29159         Assume C89, so PARAMS isn't needed.
29160         * lib/unicodeio.h (PARAMS): Remove.
29161         * lib/unicodeio.c: Don't use PARAMS.
29162
29163 2003-06-18  Karl Berry  <karl@gnu.org>
29164
29165         * config/config.{guess,sub}: update from prep.
29166
29167 2003-06-18  Jim Meyering  <jim@meyering.net>
29168
29169         Merge changes from coreutils.
29170         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
29171         Remove explicit declarations of xmalloc and realloc.
29172         Include xalloc.h.
29173         (read_utmp): Remove anachronistic cast of xmalloc.
29174
29175 2003-06-17  Paul Eggert  <eggert@twinsun.com>
29176
29177         Assume C89, so PARAMS isn't needed.
29178         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
29179         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
29180         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
29181         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
29182         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
29183         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
29184         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
29185         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
29186         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
29187         lib/xstrtod.h, lib/xstrtol.h: Likewise.
29188         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
29189         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
29190         no longer needed. Anyway, config.h should always be included before any
29191         other file.
29192
29193 2003-06-11  Simon Josefsson  <jas@extundo.com>
29194
29195         * modules/sysexits: New file.
29196         * MODULES.html.sh (func_all_modules): Add sysexits.
29197
29198 2003-06-11  Simon Josefsson  <jas@extundo.com>
29199
29200         * lib/sysexit_.h: New file.
29201
29202 2003-06-11  Derek Price  <derek@ximbiot.com>
29203
29204         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
29205         necessary.
29206
29207 2003-06-11  Bruno Haible  <bruno@clisp.org>
29208
29209         * m4/sysexits.m4: New file.
29210
29211 2003-06-10  Simon Josefsson  <jas@extundo.com>
29212
29213         * lib/argp.h: New file, from glibc.
29214         * lib/argp-ba.c: New file, from glibc.
29215         * lib/argp-eexst.c: New file, from glibc.
29216         * lib/argp-fmtstream.c: New file, from glibc.
29217         * lib/argp-fmtstream.h: New file, from glibc.
29218         * lib/argp-fs-xinl.c: New file, from glibc.
29219         * lib/argp-help.c: New file, from glibc.
29220         * lib/argp-namefrob.h: New file, from glibc.
29221         * lib/argp-parse.c: New file, from glibc.
29222         * lib/argp-pv.c: New file, from glibc.
29223         * lib/argp-pvh.c: New file, from glibc.
29224         * lib/argp-xinl.c: New file, from glibc.
29225
29226 2003-06-10  Simon Josefsson  <jas@extundo.com>
29227
29228         * modules/strchrnul: New file.
29229
29230 2003-06-10  Simon Josefsson  <jas@extundo.com>
29231
29232         * modules/argp: New file.
29233
29234 2003-06-10  Simon Josefsson  <jas@extundo.com>
29235
29236         * m4/strchrnul.m4: New file.
29237
29238 2003-06-10  Simon Josefsson  <jas@extundo.com>
29239
29240         * lib/strchrnul.h: New file.
29241         * lib/strchrnul.c: New file.
29242
29243 2003-06-10  Bruno Haible  <bruno@clisp.org>
29244
29245         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
29246
29247 2003-06-07  Karl Berry  <karl@gnu.org>
29248
29249         * config/config.{guess,sub}: update from prep.
29250
29251 2003-06-07  Jim Meyering  <jim@meyering.net>
29252
29253         * modules/strtod: Use $(...) notation, not @...@ for
29254         AC_REPLACE'd variables.
29255         * modules/localcharset: Likewise.
29256
29257 2003-06-07  Jim Meyering  <jim@meyering.net>
29258
29259         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
29260         in place of my name in the copyright comment.
29261         Remove definition and uses of __P.
29262
29263         From coreutils.
29264         * lib/stat.c: Don't declare xmalloc explicitly.
29265         Instead, include "xalloc.h".
29266         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
29267         xrealloc, and xcalloc return values.
29268         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
29269         Improve comment.
29270         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
29271
29272 2003-06-07  Bruno Haible  <bruno@clisp.org>
29273
29274         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
29275         avoid AC_CONFIG_LINKS.
29276         * modules/fnmatch (Makefile.am): Use explicit creation rule for
29277         fnmatch.h, to avoid AC_CONFIG_LINKS.
29278         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
29279
29280 2003-06-07  Bruno Haible  <bruno@clisp.org>
29281
29282         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
29283         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
29284         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
29285         directory.
29286         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
29287         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
29288         directory.
29289
29290 2003-06-06  Jim Meyering  <jim@meyering.net>
29291
29292         Merge from coreutils.
29293         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
29294         Consolidate declarations and initializations of *_base* locals.
29295
29296         Merge from coreutils.
29297         This avoids a core dump on systems without GNU putenv,
29298         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
29299         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
29300         (unsetenv): New static function, from GNU libc.
29301         (rpl_putenv): Use it.
29302
29303         * lib/modechange.c: Remove trailing blanks.
29304
29305         Merge from coreutils.
29306         * lib/fsusage.c: Remove declaration of statfs.
29307         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
29308
29309         * lib/posixtm.c: Include <stdbool.h> unconditionally.
29310
29311 2003-06-06  Jim Meyering  <jim@meyering.net>
29312
29313         * lib/stdbool_.h: Renamed from stdbool.h.in.
29314
29315 2003-06-06  Jim Meyering  <jim@meyering.net>
29316             Bruno Haible  <bruno@clisp.org>
29317
29318         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
29319         Adjust Makefile.am snippet not to redirect directly to target.
29320         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
29321
29322 2003-06-05  Paul Eggert  <eggert@twinsun.com>
29323
29324         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
29325         mismatch, look in future quarters as well as past.  This fixes a
29326         bug when processing fall-backwards gaps immediately after a long
29327         period of daylight-saving time.
29328
29329         * lib/mktime.c: Assume freestanding C89 or better.
29330         (HAVE_LIMITS_H): Remove.  Assume it's 1.
29331         (__P): Remove; not used.
29332         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
29333         (mktime, not_equal_tm, print_tm, check_result,
29334         main): Use prototypes.  Use const * where appropriate.
29335         (main): Fix typo in testing code that uncovered by above changes.
29336         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
29337
29338 2003-06-04  Paul Eggert  <eggert@twinsun.com>
29339
29340         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
29341         locale.h, localeconv.  This merges changes from coreutils.
29342
29343         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
29344         It can be removed after the next Autoconf is released.
29345         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
29346         needed.
29347
29348 2003-06-04  Paul Eggert  <eggert@twinsun.com>
29349
29350         * lib/mktime.c: Fix Debian bug 177940
29351         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
29352         (localtime_offset): Now long int, not time_t, because we want it
29353         to be guaranteed to be signed.  All uses changed.
29354         (__mktime_internal): If overflow would occur when adding offset,
29355         don't add it.
29356
29357         Merge 'human' changes from coreutils.  Rewrite to support
29358         locale-specific notations like thousands separators.
29359         * lib/human.c: Simplify authorship notice.
29360         Include human.h immediately after config.h.
29361         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
29362         <limits.h>: Do not include, since human.h does.
29363         (SIZE_MAX, UINTMAX_MAX): New macros.
29364         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
29365         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
29366         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
29367         (power_letter): Renamed from suffixes.
29368         (generate_suffix_backwards): Remove.
29369         (adjust_value): Now takes int style (because of human.h changes)
29370         and long double value (for greater precision on some platforms).
29371         (group_number): New function.
29372         (human_readable): Use it.  Use integer options, not enum.
29373         Put the options before the sizes in the arg list.
29374         Support all the new options.
29375         The old human_readable function has been removed;
29376         use inttostr.h instead.
29377         (human_readable, default_block_size, humblock):
29378         Use uintmax_t, not int, for block sizes.
29379         (human_readable_inexact, block_size_types): Remove.
29380         (block_size_opts): New constant.
29381         (human_options): Renamed from human_block_size, with new signature
29382         that allows block sizes up to UINTMAX_MAX.  All callers changed.
29383         * lib/human.h: Add copyright and authorship notice.
29384         Include <limits.h> and <stdbool.h> unconditionally.
29385         (PARAMS): Remove.  All uses removed.
29386         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
29387         (enum human_inexact_style): Remove tag; now a nameless enum.
29388         (human_floor, human_ceiling, human_round_to_even): Now have
29389         values 2, 0, 1 rather than -1, 1, 0.
29390         (human_group_digits, human_suppress_point_zero, human_autoscale,
29391         human_base_1024, human_SI, human_B): New constants.
29392         (human_readable_inexact, human_block_size): Remove.
29393         (human_readable): Size args are now uintmax_t, not int.
29394         (human_options): New decl.
29395
29396         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
29397         unnecessary now that we assume C89 or better.  This change
29398         imported from coreutils.
29399
29400         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
29401         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
29402         in the 2003-05-30 sync from glibc.
29403
29404         .h files should stand alone, but we shouldn't include <sys/types.h>
29405         if we can get away with just <stddef.h>.
29406
29407         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
29408         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
29409         rather than <sys/types.h>, as we merely need size_t.
29410         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
29411         to get size_t.
29412         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
29413         Include <stdio.h>, to get FILE.
29414         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
29415         memcasecmp.h has included <stddef.h> and all we need is size_t.
29416         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
29417         our interface, instead of including <sys/types.h>
29418
29419 2003-06-04  Paul Eggert  <eggert@twinsun.com>
29420
29421         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
29422         now, as glibc mktime is buggy on non-glibc systems.
29423
29424 2003-06-03  Karl Berry  <karl@gnu.org>
29425
29426         * config/config.sub: update from prep.
29427
29428 2003-06-02  Paul Eggert  <eggert@twinsun.com>
29429
29430         [from coreutils]
29431         Fix some minor time-related bugs with POSIX time arguments.
29432         Some valid time stamps were being rejected (notably -1, and
29433         time stamps before 1900 on 64-bit hosts).  And some invalid
29434         time stamps were being accepted, e.g. September 31.
29435
29436         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
29437         that we can return (time_t) -1 successfully.
29438         * lib/posixtm.c: Likewise.
29439         [HAVE_STDBOOL_H]: Include <stdbool.h>.
29440         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
29441         (t): Remove static var.
29442         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
29443         of static var.  All uses changed.
29444         (year): Do not reject years before 1900; they can occur with
29445         64-bit time_t.
29446         (posix_time_parse): Do not check for out-of-range components;
29447         that is now the caller's responsibility, since our checks were
29448         only approximations.
29449         (posixtime): Use mktime to check for out-of-range components,
29450         since it knows them exactly.
29451         If mktime returns (time_t) -1, check whether an error actually occurred
29452         by invoking localtime on -1.
29453         (main) [TEST_POSIXTIME]: Check for input data errors, and report
29454         posixtime failures better.
29455         Improve the test data (in comments only).
29456
29457 2003-06-02  Karl Berry  <karl@gnu.org>
29458
29459         * config/mkinstalldirs (version): new variable.
29460         (--version): new option.
29461         (usage): improve message.
29462
29463 2003-05-30  Karl Berry  <karl@gnu.org>
29464
29465         * lib/mktime.c: update from libc.
29466
29467 2003-05-30  Bruno Haible  <bruno@clisp.org>
29468
29469         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
29470         * config/config.rpath: Upgrade to gettext-0.12.1.
29471
29472 2003-05-30  Bruno Haible  <bruno@clisp.org>
29473
29474         * m4/gettext.m4: Upgrade to gettext-0.12.1.
29475         * m4/nls.m4: New file, from gettext-0.12.1.
29476         * m4/po.m4: New file, from gettext-0.12.1.
29477         * m4/progtest.m4: Upgrade to gettext-0.12.1.
29478
29479 2003-05-30  Bruno Haible  <bruno@clisp.org>
29480
29481         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
29482         * lib/localcharset.h: Likewise.
29483         * lib/localcharset.c: Likewise.
29484
29485 2003-05-29  Karl Berry  <karl@gnu.org>
29486
29487         * config/config.rpath: update from gettext.
29488
29489 2003-05-28  Paul Eggert  <eggert@twinsun.com>
29490
29491         Assume the headers required for C89 freestanding compilers.
29492         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
29493         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
29494         * m4/human.m4 (gl_HUMAN): Likewise.
29495         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
29496         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
29497         * m4/userspec.m4 (gl_USERSPEC): Likewise.
29498         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
29499         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
29500         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
29501
29502 2003-05-28  Paul Eggert  <eggert@twinsun.com>
29503
29504         Assume the headers required for C89 freestanding compilers.
29505         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
29506         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
29507         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
29508         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
29509         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
29510         define, since <limits.h> is guaranteed to do that.
29511         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
29512         * lib/exclude.c: Include <stdbool.h> unconditionally.
29513         * lib/tempname.c: Include <stddef.h> unconditionally.
29514         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
29515         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
29516         <stddef.h> does that.
29517         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
29518         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
29519         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
29520         needed.
29521         * lib/xstrtol.c: Likewise.
29522         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
29523         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
29524
29525         * lib/addext.c (addext): Use assignment rather than cast, to avoid
29526         warnings on some platforms.
29527
29528         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
29529         arbitrarily.
29530
29531 2003-05-26  Jim Meyering  <jim@meyering.net>
29532
29533         Merge in a change from coreutils:
29534         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
29535         that is guaranteed to be `no'.  Use `no_such_member' to indicate
29536         that condition, rather than `-1' which is slightly misleading.
29537         Change the name of the cache variable to have the gl_ prefix.
29538         Prompted by a patch from Richard Dawe for DJGPP.
29539
29540 2003-05-24  Karl Berry  <karl@gnu.org>
29541
29542         * config/config.guess: update from prep.
29543
29544 2003-05-22  Karl Berry  <karl@gnu.org>
29545
29546         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
29547
29548 2003-05-20  Karl Berry  <karl@gnu.org>
29549
29550         * config/config.guess: update from prep.
29551
29552 2003-05-18  Karl Berry  <karl@gnu.org>
29553
29554         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
29555         might actually be set by the user.
29556
29557         * config/depcomp, install-sh, mdate-sh: update from automake.
29558
29559 2003-05-17  Bruno Haible  <bruno@clisp.org>
29560
29561         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
29562         invalid expansion for AC_EGREP_CPP.
29563         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
29564         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
29565         Suggested by Akim Demaille <akim@epita.fr> in
29566         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
29567
29568 2003-05-12  Jim Meyering  <jim@meyering.net>
29569
29570         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
29571         the space-padded-by-default conversion specifiers, %e, %k, %l.
29572
29573 2003-05-12  Bruno Haible  <bruno@clisp.org>
29574
29575         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
29576         the string is longer than 4 KB.
29577
29578 2003-05-11  Karl Berry  <karl@gnu.org>
29579
29580         * config/config.{guess,sub}: update from prep.
29581
29582 2003-05-09  Bruno Haible  <bruno@clisp.org>
29583
29584         * modules/error: Add m4/strerror_r.m4 to file list.
29585
29586 2003-05-03  Bruno Haible  <bruno@clisp.org>
29587
29588         Upgrade to Unicode-4.0.
29589         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
29590         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
29591         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
29592         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
29593         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
29594         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
29595         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
29596         Change width of U+E0100..U+E01EF from 1 to 0.
29597
29598 2003-04-25  Jim Meyering  <jim@meyering.net>
29599
29600         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
29601         of type size_t, not int.
29602
29603 2003-04-25  Bruno Haible  <bruno@clisp.org>
29604
29605         * lib/copy-file.c: Include <stddef.h>, for size_t.
29606
29607 2003-04-21  Paul Eggert  <eggert@twinsun.com>
29608
29609         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
29610         code which expansion is under static control.  Patch imported from
29611         Akim Demaille's patch to Bison; see
29612         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
29613
29614 2003-04-14  Bruno Haible  <bruno@clisp.org>
29615
29616         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
29617
29618 2003-04-11  Jim Meyering  <jim@meyering.net>
29619
29620         Merge changes from Coreutils.
29621
29622         2003-03-22  Jim Meyering  <jim@meyering.net>
29623
29624         * lib/strftime.c (widen): Cast alloca return value to proper type.
29625
29626         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
29627
29628         From GNU libc.
29629         * lib/strftime.c (my_strftime): Handle very large width
29630         specifications for numeric values correctly.  Improve checks for
29631         overflow.
29632
29633         2003-01-19  Jim Meyering  <jim@meyering.net>
29634
29635         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
29636         definitions.
29637         (nl_get_alt_digit) [! defined my_strftime]: Define.
29638         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
29639         _nl_get_alt_digit and _nl_get_walt_digit.
29640
29641         * lib/strftime.c (my_strftime): Merge in locale-related changes from
29642         libc. These changes have no effect outside of _LIBC.
29643
29644 2003-04-10  Bruno Haible  <bruno@clisp.org>
29645
29646         * modules/findprog: New file.
29647         * MODULES.html.sh (func_all_modules): Add it.
29648
29649 2003-04-10  Bruno Haible  <bruno@clisp.org>
29650
29651         * m4/findprog.m4: New file.
29652         * m4/eaccess.m4: New file.
29653
29654 2003-04-10  Bruno Haible  <bruno@clisp.org>
29655
29656         * lib/findprog.h: New file, from GNU gettext.
29657         * lib/findprog.c: New file, from GNU gettext.
29658
29659 2003-04-05  Jim Meyering  <jim@meyering.net>
29660
29661         Merge changes from Coreutils.
29662
29663         * lib/exclude.h (PARAMS): Remove definition and uses.
29664         * lib/exclude.c: Remove uses of `PARAMS'.
29665
29666         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
29667         Add test-cases for DOS filenames. Declare program_name.
29668         (main): Set up program_name.  Patch by Rich Dawe.
29669
29670         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
29671         error from mntctl.
29672         Use mntctl's return value to drive the entry-processing loop, since
29673         we can't rely on the value of the vmt_length member in the last
29674         entry.  On some systems doing so could result in exhausting
29675         virtual memory.  Based in part on a patch from Mike Jetzer.
29676
29677 2003-04-04  Bruno Haible  <bruno@clisp.org>
29678
29679         * modules/linebreak: New file.
29680         * MODULES.html.sh (func_all_modules): Add it.
29681
29682 2003-04-04  Bruno Haible  <bruno@clisp.org>
29683
29684         * m4/linebreak.m4: New file.
29685
29686 2003-04-04  Bruno Haible  <bruno@clisp.org>
29687
29688         * lib/linebreak.h: New file, from GNU gettext.
29689         * lib/linebreak.c: New file, from GNU gettext with slight
29690         modifications.
29691         * lib/lbrkprop.h: New file, from GNU gettext.
29692
29693 2003-04-03  Bruno Haible  <bruno@clisp.org>
29694
29695         * modules/utf8-ucs4: New file.
29696         * modules/utf16-ucs4: New file.
29697         * modules/ucs4-utf8: New file.
29698         * modules/ucs4-utf16: New file.
29699         * MODULES.html.sh (func_all_modules): Add them.
29700
29701 2003-04-03  Bruno Haible  <bruno@clisp.org>
29702
29703         * m4/utf-ucs4.m4: New file.
29704         * m4/ucs4-utf.m4: New file.
29705
29706 2003-04-03  Bruno Haible  <bruno@clisp.org>
29707
29708         * lib/utf8-ucs4.h: New file, from GNU gettext.
29709         * lib/utf16-ucs4.h: New file, from GNU gettext.
29710         * lib/ucs4-utf8.h: New file, from GNU gettext.
29711         * lib/ucs4-utf16.h: New file, from GNU gettext.
29712
29713 2003-04-02  Bruno Haible  <bruno@clisp.org>
29714
29715         * modules/binary-io: New file.
29716         * MODULES.html.sh (func_all_modules): Add it.
29717
29718 2003-04-02  Bruno Haible  <bruno@clisp.org>
29719
29720         * lib/binary-io.h: New file, from GNU gettext.
29721
29722 2003-04-01  Bruno Haible  <bruno@clisp.org>
29723
29724         * modules/pathname: New file.
29725         * MODULES.html.sh (func_all_modules): Add it.
29726
29727 2003-04-01  Bruno Haible  <bruno@clisp.org>
29728
29729         * lib/pathname.h: New file, from GNU gettext.
29730         * lib/concatpath.c: New file, from GNU gettext.
29731
29732 2003-03-30  Bruno Haible  <bruno@clisp.org>
29733
29734         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
29735
29736 2003-03-30  Bruno Haible  <bruno@clisp.org>
29737
29738         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
29739         function chown() doesn't exist.
29740
29741 2003-03-28  Bruno Haible  <bruno@clisp.org>
29742
29743         * modules/copy-file: New file.
29744         * MODULES.html.sh (func_all_modules): Add it.
29745
29746 2003-03-28  Bruno Haible  <bruno@clisp.org>
29747
29748         * m4/copy-file.m4: New file.
29749
29750 2003-03-28  Bruno Haible  <bruno@clisp.org>
29751
29752         * lib/copy-file.h: New file, from GNU gettext.
29753         * lib/copy-file.c: New file, from GNU gettext.
29754
29755 2003-03-18  Jim Meyering  <jim@meyering.net>
29756
29757         * lib/quote.c (quote_n): Fix typo in comment.
29758
29759 2003-03-18  Bruno Haible  <bruno@clisp.org>
29760
29761         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
29762         checking.
29763         * m4/onceonly_2_57.m4: Likewise.
29764
29765 2003-03-17  Bruno Haible  <bruno@clisp.org>
29766
29767         * m4/onceonly.m4: Require autoconf 2.54 or newer.
29768         (m4_quote): Remove macro.
29769         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
29770
29771 2003-03-14  Jim Meyering  <jim@meyering.net>
29772
29773         Merge changes from Coreutils.
29774         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
29775         to be const, in order to avoid warnings.
29776         (obstack_room): Likewise.
29777         (obstack_empty_p): Likewise.
29778
29779 2003-03-14  Bruno Haible  <bruno@clisp.org>
29780
29781         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
29782         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
29783
29784 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29785
29786         Merge changes from Bison.
29787         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
29788         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
29789         when compiling Bison 1.875's `bitset bset = obstack_alloc
29790         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
29791         * lib/hash.c: Include <stdbool.h> unconditionally.
29792
29793 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29794
29795         * m4/onceonly.m4 (m4_quote): New macro.
29796         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
29797         Quote AC_FOREACH variable-expansions properly.
29798
29799 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29800
29801         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
29802
29803 2003-03-09  Paul Eggert  <eggert@twinsun.com>
29804
29805         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
29806         Reported by Bruce Becker; see:
29807         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
29808
29809 2003-03-03  Paul Eggert  <eggert@twinsun.com>
29810             Bruno Haible  <bruno@clisp.org>
29811
29812         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
29813         Reported by John Hughes, see
29814         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
29815
29816 2003-02-20  Bruno Haible  <bruno@clisp.org>
29817
29818         * MODULES.html.sh (func_all_modules): Add poll.
29819
29820 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29821
29822         * modules/poll: New file.
29823
29824 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29825
29826         * lib/poll_.h: New file.
29827         * lib/poll.c: New file.
29828
29829 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29830
29831         * m4/poll.m4: New file.
29832
29833 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29834
29835         * modules/mathl: New file.
29836
29837 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29838
29839         * lib/mathl.h: New file.
29840         * lib/acosl.c: New file.
29841         * lib/asinl.c: New file.
29842         * lib/atanl.c: New file.
29843         * lib/ceill.c: New file.
29844         * lib/cosl.c: New file.
29845         * lib/expl.c: New file.
29846         * lib/floorl.c: New file.
29847         * lib/frexpl.c: New file.
29848         * lib/ldexpl.c: New file.
29849         * lib/logl.c: New file.
29850         * lib/sincosl.c: New file.
29851         * lib/sinl.c: New file.
29852         * lib/sqrtl.c: New file.
29853         * lib/tanl.c: New file.
29854         * lib/trigl.c: New file.
29855         * lib/trigl.h: New file.
29856
29857 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29858
29859         * m4/mathl.m4: New file.
29860
29861 2003-02-18  Bruno Haible  <bruno@clisp.org>
29862
29863         * MODULES.html.sh (func_all_modules): Add mathl.
29864
29865 2003-02-17  Bruno Haible  <bruno@clisp.org>
29866
29867         * modules/mkdtemp: New module.
29868         * MODULES.html.sh (func_all_modules): Add it.
29869
29870 2003-02-17  Bruno Haible  <bruno@clisp.org>
29871
29872         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
29873
29874 2003-02-17  Bruno Haible  <bruno@clisp.org>
29875
29876         * lib/mkdtemp.h: New file, from GNU gettext.
29877         * lib/mkdtemp.c: New file, from GNU gettext.
29878
29879 2003-02-02  Jim Meyering  <jim@meyering.net>
29880
29881         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
29882         e.g. glibc-2.2.93.
29883
29884 2003-01-31  Bruno Haible  <bruno@clisp.org>
29885
29886         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
29887         'rpl_rename'.
29888         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
29889         'rpl_strnlen'.
29890         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
29891         'rpl_strtod'.
29892         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
29893         'rpl_utime'.
29894
29895 2003-01-31  Bruno Haible  <bruno@clisp.org>
29896
29897         * lib/rename.c: #undef rename before defining rpl_rename.
29898         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
29899
29900 2003-01-30  Bruno Haible  <bruno@clisp.org>
29901
29902         * modules/vasnprintf, modules/vasprintf: New modules.
29903         * MODULES.html.sh (func_all_modules): Add them.
29904
29905 2003-01-30  Bruno Haible  <bruno@clisp.org>
29906
29907         * m4/signed.m4: New file, from GNU gettext.
29908         * m4/longdouble.m4: New file, from GNU gettext.
29909         * m4/wchar_t.m4: New file, from GNU gettext.
29910         * m4/wint_t.m4: New file, from GNU gettext.
29911         * m4/vasnprintf.m4: New file.
29912         * m4/vasprintf.m4: New file.
29913
29914 2003-01-30  Bruno Haible  <bruno@clisp.org>
29915
29916         * lib/printf-args.h: New file, from GNU gettext.
29917         * lib/printf-args.c: New file, from GNU gettext.
29918         * lib/printf-parse.h: New file, from GNU gettext.
29919         * lib/printf-parse.c: New file, from GNU gettext.
29920         * lib/vasnprintf.h: New file, from GNU gettext.
29921         * lib/vasnprintf.c: New file, from GNU gettext.
29922         * lib/asnprintf.c: New file, from GNU gettext.
29923         * lib/vasprintf.h: New file, from GNU gettext with modifications.
29924         * lib/vasprintf.c: New file, from GNU gettext.
29925         * lib/asprintf.c: New file, from GNU gettext.
29926
29927 2003-01-29  Bruno Haible  <bruno@clisp.org>
29928
29929         * modules/stpncpy: New module.
29930         * MODULES.html.sh (func_all_modules): Add it.
29931
29932 2003-01-29  Bruno Haible  <bruno@clisp.org>
29933
29934         * m4/stpncpy.m4: New file.
29935
29936 2003-01-29  Bruno Haible  <bruno@clisp.org>
29937
29938         * lib/stpncpy.h: New file, from GNU gettext with modifications.
29939         * lib/stpncpy.c: New file, from GNU gettext with modifications.
29940
29941 2003-01-28  Bruno Haible  <bruno@clisp.org>
29942
29943         * modules/c-ctype: New module.
29944         * MODULES.html.sh (func_all_modules): Add it.
29945
29946 2003-01-28  Bruno Haible  <bruno@clisp.org>
29947
29948         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
29949         Paul Eggert.
29950         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
29951         Paul Eggert.
29952
29953 2003-01-27  Bruno Haible  <bruno@clisp.org>
29954
29955         * modules/xsetenv: New module.
29956         * MODULES.html.sh (func_all_modules): Add it.
29957
29958 2003-01-27  Bruno Haible  <bruno@clisp.org>
29959
29960         * lib/xsetenv.h: New file, from GNU gettext.
29961         * lib/xsetenv.c: New file, from GNU gettext.
29962
29963 2003-01-23  Jim Meyering  <jim@meyering.net>
29964
29965         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
29966         from working on systems without dirfd (at least Irix and OSF1/Tru64).
29967
29968 2003-01-23  Bruno Haible  <bruno@clisp.org>
29969
29970         * modules/minmax: New module.
29971         * MODULES.html.sh (func_all_modules): Add it.
29972
29973 2003-01-23  Bruno Haible  <bruno@clisp.org>
29974
29975         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
29976         Eggert.
29977
29978 2003-01-22  Bruno Haible  <bruno@clisp.org>
29979
29980         * modules/exit: New module.
29981         * MODULES.html.sh (func_all_modules): Add it.
29982
29983 2003-01-22  Bruno Haible  <bruno@clisp.org>
29984
29985         * lib/exit.h: New file, from GNU gettext.
29986
29987 2003-01-19  Bruno Haible  <bruno@clisp.org>
29988
29989         * gnulib-tool: Recognize option --extract-maintainer.
29990         (func_get_maintainer): New function.
29991         * modules/*: Add Maintainer entry.
29992
29993 2003-01-16  Jim Meyering  <jim@meyering.net>
29994
29995         * m4/regex.m4: The `regex' struct is both input and output.
29996         Initialize it before each use.  Patch by Tim Waugh.
29997
29998 2003-01-16  Bruno Haible  <bruno@clisp.org>
29999
30000         * MODULES.html.sh: Add a table of contents. Add the module name as
30001         leftmost column. Add hyperlinks.
30002
30003 2003-01-15  Bruno Haible  <bruno@clisp.org>
30004
30005         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
30006
30007 2003-01-15  Bruno Haible  <bruno@clisp.org>
30008
30009         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
30010         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
30011         suffix.
30012
30013 2003-01-15  Bruno Haible  <bruno@clisp.org>
30014
30015         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
30016
30017 2003-01-15  Bruno Haible  <bruno@clisp.org>
30018
30019         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
30020         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
30021
30022 2003-01-14  Jim Meyering  <jim@meyering.net>
30023
30024         * lib/same.c (same_name): Tweak a comment.
30025
30026 2003-01-14  Bruno Haible  <bruno@clisp.org>
30027
30028         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
30029         when a string comparison is sufficient.
30030
30031 2003-01-14  Bruno Haible  <bruno@clisp.org>
30032
30033         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
30034         'unsigned int'.
30035
30036 2003-01-14  Bruno Haible  <bruno@clisp.org>
30037
30038         * lib/hash-pjw.c: Add comment about low quality of this function.
30039
30040 2003-01-13  Bruno Haible  <bruno@clisp.org>
30041
30042         * modules/stpcpy: Distribute lib/stpcpy.h.
30043         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
30044
30045 2003-01-13  Bruno Haible  <bruno@clisp.org>
30046
30047         * modules/*: Add a description.
30048         * modules/strpbrk: Fix Makefile.am snippet.
30049         * modules/strtoimax: Fix dependencies.
30050         * modules/strtoumax: Likewise.
30051
30052 2003-01-13  Bruno Haible  <bruno@clisp.org>
30053
30054         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
30055         * modules/alloca (Makefile.am): All object files depend on alloca.h.
30056         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
30057
30058 2003-01-13  Bruno Haible  <bruno@clisp.org>
30059
30060         * gnulib-tool (func_create_testdir): Store config/* files in the main
30061         directory.
30062         * config.rpath: Move to ...
30063         * config/config.rpath: ... here.
30064         * modules/gettext: Contains config/config.rpath, not config.rpath.
30065         * modules/iconv: Likewise.
30066
30067 2003-01-12  Paul Eggert  <eggert@twinsun.com>
30068
30069         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
30070         to avoid collisions with libcurses and libreadline.
30071
30072         * m4/getstr.m4: Remove.
30073         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
30074
30075 2003-01-12  Paul Eggert  <eggert@twinsun.com>
30076
30077         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
30078         to avoid collisions with libcurses and libreadline.
30079
30080         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
30081         * lib/getstr.h, getstr.c: Remove.
30082         * lib/getline.c: Include "getline.h", to check interface.
30083         Move body of old getstr.c here: this defines MIN_CHUNK and
30084         declares getdelim2, which is renamed from getstr.
30085         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
30086
30087         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
30088         All uses changed.
30089         * lib/linebuffer.h: Likewise.
30090         (readline): Remove backward-compatibility macro.
30091
30092 2003-01-12  Paul Eggert  <eggert@twinsun.com>
30093
30094         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
30095         to avoid collisions with libcurses and libreadline.
30096         * getstr: Remove.
30097         * MODULES.html.sh: Remove getstr.
30098         * modules/getline: Depend on unlocked-io, not getstr.
30099
30100 2003-01-12  Jim Meyering  <jim@meyering.net>
30101
30102         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
30103
30104 2003-01-10  Bruno Haible  <bruno@clisp.org>
30105
30106         * modules/alloca: Change Makefile.am requirements. Simplify Include
30107         requirements. Add lib/alloca_.h to file list.
30108
30109 2003-01-10  Bruno Haible  <bruno@clisp.org>
30110
30111         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
30112
30113 2003-01-10  Bruno Haible  <bruno@clisp.org>
30114
30115         * lib/alloca_.h: New file.
30116         * lib/getdate.y: Unconditionally include alloca.h.
30117         * lib/makepath.c: Likewise.
30118         * lib/setenv.c: Likewise.
30119         * lib/userspec.c: Likewise.
30120
30121 2003-01-09  Karl Berry  <karl@gnu.org>
30122
30123         * MODULES.html.sh: include `dirname $0` in PATH, to find
30124         gnulib-tool.
30125
30126 2003-01-09  Bruno Haible  <bruno@clisp.org>
30127
30128         * modules/stdbool: Change configure.ac, Makefile.am requirements.
30129         Simplify Include requirements. Add lib/stdbool.h.in to file list.
30130
30131 2003-01-09  Bruno Haible  <bruno@clisp.org>
30132
30133         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
30134
30135 2003-01-09  Bruno Haible  <bruno@clisp.org>
30136
30137         * lib/stdbool.h.in: New file.
30138
30139 2003-01-09  Bruno Haible  <bruno@clisp.org>
30140
30141         * gnulib-tool (func_all_modules): Ignore files ending in ~.
30142         * MODULES.html.sh: Likewise.
30143
30144 2003-01-08  Jim Meyering  <jim@meyering.net>
30145
30146         * lib/full-write.c: Undefine and define-away `const' after inclusion
30147         of errno.h, not before.  Suggestion from Bruno Haible.
30148
30149 2003-01-08  Bruno Haible  <bruno@clisp.org>
30150
30151         * modules/full-read: Depend on full-write.
30152
30153 2003-01-08  Bruno Haible  <bruno@clisp.org>
30154
30155         * lib/safe-read.c: Include specification header first, to ensure its
30156         selfcontainedness.
30157         * lib/full-write.c: Likewise.
30158
30159 2003-01-07  Jim Meyering  <jim@meyering.net>
30160
30161         * lib/full-write.c: Rework so that it may serve to define full_read,
30162         too.
30163         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
30164
30165 2003-01-07  Bruno Haible  <bruno@clisp.org>
30166
30167         * lib/strtoimax.c: Include <stdint.h> as an alternative to
30168         <inttypes.h>.
30169         * lib/xstrtol.h: Likewise.
30170         * lib/xstrtoimax.c: Likewise.
30171         * lib/xstrtoumax.c: Likewise.
30172         * lib/human.h: Likewise.
30173
30174         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
30175         on systems that have <inttypes.h> but not <stdint.h>.
30176
30177 2003-01-07  Bruno Haible  <bruno@clisp.org>
30178
30179         * MODULES.html.sh: Add copyright notice.
30180         (missed_files): Omit CVS directory entries.
30181         (func_module): Make it work with sed-3.02.
30182         * MODULES.txt: Remove file.
30183
30184 2003-01-06  Jim Meyering  <jim@meyering.net>
30185
30186         * lib/version-etc.c: Update year in translatable copyright string.
30187
30188 2003-01-03  Karl Berry  <karl@gnu.org>
30189
30190         * config/config.{guess,sub}: update from prep.
30191
30192 2003-01-02  Karl Berry  <karl@gnu.org>
30193
30194         * doc/COPYING.DOC: belatedly updated to 1.2.
30195
30196 2003-01-01  Karl Berry  <karl@gnu.org>
30197
30198         * gnulib-tool (func_verify_module): report module name $module in
30199         error message, not $1.
30200         * gnulib-tool (create-testdir): don't complain if destdir couldn't
30201         be created, only if it doesn't exist.
30202         * gnulib-tool (last_checkin_date): don't expand the $Date here.
30203
30204 2002-12-31  Paul Eggert  <eggert@twinsun.com>
30205
30206         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
30207
30208 2002-12-31  Paul Eggert  <eggert@twinsun.com>
30209
30210         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
30211         memcmp if strcoll doesn't work.
30212
30213 2002-12-31  Bruno Haible  <bruno@clisp.org>
30214
30215         * lib/utime.c (utime_null): No need to call ftruncate if the file was
30216         nonempty.
30217
30218 2002-12-31  Bruno Haible  <bruno@clisp.org>
30219
30220         * lib/memcoll.c (STRCOLL): New macro.
30221         (memcoll): Use it.
30222
30223 2002-12-31  Bruno Haible  <bruno@clisp.org>
30224
30225         * lib/localcharset.h: New file.
30226         * lib/localcharset.c: Include it.
30227         * lib/unicodeio.c: Likewise.
30228
30229 2002-12-31  Bruno Haible  <bruno@clisp.org>
30230
30231         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
30232         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
30233
30234 2002-12-31  Bruno Haible  <bruno@clisp.org>
30235
30236         * lib/getline.h: Include <stddef.h>, for size_t.
30237
30238         * lib/unicodeio.h: Include <stddef.h>, for size_t.
30239         * lib/unicodeio.c: Don't include <stddef.h>.
30240
30241 2002-12-31  Bruno Haible  <bruno@clisp.org>
30242
30243         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
30244         HAVE_TM_ZONE.
30245
30246 2002-12-24  Karl Berry  <karl@gnu.org>
30247
30248         * config/config.guess: update from prep.
30249
30250 2002-12-24  Bruno Haible  <bruno@clisp.org>
30251
30252         General infrasructure.
30253         * m4/README: Rewritten.
30254         * m4/onceonly.m4: New file.
30255         * m4/onceonly_2_57.m4: New file.
30256
30257         Module atexit.
30258         * m4/atexit.m4: New file.
30259
30260         Module strtod.
30261         * m4/strtod.m4: New file.
30262
30263         Module strtol.
30264         * m4/strtol.m4: New file.
30265
30266         Module strtoul.
30267         * m4/strtoul.m4: New file.
30268
30269         Module memchr.
30270         * m4/memchr.m4: New file.
30271
30272         Module memcmp.
30273         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
30274         (jm_FUNC_MEMCMP): Invoke it.
30275
30276         Module memcpy.
30277         * m4/memcpy.m4: New file.
30278
30279         Module memmove.
30280         * m4/memmove.m4: New file.
30281
30282         Module memset.
30283         * m4/memset.m4: New file.
30284
30285         Module strcspn.
30286         * m4/strcspn.m4: New file.
30287
30288         Module strpbrk.
30289         * m4/strpbrk.m4: New file.
30290
30291         Module strstr.
30292         * m4/strstr.m4: New file.
30293
30294         Module strerror.
30295         * m4/strerror.m4: New file.
30296
30297         Module mktime.
30298         * m4/mktime.m4: Renamed from jm-mktime.m4.
30299         (gl_PREREQ_MKTIME): New macro.
30300         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
30301
30302         Module malloc.
30303         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
30304         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
30305         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
30306
30307         Module realloc.
30308         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
30309         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
30310         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
30311
30312         Module strftime.
30313         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
30314         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
30315         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
30316         gl_TM_GMTOFF.
30317         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
30318
30319         Module xalloc.
30320         * m4/xalloc.m4: New file.
30321
30322         Module alloca.
30323         * m4/alloca.m4: New file.
30324
30325         Module putenv.
30326         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
30327         (jm_FUNC_PUTENV): Invoke it.
30328
30329         Module setenv.
30330         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
30331         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
30332         when invoked twice.
30333         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
30334         gt_FUNC_SETENV.
30335
30336         Module memrchr.
30337         * m4/memrchr.m4: New file.
30338
30339         Module stpcpy.
30340         * m4/stpcpy.m4: New file.
30341
30342         Module strcase.
30343         * m4/strcase.m4: New file.
30344
30345         Module strdup.
30346         * m4/strdup.m4: New file.
30347
30348         Module strnlen.
30349         * m4/strnlen.m4: New file.
30350
30351         Module strndup.
30352         * m4/strndup.m4: New file.
30353
30354         Module xstrtod.
30355         * m4/xstrtod.m4: New file.
30356
30357         Module xstrtol.
30358         * m4/xstrtol.m4: New file.
30359
30360         Module getdate.
30361         * m4/getdate.m4: New file.
30362
30363         Module unlocked-io.
30364         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
30365         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
30366         * m4/jm-glibc-io.m4n: Remove file.
30367
30368         Module long-options.
30369         * m4/long-options.m4: New file.
30370
30371         Module md5.
30372         * m4/md5.m4: New file.
30373
30374         Module sha.
30375         * m4/sha.m4: New file.
30376
30377         Module getstr.
30378         * m4/getstr.m4: New file.
30379
30380         Module getline.
30381         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
30382         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
30383         <sys/types.h>, for size_t. Use the function name gnu_getline, not
30384         simply getline. Infoke gl_PREREQ_GETLINE.
30385
30386         Module obstack.
30387         * m4/obstack.m4: New file.
30388
30389         Module hash.
30390         * m4/hash.m4: New file.
30391
30392         Module readtokens.
30393         * m4/readtokens.m4: New file.
30394
30395         Module strverscmp.
30396         * m4/strverscmp.m4: New file.
30397
30398         Module stdbool.
30399         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
30400         OSF/1.
30401
30402         Module strtoll.
30403         * m4/strtoll.m4: New file.
30404
30405         Module strtoull.
30406         * m4/strtoull.m4: New file.
30407
30408         Module strtoimax.
30409         * m4/strtoimax.m4: New file.
30410
30411         Module strtoumax.
30412         * m4/strtoumax.m4: New file.
30413
30414         Module xstrtoimax.
30415         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
30416         jm_AC_PREREQ_XSTRTOIMAX.
30417         Moved the strtol prerequisites to strtol.m4.
30418         Moved the strtoll prerequisites to strtoll.m4.
30419         Moved the strtoimax prerequisites to strtoimax.m4.
30420
30421         Module xstrtoumax.
30422         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
30423         jm_AC_PREREQ_XSTRTOUMAX.
30424         Moved the strtoul prerequisites to strtoul.m4.
30425         Moved the strtoull prerequisites to strtoull.m4.
30426         Moved the strtoumax prerequisites to strtoumax.m4.
30427
30428         Module chown.
30429         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
30430         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
30431
30432         Module dup2.
30433         * m4/dup2.m4: New file.
30434
30435         Module ftruncate.
30436         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
30437         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
30438
30439         Module getgroups.
30440         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
30441         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
30442
30443         Module gettimeofday.
30444         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
30445         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
30446         gl_PREREQ_GETTIMEOFDAY.
30447
30448         Module mkdir.
30449         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
30450         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
30451
30452         Module mkstemp.
30453         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
30454         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
30455         jm_AC_TYPE_UINTMAX_T.
30456         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
30457
30458         Module stat.
30459         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
30460         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
30461
30462         Module lstat.
30463         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
30464         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
30465
30466         Module timespec.
30467         * m4/timespec.m4 (gl_TIMESPEC): New macro.
30468         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
30469         * m4/st_mtim.m4: Indentation.
30470
30471         Module nanosleep.
30472         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
30473         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
30474         gl_PREREQ_NANOSLEEP.
30475
30476         Module regex.
30477         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
30478         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
30479         (gl_REGEX): New macro.
30480
30481         Module rename.
30482         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
30483         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
30484
30485         Module rmdir.
30486         * m4/rmdir.m4: New file.
30487
30488         Module utime.
30489         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
30490         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
30491         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
30492
30493         Module dirname.
30494         * m4/dirname.m4: New file.
30495
30496         Module getopt.
30497         * m4/getopt.m4: New file.
30498
30499         Module unistd-safer.
30500         * m4/unistd-safer.m4: New file.
30501
30502         Module fnmatch.
30503         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
30504         declaration.
30505         (gl_PREREQ_FNMATCH_EXTRA): New macro.
30506         (gl_FUNC_FNMATCH_POSIX): New macro.
30507         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
30508         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
30509         simply fnmatch.
30510
30511         Module exclude.
30512         * m4/exclude.m4: New file.
30513
30514         Module human.
30515         * m4/human.m4: New file.
30516
30517         Module acl.
30518         * m4/acl.m4: Nop.
30519
30520         Module backupfile.
30521         * m4/backupfile.m4: New file.
30522         * m4/d-ino.m4: Indentation.
30523
30524         Module fsusage.
30525         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
30526         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
30527         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
30528
30529         Module dirfd.
30530         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
30531         requirements.
30532
30533         Module euidaccess.
30534         * m4/euidaccess.m4: New file.
30535
30536         Module file-type.
30537         * m4/file-type.m4: New file.
30538
30539         Module fileblocks.
30540         * m4/fileblocks.m4: New file.
30541
30542         Module filemode.
30543         * m4/filemode.m4: New file.
30544
30545         Module isdir.
30546         * m4/isdir.m4: New file.
30547
30548         Module lchown.
30549         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
30550         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
30551
30552         Module makepath.
30553         * m4/makepath.m4: New file.
30554
30555         Module modechange.
30556         * m4/modechange.m4: New file.
30557
30558         Module mountlist.
30559         * m4/mountlist.m4: New file.
30560         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
30561         Indentation.
30562
30563         Module path-concat.
30564         * m4/path-concat.m4: New file.
30565
30566         Module pathmax.
30567         * m4/pathmax.m4: New file.
30568
30569         Module same.
30570         * m4/same.m4: New file.
30571
30572         Module save-cwd.
30573         * m4/save-cwd.m4: New file.
30574
30575         Module savedir.
30576         * m4/savedir.m4: New file.
30577
30578         Module xgetcwd.
30579         * m4/xgetcwd.m4: New file.
30580         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
30581
30582         Module xreadlink.
30583         * m4/xreadlink.m4: New file.
30584
30585         Module safe-read.
30586         * m4/safe-read.m4: New file.
30587
30588         Module safe-write.
30589         * m4/safe-write.m4: New file.
30590
30591         Module closeout.
30592         * m4/closeout.m4: New file.
30593
30594         Module stdio-safer.
30595         * m4/stdio-safer.m4: New file.
30596
30597         Module getpass.
30598         * m4/getpass.m4: New file.
30599
30600         Module getugroups.
30601         * m4/getugroups.m4: New file.
30602
30603         Module group-member.
30604         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
30605         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
30606
30607         Module idcache.
30608         * m4/idcache.m4: New file.
30609
30610         Module userspec.
30611         * m4/userspec.m4: New file.
30612
30613         Module gettime.
30614         * m4/clock_time.m4: New file.
30615         * m4/gettime.m4: New file.
30616
30617         Module settime.
30618         * m4/settime.m4: New file.
30619
30620         Module posixtm.
30621         * m4/posixtm.m4: New file.
30622
30623         Module gethostname.
30624         * m4/gethostname.m4: New file.
30625
30626         Module canon-host.
30627         * m4/canon-host.m4: New file.
30628
30629         Module gettext.
30630         * m4/codeset.m4: New file, from gettext-0.11.5.
30631         * m4/gettext.m4: New file, from gettext-0.11.5.
30632         * m4/glibc21.m4: New file, from gettext-0.11.5.
30633         * m4/iconv.m4: New file, from gettext-0.11.5.
30634         * m4/intdiv0.m4: New file, from gettext-0.11.5.
30635         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
30636         * m4/inttypes.m4: New file, from gettext-0.11.5.
30637         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
30638         * m4/isc-posix.m4: New file, from gettext-0.11.5.
30639         * m4/lcmessage.m4: New file, from gettext-0.11.5.
30640         * m4/lib-ld.m4: New file, from gettext-0.11.5.
30641         * m4/lib-link.m4: New file, from gettext-0.11.5.
30642         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
30643         * m4/progtest.m4: New file, from gettext-0.11.5.
30644         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
30645         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
30646         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
30647
30648         Module localcharset.
30649         * m4/localcharset.m4: New file.
30650
30651         Module hard-locale.
30652         * m4/hard-locale.m4: New file.
30653
30654         Module mbswidth.
30655         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
30656         onceonly macros.
30657         * m4/mbrtowc.m4: Add comment.
30658
30659         Module memcasecmp.
30660         * m4/memcasecmp.m4: New file.
30661
30662         Module memcoll.
30663         * m4/memcoll.m4: New file.
30664
30665         Module unicodeio.
30666         * m4/unicodeio.m4: New file.
30667
30668         Module rpmatch.
30669         * m4/rpmatch.m4: New file.
30670
30671         Module yesno.
30672         * m4/yesno.m4: New file.
30673
30674         Module exitfail.
30675         * m4/exitfail.m4: New file.
30676
30677         Module c-stack.
30678         * m4/c-stack.m4 (gl_C_STACK): New macro.
30679         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
30680
30681         Module error.
30682         * m4/error.m4 (gl_ERROR): New macro.
30683         (jm_PREREQ_ERROR): Use onceonly macros.
30684
30685         Module fatal.
30686         * m4/fatal.m4: New file.
30687
30688         Module getloadavg.
30689         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
30690         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
30691
30692         Module getpagesize.
30693         * m4/getpagesize.m4: New file.
30694
30695         Module getusershell.
30696         * m4/getusershell.m4: New file.
30697
30698         Module physmem.
30699         * m4/physmem.m4: New file.
30700
30701         Module posixver.
30702         * m4/posixver.m4: New file.
30703
30704         Module quotearg.
30705         * m4/quotearg.m4: New file.
30706
30707         Module quote.
30708         * m4/quote.m4: New file.
30709
30710         Module readutmp.
30711         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
30712
30713         Module sig2str.
30714         * m4/sig2str.m4: New file.
30715
30716         Other.
30717         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
30718         ulonglong.m4.
30719         * m4/intmax_t.m4: New file.
30720         * m4/d-type.m4: Indentation.
30721         * m4/jm-macros.m4: Update.
30722         * m4/prereq.m4 (jm_PREREQ): Update.
30723         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
30724         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
30725         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
30726         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
30727         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
30728         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
30729         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
30730         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
30731         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
30732         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
30733         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
30734         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
30735         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
30736         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
30737         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
30738         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
30739         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
30740         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
30741         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
30742
30743 2002-12-24  Bruno Haible  <bruno@clisp.org>
30744
30745         * MODULES.txt: Update according to m4/ changes.
30746
30747         Module gettext.
30748         * config.rpath: New file, from gettext-0.11.5.
30749
30750         * modules/*: New module descriptions.
30751         * gnulib-tool: New file.
30752         * MODULES.html.sh: New file.
30753
30754 2002-12-21  Karl Berry  <karl@gnu.org>
30755
30756         * doc/fdl.texi: update to version 1.2.
30757
30758 2002-12-19  Karl Berry  <karl@gnu.org>
30759
30760         * config/config.guess: update from prep.
30761
30762 2002-12-18  Bruno Haible  <bruno@clisp.org>
30763
30764         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
30765         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
30766
30767 2002-12-17  Bruno Haible  <bruno@clisp.org>
30768
30769         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
30770         stdlib.h, string.h.
30771
30772 2002-12-17  Bruno Haible  <bruno@clisp.org>
30773
30774         * lib/canon-host.c (strdup): Remove unused declaration.
30775
30776         * lib/fsusage.c: Include full_read.h.
30777         (get_fs_usage): Use full_read instead of safe_read.
30778
30779         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
30780
30781 2002-12-12  Karl Berry  <karl@gnu.org>
30782
30783         * config/config.guess: update from prep.
30784
30785 2002-12-11  Bruno Haible  <bruno@clisp.org>
30786
30787         * m4/setenv.m4: New file, from gettext-0.11.5.
30788
30789 2002-12-11  Bruno Haible  <bruno@clisp.org>
30790
30791         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
30792         not unsetenv().
30793         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
30794         modifications:
30795
30796         2002-12-11  Bruno Haible  <bruno@clisp.org>
30797
30798                 * setenv.c (alloca): Fall back to malloc.
30799                 (freea): New macro.
30800                 (setenv): Use freea() to free memory allocated with alloca().
30801
30802         2002-11-13  Bruno Haible  <bruno@clisp.org>
30803
30804                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
30805                 function declarations.
30806                 * unsetenv.c (unsetenv): Likewise.
30807
30808         2002-03-04  Bruno Haible  <bruno@clisp.org>
30809
30810                 Portability to AIX 4.3.3.
30811                 * unsetenv.c: New file, extracted from setenv.c.
30812                 * setenv.c: Move the unsetenv() function to unsetenv.c.
30813
30814         2001-12-20  Bruno Haible  <bruno@clisp.org>
30815
30816                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
30817                 use malloc instead. For SunOS 4.
30818
30819         2001-12-11  Bruno Haible  <bruno@clisp.org>
30820
30821                 * setenv.c: Declare alloca.
30822                 (compar_fn_t): New typedef.
30823                 (KNOWN_VALUE, STORE_VALUE): Use it.
30824
30825         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
30826         setenv.h.
30827
30828 2002-12-10  Paul Eggert  <eggert@twinsun.com>
30829
30830         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
30831         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
30832         Choose values that are less likely to collide with system fnmatch
30833         options.
30834         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
30835         defined (e.g., a pure POSIX system).
30836         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
30837         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
30838
30839 2002-12-06  Paul Eggert  <eggert@twinsun.com>
30840
30841         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
30842         a pain in practice to deal with generated m4 files.  This change
30843         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
30844
30845         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
30846         and jm-glibc-io.m4, as they are no longer a special case.
30847         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
30848         kludge and the auto-generation stuff.  Check only whether the
30849         functions are declared, not whether they exist, since older hosts
30850         that don't declare the functions can't use the optimization anyway.
30851
30852 2002-12-06  Jim Meyering  <jim@meyering.net>
30853
30854         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
30855
30856         Merge in changes from libc's misc/error.c, in preparation
30857         for the merge of gnulib's changes back into libc.
30858
30859         * lib/error.c (_): Define only if not already defined.
30860         Move definition to follow all #include directives.
30861         Include unlocked-io.h only if !_LIBC.
30862         [_LIBC]: Include <libio/libioP.h>.
30863         [USE_IN_LIBIO]: Include <libio/iolibio.h>
30864         (fflush): Tweak definition to use INTUSE.
30865         (putc): Define.
30866
30867 2002-12-05  Paul Eggert  <eggert@twinsun.com>
30868
30869         * lib/alloca.c [defined emacs]: Include "lisp.h".
30870         (xalloc_die) [defined emacs]: New macro.
30871         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
30872         [! defined emacs]: Include <xalloc.h>.
30873         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
30874         (pointer): Typedef to POINTER_TYPE *.
30875         (malloc): Remove decl; we now always use xmalloc.
30876         (alloca): Use old-style definition, since Emacs needs this.
30877         Check for arithmetic overflow when computing combined size.
30878
30879 2002-12-04  Paul Eggert  <eggert@twinsun.com>
30880
30881         Do not generate unlocked-io.h automatically, since it's easier to
30882         maintain it by hand.
30883
30884         * lib/unlocked-io.h: New file, from GNU diffutils,
30885         but with proper copyright notice and attribution.
30886         * lib/gen-uio: Remove.
30887         * lib/Makefile.am: Add copyright notice.
30888         (libfetish_a_SOURCES): Add unlocked-io.h.
30889         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
30890         (DISTCLEANFILES, io_functions): Remove macros.
30891         (EXTRA_DIST): Remove gen_uio.
30892         (unlocked-io.h): Remove rule.
30893
30894 2002-12-04  Jim Meyering  <jim@meyering.net>
30895
30896         Reflect the fact that stat.c and lstat.c are no longer generated.
30897         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
30898         (DISTCLEANFILES): Likewise.
30899         (EXTRA_DIST): Likewise.
30900         (all_local): Don't depend on stat.c or lstat.c.
30901         (stat.c, lstat.c): Remove rules.
30902         (EXTRA_DIST): Remove xstat.in.
30903
30904         * lib/xstat.in: Remove file.  Contents moved into stat.c.
30905         * lib/stat.c: New file.  Contents mostly from xstat.in.
30906         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
30907         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
30908
30909         * lib/safe-read.c: Rework so that it may serve to define safe_write,
30910         too.
30911         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
30912
30913 2002-12-03  Jim Meyering  <jim@meyering.net>
30914
30915         * lib/safe-read.c, safe-write.c: Change variable names and comments,
30916         but not semantics, to minimize the differences between these two files.
30917         (safe_read): Change comment to mention SAFE_READ_ERROR.
30918
30919         * lib/safe-read.c (IS_EINTR): Define.
30920         (safe_read): Use IS_EINTR in place of in-function cpp directives.
30921
30922 2002-12-02  Jim Meyering  <jim@meyering.net>
30923
30924         * lib/safe-read.c (EINTR): Define.
30925         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
30926         (INT_MAX): Provide fallback.
30927         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
30928
30929         * lib/safe-read.h (SAFE_READ_ERROR): Define.
30930
30931 2002-12-02  Bruno Haible  <bruno@clisp.org>
30932
30933         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
30934         Define, taken from safe-read.c.
30935         (INT_MAX): Provide fallback.
30936         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
30937         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
30938
30939         * lib/safe-read.c (EINTR): Remove definition.
30940         (safe_read): Don't use EINTR if it is absent.
30941
30942 2002-12-01  Jim Meyering  <jim@meyering.net>
30943
30944         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
30945         zero.
30946         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
30947
30948 2002-11-27  Paul Eggert  <eggert@twinsun.com>
30949
30950         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
30951         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
30952         with `if (! (value < limit)) abort ();', for readability.
30953
30954 2002-11-26  Karl Berry  <karl@gnu.org>
30955
30956         * lib/strdup.c: copy from libc again, with jim's ok.
30957         * lib/.cppi-disable: re-add strdup.c
30958
30959 2002-11-25  Karl Berry  <karl@gnu.org>
30960
30961         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
30962         instead of "strtol.c".
30963
30964 2002-11-25  Karl Berry  <karl@gnu.org>
30965
30966         * config/install-sh: update from automake for variable quoting, $0 in
30967         error msgs, etc.
30968
30969         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
30970         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
30971         entry.
30972
30973 2002-11-25  Jim Meyering  <jim@meyering.net>
30974
30975         * lib/mktime.c: Sync from libc, now that it has the latest fix.
30976
30977 2002-11-24  Karl Berry  <karl@gnu.org>
30978
30979         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
30980         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
30981
30982 2002-11-24  Jim Meyering  <jim@meyering.net>
30983
30984         Update from coreutils:
30985
30986         * lib/mktime.c: Merge in changes from libc.
30987
30988         Avoid a link-time failure on some Linux systems.
30989         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
30990         (otherwise).
30991         (__mon_yday): Declare with the STATIC attribute.
30992         (__mktime_internal): Likewise.
30993         Based on a report from Greg Schafer.
30994
30995 2002-11-23  Jim Meyering  <jim@meyering.net>
30996
30997         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
30998         Use `unsigned', not `int', as type of index.
30999
31000         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
31001
31002         * lib/fsusage.c: Remove unneeded parentheses around operands of
31003         `defined'.
31004
31005 2002-11-22  Paul Eggert  <eggert@twinsun.com>
31006
31007         * lib/quotearg.h: Allow multiple inclusion by surrounding with
31008         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
31009         so that we can be included first.
31010         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
31011         * lib/quotearg.c: Include quotearg.h immediately after config.h.
31012         No need to include stddef.h or sys/types.h any more.
31013         Surround local include files with "", not "<>".
31014         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
31015         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
31016         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
31017         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
31018         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
31019         (ISPRINT): Remove; no longer needed now that we assume C89.
31020
31021         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
31022         Preserve errno.
31023
31024         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
31025         quotearg_char): Use SIZE_MAX rather than
31026         (size_t) -1 when we are talking about "infinity".
31027
31028         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
31029
31030 2002-11-22  Paul Eggert  <eggert@twinsun.com>
31031
31032         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
31033         hint that one should use `if (! x) abort ();' rather than `assert
31034         (x);', and anyway it's one less thing to worry about configuring.
31035         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
31036         hash_rehash, hash_insert): Use abort rather than assert.
31037
31038 2002-11-22  Bruno Haible  <bruno@clisp.org>
31039
31040         * lib/safe-read.h: Assume C89. Add comments.
31041         (safe_read): Change return type to size_t.
31042         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
31043         byte counts > SSIZE_MAX correctly.
31044         * lib/safe-write.h: New file.
31045         * lib/safe-write.c: New file.
31046         * lib/full-read.h: New file.
31047         * lib/full-read.c: New file.
31048         * lib/full-write.h: Assume C89. Add comments.
31049         * lib/full-write.c: Include safe-write.h.
31050         (full_write): Rewritten to use safe_write.
31051         Suggested by Jim Meyering and Paul Eggert.
31052
31053 2002-11-21  Jim Meyering  <jim@meyering.net>
31054
31055         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
31056
31057         Merge in changes from the coreutils.
31058
31059         2002-09-25  Paul Eggert  <eggert@twinsun.com>
31060         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
31061         <stdint.h>.
31062         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
31063         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
31064         int.  Work more efficiently if X is the same width as uintmax_t.
31065         Do not compare X to -1, to avoid bogus compiler warning.
31066         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
31067         Don't assume that f_frsize and f_bsize are the same type.
31068
31069         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
31070         warning on FreeBSD.
31071
31072         * lib/makepath.c (make_path): Restore umask *before* creating the final
31073         component.
31074         (make_path): Minor reformatting.
31075
31076         * lib/xmalloc.c: Adjust to work with new autoconf macros,
31077         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
31078         HAVE_MALLOC/HAVE_REALLOC.
31079
31080         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
31081         dummy ones.  At least on GNU/Linux systems, `auto' means something
31082         else.
31083         From Michael Stone.
31084
31085 2002-11-21  Bruno Haible  <bruno@clisp.org>
31086
31087         Remove case insensitive option matching.
31088         * lib/argmatch.h (argcasematch): Remove declaration.
31089         (ARGCASEMATCH): Remove macro.
31090         (__xargmatch_internal): Remove case_sensitive argument.
31091         (XARGMATCH): Update.
31092         (XARGCASEMATCH): Remove macro.
31093         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
31094         case_sensitive argument.
31095         (argcasematch): Remove function.
31096         (__xargmatch_internal): Remove case_sensitive argument.
31097         (main): Use XARGMATCH instead of XARGCASEMATCH.
31098
31099         * lib/xmalloc.c: Change compile-time error message. Add comment about
31100         required autoconf version.
31101
31102 2002-11-20  Paul Eggert  <eggert@twinsun.com>
31103
31104         Merge argmatch cleanups from Bison.  Assume C89.
31105
31106         * lib/argmatch.c: Include config.h here, not in argmatch.h.
31107         Include stdlib.h, for EXIT_FAILURE.
31108         Always include <string.h>, since we assume C89.
31109         (EXIT_FAILURE): Remove pre-C89 bug workaround.
31110         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
31111         Include <stddef.h> instead, since it's all we need for size_t.
31112         (PARAMS): Remove.  All uses removed.
31113         (ARRAY_CARDINALITY): Do not bother to #undef.
31114         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
31115         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
31116         Remove unnecessary parentheses.
31117         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
31118         Insert necessary parentheses.
31119         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
31120         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
31121
31122 2002-11-19  Bruno Haible  <bruno@clisp.org>
31123
31124         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
31125         * lib/mbswidth.h: Include <stddef.h>, for size_t.
31126
31127         * lib/mbswidth.h (PARAMS): Remove macro.
31128         (mbswidth, mbsnwidth): Use ANSI C function declarations.
31129         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
31130
31131         * lib/gcd.h (PARAMS): Remove macro.
31132         (gcd): Use ANSI C function declarations.
31133         * lib/gcd.c (gcd): Likewise.
31134
31135 2002-11-15  Bruno Haible  <bruno@clisp.org>
31136
31137         * lib/strcspn.c: Include <stddef.h>.
31138         (strcspn): Use ANSI C function declaration. Change return type to
31139         size_t. Use NULL.
31140         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
31141         (strpbrk): Use NULL.
31142         * lib/strpbrk.h (PARAMS): Remove macro.
31143         (strpbrk): Use ANSI C function declaration.
31144         * lib/strstr.c: Don't include <sys/types.h>.
31145         * lib/strstr.h (PARAMS): Remove macro.
31146         (strstr): Use ANSI C function declarations.
31147
31148 2002-11-14  Karl Berry  <karl@gnu.org>
31149
31150         * config/mkinstalldirs: `do' on separate line, instead of
31151         `for var; do'.
31152
31153 2002-11-06  Bruno Haible  <bruno@clisp.org>
31154
31155         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
31156         * lib/gcd.c (gcd): Likewise.
31157
31158 2002-11-05  Bruno Haible  <bruno@clisp.org>
31159
31160         * lib/gcd.h: New file, from gettext-0.11.5.
31161         * lib/gcd.c: New file, from gettext-0.11.5.
31162
31163 2002-11-05  Bruno Haible  <bruno@clisp.org>
31164
31165         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
31166         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
31167         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
31168         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
31169
31170         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
31171         <libintl.h>.
31172         * lib/makepath.c: Include gettext.h instead of <locale.h> and
31173         <libintl.h>.
31174
31175         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
31176         * lib/human.c: Include gettext.h instead of <libintl.h>.
31177         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
31178         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
31179         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
31180         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
31181         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
31182         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
31183         (textdomain): Remove definition.
31184         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
31185
31186         * lib/long-options.c: Remove include of <libintl.h> and definition of
31187         _.
31188         * lib/same.c: Remove include of <libintl.h> and definition of _.
31189
31190 2002-11-04  Owen Taylor  <otaylor@redhat.com>
31191
31192         * lib/config.charset: A few additions for Solaris.
31193
31194 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
31195
31196         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
31197         * lib/localcharset.c (locale_charset): Declare as extern "C".
31198
31199 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
31200
31201         * lib/config.charset: msdos in uk_UA uses CP1125.
31202
31203 2002-11-04  Bruno Haible  <bruno@clisp.org>
31204
31205         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
31206         * lib/strcase.h: New file, from GNU gettext-0.11.5.
31207         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
31208         * lib/strstr.h: New file, from GNU gettext-0.11.5.
31209         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
31210
31211 2002-11-04  Bruno Haible  <bruno@clisp.org>
31212
31213         * lib/localcharset.c (locale_charset): Don't return an empty string.
31214
31215 2002-11-04  Bruno Haible  <bruno@clisp.org>
31216
31217         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
31218         aliases.
31219
31220 2002-11-04  Bruno Haible  <bruno@clisp.org>
31221
31222         * lib/config.charset: Update for newest glibc. Add canonical names
31223         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
31224
31225 2002-11-04  Bruno Haible  <bruno@clisp.org>
31226
31227         * lib/config.charset: Add support for NetBSD.
31228
31229 2002-11-04  Bruno Haible  <bruno@clisp.org>
31230
31231         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
31232
31233 2002-11-01  Bruno Haible  <bruno@clisp.org>
31234
31235         * configure.in: Add AC_CONFIG_AUX_DIR call.
31236         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
31237         test/Makefile.
31238         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
31239
31240 2002-09-28  Karl Berry  <karl@gnu.org>
31241
31242         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
31243         installed automake until the next release, since changes have been
31244         made.
31245
31246 2002-09-25  Karl Berry  <karl@gnu.org>
31247
31248         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
31249         * lib/getopt*: copy from libc/posix.
31250         * lib/gettext.h: copy from gettext.
31251         * lib/.cppi-disable: add strdup.c, gettext.h.
31252
31253 2002-09-25  Karl Berry  <karl@gnu.org>
31254
31255         * config/srclist.txt: enable gettext.h check.
31256         * config/config.{guess,sub}: update from prep.
31257         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
31258                 from automake 1.6.3.
31259         See srclist*.
31260
31261 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
31262
31263         * regex.c (PATFETCH): Remove the translating fetch.
31264         (PATFETCH_RAW): Rename to PATFETCH.
31265         (set_image_of_range): New fun.
31266         (SET_RANGE_TABLE_WORK_AREA): Use it.
31267         (regex_compile): Don't translate the pattern chars so eagerly.
31268         Only do it when inserting an `exactn' bytecode or when handling
31269         a char-range.
31270         (mutually_exclusive_p): Avoid empty statement.
31271
31272 2002-07-06  Jim Meyering  <meyering@lucent.com>
31273
31274         * m4/README: Don't mention Makefile.am.in.
31275         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
31276
31277 2002-07-01  Jim Meyering  <meyering@lucent.com>
31278
31279         * lib/c-stack.c: Include sys/time.h.
31280         From Volker Borchert.
31281
31282 2002-06-26  Paul Eggert  <eggert@twinsun.com>
31283
31284         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
31285
31286 2002-06-26  Paul Eggert  <eggert@twinsun.com>
31287
31288         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
31289         New macro.  Use it uniformly instead of
31290         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
31291         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
31292         reported by Vin Shelton.
31293
31294 2002-06-22  Paul Eggert  <eggert@twinsun.com>
31295
31296         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
31297         Do not assume SA_SIGINFO behavior.
31298         Bug reported by Jim Meyering on NetBSD 1.5.2.
31299
31300 2002-06-22  Jim Meyering  <meyering@lucent.com>
31301
31302         * m4/c-stack.m4: New file, from diffutils-2.8.2.
31303         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
31304
31305         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
31306         now that configure.ac uses AC_GNU_SOURCE.
31307         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
31308         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
31309
31310         Update to latest tools.  Suggestions from Paul Eggert.
31311         * m4/stdbool.m4: New file, from diffutils-2.8.2.
31312         * m4/gnu-source.m4: Update from diffutils-2.8.2.
31313         * m4/fnmatch.m4: Likewise.
31314         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
31315         to AC_HEADER_STDBOOL
31316
31317 2002-06-22  Jim Meyering  <meyering@lucent.com>
31318
31319         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
31320         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
31321
31322 2002-06-22  Jim Meyering  <meyering@lucent.com>
31323
31324         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
31325
31326         * lib/exitfail.c, exitfail.h: Likewise.
31327         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
31328
31329         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
31330         of fnmatch.h.
31331         (EXTRA_DIST): Add fnmatch_loop.c.
31332         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
31333
31334         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
31335         * lib/fnmatch.c: Update from diffutils-2.8.2.
31336         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
31337         * lib/fnmatch.h: Remove file.
31338
31339 2002-06-21  Jim Meyering  <meyering@lucent.com>
31340
31341         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
31342         * m4/mbrtowc.m4: Likewise.
31343
31344         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
31345         * m4/mbswidth.m4: Reflect name change:
31346         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
31347         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
31348
31349         * m4/lib-link.m4: Update from gettext-0.11.2.
31350         * m4/gettext.m4: Likewise.
31351
31352         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
31353         From Alfred M. Szmidt.
31354
31355 2002-06-18  Paul Eggert  <eggert@twinsun.com>
31356
31357         * lib/file-type.h: Report an error if neither S_ISREG nor
31358         S_IFREG is defined, instead of using a test specific to glibc
31359         2.2.  This should be safe, since POSIX requires S_ISREG and
31360         Unix Version 7 had S_IFREG.  We don't need to check for
31361         <sys/types.h> since we don't use any symbols that it defines.
31362
31363 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
31364
31365         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
31366         $@-t, so that each temporary file name is unique and valid in the first
31367         8 characters, for operation under DOS.
31368
31369 2002-06-15  Paul Eggert  <eggert@twinsun.com>
31370
31371         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
31372
31373 2002-06-15  Jim Meyering  <meyering@lucent.com>
31374
31375         Work even with DJGPP 2.03, which lacks support for symlinks.
31376         From Richard Dawe.
31377         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
31378         is defined.
31379         * lib/lchown.c (S_ISLNK): Likewise.
31380
31381 2002-06-15  Jim Meyering  <meyering@lucent.com>
31382
31383         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
31384         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
31385         have been included before this file.
31386
31387 2002-06-14  Jim Meyering  <meyering@lucent.com>
31388
31389         * lib/file-type.h: Use the version from diffutils-2.8.2.
31390         * lib/file-type.c: Likewise.
31391
31392 2002-06-07  Jim Meyering  <meyering@lucent.com>
31393
31394         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
31395         They're needed at least for NetBSD 1.5.2.
31396         ($statxfs_includes): Include those same headers.
31397         ($statxfs_includes): Include sys/vfs.h if available.
31398         ($statxfs_includes): Likewise for sys/statvfs.h.
31399         Check for the following members in both structs statfs and statvfs:
31400         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
31401
31402 2002-06-01  Jim Meyering  <meyering@lucent.com>
31403
31404         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
31405         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
31406
31407 2002-05-28  Jim Meyering  <meyering@lucent.com>
31408
31409         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
31410         Reported by Volker Borchert.
31411
31412 2002-05-27  Jim Meyering  <meyering@lucent.com>
31413
31414         Fix a problem seen only on nonconforming systems whereby ls.c's
31415         use of localtime, and then of gettimeofday would cause trouble:
31416         the localtime call used to initialize rpl_gettimeofday's save
31417         mechanism would clobber ls's current local time information so
31418         that in any long listing the first file would always be listed
31419         with date 1970-01-01.  Analysis by Volker Borchert.
31420
31421         * lib/gettimeofday.c (localtime): Undefine.
31422         (rpl_localtime): New function.
31423
31424 2002-05-27  Jim Meyering  <meyering@lucent.com>
31425
31426         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
31427         localtime.
31428
31429         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
31430         use the replacement function; it wouldn't resolve at link time.
31431         Reported by Volker Borchert.
31432
31433 2002-05-22  Jim Meyering  <meyering@lucent.com>
31434
31435         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
31436         file-type.h.
31437         * lib/file-type.h: New file.
31438         * lib/file-type.c (file_type): New file/function.  Extracted from
31439         diffutils.
31440
31441 2002-04-30  Jim Meyering  <meyering@lucent.com>
31442
31443         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
31444
31445 2002-04-29  Paul Eggert  <eggert@twinsun.com>
31446
31447         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
31448
31449 2002-04-29  Paul Eggert  <eggert@twinsun.com>
31450
31451         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
31452         Do not check for alloca.h (no longer used) or stdbool.h (was never
31453         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
31454
31455 2002-04-29  Paul Eggert  <eggert@twinsun.com>
31456
31457         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
31458
31459 2002-04-29  Jim Meyering  <meyering@lucent.com>
31460
31461         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
31462         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
31463         Use AC_FUNC_STRNLEN here instead.
31464
31465         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
31466         With autoconf-2.53a, it's part of AC_PROG_CC.
31467
31468 2002-04-28  Paul Eggert  <eggert@twinsun.com>
31469
31470         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
31471         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
31472
31473 2002-04-28  Paul Eggert  <eggert@twinsun.com>
31474
31475         * lib/sig2str.h, lib/sig2str.c: New files.
31476         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
31477
31478 2002-04-28  Paul Eggert  <eggert@twinsun.com>
31479
31480         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
31481         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
31482         of 127, since 64 is the largest conceivable number for ancient
31483         nonstandard hosts.
31484         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
31485
31486 2002-04-28  Jim Meyering  <meyering@lucent.com>
31487
31488         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
31489
31490 2002-04-24  Jim Meyering  <meyering@lucent.com>
31491
31492         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
31493         (jm_PREREQ): Use it.
31494
31495         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
31496         mach/mach.h fcntl.h.
31497         Check for this function: setlocale.
31498
31499 2002-04-24  Jim Meyering  <meyering@lucent.com>
31500
31501         * lib/gettext.h: New file, from Gettext.
31502         * lib/Makefile.am (INCLUDES): Remove -I../intl.
31503         (libfetish_a_SOURCES): Add gettext.h.
31504
31505 2002-04-16  Jim Meyering  <meyering@lucent.com>
31506
31507         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
31508         ut_pid, ut_id, ut_exit.
31509
31510 2002-04-16  Jim Meyering  <meyering@lucent.com>
31511
31512         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
31513         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
31514         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
31515
31516 2002-04-12  Jim Meyering  <meyering@lucent.com>
31517
31518         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
31519         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
31520         existence of the getmntinfo function.  Needed for Darwin 5.3.
31521
31522         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
31523         This is necessary at least on Darwin 5.3.
31524
31525         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
31526         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
31527         strnlen.o in the library, and that makes some versions of ranlib
31528         object.
31529
31530 2002-04-12  Jim Meyering  <meyering@lucent.com>
31531
31532         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
31533
31534 2002-04-09  Jim Meyering  <meyering@lucent.com>
31535
31536         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
31537         to be more precise.  Rather than saying we're checking whether the
31538         function `works', say what we're testing.
31539         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
31540         Reported by Bruno Haible.
31541
31542 2002-03-10  Jim Meyering  <meyering@lucent.com>
31543
31544         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
31545         Suggestion from Santiago Vila.
31546
31547 2002-03-08  Jim Meyering  <meyering@lucent.com>
31548
31549         * lib/rename.c: Mention that this wrapper is needed also on
31550         mips-dec-ultrix4.4 systems.
31551
31552 2002-03-02  Jim Meyering  <meyering@lucent.com>
31553
31554         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
31555         not HAVE_CLOCK_SETTIME.
31556
31557 2002-02-27  Paul Eggert  <eggert@twinsun.com>
31558
31559         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
31560         Check for clock_settime.
31561
31562 2002-02-27  Paul Eggert  <eggert@twinsun.com>
31563
31564         * lib/nanosleep.h: Rename to....
31565         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
31566
31567         * lib/gettime.c: New file.
31568         * lib/settime.c: New file.
31569         * lib/stime.c: Remove.
31570
31571         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
31572         timespec.h.  Remove nanosleep.h.
31573
31574 2002-02-25  Paul Eggert  <eggert@twinsun.com>
31575
31576         * m4/acl.m4: New file.
31577         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
31578         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
31579
31580 2002-02-25  Paul Eggert  <eggert@twinsun.com>
31581
31582         * lib/acl.c, lib/acl.h: New files.
31583         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
31584
31585 2002-02-24  Jim Meyering  <meyering@lucent.com>
31586
31587         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
31588         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
31589         cause trouble.  Reported by Nelson Beebe.
31590
31591 2002-02-23  Paul Eggert  <eggert@twinsun.com>
31592
31593         * lib/path-concat.c (xpath_concat): Reorder code to pacify
31594         compilers that don't know that xalloc_die never returns.
31595
31596 2002-02-20  Jim Meyering  <meyering@lucent.com>
31597
31598         * lib/getdate.c: Regenerate using bison-1.33.
31599
31600 2002-02-17  Jim Meyering  <meyering@lucent.com>
31601
31602         * config/config.guess (main): Don't use `head -1'; it's no longer
31603         portable. Use `sed 1q' instead.
31604
31605 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
31606
31607         * m4/codeset.m4: Upgrade to gettext-0.11.
31608         * m4/gettext.m4: Upgrade to gettext-0.11.
31609         * m4/glibc21.m4: Upgrade to gettext-0.11.
31610         * m4/iconv.m4: Upgrade to gettext-0.11.
31611         * m4/isc-posix.m4: Upgrade to gettext-0.11.
31612         * m4/lcmessage.m4: Upgrade to gettext-0.11.
31613         * m4/lib-ld.m4: New file, from gettext-0.11.
31614         * m4/lib-link.m4: New file, from gettext-0.11.
31615         * m4/lib-prefix.m4: New file, from gettext-0.11.
31616         * m4/progtest.m4: Upgrade to gettext-0.11.
31617
31618 2002-02-15  Paul Eggert  <eggert@twinsun.com>
31619
31620         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
31621         (jm_PREREQ): Use it.
31622
31623 2002-02-15  Paul Eggert  <eggert@twinsun.com>
31624
31625         * lib/posixver.c, lib/posixver.h: New files.
31626         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
31627
31628 2002-02-02  Paul Eggert  <eggert@twinsun.com>
31629             Bruno Haible  <bruno@clisp.org>
31630
31631         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
31632         (fwrite_success_callback): New declaration.
31633         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
31634         print_unicode_char. Call failure callback instead of error.
31635         (fwrite_success_callback): New function.
31636         (exit_failure_callback): New function.
31637         (fallback_failure_callback): New function.
31638         (print_unicode_char): Call unicode_to_mb.
31639
31640 2002-01-26  Jim Meyering  <meyering@lucent.com>
31641
31642         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
31643         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
31644
31645 2002-01-26  Jim Meyering  <meyering@lucent.com>
31646
31647         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
31648
31649 2002-01-22  Paul Eggert  <eggert@twinsun.com>
31650
31651         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
31652
31653 2002-01-22  Jim Meyering  <meyering@lucent.com>
31654
31655         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
31656         Otherwise, some versions of automake would omit the rule that makes
31657         Makefile from Makefile.in.
31658
31659 2002-01-21  Paul Eggert  <eggert@twinsun.com>
31660
31661         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
31662         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
31663         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
31664         (memcoll): Set errno to zero if there is no error.
31665
31666         * lib/quotearg.c (quotearg_buffer_restyled):
31667         Fix bug with quoting buffers containing NUL when backslashing escapes.
31668         This bug was exposed by the other changes in this patch.
31669         (quotearg_n_options): New arg ARGSIZE.
31670         All callers changed.
31671         (quoting_options_from_style): New function.
31672         (quotearg_n_style): Use it.
31673         (quotearg_n_style_mem): New function.
31674
31675         * lib/quotearg.h (quotearg_n_style_mem): New function.
31676
31677 2002-01-19  Jim Meyering  <meyering@lucent.com>
31678
31679         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
31680         Remove useless quotes: DF_PROG="df".
31681         * m4/strnlen.m4: New file.
31682
31683 2002-01-16  Paul Eggert  <eggert@twinsun.com>
31684
31685         * lib/backupfile.c (ISDIGIT): Comment fix.
31686         * lib/getdate.y (ISDIGIT): Likewise.
31687         * lib/posixtm.c (ISDIGIT, year): Likewise.
31688         * lib/strverscmp.c (ISDIGIT): Likewise.
31689         * lib/userspec.c (ISDIGIT): Likewise.
31690
31691 2002-01-16  Jim Meyering  <meyering@lucent.com>
31692
31693         * lib/getdate.y: Add three semicolons, each just before a closing
31694         brace. Bison (as of version 1.31) no longer papers over that mistake.
31695
31696 2002-01-05  Jim Meyering  <meyering@lucent.com>
31697
31698         * lib/version-etc.c (version_etc_copyright): Update copyright year.
31699
31700 2001-12-19  Paul Eggert  <eggert@twinsun.com>
31701
31702         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
31703         not silently exit merely because the output buffer happens to
31704         have nothing pending.
31705
31706 2001-12-18  Paul Eggert  <eggert@twinsun.com>
31707
31708         See the big note in ../ChangeLog.
31709         * lib/human.c (suffixes): Prefer K to k for 1024.
31710         (generate_suffix_backwards): New function.
31711         (human_readable_inexact): Use it.
31712         * lib/xstrtol.c (__xstrtol): If there is no number but there
31713         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
31714         Accept 'K' as well as 'k'.
31715
31716 2001-12-15  Jim Meyering  <meyering@lucent.com>
31717
31718         * lib/regex.h (__restrict_arr): Update from libc.
31719
31720         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
31721         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
31722         (STREQ): Define.
31723
31724 2001-12-14  Jim Meyering  <meyering@lucent.com>
31725
31726         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
31727         Suggestion from Bruno Haible.
31728
31729 2001-12-10  Jim Meyering  <meyering@lucent.com>
31730
31731         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
31732         xrealloc, Instead, include "xalloc.h".
31733         (initbuffer): Don't cast xmalloc return value to char*.
31734         (readline): Reword comment.
31735         Don't cast xrealloc return value to char*
31736         Return NULL, not 0.
31737
31738 2001-12-09  Jim Meyering  <meyering@lucent.com>
31739
31740         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
31741         about `signed and unsigned type in conditional expression'.
31742         * lib/posixtm.c (posix_time_parse): Likewise.
31743
31744         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
31745
31746         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
31747         to avoid a pedantic warning.
31748
31749         * lib/getstr.c: Don't include assert.h.
31750         (getstr): Remove warning-evoking assertions.
31751         Return -1 if offset parameter is out of bounds.
31752         Change the type of a local from int to size_t.
31753
31754         * lib/strftime.c (my_strftime_localtime_r): Include this function
31755         definition in the `#if ! HAVE_TM_GMTOFF' block.
31756
31757         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
31758         Include xalloc.h instead.
31759
31760 2001-12-02  Jim Meyering  <meyering@lucent.com>
31761
31762         * lib/tempname.c: Don't declare getenv, thus reverting the change of
31763         2001-11-18.  It's no longer necessary, now that stdlib.h is always
31764         included.
31765
31766         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
31767         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
31768
31769 2001-11-30  Akim Demaille  <akim@epita.fr>
31770
31771         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
31772         before being defined.
31773
31774 2001-11-27  Paul Eggert  <eggert@twinsun.com>
31775
31776         * lib/quotearg.h (quotearg_n, quotearg_n_style):
31777         First arg is int, not unsigned.
31778         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
31779         (SIZE_MAX, UINT_MAX): New macros.
31780         (quotearg_n_options): Abort if N is negative.
31781         Avoid overflow check on hosts where size_t is 64 bits and int
31782         is 32 bits, as overflow is impossible there.
31783         Fix off-by-one typo that caused unnecessary reallocation.
31784
31785 2001-11-27  Jim Meyering  <meyering@lucent.com>
31786
31787         * lib/tempname.c: Merge with version from libc.
31788         * lib/regex.c: Likewise.
31789
31790         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
31791         systems for which STDC_HEADERS is 0, it was not included, resulting in
31792         a warning about an integer-to-pointer conversion problem with getenv.
31793         Reported by Volker Borchert.
31794
31795 2001-11-26  Jim Meyering  <meyering@lucent.com>
31796
31797         * lib/gtod.h: Remove file.
31798         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
31799         * lib/gettimeofday.c: Don't include gtod.h.
31800         (GTOD_init): Remove function.
31801         (rpl_gettimeofday): Do its job here instead, rather than aborting.
31802         Suggestion from Volker Borchert.
31803
31804 2001-11-23  Jim Meyering  <meyering@lucent.com>
31805
31806         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
31807         it.
31808         * lib/hash.c (struct hash_table): Define it here instead.
31809
31810 2001-11-22  Jim Meyering  <meyering@lucent.com>
31811
31812         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
31813
31814 2001-11-20  Jim Meyering  <meyering@lucent.com>
31815
31816         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
31817         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
31818
31819 2001-11-19  Jim Meyering  <meyering@lucent.com>
31820
31821         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
31822         directory.  Use "conftestXXXXXX" as the template.
31823         Suggestion from Paul Eggert.
31824
31825         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
31826         immediately, so the test doesn't mistakenly hit the max-open-files
31827         limit.
31828
31829 2001-11-18  Paul Eggert  <eggert@twinsun.com>
31830
31831         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
31832         (TEMPORARIES): New macro.
31833         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
31834         removes an artificial limitation (e.g. HP-UX 10.20, where
31835         TMP_MAX is 17576).
31836
31837 2001-11-18  Jim Meyering  <meyering@lucent.com>
31838
31839         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
31840
31841 2001-11-18  Jim Meyering  <meyering@lucent.com>
31842
31843         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
31844         on SunOS 4.
31845
31846         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
31847         files will be created before anything else.
31848
31849 2001-11-17  Paul Eggert  <eggert@twinsun.com>
31850
31851         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
31852         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
31853
31854 2001-11-17  Jim Meyering  <meyering@lucent.com>
31855
31856         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
31857         Prompted by a report from Bob Proulx.
31858
31859         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
31860         Instead, require UTILS_FUNC_MKSTEMP.
31861
31862 2001-11-17  Jim Meyering  <meyering@lucent.com>
31863
31864         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
31865         Now, that's done as part of AC_FUNC_STRTOD.
31866
31867 2001-11-17  Jim Meyering  <meyering@lucent.com>
31868
31869         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
31870         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
31871         rather than group writable.  Patch by Juan F. Codagnone.
31872
31873         * lib/readtokens.c: Remove explicit declarations of xmalloc and
31874         xrealloc, Instead, include "xalloc.h".
31875
31876         * lib/mountlist.c: Include unlocked-io.h after all system headers.
31877         Remove explicit declarations of xmalloc, xrealloc,
31878         and xstrdup.  Instead, include "xalloc.h".
31879
31880         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
31881         unlocked-io.h.
31882         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
31883         Likewise.
31884         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
31885
31886         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
31887         Reported by Padraig Brady.
31888
31889         * lib/mkstemp.c: #undef mkstemp.
31890         Include config.h.
31891         (rpl_mkstemp): Rename from mkstemp.
31892         Protoize.
31893
31894 2001-11-16  Jim Meyering  <meyering@lucent.com>
31895
31896         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
31897         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
31898         determine the amount of total physical memory, use pstat_getstatic.
31899         HPUX-11 doesn't define _SC_PHYS_PAGES.
31900         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
31901         If sysconf couldn't be used to determine the amount of available
31902         physical memory, use both pstat_getstatic and pstat_getdynamic.
31903         Based on a patch from Bob Proulx.
31904
31905 2001-11-10  Jim Meyering  <meyering@lucent.com>
31906
31907         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
31908         (jm_PREREQ): Use it.
31909
31910 2001-11-09  Jim Meyering  <meyering@lucent.com>
31911
31912         * m4/jm-macros.m4: Require autoconf-2.52f.
31913         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
31914         Use these AC_-prefixed names, not the AM_-prefixed ones.
31915
31916         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
31917
31918 2001-11-05  Jim Meyering  <meyering@lucent.com>
31919
31920         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
31921
31922 2001-11-04  Jim Meyering  <meyering@lucent.com>
31923
31924         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
31925         $DEFS.
31926
31927 2001-11-03  Jim Meyering  <meyering@lucent.com>
31928
31929         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
31930         of AC_DEFUN.
31931
31932         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
31933         know the name of the variable in the macro definition.
31934
31935 2001-11-03  Jim Meyering  <meyering@lucent.com>
31936
31937         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
31938         in argmatch_to_argument call.
31939
31940         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
31941         argument.
31942
31943         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
31944         e.g., a fault due to an attempt to free a NULL pointer.
31945
31946 2001-11-01  Jim Meyering  <meyering@lucent.com>
31947
31948         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
31949         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
31950
31951 2001-11-01  Jim Meyering  <meyering@lucent.com>
31952
31953         * lib/dirfd.c, lib/dirfd.h: New files.
31954         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
31955
31956         * lib/hash.c (hash_print) [TESTING]: Clean up.
31957
31958 2001-10-22  Paul Eggert  <eggert@twinsun.com>
31959
31960         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
31961         to avoid a warning if -Wall.
31962
31963 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
31964
31965         * README: New file
31966         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
31967         (per RMS's instructions, this is now the canonical source)
31968         * lgpl/, gpl/: New directories.
31969
31970 2001-10-21  Paul Eggert  <eggert@twinsun.com>
31971
31972         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
31973
31974 2001-10-21  Jim Meyering  <meyering@lucent.com>
31975
31976         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
31977         this code would end up calling gettext even in packages built
31978         with --disable-nls.
31979         * lib/getopt.c (_): Likewise.
31980         * lib/regex.c (_): Likewise.
31981
31982 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31983
31984         * m4/error.m4 (jm_PREREQ_ERROR):
31985         Do not invoke AC_CHECK_FUNCS with strerror_r, as
31986         AC_FUNC_STRERROR_R does that.
31987         Check for strerror declaration.
31988
31989         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
31990         are supposed to have them these days.
31991         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
31992         Merge changes from latest Autoconf CVS.
31993         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
31994         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
31995         POSIX decided to standardize on the int flavor of strerror_r.
31996
31997 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31998
31999         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
32000         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
32001         Use strerror_r that is only a macro, even if it is not a function.
32002         (strerror): Check for HAVE_DECL_STRERROR before declaring.
32003         (private_strerror): Use prototypes, not old-style function definition.
32004         (print_errno_message): New function.
32005         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
32006         char*-flavored one.
32007         (error_tail, error, error_at_line): Use it.
32008
32009 2001-10-11  Jim Meyering  <meyering@lucent.com>
32010
32011         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
32012         and quote_n (1, ... to avoid clobbering a buffer.
32013
32014 2001-10-05  Jim Meyering  <meyering@lucent.com>
32015
32016         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
32017         hash-pjw.h.
32018         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
32019         * lib/hash-pjw.h: New file.
32020
32021 2001-09-30  Jim Meyering  <meyering@lucent.com>
32022
32023         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
32024         `struct fsstat' has the `f_fstypename' member.
32025         Use that to define FS_TYPE, which is now used to make
32026         the getfsstat link test tighter.
32027
32028 2001-09-30  Jim Meyering  <meyering@lucent.com>
32029
32030         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
32031         Include <sys/ucred.h>, for Apple Darwin.
32032         Include sys/mount.h and sys/fs_types.h only if available.
32033         (FS_TYPE): Define.
32034         (read_filesystem_list): Use FS_TYPE.
32035
32036 2001-09-29  Paul Eggert  <eggert@twinsun.com>
32037
32038         * lib/exclude.c (excluded_filename): 0 -> false, since it's
32039         a boolean context.
32040
32041 2001-09-29  Jim Meyering  <meyering@lucent.com>
32042
32043         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
32044         [one-argument getmntent function]): Include stdio.h before mntent.h.
32045         SunOS 4.1.x needs it for the declaration of `FILE'.
32046         Patch by Volker Borchert.
32047
32048         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
32049         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
32050         sys/fs_types.h, and make the link-test for getfsstat guard #include
32051         directives with appropriate #if HAVE_*_H tests so that we can
32052         detect getfsstat on Apple Darwin1.3.7 systems.
32053         Reported by Nelson Beebe.
32054         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
32055
32056 2001-09-28  Paul Eggert  <eggert@twinsun.com>
32057
32058         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
32059         #defines strtoimax.  Also treat the other strto* functions
32060         like strtoimax.
32061
32062         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
32063         Check for strtoul and strtoumax,
32064         as those declarations are made even in the signed case.
32065         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
32066         Likewise, for strtol and strtoimax.
32067
32068 2001-09-28  Paul Eggert  <eggert@twinsun.com>
32069
32070         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
32071         #defines strtoimax.  Also treat the other strto* functions
32072         like strtoimax.
32073
32074         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
32075         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
32076         (strtoimax, strtoumax): Do not declare if already defined as a macro.
32077
32078 2001-09-26  Jim Meyering  <meyering@lucent.com>
32079
32080         Most macros in unlocked-io.h had the wrong number of arguments.
32081         * lib/gen-uio: New script.
32082         (USE_UNLOCKED_IO): Define to 1 if not already defined.
32083         * lib/unlocked-io.hin: Remove file.
32084         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
32085         rather than trying to embed it here.
32086         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
32087         Reported by Padraig Brady.
32088
32089 2001-09-25  Volker Borchert  <bt@teknon.de>
32090
32091         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
32092         `result'.
32093
32094 2001-09-24  Jim Meyering  <meyering@lucent.com>
32095
32096         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
32097
32098 2001-09-23  Jim Meyering  <meyering@lucent.com>
32099
32100         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
32101         instead of the mere test for existence of mntent.h.  The latter
32102         would get a false-positive on AIX 3.4 systems.
32103         In the outer getmntent if-block, don't die if neither of the getmntent
32104         tests succeeds.  Instead, just fall through and continue with the
32105         remaining tests.
32106
32107 2001-09-23  Jim Meyering  <meyering@lucent.com>
32108
32109         * lib/mountlist.c: Remove useless parentheses in #if directives.
32110         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
32111         the deprecated MOUNTED symbol is no longer defined in mntent.h.
32112
32113 2001-09-22  Jim Meyering  <meyering@lucent.com>
32114
32115         * m4/gettext.m4: New file.  From gettext.
32116         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
32117         * m4/progtest.m4: Likewise
32118         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
32119         * m4/glibc21.m4: Likewise.
32120
32121         * m4/libintl.m4: Remove.  No longer used.
32122
32123 2001-09-22  Jim Meyering  <meyering@lucent.com>
32124
32125         * lib/localcharset.c: Update from latest gettext.
32126         * lib/config.charset: Likewise.
32127
32128 2001-09-20  Jim Meyering  <meyering@lucent.com>
32129
32130         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
32131         strtoimax.
32132         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
32133         strtoumax.
32134
32135 2001-09-20  Jim Meyering  <meyering@lucent.com>
32136
32137         * lib/xstrtol.c (strtoimax): Guard declaration with
32138         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
32139         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
32140         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
32141         (strtoumax): Likewise, for completeness (it wasn't necessary).
32142
32143 2001-09-17  Paul Eggert  <eggert@twinsun.com>
32144
32145         * lib/strtoimax.c (HAVE_LONG_LONG):
32146         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
32147         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
32148         to work around bug in IBM C compiler.
32149
32150 2001-09-17  Jim Meyering  <meyering@lucent.com>
32151
32152         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
32153         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
32154         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
32155         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
32156         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
32157         whenever the right hand side need not be expanded by the shell.
32158
32159 2001-09-16  Paul Eggert  <eggert@twinsun.com>
32160
32161         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
32162         library.  It's not correct, as some older glibcs are buggy.
32163         fnmatch wasn't fixed until glibc 2.2.
32164
32165         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
32166         special shell magic here.
32167
32168 2001-09-16  Jim Meyering  <meyering@lucent.com>
32169
32170         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
32171         * m4/jm-macros.m4: Require it.
32172
32173 2001-09-16  Jim Meyering  <meyering@lucent.com>
32174
32175         * lib/mkdir.c: New file.
32176
32177 2001-09-15  Jim Meyering  <meyering@lucent.com>
32178
32179         * m4/jm-macros.m4: Check for help2man.
32180
32181 2001-09-11  Jim Meyering  <meyering@lucent.com>
32182
32183         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
32184         The body, by Paul Eggert, was moved here from configure.in.
32185         * m4/jm-macros.m4: Require UTILS_HOST_OS.
32186
32187 2001-09-04  Paul Eggert  <eggert@twinsun.com>
32188
32189         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
32190         (jm_PREREQ): Use it.
32191
32192 2001-09-04  Paul Eggert  <eggert@twinsun.com>
32193
32194         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
32195         Use ssize_t, not int, to store result of readlink.
32196         Check for ssize_t overflow as well as size_t overflow,
32197         as POSIX says the result of readlink is implementation-defined
32198         when ssize_t overflows.
32199         Remove unnecessary cast to char*.
32200         Use free+malloc instead of realloc, as the storage doesn't need
32201         to be preserved and it's clearer and can be more efficient that way.
32202         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
32203         * lib/xreadlink.h (xreadlink): Update prototype.
32204
32205 2001-09-04  Paul Eggert  <eggert@twinsun.com>
32206
32207         * lib/xgetcwd.c: Revert some of the previous change; intead,
32208         fix the HAVE_GETCWD_NULL code to behave more like the
32209         !HAVE_GETCWD_NULL code used to.
32210
32211         Include "xalloc.h".
32212         (xgetcwd): Do not return NULL when memory is exhausted; instead,
32213         invoke xalloc_die.
32214
32215 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32216
32217         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
32218         sys/param.h, as pathmax.h includes them.
32219
32220 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32221
32222         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
32223         (jm_PREREQ_XGETCWD): New macro.
32224
32225         * m4/getcwd.m4: New file.
32226
32227 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32228
32229         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
32230         like the HAVE_GETCWD_NULL code.
32231         Include pathmax.h if not HAVE_GETCWD.
32232         Do not include xalloc.h.
32233         (INITIAL_BUFFER_SIZE): New symbol.
32234         Do not use xmalloc / xrealloc, since the caller is responsible for
32235         handling errors.  Preserve errno around `free' during failure.
32236         Do not overrun buffer when using getwd.
32237
32238 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32239
32240         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
32241         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
32242         getcwd (NULL, 0).
32243
32244 2001-09-03  Paul Eggert  <eggert@twinsun.com>
32245
32246         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
32247         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
32248         spotted by Jim Meyering.
32249
32250 2001-09-03  Jim Meyering  <meyering@lucent.com>
32251
32252         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
32253         failure.
32254
32255 2001-09-02  Jim Meyering  <meyering@lucent.com>
32256
32257         * lib/error.c: Update from GNU libc.
32258
32259 2001-09-01  Jim Meyering  <meyering@lucent.com>
32260
32261         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
32262         Used by df.
32263
32264 2001-09-01  Jim Meyering  <meyering@lucent.com>
32265
32266         * lib/xreadlink.c: New file.
32267         * lib/xreadlink.h: New file.
32268         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
32269         xreadlink.h.
32270
32271         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
32272         doesn't conflict with sparc Solaris 7's definition in
32273         /usr/include/sys/int_types.h.
32274
32275         * lib/exclude.c: Use `""', not `<>' to #include non-system header
32276         files.
32277         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
32278         and strncasecmp as r-values.  Unixware didn't have declarations.
32279
32280 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32281
32282         * lib/xstrtol.h: Add copyright notice.
32283         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
32284         LONGINT_INVALID_SUFFIX_CHAR.
32285
32286 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32287
32288         * lib/xstrtol.c (strtoimax): New decl.
32289
32290 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32291
32292         * lib/xgetcwd.c: Don't include pathmax.h.
32293         Include stdlib.h and unistd.h if available.
32294         Include xalloc.h.
32295         (xmalloc, xstrdup, free): Remove decls.
32296         (xgetcwd): Don't assume sizes fit in unsigned.
32297         Check for overflow when computing sizes.
32298         Simplify reallocation code.
32299
32300 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32301
32302         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
32303         a directory's st_size can have an arbitrary value, so the old
32304         usage could waste an arbitrary amount of memory.  All uses
32305         changed.
32306         * lib/savedir.h: Update prototype.
32307
32308 2001-08-31  Paul Eggert  <eggert@twinsun.com>
32309
32310         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
32311
32312         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
32313         old strtoimax.c.
32314
32315         Also, make the following further changes to make this file's
32316         configuration more similar to that of strtol.c:
32317         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
32318         (strtoumax, uintmax_t, strtoull, strtol): Remove.
32319         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
32320         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
32321         changed to signed values.
32322
32323         And make the following changes as well:
32324         Fix copyright notice, as 1999 was missing.
32325         (verify): New macro.
32326         (strtoimax): Check sizes at compile-time, not run-time.
32327         Prefer strtol to strtoll if both work.
32328         (main): Remove; it was not that useful and was a pain to maintain.
32329
32330         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
32331
32332 2001-08-31  Jim Meyering  <meyering@lucent.com>
32333
32334         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
32335         Use an initial, malloc'd, buffer of length 128 rather than
32336         a statically allocated one of length 1024.
32337
32338 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32339
32340         Simplify code, partly by assuming autoconf 2.52 semantics.
32341
32342         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
32343
32344         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
32345         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
32346         All uses removed.
32347         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
32348         Move AC_REQUIRE to next-to-top level, to avoid confusion.
32349         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
32350         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
32351         jm_AC_HEADER_INTTYPES_H.
32352         * m4/jm-macros.m4 (jm_MACROS): Likewise.
32353
32354         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
32355
32356         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
32357         Quote first arg of AC_DEFUN.
32358         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
32359         since they are needed to parse the include file even if we need
32360         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
32361         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
32362         but with opposite signedness.
32363
32364 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32365
32366         Merge 'exclude' changes from tar 1.13.22.
32367         This fixes one or two unlikely storage allocation overflow bugs,
32368         but doesn't change user-visible behavior otherwise.
32369
32370 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32371
32372         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
32373         (jm_PREREQ_EXCLUDE): New macro.
32374
32375 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32376
32377         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
32378         tm to be declared.
32379
32380 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32381
32382         * lib/hash.c: Remove '2001' from copyright notice.
32383
32384 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32385
32386         * lib/full-write.h: New file.
32387         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
32388         * lib/full-write.c: Correct credits, as cccp.c no longer
32389         exists and anyway it was so heavily changed from the old cccp
32390         code as to be unrecognizable.  Include full-write.h.
32391         (full_write) Return size_t, with short writes meaning failure.
32392         All callers changed.  This fixes a bug with large buffers
32393         on 64-bit hosts.
32394         * lib/utime.c: Include full-write.h.
32395
32396 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32397
32398         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
32399         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
32400         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
32401         Include if available.
32402         (<xalloc.h>): Include
32403         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
32404         (verify): New macro.  Use it to verify that EXCLUDE macros do not
32405         collide with FNM macros.
32406         (struct patopts): New struct.
32407         (struct exclude): Use it, as exclude patterns now come with options.
32408         (new_exclude): Support above changes.
32409         (new_exclude, add_exclude_file):
32410         Initial size must now be a power of two to simplify overflow checking.
32411         (free_exclude, fnmatch_no_wildcards): New function.
32412         (excluded_filename): No longer requires options arg, as the options
32413         are determined by add_exclude.  Now returns bool, not int.
32414         (excluded_filename, add_exclude):
32415         Add support for the fancy new exclusion options.
32416         (add_exclude, add_exclude_file): Now takes int options arg.
32417         Check for arithmetic overflow when computing sizes.
32418         (add_exclude_file): xrealloc might modify errno, so don't
32419         realloc until after errno might be used.
32420
32421         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
32422         New macros.
32423         (free_exclude): New decl.
32424         (add_exclude, add_exclude_file): Now takes int options arg.
32425         (excluded_filename): No longer requires options arg, as the options
32426         are determined by add_exclude.  Now returns bool, not int.
32427
32428 2001-08-30  Paul Eggert  <eggert@twinsun.com>
32429
32430         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
32431
32432 2001-08-27  Jim Meyering  <meyering@lucent.com>
32433
32434         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
32435
32436         * lib/version-etc.c (N_): Remove definition.
32437         Revert most of last change.
32438         Instead, simply don't mark the `Copyright...' string for translation.
32439         Based on advice from Paul Eggert.
32440
32441         * lib/strtoxmax.c: Tweak comment.
32442
32443 2001-08-26  Jim Meyering  <meyering@lucent.com>
32444
32445         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
32446
32447         * m4/xstrtoimax.m4: New file.
32448         * m4/xstrtoumax.m4: Add comments explaining why we
32449         AC_REPLACE_FUNCS(strtol).
32450
32451 2001-08-26  Jim Meyering  <meyering@lucent.com>
32452
32453         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
32454         of copyright with `%s' so translators don't get an untranslated
32455         message in 2002.
32456         (COPYRIGHT_YEAR): Define.
32457         (version_etc): Use fprintf rather than fputs.
32458         Suggestion from Ulrich Drepper.
32459
32460         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
32461
32462         * lib/strtoll.c: New file, from GNU libc.
32463         * lib/xstrtoimax.c: New file.
32464
32465         * lib/xstrtol.h: Add xstrtoimax.
32466         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
32467         * lib/strtoimax.c: New file.  Likewise, but first define
32468         STRTOUXMAX_SIGNED.
32469
32470         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
32471         ...
32472         * lib/strtoxmax.c: ... then renamed to this.
32473
32474 2001-08-18  Paul Eggert  <eggert@twinsun.com>
32475
32476         * m4/inttypes.m4: Add AC_PREREQ(2.13).
32477         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
32478         (jm_AC_TYPE_INTMAX_T): New macro.
32479         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
32480
32481         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
32482
32483         * m4/longlong.m4: Renamed from ulonglong.m4.
32484         * m4/inttypes.m4: Renamed from inttypes_h.m4.
32485         * m4/uintmax_t.m4: Removed.
32486
32487 2001-08-13  Paul Eggert  <eggert@twinsun.com>
32488
32489         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
32490         Port to Solaris 8, where 'sed' requires a space after the 'r'
32491         command, and where sh dislikes "$/".  Clean up the spacing a bit.
32492         Redirect output to $tmp just once.
32493
32494 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
32495
32496         * lib/addext.c (<errno.h>): Include.
32497         (errno): Declare if not defined.
32498         (addext): Work correctly when pathconf returns -1 and leaves
32499         errno alone because there is no limit.  Also, work even if
32500         pathconf returns a value greater than SIZE_MAX.
32501
32502 2001-08-12  Jim Meyering  <meyering@lucent.com>
32503
32504         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
32505         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
32506         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
32507         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
32508         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
32509         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
32510         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
32511         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
32512         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
32513         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
32514         utime.m4, utimes.m4, xstrtoumax.m4:
32515         Quote the first argument in each use of AC_DEFUN.
32516
32517 2001-08-12  Jim Meyering  <meyering@lucent.com>
32518
32519         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
32520         Simply `return getcwd (NULL, 0);'.
32521         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
32522         Use 1300 as initial value for length, not PATH_MAX.
32523
32524         * lib/pathmax.h: Clean up cpp syntax.
32525
32526 2001-08-12  Jim Meyering  <meyering@lucent.com>
32527
32528         * lib/gettimeofday.c: New file.
32529         * lib/gtod.h: New file.
32530         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
32531
32532 2001-08-05  Jim Meyering  <meyering@lucent.com>
32533
32534         * m4/jm-macros.m4: Require autoconf-2.52.
32535
32536 2001-08-04  Jim Meyering  <meyering@lucent.com>
32537
32538         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
32539         stmt, to get in sync with glibc.
32540
32541 2001-08-03  Paul Eggert  <eggert@twinsun.com>
32542
32543         The following changes are from gettext 0.10.39 as maintained by
32544         Bruno Haible.
32545
32546         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
32547         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
32548         with inverted sense.  All uses changed.
32549
32550         * lib/mbswidth.c: Don't include <limits.h>.
32551         Include <stdlib.h> and <string.h> unconditionally.
32552         (iswcntrl, mbsinit, ISCNTRL): New macros.
32553         (mbsnwidth): Use K&R style function declarations.
32554         Don't bother checking for MB_LEN_MAX == 1, since the compiler
32555         can optimize it when MB_CUR_MAX == 1.
32556         The width of control characters is zero, not 1.
32557
32558 2001-08-03  Paul Eggert  <eggert@twinsun.com>
32559
32560         The following changes are from gettext 0.10.39 as maintained by
32561         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
32562
32563         * m4/codeset.m4: Upgrade to serial AM1.
32564         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
32565         all uses changed.  Quote first arg of AC_DEFUN.
32566         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
32567
32568         * m4/iconv.m4: Upgrade to serial AM2.
32569         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
32570         Add --with-libconv-prefix.
32571         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
32572         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
32573         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
32574         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
32575         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
32576
32577         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
32578         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
32579         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
32580         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
32581         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
32582         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
32583         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
32584         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
32585         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
32586
32587         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
32588         string.h any more.
32589
32590         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
32591         not the default value.
32592
32593         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
32594         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
32595         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
32596         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
32597         Also check for iswcntrl, used for wcwidth fallback.
32598         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
32599         to Autoconf 2.13.
32600
32601 2001-08-03  Jim Meyering  <meyering@lucent.com>
32602
32603         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
32604         as it was in the original.  Reported by Paul Eggert.
32605
32606 2001-07-16  Jim Meyering  <meyering@lucent.com>
32607
32608         * m4/gettimeofday.m4: New file.
32609         Prompted by a report from Bernhard Baehr.
32610
32611 2001-07-15  Jim Meyering  <meyering@lucent.com>
32612
32613         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
32614         stuff. Now it's in ../Makefile.cfg.
32615
32616 2001-07-15  Jim Meyering  <meyering@lucent.com>
32617
32618         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
32619         (BUILT_SOURCES): Add unlocked-io.h.
32620         (io_functions): Define.
32621         (unlocked-io.h): New rule.
32622         (DISTCLEANFILES): Add unlocked-io.h.
32623         (all-local): Depend on unlocked-io.h, to ensure it is created.
32624
32625         * lib/unlocked-io.hin: New file
32626
32627         * lib/regex.c: Update from glibc.
32628
32629 2001-07-05  Jim Meyering  <meyering@lucent.com>
32630
32631         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
32632         recommendation.
32633         (libfetish_a_SOURCES): Put all .h files here instead.
32634         Remove a thus-exposed (better checks in automake) duplicate and
32635         two unnecessary .h files.
32636
32637 2001-07-04  Jim Meyering  <meyering@lucent.com>
32638
32639         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
32640         that generates jm-glibc-io.m4 so that it doesn't trigger any make
32641         distcheck failure.
32642
32643 2001-07-02  Jim Meyering  <meyering@lucent.com>
32644
32645         The following changes were prompted by suggestions from Bruno Haible.
32646
32647         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
32648         is now generated.
32649         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
32650         definition of EXTRA_DIST.
32651         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
32652         ensure that the generated file is created/updated whenever the list
32653         of $(unlocked_functions) is changed.
32654         (jm-glibc-io.m4): New rule.
32655         (unlocked-io.h): New rule -- currently unused.
32656
32657 2001-06-24  Jim Meyering  <meyering@lucent.com>
32658
32659         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
32660         unmatched right bracket, rather than kludging it with an extra,
32661         falsely-matching quote in a comment.  Patch by Akim Demaille.
32662
32663 2001-06-11  Jim Meyering  <meyering@lucent.com>
32664
32665         * lib/regex.c: Update from GNU libc.
32666
32667 2001-05-27  Jim Meyering  <meyering@lucent.com>
32668
32669         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
32670         Check for ut_type in struct utmp.
32671
32672 2001-05-27  Jim Meyering  <meyering@lucent.com>
32673
32674         * lib/readutmp.h (UT_TYPE): Define.
32675
32676 2001-05-24  Jim Meyering  <meyering@lucent.com>
32677
32678         * lib/argmatch.c: Include "quote.h".
32679         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
32680         quote function.  Reported by Göran Uddeborg.
32681
32682 2001-05-22  Jim Meyering  <meyering@lucent.com>
32683
32684         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
32685         now that we use the package-supplied version unconditionally.
32686         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
32687
32688 2001-05-21  Jim Meyering  <meyering@lucent.com>
32689
32690         * m4/regex.m4: Change a couple backticks to single quotes to avoid
32691         shell syntax errors.
32692
32693 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
32694
32695         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
32696
32697 2001-05-20  Paul Eggert  <eggert@twinsun.com>
32698
32699         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
32700         Don't bother to check library strftime, since
32701         we'll be using our own my_strftime function anyway.
32702         Define my_strftime instead of strftime.
32703
32704 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
32705
32706         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
32707         which is not yet declared.
32708
32709 2001-05-15  Jim Meyering  <meyering@lucent.com>
32710
32711         * m4/regex.m4: Use proper quoting so brackets appear in the test
32712         program.
32713         Reported by, and with help from, Bruno Haible.
32714
32715 2001-05-13  Jim Meyering  <meyering@lucent.com>
32716
32717         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
32718         undefined.
32719
32720 2001-05-11  Paul Eggert  <eggert@twinsun.com>
32721
32722         dirname code cleanup.  base_name now behaves more compatibly
32723         with POSIX basename when given file names that have trailing
32724         slashes, and similarly for dir_name.  Add new primitives
32725         base_len and dir_len.  Put the directory-name-related decls
32726         into dirname.h.
32727
32728         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
32729         * lib/backupfile.c (base_name): Likewise.
32730         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
32731         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
32732         * lib/makepath.c (strip_trailing_slashes): Likewise.
32733         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
32734         ISSLASH): Likewise.
32735         * lib/rename.c (strip_trailing_slashes): Likewise.
32736         * lib/same.c (base_name): Likewise.
32737         * lib/stripslash.c (ISSLASH): Likewise.
32738
32739         * lib/addext.c: Include <dirname.h> after size_t is defined.
32740         * lib/backupfile.c: Likewise.
32741
32742         * lib/addext.c (addext): Use base_len to trim redundant
32743         trailing slashes instead of doing it ourselves.
32744         But do not trim the last slash if it is not redundant.
32745
32746         * lib/backupfile.c (find_backup_file_name,
32747         max_backup_version): Use base_len instead of rolling it ourselves.
32748         Handle the case of "" and (on DOS) "C:" correctly.
32749
32750         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
32751         needed. Include <string.h>, <dirname.h>.
32752         (base_name): Allow file names ending in slashes, other than names
32753         that are all slashes.  In this case, return the basename followed
32754         by the slashes.  This is more general, and can be used in places
32755         where the original base_name purposely had an assertion failure.
32756         (base_len): New function.
32757
32758         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
32759         Do not include <assert.h>; no longer needed.
32760         Include xalloc.h.
32761         (memrchr): Remove decl.
32762         (dir_name_r): Remove.
32763         (dir_len): Renamed from dirlen.  All callers changed.
32764         Rewrite in terms of base_name, for simplicity and consistency.
32765         (dir_name): Never return NULL.  All callers changed.
32766         Do not include <stdlib.h> in test program; no longer needed.
32767         return 0; is fine for test program.
32768
32769         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
32770         New macros.
32771         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
32772
32773         * lib/path-concat.c (path_concat): Use base_len to compute
32774         base length, not strlen; this means we cannot rely on memcpy
32775         to null-terminate.
32776
32777         * lib/same.c (STREQ): Remove.
32778         (same_name): Handle the case where the basename ends in trailing '/'.
32779
32780         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
32781         a slash was stripped.  Do not strip the last slash after a
32782         file system prefix.
32783
32784 2001-05-11  Paul Eggert  <eggert@twinsun.com>
32785
32786         * lib/Makefile.am (libfetish_a_SOURCES):
32787         Add strftime.c, since we now compile it on all hosts.
32788
32789         * lib/strftime.c (my_strftime):
32790         Define to nstrftime if emacs, but only if my_strftime is not defined.
32791         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
32792         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
32793         Add one more extra argument: a nanoseconds value.
32794         All uses changed.
32795         (ns): New macro.
32796         (my_strftime function): Add %N format.
32797         (emacs_strftimeu): Renamed from emacs_strftime,
32798         with extra ut argument.
32799
32800 2001-05-09  Paul Eggert  <eggert@twinsun.com>
32801
32802         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
32803
32804 2001-04-21  Jim Meyering  <meyering@lucent.com>
32805
32806         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
32807         doesn't interfere.
32808
32809 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
32810
32811         * m4/ftruncate.m4: Check for chsize.
32812         Link with ftruncate.o unconditionally if ftruncate is missing.
32813         This was required when cross-compiling to i586-mingw32msvc.
32814
32815 2001-04-08  Jim Meyering  <meyering@lucent.com>
32816
32817         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
32818         recomputed; that's necessary when the offset spans a DST transition.
32819         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
32820
32821 2001-04-02  Jim Meyering  <meyering@lucent.com>
32822
32823         * lib/regex.h, regex.c: Update from GNU libc.
32824
32825 2001-03-24  Jim Meyering  <meyering@lucent.com>
32826
32827         * m4/jm-macros.m4: Require autoconf-2.49d.
32828
32829 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
32830
32831         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
32832
32833 2001-03-19  Paul Eggert  <eggert@twinsun.com>
32834
32835         * lib/version-etc.c (version_etc_copyright): Update to 2001.
32836
32837 2001-03-17  Jim Meyering  <meyering@lucent.com>
32838
32839         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
32840         now that the version in autoconf is equivalent.
32841         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
32842
32843         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
32844         Suggestion from Akim Demaille.
32845
32846         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
32847         (jm_PREREQ_TEMPNAME): New function.
32848
32849 2001-03-16  Paul Eggert  <eggert@twinsun.com>
32850
32851         * lib/tempname.c (uint64_t): Define to uintmax_t if
32852         not defined, and if UINT64_MAX is not defined.
32853         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
32854         Reported by John David Anglin.
32855
32856 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
32857
32858         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
32859         resolve alias if codeset is empty.
32860         * lib/config.charset (BeOS): Use wildcard syntax.
32861
32862 2001-03-13  Jim Meyering  <meyering@lucent.com>
32863
32864         * lib/path-concat.c (path_concat)
32865         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
32866         concatenating e.g., `C:' and `foo'.
32867         From Bruno Haible.
32868
32869 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
32870
32871         * lib/localcharset.c (locale_charset): Don't use
32872         setlocale(LC_CTYPE,NULL). Don't return NULL.
32873         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
32874
32875 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
32876
32877         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
32878         support for DOS/DJGPP.
32879
32880 2001-03-01  Paul Eggert  <eggert@twinsun.com>
32881
32882         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
32883         lacks mkstemp.  Compile our own tempname.c if we compile our own
32884         mkstemp.c, as mkstemp relies on tempname.
32885
32886 2001-03-01  Jim Meyering  <meyering@lucent.com>
32887
32888         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
32889         AH_VERBATIM really does output its argument verbatim.
32890
32891 2001-02-28  Paul Eggert  <eggert@twinsun.com>
32892
32893         * lib/Makefile.am (libfetish_a_SOURCES):
32894         Add dup-safer.c, fopen-safer.c.
32895         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
32896
32897         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
32898         * lib/unistd-safer.h: New files.
32899
32900 2001-02-25  Paul Eggert  <eggert@twinsun.com>
32901
32902         The mkstemp replacement is taken from glibc 2.2.2, with some
32903         portability fixes for use outside glibc, as follows:
32904
32905         * lib/tempname.c (struct_stat64): New macro.
32906         (direxists, __gen_tempname): Use it.
32907         This avoids a portability problem with Solaris 8.
32908
32909         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
32910         (<stddef.h>, <stdint.h>, <string.h>):
32911         Include only if STDC_HEADERS || _LIBC.
32912         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
32913         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
32914         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
32915         (__set_errno): Define this macro if <errno.h> doesn't.
32916         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
32917         Define these macros if <stdio.h> doesn't.
32918         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
32919         Define these macros if <sys/stat.h>
32920         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
32921         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
32922         __xstat64): Define if not _LIBC.
32923         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
32924         (__gen_tempname): Invoke gettimeofday only if
32925         HAVE_GETTIMEOFDAY || _LIBC;
32926         otherwise, fall back on plain "time".
32927         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
32928
32929         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
32930
32931         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
32932
32933 2001-02-18  Paul Eggert  <eggert@twinsun.com>
32934
32935         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
32936
32937 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32938
32939         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
32940         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
32941         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
32942         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
32943
32944 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32945
32946         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
32947         Remove workaround macros for hosts that have mbrtowc but not
32948         mbstate_t, as we now insist on proper declarations for both
32949         before using mbrtowc.
32950
32951 2001-02-17  Jim Meyering  <meyering@lucent.com>
32952
32953         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
32954         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
32955         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
32956         UnixWare 7.1.1.
32957
32958         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
32959         rather than AC_CACHE_VAL.
32960
32961 2001-02-17  Jim Meyering  <meyering@lucent.com>
32962
32963         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
32964         around included file name.
32965
32966         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
32967
32968         * lib/strftime.c: Update from GNU libc (the only changes were to
32969         comments).
32970
32971 2001-02-17  Jim Meyering  <meyering@lucent.com>
32972
32973         * lib/regex.c: Update from libc.
32974
32975 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
32976
32977         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
32978         clash.
32979
32980 2001-02-16  Paul Eggert  <eggert@twinsun.com>
32981
32982         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
32983         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
32984         Reported by Mark Hounschell via Paul Eggert.
32985
32986 2001-02-07  Jim Meyering  <meyering@lucent.com>
32987
32988         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
32989
32990 2001-02-05  Jim Meyering  <meyering@lucent.com>
32991
32992         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
32993         it includes the patch required for `large file' support with at least
32994         HP-UX's 10.20 /bin/cc.
32995
32996 2001-02-03  Jim Meyering  <meyering@lucent.com>
32997
32998         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
32999         AS_IF, now that it works once again (mysteriously).
33000         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
33001
33002 2001-01-30  Jim Meyering  <meyering@lucent.com>
33003
33004         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
33005         * m4/chown.m4: Rename conftestchown to conftest.chown.
33006         * m4/rename.m4: s/conftestdir/conftest.d1/ and
33007         s/conftestdir2/conftest.d2/.
33008         * m4/utimes.m4: s/conftestdata/conftest.data/
33009         Inspired by Pavel Roskin's change in autoconf.
33010
33011 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
33012
33013         * lib/config.charset: Update for FreeBSD 4.2.
33014
33015 2001-01-27  Jim Meyering  <meyering@lucent.com>
33016
33017         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
33018         a use of AS_IF.
33019         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
33020
33021 2001-01-26  Jim Meyering  <meyering@lucent.com>
33022
33023         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
33024         quotearg.c includes it.
33025
33026 2001-01-26  Jim Meyering  <meyering@lucent.com>
33027
33028         * lib/quotearg.c: Include stddef.h.
33029         * lib/quote.c: Include stddef.h.
33030         Reported by Axel Kittenberger.
33031
33032         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
33033         line in double quotes so that it evokes a better diagnostic.
33034         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
33035         Reported by Axel Kittenberger.
33036
33037 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
33038
33039         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
33040         as if it was a `charset'.
33041
33042 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
33043
33044         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
33045         has const.
33046
33047 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
33048
33049         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
33050         to avoid a warning.  Add back 'const' to inptr.
33051
33052 2001-01-20  Jim Meyering  <meyering@lucent.com>
33053
33054         Be sure that headers are checked before used in code compiled
33055         for the type checks.
33056         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
33057         In place of that, invoke jm_CHECK_ALL_TYPES.
33058         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
33059         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
33060         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
33061         The check for ssize_t was mistakenly run before the test for unistd.h.
33062
33063         The configure-time check for stdbool.h was missing.
33064         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
33065         (jm_PREREQ_HASH): New function.
33066
33067 2001-01-17  Jim Meyering  <meyering@lucent.com>
33068
33069         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
33070         for autoconf-2.49c.
33071         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
33072
33073 2001-01-16  Jim Meyering  <meyering@lucent.com>
33074
33075         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
33076         From Bruno Haible.
33077
33078 2001-01-14  Jim Meyering  <meyering@lucent.com>
33079
33080         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
33081         foo and bar.  Create conftestdir/ in the script, not in the C code.
33082         Remove directories in the script, not in the C code.
33083         Remove conftestdir{,2} before trying to create the directory.
33084         Make the entire configure script fail if the mkdir fails.
33085
33086 2001-01-14  Jim Meyering  <meyering@lucent.com>
33087
33088         * lib/rename.c: New file.  From Volker Borchert.
33089         Include stdlib.h, string.h or strings.h, and xalloc.h.
33090         Use strip_trailing_slashes rather than open-coding it.
33091
33092 2001-01-03  Paul Eggert  <eggert@twinsun.com>
33093
33094         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
33095
33096 2001-01-03  Jim Meyering  <meyering@lucent.com>
33097
33098         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
33099         of local `inptr' to avoid warning with some system declarations of
33100         iconv.
33101
33102 2001-01-02  Volker Borchert  <bt@teknon.de>
33103
33104         * m4/rename.m4: New file.
33105         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
33106
33107 2001-01-01  Jim Meyering  <meyering@lucent.com>
33108
33109         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
33110         even on systems with utmpx.h.  It's necessary for the declaration of
33111         utmp's ut_user member.  Reported by Andreas Jaeger.
33112
33113         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
33114         available. They are required for the declarations of getgrgid and
33115         getpwuid resp.
33116         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
33117         Reported by Andreas Jaeger.
33118
33119 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
33120
33121         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
33122         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
33123         so `make install' also works in VPATH builds.
33124
33125 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
33126
33127         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
33128         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
33129         can be used in subdirectories.
33130
33131 2000-12-29  Paul Eggert  <eggert@twinsun.com>
33132
33133         * lib/modechange.c: Do not assume that mode_t uses the
33134         traditional octal encoding.  E.g. "chmod 1 FOO" should set
33135         the other-execute bit of FOO even if S_IXOTH != 1.
33136
33137         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
33138         WOTH, XOTH, ALLM): New macros.
33139         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
33140          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
33141         Use them.
33142         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
33143         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
33144         (mode_compile):
33145         No need to use uintmax_t; unsigned long is long enough.
33146         Don't bother to get suffix since we don't use it.
33147
33148 2000-12-26  Jim Meyering  <meyering@lucent.com>
33149
33150         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
33151         better with autoheader.
33152
33153 2000-12-24  Jim Meyering  <meyering@lucent.com>
33154
33155         * lib/hash.c (is_prime): Return explicit boolean values.
33156         (hash_get_first): Return NULL to appease Irix5.6's 89.
33157         Reported by Nelson Beebe.
33158
33159 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
33160
33161         * lib/localcharset.c (locale_charset): Add support for Win32.
33162
33163 2000-12-18  Paul Eggert  <eggert@twinsun.com>
33164
33165         * lib/physmem.h, lib/physmem.c: New files.
33166
33167         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
33168         (noinst_HEADERS): Add physmem.h.
33169
33170         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
33171         't' for compatibility with Solaris 8 sort.
33172
33173 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
33174
33175         * lib/config.charset: Add support for BeOS.
33176
33177 2000-12-17  Jim Meyering  <meyering@lucent.com>
33178
33179         * m4/dos.m4 (jm_AC_DOS): New file and macro.
33180         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
33181
33182 2000-12-16  Jim Meyering  <meyering@lucent.com>
33183
33184         This bug had a serious impact on chown: `chown N:M FILE' (for integer
33185         N and M) would have treated it like `chown N:N FILE'.
33186
33187         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
33188
33189 2000-12-16  Jim Meyering  <meyering@lucent.com>
33190
33191         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
33192         SHELLS_FILE to a file name that's useful on djgpp systems.
33193         Include stdlib.h.
33194         (ADDITIONAL_DEFAULT_SHELLS): Define.
33195         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
33196         Based mostly on a patch from Prashant TR.
33197
33198 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
33199
33200         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
33201         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
33202         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
33203
33204 2000-12-08  Andreas Schwab  <schwab@suse.de>
33205
33206         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
33207         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
33208
33209 2000-12-07  Jim Meyering  <meyering@lucent.com>
33210
33211         * lib/stripslash.c (ISSLASH): Define.
33212         (strip_trailing_slashes): Use ISSLASH rather than comparing against
33213         `/'.
33214         From Prashant TR.
33215
33216         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
33217         (dir_name_r): Declare this function as static.
33218         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
33219         manifest itself on a name containing a mix of slashes and
33220         backslashes.
33221         Make this function work with names starting with a DOS-style
33222         drive letter and colon prefix.
33223         (dir_name): Append `.' if necessary.
33224         Based mostly on patches from Prashant TR and Eli Zaretskii.
33225
33226         * lib/dirname.h (dir_name_r): Remove prototype.
33227
33228 2000-12-06  Paul Eggert  <eggert@twinsun.com>
33229
33230         * m4/off_t-format.m4: Remove this file.
33231         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
33232
33233 2000-12-06  Jim Meyering  <meyering@lucent.com>
33234
33235         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
33236         replacement strtoull, we may well need the replacement strtoul, too.
33237         Check for declarations of strtoul and strtoull.
33238         Check for strtol.  Mainly as a cue to cause automake to include
33239         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
33240         Check for limits.h -- strtol.c needs it.
33241
33242 2000-12-05  Jim Meyering  <meyering@lucent.com>
33243
33244         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
33245
33246 2000-12-04  Jim Meyering  <meyering@lucent.com>
33247
33248         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
33249         Also include memory.h, stdlib.h, unistd.h if appropriate.
33250         Reported by Andreas Jaeger (conflicting declaration of malloc).
33251
33252 2000-12-02  Jim Meyering  <meyering@lucent.com>
33253
33254         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
33255         * m4/jm-macros.m4 (jm_MACROS): require it.
33256
33257 2000-12-02  Jim Meyering  <meyering@lucent.com>
33258
33259         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
33260
33261 2000-12-01  Paul Eggert  <eggert@twinsun.com>
33262
33263         * lib/memrchr.c: Include <config.h> before any system include file.
33264
33265 2000-11-30  Jim Meyering  <meyering@lucent.com>
33266
33267         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
33268
33269 2000-11-30  Jim Meyering  <meyering@lucent.com>
33270
33271         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
33272
33273 2000-11-29  Paul Eggert  <eggert@twinsun.com>
33274
33275         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
33276
33277 2000-11-26  Jim Meyering  <meyering@lucent.com>
33278
33279         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
33280
33281 2000-11-22  Paul Eggert  <eggert@twinsun.com>
33282
33283         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
33284         size of (size_t) -1; it's not portable.
33285
33286 2000-11-17  Jim Meyering  <meyering@lucent.com>
33287
33288         * lib/strstr.c: Update from GNU libc.
33289
33290 2000-11-17  Akim Demaille  <akim@epita.fr>
33291
33292         * lib/obstack.h: Formatting changes.
33293         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
33294         prevent type checking.
33295         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
33296         cast the value to (void *): assigning a `foo *' to a `void *'
33297         variable is valid.
33298         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
33299
33300 2000-11-16  Jim Meyering  <meyering@lucent.com>
33301
33302         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
33303
33304 2000-11-11  Jim Meyering  <meyering@lucent.com>
33305
33306         * lib/error.c: Add a couple #includes, merging from GNU libc version.
33307
33308 2000-11-10  Jim Meyering  <meyering@lucent.com>
33309
33310         * lib/obstack.h: Update from GNU libc.
33311         * lib/obstack.c: Likewise.
33312
33313 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
33314
33315         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
33316
33317 2000-11-06  Paul Eggert  <eggert@twinsun.com>
33318
33319         * lib/getusershell.c (setusershell): Use rewind rather than
33320         fseek/fseeko, to avoid configuration hassles with fseeko.
33321         Don't bother opening SHELLS_FILE if shellstream is NULL;
33322         it's not necessary.
33323
33324 2000-11-05  Jim Meyering  <meyering@lucent.com>
33325
33326         * lib/makepath.h (make_dir): Declare.
33327         * lib/makepath.c (make_dir): Remove `static' attribute.
33328         Tweak a comment.
33329
33330 2000-11-04  Jim Meyering  <meyering@lucent.com>
33331
33332         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
33333
33334 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
33335
33336         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
33337         last one in a bucket, advance to the next bucket.
33338
33339 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
33340
33341         * lib/fnmatch.c: Do not comment out all the code if we are using
33342         the GNU C library, because in some cases we are replacing buggy
33343         code in the GNU C library itself.
33344
33345 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
33346
33347         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
33348         (regex_compile): Catch bogus \(\1\).
33349
33350 2000-10-30  Paul Eggert  <eggert@twinsun.com>
33351
33352         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
33353         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
33354         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
33355
33356 2000-10-30  Paul Eggert  <eggert@twinsun.com>
33357
33358         * lib/error.h, getline.h, modechange.h:
33359         Remove "2000" from Copyright line, as the file hasn't been
33360         changed this year other than in the copyright notice.
33361
33362         * lib/xalloc.h: Add "2000" to Copyright line, as this file
33363         was changed this year.
33364
33365 2000-10-29  Jim Meyering  <meyering@lucent.com>
33366
33367         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
33368         renaming.
33369         * m4/ls-mntd-fs.m4: Likewise
33370
33371 2000-10-29  Jim Meyering  <meyering@lucent.com>
33372
33373         * lib/xstat.in: Fix grammar in comment.
33374
33375 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
33376
33377         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
33378         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
33379         doesn't define __restrict_arr.
33380
33381 2000-10-28  Jim Meyering  <meyering@lucent.com>
33382
33383         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
33384         (jm_PREREQ_MEMCHR): New function.
33385
33386 2000-10-28  Jim Meyering  <meyering@lucent.com>
33387
33388         * lib/memchr.c: Update from libc.
33389         Adjust for portability:
33390         [HAVE_STDLIB_H]: Include stdlib.h.
33391         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
33392         Undef __memchr, too.
33393         [!weak_alias]: Define __memchr to memchr.
33394
33395         * lib/regex.c: Update from libc.
33396         * lib/regex.h: Likewise.
33397         * lib/getopt1.c: Likewise.
33398         * lib/memcmp.c: Likewise.
33399
33400         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
33401         Avoid using fseek, when possible -- it's broken by design.
33402         Patch by Ulrich Drepper.
33403
33404 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
33405
33406         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
33407         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
33408         Giving in to popular pressure to shut up the compiler with casts.
33409
33410 2000-10-26  Jim Meyering  <meyering@lucent.com>
33411
33412         * lib/strftime.c: Update from libc.
33413
33414 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
33415
33416         * regex.c: More `unsigned char' -> `re_char' changes.
33417         Also change several `int' into `re_wchar_t'.
33418         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
33419         (PUSH_FAILURE_POINTER): Don't cast any more.
33420         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
33421         We want GCC to complain, since this piece of code makes
33422         re_match non-reentrant, which *should* be fixed.
33423         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
33424         (EXTEND_BUFFER): Use RETALLOC.
33425         (SET_LIST_BIT): Don't cast.
33426         (re_wchar_t): New type.
33427         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
33428         that those two functions will always properly return.
33429         (IMMEDIATE_QUIT_CHECK): Cast to void.
33430         (analyse_first): Use recursion rather than an explicit stack.
33431         (re_compile_fastmap): Can't fail anymore.
33432         (re_search_2): Don't check re_compile_fastmap for failure.
33433         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
33434         Now also sets the new value (passed in a new argument).
33435         (re_match_2_internal): Use it.
33436         Also, use a new var `reg' of type size_t when looping through regs
33437         rather than reuse the inappropriate `mcnt'.
33438
33439 2000-10-25  Jim Meyering  <meyering@lucent.com>
33440
33441         * lib/obstack.c: Update from libc.
33442
33443 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
33444
33445         * regex.c (regex_compile): Change the way of handling a range from
33446         a char less than 256 to a char not less than 256.
33447
33448 2000-10-24  Andrew Innes  <andrewi@gnu.org>
33449
33450         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
33451         NT-Emacs only.
33452         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
33453         so that re_search functions only quit when callers expect them to.
33454
33455 2000-10-23  Jim Meyering  <meyering@lucent.com>
33456
33457         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
33458         wrong.  That set_locale call must not have any side effects.
33459         From Paul Eggert.
33460
33461 2000-10-22  Jim Meyering  <meyering@lucent.com>
33462
33463         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
33464         [CYCLIC]: Remove now-unused definition.
33465
33466         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
33467         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
33468         Suggestion from Ulrich Drepper.
33469
33470 2000-10-21  Jim Meyering  <meyering@lucent.com>
33471
33472         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
33473         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
33474         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
33475
33476 2000-10-21  Jim Meyering  <meyering@lucent.com>
33477
33478         * lib/dirname.c (memrchr): Declare if necessary.
33479         (dir_name): Remove the restriction that there be no
33480         trailing slashes.  Now, this code skips past them, effectively
33481         ignoring them.
33482         [TEST_DIRNAME] (main): New unit tests.
33483
33484         * lib/memrchr.c: New file from GNU libc.
33485         Undef __memrchr, too.
33486         [!weak_alias]: Define __memrchr to memrchr.
33487         Guard weak_alias use with `#ifdef weak_alias'.
33488
33489 2000-10-21  Jim Meyering  <meyering@lucent.com>
33490
33491         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
33492         (dir_name): Use dir_name_r.
33493         * lib/dirname.h (dir_name_r): Declare it.
33494
33495 2000-10-17  Jim Meyering  <meyering@lucent.com>
33496
33497         * lib/quote.h (PARAMS): Define and use.
33498         Reported by Akim Demaille.
33499
33500         * lib/getopt.c: Update from libc.
33501
33502 2000-10-16  Jim Meyering  <meyering@lucent.com>
33503
33504         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
33505         setlocale.
33506         From Jan Fedak.
33507
33508 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
33509
33510         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
33511
33512 2000-09-25  Jim Meyering  <meyering@lucent.com>
33513
33514         * lib/md5.h (rol): Define (from GnuPG).
33515
33516         * lib/sha.c: Give credit (GnuPG) where due.
33517         (M): Use rol rather than open-coding it.
33518         Add a FIXME comment.
33519
33520 2000-09-21  Jim Meyering  <meyering@lucent.com>
33521
33522         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
33523         Reported by Michael Stone.
33524
33525 2000-09-20  Jim Meyering  <meyering@lucent.com>
33526
33527         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
33528         (noinst_HEADERS): Add sha.h.
33529         Based on code from Scott G. Miller and from GnuPG.
33530
33531 2000-09-18  Jim Meyering  <meyering@lucent.com>
33532
33533         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
33534         LIBS. Otherwise, everyone ends up linking with -lelf for some
33535         configurations.
33536         Reported by Mike Stone.
33537
33538 2000-09-15  Jim Meyering  <meyering@lucent.com>
33539
33540         * lib/regex.c: Update from libc.
33541
33542 2000-09-10  Jim Meyering  <meyering@lucent.com>
33543
33544         * lib/getopt.c (_getopt_internal): Update from glibc.
33545
33546 2000-09-09  Jim Meyering  <meyering@lucent.com>
33547
33548         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
33549         think it should be used as a general replacement for isascii.
33550         * lib/fnmatch.c: Likewise.
33551         * lib/mbswidth.c: Likewise
33552         * lib/regex.c: Likewise.
33553
33554         Don't use atoi.
33555         * lib/userspec.c: Include sys/param.h and limits.h.
33556         Include xstrtol.h.
33557         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
33558         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
33559         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
33560         UID, GID.  Check range.
33561
33562 2000-09-06  Jim Meyering  <meyering@lucent.com>
33563
33564         * lib/getopt.c (_getopt_internal): Update from glibc.
33565
33566 2000-08-30  Jim Meyering  <meyering@lucent.com>
33567
33568         * lib/strftime.c: Merge in changes from GNU libc.
33569
33570 2000-08-26  Jim Meyering  <meyering@lucent.com>
33571
33572         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
33573         * m4/fpending.m4: New file.
33574
33575 2000-08-26  Jim Meyering  <meyering@lucent.com>
33576
33577         * lib/closeout.c: Include "__fpending.h".
33578         (close_stdout_status): Return right away if there's nothing to flush.
33579
33580         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
33581         * lib/__fpending.c: New file.
33582         * lib/__fpending.h: New file.
33583
33584 2000-08-20  Jim Meyering  <meyering@lucent.com>
33585
33586         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
33587         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
33588         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
33589
33590 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
33591
33592         Improve fileutils installation on systems where running
33593         programs (like install) can't be unlinked.
33594         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
33595         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
33596
33597 2000-08-07  Paul Eggert  <eggert@twinsun.com>
33598
33599         Standardize on "memory exhausted" instead of "Memory exhausted"
33600         or "virtual memory exhausted".
33601         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
33602         "virtual memory exhausted".
33603         * lib/same.c (same_name): Invoke xalloc_die instead of printing
33604         our own message.
33605         * lib/userspec.c (parse_user_spec): Likewise.
33606         * lib/bumpalloc.h: comment fix
33607         * lib/same.c, userspec.c: Include xalloc.h.
33608
33609         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
33610         not char *const and pointing to a constant array.
33611         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
33612         (xrealloc): Comment fix.
33613
33614         * lib/userspec.c (parse_user_spec):
33615         Don't translate a message until just before returning,
33616         to avoid unnecessary translation.
33617
33618 2000-08-07  Jim Meyering  <meyering@lucent.com>
33619
33620         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
33621         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
33622         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
33623         getgroups.c, gethostname.c, getopt.h, group-member.c,
33624         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
33625         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
33626         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
33627         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
33628         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
33629         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
33630         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
33631         yesno.c: Back out Copyright date changes for each file with no change
33632         this year.  This eases coordination with other programs using the same
33633         source code modules.  From Paul Eggert.
33634
33635 2000-08-06  Paul Eggert  <eggert@twinsun.com>
33636
33637         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
33638         not char, for compatibility with glibc 2.1.3 strftime.c.
33639
33640 2000-08-03  Greg McGary  <greg@mcgary.org>
33641
33642         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
33643         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
33644         (EXTEND_BUFFER): Use them.
33645
33646 2000-08-01  Jim Meyering  <meyering@lucent.com>
33647
33648         * lib/dirname.c (ISSLASH): Define.
33649         (BACKSLASH_IS_PATH_SEPARATOR): Define.
33650         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
33651         both `\' and `/' may be use as path separators.
33652         Based on a patch from Prashant TR.
33653
33654 2000-07-31  Paul Eggert  <eggert@twinsun.com>
33655
33656         * lib/quotearg.c (quotearg_n_options): Don't make the initial
33657         slot vector a constant, since it might get modified.
33658
33659 2000-07-31  Jim Meyering  <meyering@lucent.com>
33660
33661         * lib/xmalloc.c: Use `virtual memory exhausted', not
33662         `Memory exhausted'.
33663         * lib/obstack.c (print_and_abort): Likewise.
33664
33665 2000-07-30  Paul Eggert  <eggert@twinsun.com>
33666
33667         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
33668         buffer, so that the caller can always quote one small
33669         component of a "memory exhausted" message in slot 0.
33670         From a suggestion by Jim Meyering.
33671
33672 2000-07-30  Jim Meyering  <meyering@lucent.com>
33673
33674         * lib/makepath.c (make_path): Quote the other instance, too.
33675
33676         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
33677         (STATIC_BUF_SIZE): Define.
33678         (quotearg_n_options): Use only statically allocated storage when
33679         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
33680         than STATIC_BUF_SIZE.
33681
33682 2000-07-29  Jim Meyering  <meyering@lucent.com>
33683
33684         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
33685         * lib/dirname.c (dir_name): Likewise.
33686
33687         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
33688         `/'.
33689
33690         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
33691         (dir_name): Assert that there are no trailing slashes.
33692
33693 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
33694
33695         * lib/mbswidth.h (mbswidth): Add a flags argument.
33696         (mbswidth): New declaration.
33697         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
33698         * lib/mbswidth.c (mbswidth): Add a flags argument.
33699         (mbsnwidth): New function.
33700
33701 2000-07-24  Jim Meyering  <meyering@lucent.com>
33702
33703         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
33704
33705 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33706
33707         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
33708
33709 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33710
33711         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
33712         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
33713         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
33714         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
33715         invoke multibyte primitives.
33716
33717 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33718
33719         * lib/quotearg.c:
33720         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
33721         so that mbstate_t is always defined.
33722
33723         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
33724         be 1 in at least one GCC installation, and this configuration
33725         error is likely to be common.  Ignoring MB_LEN_MAX hurts
33726         performance on hosts that have mbrtowc but have only unibyte
33727         locales, but I assume these hosts are rare.
33728
33729 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33730
33731         * lib/mbswidth.c (_XOPEN_SOURCE):
33732         Don't define; this causes problems on Solaris 7.
33733         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
33734
33735 2000-07-23  Jim Meyering  <meyering@lucent.com>
33736
33737         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
33738         too: getgrgid, getpwuid, getuid.
33739
33740 2000-07-23  Jim Meyering  <meyering@lucent.com>
33741
33742         * lib/basename.c (base_name): Add an assertion.
33743
33744 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
33745
33746         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
33747         shadow its mbsinit function.
33748
33749 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
33750
33751         * lib/mbswidth.h: New file.
33752         * lib/mbswidth.c: New file.
33753         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
33754         (noinst_HEADERS): Add mbswidth.h.
33755
33756 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
33757
33758         * lib/config.charset: Add support for FreeBSD. Improve support for
33759         HP-UX and IRIX 6.
33760
33761 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
33762
33763         * m4/mbswidth.m4: New file.
33764         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
33765
33766 2000-07-15  Jim Meyering  <meyering@lucent.com>
33767
33768         * lib/makepath.c: Include quote.h.
33769         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
33770         corresponding argument in a `quote (...)' call.
33771         Give better diagnostics.
33772
33773         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
33774         (noinst_HEADERS): Add quote.h.
33775
33776         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
33777         from tar's src/misc.c.
33778         * lib/quote.h: New file.  Prototypes for same.
33779
33780 2000-07-14  Paul Eggert  <eggert@twinsun.com>
33781
33782         From a suggestion by Bruno Haible.
33783         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
33784         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
33785         to decide whether to define the BeOS workaround macro;
33786         this adjusts to the change to AC_MBSTATE_T.
33787
33788 2000-07-14  Jim Meyering  <meyering@lucent.com>
33789
33790         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
33791         jm_AC_TYPE_UINTMAX_T.
33792
33793 2000-07-13  Paul Eggert  <eggert@twinsun.com>
33794
33795         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
33796
33797         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
33798         quotearg_buffer_restyled): Add support for
33799         clocale_quoting_style.  Undo previous change to
33800         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
33801         and "{RIGHT QUOTATION MARK}" msgids.
33802
33803 2000-07-10  Paul Eggert  <eggert@twinsun.com>
33804
33805         From a suggestion by Bruno Haible.
33806         * m4/mbstate_t.m4 (AC_MBSTATE_T):
33807         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
33808         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
33809         and mbstate_t, to a single-part test that simply defines mbstate_t.
33810         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
33811         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
33812
33813 2000-07-10  Jim Meyering  <meyering@lucent.com>
33814
33815         * m4/strerror_r.m4: Mirror the correction made in autoconf.
33816
33817         * m4/gnu-source.m4: Output to confdefs.h directly.
33818         Suggestion from Akim Demaille.
33819
33820 2000-07-09  Paul Eggert  <eggert@twinsun.com>
33821
33822         The old behavior of quoting `like this' doesn't look good with
33823         newer, ISO-style fonts.  See:
33824         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
33825
33826         Instead, quote "like this" by default.  Let the translator
33827         tailor the locale-specific quoting behavior by providing
33828         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
33829
33830         * lib/quotearg.c (N_): New macro.
33831         (gettext_default): New function.
33832         (quotearg_buffer_restyled): Use
33833         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
33834         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
33835
33836 2000-07-09  Jim Meyering  <meyering@lucent.com>
33837
33838         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
33839         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
33840
33841         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
33842         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
33843
33844 2000-07-09  Jim Meyering  <meyering@lucent.com>
33845
33846         * lib/Most files: Update copyright dates to include 2000.
33847
33848 2000-07-08  Jim Meyering  <meyering@lucent.com>
33849
33850         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
33851         if not defined.
33852         (xgethostname): Remove now-unnecessary #ifdef.
33853         Move declaration of `err' into loop where it's used.
33854
33855 2000-07-05  Paul Eggert  <eggert@twinsun.com>
33856         and Bruno Haible  <haible@clisp.cons.org>
33857
33858         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
33859         only if the test for an object-type mbstate_t fails.  This
33860         prevents us from mistakenly reporting that mbstate_t is a
33861         system object type after we "#define mbstate_t int" to work
33862         around its lack.
33863
33864 2000-07-05  Paul Eggert  <eggert@twinsun.com>
33865         and Bruno Haible  <haible@clisp.cons.org>
33866
33867         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
33868
33869 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33870
33871         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
33872         to strerror_r.
33873         Include <ctype.h> for use of isalpha.
33874
33875 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33876
33877         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
33878         by allocating a larger buffer. Test the gethostname return value for
33879         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
33880         returns an error and ENAMETOOLONG isn't defined.
33881
33882 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33883
33884         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
33885         dimension.
33886
33887 2000-07-04  Jim Meyering  <meyering@lucent.com>
33888
33889         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
33890         of the deprecated AC_CHECKING.
33891
33892 2000-07-04  Jim Meyering  <meyering@lucent.com>
33893
33894         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
33895         Reported by Bruno Haible.
33896
33897 2000-07-04  Jim Meyering  <meyering@lucent.com>
33898
33899         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
33900         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
33901         lacks mbrtowc.
33902
33903 2000-07-03  Paul Eggert  <eggert@twinsun.com>
33904
33905         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
33906         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
33907
33908 2000-07-03  Paul Eggert  <eggert@twinsun.com>
33909         and Bruno Haible  <haible@clisp.cons.org>
33910
33911         * lib/quotearg.c (mbrtowc):
33912         Assign to *pwc, and return 1 only if result is nonzero.
33913         (iswprint): Use ISPRINT when substituting our own mbrtowc.
33914
33915 2000-07-03  Jim Meyering  <meyering@lucent.com>
33916
33917         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
33918
33919 2000-07-03  Jim Meyering  <meyering@lucent.com>
33920
33921         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
33922         This is necessary to get a definition of e.g., UTMP_FILE on
33923         HP-UX 10.20.
33924         From Bob Proulx.
33925
33926 2000-07-02  Jim Meyering  <meyering@lucent.com>
33927
33928         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
33929
33930         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
33931         AC_LIBOBJ(function_name).
33932         * m4/chown.m4: Likewise.
33933         * m4/fnmatch.m4: Likewise.
33934         * m4/ftruncate.m4: Likewise.
33935         * m4/getgroups.m4: Likewise.
33936         * m4/getline.m4: Likewise.
33937         * m4/group-member.m4: Likewise.
33938         * m4/jm-macros.m4: Likewise.
33939         * m4/lstat.m4: Likewise.
33940         * m4/malloc.m4: Likewise.
33941         * m4/memcmp.m4: Likewise.
33942         * m4/nanosleep.m4: Likewise.
33943         * m4/putenv.m4: Likewise.
33944         * m4/realloc.m4: Likewise.
33945         * m4/regex.m4: Likewise.
33946         * m4/stat.m4: Likewise.
33947         * m4/strftime.m4: Likewise.
33948
33949 2000-07-02  Jim Meyering  <meyering@lucent.com>
33950
33951         * lib/quotearg.c (mbstate_t): Don't define here.
33952
33953 2000-07-02  Jim Meyering  <meyering@lucent.com>
33954
33955         * lib/nanosleep.c (SIGCONT): Define if not already defined.
33956
33957 2000-07-01  Jim Meyering  <meyering@lucent.com>
33958
33959         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
33960
33961 2000-07-01  Jim Meyering  <meyering@lucent.com>
33962
33963         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
33964         problem.
33965
33966 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33967
33968         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
33969         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
33970
33971 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33972
33973         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
33974         per change in ../m4/ls-mntd-fs.m4.
33975         (read_filesystem_list): Ignore symbolic links.
33976
33977 2000-06-29  Jim Meyering  <meyering@lucent.com>
33978
33979         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
33980         for declaration of strcmp.
33981
33982         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
33983
33984         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
33985         Avoid warning by casting result to `char *' to remove `const'.
33986
33987 2000-06-28  Jim Meyering  <meyering@lucent.com>
33988
33989         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
33990         included by quotearg.c, for which we perform this test.  From
33991         Bruno Haible.
33992
33993 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33994
33995         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
33996         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
33997         <utmpx.h> exists, put readutmp.o into LIBOBJS.
33998
33999 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
34000
34001         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
34002
34003 2000-06-26  Paul Eggert  <eggert@twinsun.com>
34004
34005         savedir now sets errno on failure and invokes xmalloc to get memory.
34006         Fix a couple of other minor bugs while we're at it.
34007
34008         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
34009         (NAMLEN): Remove macro.
34010         (malloc, realloc): Remove decls.
34011         (stpcpy): Likewise.
34012         ("xalloc.h"): Include.
34013         (NAME_SIZE_DEFAULT): New macro.
34014         (savedir): Use xmalloc / xrealloc to allocate memory.
34015         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
34016         Skip "" directory entries.
34017         Use strlen to calculate directory entry length, since the old method
34018         is rarely used these days and isn't worth supporting.
34019         Don't use a pointer after freeing it.
34020         Check for integer overflow when calculating allocation size.
34021         Use memcpy to copy entries, instead of stpcpy.
34022         Set errno properly when returning NULL.
34023         Check for readdir error.
34024
34025 2000-06-26  Jim Meyering  <meyering@lucent.com>
34026
34027         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
34028
34029 2000-06-25  Jim Meyering  <meyering@lucent.com>
34030
34031         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
34032         Linux header bug when _XOPEN_SOURCE is defined to 500.
34033
34034 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
34035
34036         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
34037         deficiency.
34038
34039 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
34040
34041         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
34042         Include xalloc.h.
34043         Don't include <stdlib.h>.  Don't declare malloc, realloc.
34044
34045 2000-06-24  Jim Meyering  <meyering@lucent.com>
34046
34047         * m4/strerror_r.m4: Revive this file -- to try out an experimental
34048         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
34049         for which strerror does return char*, but which lacks a conveniently
34050         accessible declaration of the function.  If the compile-test says
34051         strerror_r doesn't work, then resort to a `run'-test that works on
34052         BeOS and segfaults on DEC Unix.
34053
34054 2000-06-24  Jim Meyering  <meyering@lucent.com>
34055
34056         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
34057
34058 2000-06-23  Paul Eggert  <eggert@twinsun.com>
34059
34060         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
34061         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
34062
34063 2000-06-23  Paul Eggert  <eggert@twinsun.com>
34064
34065         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
34066         (mbrtowc, mbstate_t): Define substitutes if
34067         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
34068         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
34069         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
34070
34071 2000-06-23  Jim Meyering  <meyering@lucent.com>
34072
34073         * m4/afs.m4: Add missing AC_MSG_RESULT.
34074         Reported by Bruno Haible.
34075
34076         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
34077         Suggestion from Bruno Haible.
34078
34079 2000-06-23  Jim Meyering  <meyering@lucent.com>
34080
34081         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
34082
34083 2000-06-21  Jim Meyering  <meyering@lucent.com>
34084
34085         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
34086
34087 2000-06-21  Jim Meyering  <meyering@lucent.com>
34088
34089         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
34090         (noinst_HEADERS): Add getstr.h.
34091
34092         * lib/getline.c (getstr): Move into a separate file.
34093         * lib/getstr.c (getstr): New file, extracted from getline.c, with
34094         the following changes: new parameter, delim2; both delim[12]
34095         parameters have type `int', not `char'.  The latter would lose
34096         with 8-bit delimiters.
34097         * lib/getstr.h: New file.
34098
34099 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
34100
34101         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
34102         than 1024, return a memory chunk of least possible size, instead
34103         of size PATH_MAX + 2. In the loop, increment the size proportionally.
34104         Use free/xmalloc instead of xrealloc to avoid copying for very long
34105         paths.
34106
34107 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
34108
34109         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
34110         the empty string.
34111
34112 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
34113
34114         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
34115         address, not strdup.  Include <stdlib.h> and don't declare free().
34116
34117 2000-06-19  Jim Meyering  <meyering@lucent.com>
34118
34119         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
34120
34121 2000-06-18  Jim Meyering  <meyering@lucent.com>
34122
34123         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
34124
34125         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
34126         `checking whether...' message to be consistent with that of the
34127         lstat test.
34128
34129 2000-06-18  Jim Meyering  <meyering@lucent.com>
34130
34131         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
34132         Besides, these days every porting target provides a mkdir function.
34133
34134         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
34135         needed. (this snippet comes from src/system.h).
34136
34137 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
34138
34139         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
34140
34141 2000-06-15  Paul Eggert  <eggert@twinsun.com>
34142
34143         * lib/human.c (adjust_value): New function.
34144         (human_readable_inexact): Apply rounding style even when
34145         printing approximate values.
34146
34147 2000-06-14  Paul Eggert  <eggert@twinsun.com>
34148
34149         * lib/human.c (human_readable_inexact): Allow an input block
34150         size that is not a multiple of the output block size, and vice versa.
34151         Reported by Piergiorgio Sartor.
34152
34153 2000-06-14  Paul Eggert  <eggert@twinsun.com>
34154
34155         * lib/getdate.y (get_date): Apply relative times after time
34156         zone indicator, not before.  Reported by Todd A. Jacobs.
34157
34158 2000-06-13  Jim Meyering  <meyering@lucent.com>
34159
34160         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
34161
34162         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
34163
34164 2000-06-12  Paul Eggert  <eggert@twinsun.com>
34165
34166         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
34167
34168 2000-06-12  Jim Meyering  <meyering@lucent.com>
34169
34170         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
34171         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
34172         optional argument.
34173         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
34174         the optional argument, `lib'.
34175
34176 2000-06-08  Jim Meyering  <meyering@lucent.com>
34177
34178         * m4/largefile.m4: Remove file (now that it's part of autoconf).
34179
34180 2000-06-04  Paul Eggert  <eggert@twinsun.com>
34181
34182         Rewrite largefile configuration so that we don't need to run
34183         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
34184         AC_CANONICAL_HOST in configure.in -- jmm]
34185
34186         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
34187         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
34188         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
34189         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
34190         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
34191         All uses changed.
34192         Instead of inspecting the output of getconf, try to compile the
34193         test program without and with the macro definition.
34194         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
34195         for getconf.  Instead, check for the needed flags by compiling
34196         test programs.
34197
34198 2000-06-04  Paul Eggert  <eggert@twinsun.com>
34199
34200         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
34201
34202 2000-06-04  Jim Meyering  <meyering@lucent.com>
34203
34204         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
34205         SunOS 4.1.4 for which gid_t is an unsigned type.
34206
34207 2000-06-03  Jim Meyering  <meyering@lucent.com>
34208
34209         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
34210         now that autoconf requires that.
34211
34212         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
34213         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
34214         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
34215
34216 2000-06-03  Jim Meyering  <meyering@lucent.com>
34217
34218         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
34219
34220 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
34221
34222         * m4/glibc21.m4: New file.
34223         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
34224
34225 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
34226
34227         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
34228         newer, don't install charset.alias.
34229         * lib/config.charset: Change the Linux/glibc rules so they become empty
34230         on glibc-2.1 or newer.
34231
34232 2000-06-02  Jim Meyering  <meyering@lucent.com>
34233
34234         * lib/mountlist.c: Back out last change.  Instead, do this...
34235         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
34236         me_dummy member using the same `ignore'-testing code.
34237         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
34238         fs_type strings.
34239         From Mark D. Roth.
34240
34241 2000-05-29  Jim Meyering  <meyering@lucent.com>
34242
34243         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
34244         mounts with the `ignore' attribute.  Based on a patch from
34245         Mark D. Roth.
34246
34247 2000-05-28  Jim Meyering  <meyering@lucent.com>
34248
34249         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
34250         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34251         * m4/stat.m4: Likewise.
34252         * m4/lstat.m4: Likewise.
34253         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
34254
34255         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
34256         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
34257
34258 2000-05-26  Jim Meyering  <meyering@lucent.com>
34259
34260         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
34261
34262 2000-05-24  Jim Meyering  <meyering@lucent.com>
34263
34264         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
34265         autoconf requires that.
34266         * m4/lib-check.m4: Likewise.
34267         * m4/jm-macros.m4: Likewise.
34268         * m4/strftime.m4: Likewise.
34269
34270         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
34271         AC_CHECK_DECLS, now that autoconf requires that.
34272
34273 2000-05-22  Jim Meyering  <meyering@lucent.com>
34274
34275         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34276         * m4/lstat.m4: Likewise.
34277
34278 2000-05-22  Jim Meyering  <meyering@lucent.com>
34279
34280         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
34281
34282 2000-05-20  Jim Meyering  <meyering@lucent.com>
34283
34284         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
34285         (jm_PREREQ): Use it.
34286
34287 2000-05-18  Jim Meyering  <meyering@lucent.com>
34288
34289         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
34290         back, too, since it may have been modified by allocate_entry.
34291         (hash_delete): Rewrite to use neither the assignment operator
34292         nor the comma operator in an if-expression.
34293
34294 2000-05-15  Paul Eggert  <eggert@twinsun.com>
34295
34296         * lib/closeout.c:
34297         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
34298         Remove; no longer needed.
34299         "quotearg.h": Add include.
34300         (file_name): Do not bother to explicitly initialize to NULL; it's less
34301         efficient on some hosts.
34302         (close_stdout_status): Remove test as to whether stdout was already
34303         closed; it breaks for the case "echo x | sort >&-".
34304         Quote file name colons.
34305         Do not assume that _("write error") lacks format strings.
34306
34307 2000-05-15  Jim Meyering  <meyering@lucent.com>
34308
34309         * lib/version-etc.c (version_etc_copyright): Update the copyright
34310         string used in all --version output.
34311
34312 2000-05-14  Jim Meyering  <meyering@lucent.com>
34313
34314         * lib/closeout.c (close_stdout_set_file_name): New function.
34315         (close_stdout_status): Use new file-scoped global.
34316         Return right away if fstat says the stdout file descriptor is invalid.
34317         * lib/closeout.h (close_stdout_set_file_name): Declare.
34318
34319 2000-05-10  Jim Meyering  <meyering@lucent.com>
34320
34321         * lib/closeout.c [default_exit_status]: New file-scoped variable.
34322         (close_stdout_set_status): New function.
34323         * lib/closeout.h (close_stdout_set_status): Declare.
34324
34325 2000-05-09  Jim Meyering  <meyering@lucent.com>
34326
34327         * m4/gettext.m4: Rename this...
34328         * m4/libintl.m4: ...to this.
34329
34330 2000-05-08  Jim Meyering  <meyering@lucent.com>
34331
34332         * lib/long-options.c: Don't include closeout.h.
34333         (parse_long_options): Don't call close_stdout for --version.
34334
34335 2000-05-06  Paul Eggert  <eggert@twinsun.com>
34336
34337         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
34338         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
34339         2.1.3 bug.  This avoids a clash when files like regex.c define
34340         _GNU_SOURCE.
34341
34342 2000-05-06  Jim Meyering  <meyering@lucent.com>
34343
34344         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
34345         (AC_REPLACE_FUNCS): Add strnlen.
34346
34347         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
34348         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
34349
34350         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
34351         AC_SEARCH_LIBS call for nanosleep.
34352         (LIB_NANOSLEEP): Set and AC_SUBST.
34353
34354 2000-05-06  Jim Meyering  <meyering@lucent.com>
34355
34356         * lib/strnlen.c: Undefine __strnlen and strnlen.
34357         [!weak_alias]: Define __strnlen to strnlen.
34358
34359         * lib/atexit.c: New file, from libiberty.
34360
34361 2000-05-06  Jim Meyering  <meyering@lucent.com>
34362
34363         * lib/closeout.c (close_stdout_status): Also check for errors on the
34364         stderr stream.
34365
34366 2000-05-05  Jim Meyering  <meyering@lucent.com>
34367
34368         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
34369         AC_SEARCH_LIBS call for clock_gettime.
34370         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
34371
34372         * m4/search-libs.m4: Update from autoconf.
34373
34374         su doesn't work on Solaris 2.6.
34375         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
34376         <shadow.h>.  Reported by Dragos Harabor.
34377
34378 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
34379
34380         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
34381         memcpy instead of xmalloc, xrealloc, path_concat.
34382         (locale_charset): Treat empty environment variables as absent.
34383         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
34384
34385 2000-05-04  Jim Meyering  <meyering@lucent.com>
34386
34387         * lib/getopt.c: Update from glibc.
34388         * lib/obstack.c: Likewise.
34389         * lib/obstack.h: Likewise.
34390         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
34391         file
34392
34393         * lib/regex.h: Likewise.
34394         * lib/strndup.c: Likewise.
34395         * lib/strnlen.c: New file, from glibc.
34396
34397 2000-05-03  Jim Meyering  <meyering@lucent.com>
34398
34399         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
34400
34401 2000-05-02  Paul Eggert  <eggert@twinsun.com>
34402
34403         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
34404         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
34405         compile-time test, rather than inspecting host and OS, to
34406         decide whether to define _LARGEFILE_SOURCE.
34407
34408 2000-05-01  Jim Meyering  <meyering@lucent.com>
34409
34410         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
34411
34412         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
34413         Based on a patch from Bruno Haible.
34414
34415 2000-05-01  Jim Meyering  <meyering@lucent.com>
34416
34417         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
34418
34419 2000-04-29  Jim Meyering  <meyering@lucent.com>
34420
34421         * lib/path-concat.c: Declare strdup only if it's not defined.
34422         * lib/canon-host.c: Likewise.
34423
34424 2000-04-28  Jim Meyering  <meyering@lucent.com>
34425
34426         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
34427         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
34428         is included first, then limits.h is included by locale.h by libintl.h.
34429         From John David Anglin.
34430
34431 2000-04-25  Jim Meyering  <meyering@lucent.com>
34432
34433         * lib/makepath.c (S_IRWXUGO): Define.
34434         (make_path): Always perform explicit chmod if MODE specifies any
34435         of the `special' permission bits.  Prompted by a bug report against
34436         install from Mate Wierdl and Joost van Baal.
34437
34438 2000-04-18  Jim Meyering  <meyering@lucent.com>
34439
34440         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
34441         (jm_PREREQ): Use it.
34442
34443 2000-04-18  Jim Meyering  <meyering@lucent.com>
34444
34445         * lib/README: New file.
34446
34447         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
34448         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
34449
34450 2000-04-17  Jim Meyering  <meyering@lucent.com>
34451
34452         Get it right :-)
34453         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
34454         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
34455         Suggestion from Akim Demaille.
34456
34457 2000-04-17  Jim Meyering  <meyering@lucent.com>
34458
34459         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
34460         the definition of it to rpl_strftime also defined-away the system's
34461         declaration.
34462
34463 2000-04-15  Jim Meyering  <meyering@lucent.com>
34464
34465         Use `C' to denote so-called `contiguous' files, the same way
34466         that tar does.
34467         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
34468         (ftypelet): Use S_ISCTG.
34469         From Michael Deutschmann.
34470
34471 2000-04-14  Jim Meyering  <meyering@lucent.com>
34472
34473         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
34474         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
34475         clobbered.
34476
34477 2000-04-14  Jim Meyering  <meyering@lucent.com>
34478
34479         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
34480
34481 2000-04-13  Jim Meyering  <meyering@lucent.com>
34482
34483         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
34484         AH_VERBATIM to insert required #ifndef into config.h.in.
34485         Suggestion from Akim Demaille.
34486
34487 2000-04-12  Jim Meyering  <meyering@lucent.com>
34488
34489         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
34490         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
34491         Christian Krackowizer.
34492
34493         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
34494         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
34495         (AC_SYS_LARGEFILE): Require.
34496         (AM_C_PROTOTYPES): Require.
34497
34498 2000-04-08  Jim Meyering  <meyering@lucent.com>
34499
34500         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
34501         names don't conflict.  Reported by Eli Zaretskii.
34502
34503 2000-04-07  Jim Meyering  <meyering@lucent.com>
34504
34505         * lib/putenv.c: Move inclusion of errno.h so it follows that of
34506         sys/types.h, to work around system header problems on AIX 3.2.5.
34507         From Bruno Haible.
34508
34509 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
34510
34511         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
34512         bug.  Deal with the different error behavior of Irix iconv.
34513
34514 2000-04-05  Paul Eggert  <eggert@twinsun.com>
34515
34516         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
34517         IRIX if the installer said otherwise.
34518
34519 2000-04-05  Jim Meyering  <meyering@lucent.com>
34520
34521         Portability tweaks required for ultrix4.3.
34522         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
34523         (jm_CHECK_DECLS): Add getutent to the list of functions.
34524         (_jm_DECL_HEADERS): Add utmpx.h.
34525         From John David Anglin.
34526
34527         * m4/strftime.m4: Back out the 2000-04-02 change.
34528         Instead of that change, simply undefine putenv in the test program.
34529
34530 2000-04-05  Jim Meyering  <meyering@lucent.com>
34531
34532         Portability tweaks required for ultrix4.3.
34533         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
34534         getutent.
34535         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
34536         * lib/canon-host.c: Declare strdup.
34537         * lib/path-concat.c: Likewise.
34538         From John David Anglin.
34539
34540 2000-04-04  Jim Meyering  <meyering@lucent.com>
34541
34542         Be more DOS 8.3-friendly.
34543         * lib/ref-add.sin: Renamed from ref-add.sed.in.
34544         * lib/ref-del.sin: Renamed from ref-del.sed.in.
34545         * lib/Makefile.am: Reflect renaming.
34546         Reported by Eli Zaretskii.
34547
34548         Use a temporary file name that won't clash with `charset.alias'
34549         in the DOS 8.3 name space.
34550         * lib/Makefile.am (charset_tmp): Define.
34551         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
34552         (uninstall-local): Likewise.
34553         Reported by Eli Zaretskii.
34554
34555 2000-04-03  Jim Meyering  <meyering@lucent.com>
34556
34557         * m4/gettext.m4: Fix typo in comment.
34558
34559         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
34560         textutils/configure.in).  Suggestion from Paul Eggert.
34561         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
34562
34563 2000-04-02  Paul Eggert  <eggert@twinsun.com>
34564
34565         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
34566         variable in the shell rather than using putenv, which isn't
34567         portable.  This avoids the configure-time inter-test dependency
34568         on the potentially-renamed putenv function.
34569
34570 2000-03-30  Paul Eggert  <eggert@twinsun.com>
34571
34572         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
34573         before checking struct stat.st_blksize, so that
34574         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
34575
34576 2000-03-29  Paul Eggert  <eggert@twinsun.com>
34577
34578         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
34579         since strftime.c uses HAVE_STRFTIME to decide whether to use
34580         the underlying strftime.
34581
34582 2000-03-29  Paul Eggert  <eggert@twinsun.com>
34583
34584         * lib/time/strftime.c (my_strftime): Make sure we call the system
34585         strftime, not ourselves, when invoking the underlying strftime.
34586
34587 2000-03-24  Jim Meyering  <meyering@lucent.com>
34588
34589         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
34590         (charset_alias): Define.
34591         (install-exec-local): Factor out common code.
34592         (uninstall-local): Split lines longer than 80.
34593         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
34594         (SUFFIXES): Define.
34595         (.sed.in.sed): New rule.  Don't redirect directly to $@.
34596         (CLEANFILES): Add ref-add.sed and ref-del.sed.
34597
34598 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
34599
34600         * lib/config.charset: Output a line containing "Packages using this
34601         file".
34602         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
34603         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
34604         ref-del.sed): New rules.
34605
34606 2000-03-17  Jim Meyering  <meyering@lucent.com>
34607
34608         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
34609         Otherwise, include <strings.h>
34610
34611 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
34612
34613         * lib/unicodeio.c (utf8_wctomb): New function.
34614         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
34615         format instead of in UCS-4 with platform dependent endianness.
34616
34617 2000-03-10  Jim Meyering  <meyering@lucent.com>
34618
34619         * m4/lib-check.m4: Look for getspnam in -lgen, too.
34620         From Marco Franzen.
34621
34622 2000-03-07  Paul Eggert  <eggert@twinsun.com>
34623
34624         * lib/savedir.c (savedir): Work even if directory size is
34625         negative; this can happen with some screwy NFS configurations.
34626
34627 2000-03-06  Jim Meyering  <meyering@lucent.com>
34628
34629         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
34630         if it's NULL (because we ran out of memory).  From Bruno Haible.
34631
34632 2000-03-05  Jim Meyering  <meyering@lucent.com>
34633
34634         * lib/localcharset.c ("path-concat.h"): Include.
34635         (get_charset_aliases): Use path_concat instead of ANSI string
34636         concatenation.
34637
34638         * lib/unicodeio.h (PARAMS): Define.
34639         Use it to guard prototype.
34640
34641 2000-03-04  Jim Meyering  <meyering@lucent.com>
34642
34643         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
34644         for lib/localcharset.c.
34645
34646 2000-03-04  Jim Meyering  <meyering@lucent.com>
34647
34648         * lib/Makefile.am (install-exec-local): Create $(libdir) before
34649         installing into it.
34650         (uninstall-local): Uncomment this rule so `make distcheck' works
34651         once again.
34652
34653         * lib/unicodeio.c (<errno.h>): Include it.
34654         (errno): Declare if not defined.
34655
34656         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
34657
34658         * lib/config.charset: New version, incorporating remarks from a linux
34659         i18n mailing list.  From Bruno Haible.
34660
34661 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
34662
34663         * m4/codeset.m4: New file.
34664         * m4/iconv.m4: New file.
34665         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
34666
34667 2000-03-03  Jim Meyering  <meyering@lucent.com>
34668
34669         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
34670
34671 2000-03-02  Jim Meyering  <meyering@lucent.com>
34672
34673         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
34674         the messages come out on separate lines.
34675
34676         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
34677         rather than jm_CHECK_DECLARATIONS.
34678         * m4/decl.m4: Remove now-unused file.
34679
34680         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
34681         geteuid.
34682
34683 2000-03-02  Jim Meyering  <meyering@lucent.com>
34684
34685         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
34686
34687 2000-03-01  Jim Meyering  <meyering@lucent.com>
34688
34689         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
34690         * lib/unicodeio.c: Likewise.
34691
34692 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
34693
34694         * lib/config.charset: New file.
34695         * lib/localcharset.c: New file.
34696         * lib/unicodeio.h, lib/unicodeio.c: New files.
34697         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
34698         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
34699         (noinst_HEADERS): Add unicodeio.h.
34700         (all-local, install-exec-local, charset.alias): New targets.
34701
34702 2000-02-28  Paul Eggert  <eggert@twinsun.com>
34703
34704         * lib/quotearg.c (ALERT_CHAR): New macro.
34705         (quotearg_buffer_restyled): Use it.
34706
34707 2000-02-27  Jim Meyering  <meyering@lucent.com>
34708
34709         * m4/check-decl.m4: Add getenv to the list.
34710
34711 2000-02-27  Jim Meyering  <meyering@lucent.com>
34712
34713         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
34714         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
34715
34716         * lib/backupfile.c: Guard inclusion of stdlib.h with
34717         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
34718         Declare malloc if needed.
34719
34720         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
34721         `#ifndef HAVE_DECL..'
34722         now that autoconf always defines the HAVE_DECL_ symbols.
34723         * lib/human.c: Likewise.
34724         * lib/same.c: Likewise.
34725         * lib/strtoumax.c: Likewise.
34726
34727         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
34728         declaration check was not run.
34729         * lib/hash.c: Likewise.
34730         * lib/human.c: Likewise.
34731         * lib/same.c: Likewise.
34732         * lib/strtoumax.c: Likewise.
34733
34734         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
34735         `.', then first look up the entire `.'-containing string as a login
34736         name.
34737
34738 2000-02-23  Jim Meyering  <meyering@lucent.com>
34739
34740         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
34741         in place of my hack.
34742
34743 2000-02-18  Paul Eggert  <eggert@twinsun.com>
34744
34745         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
34746         (textint): New typedef.
34747         (parser_control): Member year changed from int to textint.
34748         All uses changed.
34749         (YYSTYPE): Removed; replaced by %union with int and textint members.
34750         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
34751         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
34752         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
34753         (tSNUMBER, tUNUMBER): Now of type <textintval>.
34754         (date, number, to_year): Use width of number in digits, not its value,
34755         to determine whether it's a 2-digit year, or a 2-digit time.
34756         (yylex): Store number of digits of numeric tokens.
34757         Reported by John Kendall.
34758
34759         (parser_control): Changed from struct parser_control to typedef (for
34760         consistency).  All uses changed.
34761
34762         (tID): Removed; not used.
34763         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
34764
34765 2000-02-14  Paul Eggert  <eggert@twinsun.com>
34766
34767         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
34768         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
34769
34770 2000-02-12  Jim Meyering  <meyering@lucent.com>
34771
34772         * lib/userspec.c (ISDIGIT): Define it.
34773         (isdigit): Remove definition.
34774         (is_number): Use ISDIGIT, not isdigit.
34775         <libintl.h>: Include.
34776         (_ and N_): Define.
34777         (parse_user_spec): Mark translatable strings.
34778
34779 2000-02-10  Jim Meyering  <meyering@lucent.com>
34780
34781         With these changes, nanosleep.[ch] are finally enough like the other
34782         lib/* replacement files to compile on a few more losing systems.
34783
34784         * lib/nanosleep.h: Don't include config.h.
34785         Remove prototype from declaration of nanosleep.
34786         (PARAMS): Remove now-unneeded definition.
34787         * lib/nanosleep.c: #undef nanosleep.
34788         (rpl_nanosleep): Rename from nanosleep.
34789
34790 2000-02-10  Jim Meyering  <meyering@lucent.com>
34791
34792         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
34793         gnu_nanosleep to rpl_nanosleep.
34794
34795 2000-02-09  Jim Meyering  <meyering@lucent.com>
34796
34797         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
34798         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
34799
34800 2000-02-08  Akim Demaille  <akim@epita.fr>
34801
34802         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
34803         `[' and `]' and remove uses of `changequote'.
34804         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
34805         (AC_SYS_LARGEFILE): Likewise.
34806         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
34807         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
34808         of changequote.
34809         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
34810         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
34811         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
34812         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
34813
34814 2000-02-05  Jim Meyering  <meyering@lucent.com>
34815
34816         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
34817         Remove explicit use of AC_HEADER_TIME.  It is required by
34818         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
34819         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
34820         in autoconf whereby the expansion of the latter ended up preceding
34821         the expansion of its prerequisite, AC_HEADER_TIME.
34822         Reported by Volker Borchert.
34823
34824 2000-02-03  Jim Meyering  <meyering@lucent.com>
34825
34826         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
34827
34828 2000-02-03  Jim Meyering  <meyering@lucent.com>
34829
34830         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
34831         rather than with `#if HAVE_UTMPNAME'.
34832
34833 2000-02-02  Jim Meyering  <meyering@lucent.com>
34834
34835         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
34836         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
34837         Reported by Eli Zaretskii.
34838
34839 2000-02-01  Jim Meyering  <meyering@lucent.com>
34840
34841         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
34842
34843 2000-01-31  Jim Meyering  <meyering@lucent.com>
34844
34845         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
34846         functions.  Add the time.h and sys/time.h headers along with the
34847         AC_REQUIRE'ment of AC_HEADER_TIME.
34848
34849 2000-01-31  Jim Meyering  <meyering@lucent.com>
34850
34851         * lib/nanosleep.h (nanosleep): Guard declaration with
34852         `#if ! HAVE_DECL_NANOSLEEP'.
34853         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
34854         the declaration in that vendor's sys/timers.h.
34855         Reported by Christian Krackowizer.
34856
34857         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
34858         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
34859         (ISPRINT): Likewise.
34860         Reported by Tom Tromey.
34861
34862 2000-01-30  Jim Meyering  <meyering@lucent.com>
34863
34864         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
34865
34866         * m4/prereq.m4 (utmp_includes): Define.
34867         Check for ut_user and ut_name members in both struct utmpx
34868         and struct utmp.
34869
34870 2000-01-30  Jim Meyering  <meyering@lucent.com>
34871
34872         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
34873         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
34874         header files where only utmpx.ut_user is declared.
34875
34876         * lib/readutmp.h (UT_USER): Define.
34877
34878 2000-01-29  Jim Meyering  <meyering@lucent.com>
34879
34880         * m4/lib-check.m4: New file containing library-related checks from
34881         fileutils and sh-utils (textutils had none).
34882
34883 2000-01-28  Jim Meyering  <meyering@lucent.com>
34884
34885         * m4/perl.m4: Change format of warning message to look more like that
34886         from the missing script.  Suggestion from François Pinard.
34887
34888 2000-01-25  Jim Meyering  <meyering@lucent.com>
34889
34890         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
34891         well as time.h in the compile check.
34892         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
34893         Fix typo in cross-compiling case: s/yes/no/.
34894
34895 2000-01-23  Jim Meyering  <meyering@lucent.com>
34896
34897         * m4/jm-macros.m4: Move df-related tests here from
34898         fileutils/configure.in
34899
34900         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
34901         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
34902
34903         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
34904         s/space/ac_fsusage_space/.
34905         (jm_FILE_SYSTEM_USAGE): Take two parameters.
34906
34907         * m4/ftruncate.m4: New file (derived from part of
34908         fileutils/configure.in).
34909         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
34910         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
34911
34912         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
34913         AC_SUBST these here, rather than just in sh-util/configure.in, so
34914         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
34915         all the same.
34916         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
34917         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
34918         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
34919         (AC_SUBST(POW_LIBM)): Likewise.
34920         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
34921
34922 2000-01-23  Jim Meyering  <meyering@lucent.com>
34923
34924         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
34925         obstack.c.
34926
34927 2000-01-22  Jim Meyering  <meyering@lucent.com>
34928
34929         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
34930
34931         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
34932
34933         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
34934         configure.in
34935         (AC_CHECK_HEADERS): Likewise for sh-utils.
34936         (AC_CHECK_HEADERS): Likewise for textutils.
34937         Merge the three lists of headers.
34938
34939         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
34940         from fileutils' configure.in.
34941
34942         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
34943         code. Moved tests into their own function (_jm_DECL_HEADERS) in
34944         check-decl.m4.
34945
34946         * m4/check-decl.m4: Use #if rather than #ifdef.
34947         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
34948         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
34949         (_jm_DECL_HEADERS): Define new function.
34950         (jm_CHECK_DECLARATIONS): Require it.
34951
34952 2000-01-22  Jim Meyering  <meyering@lucent.com>
34953
34954         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
34955         [! HAVE_DECL_STRTOULL]: Declare strtoull.
34956         Required for some AIX systems.  Reported by Christian Krackowizer.
34957         [TESTING] (main): New function.
34958
34959         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
34960         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
34961         letters.
34962
34963         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
34964         iswprint.
34965
34966         * lib/strverscmp.c (ISDIGIT): Define.
34967         (strverscmp): Use ISDIGIT, not isdigit.
34968
34969 2000-01-19  Jim Meyering  <meyering@lucent.com>
34970
34971         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
34972         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
34973         defines `struct timespec' in <sys/time.h>
34974
34975         * m4/c-bs-a.m4: Remove uses of changequote altogether.
34976         Thanks to Akim for explaining.
34977
34978 2000-01-17  Paul Eggert  <eggert@twinsun.com>
34979
34980         * lib/nanosleep.c (nanosleep):
34981         Don't use SA_INTERRUPT to decide whether to call sigaction, as
34982         POSIX.1 doesn't require SA_INTERRUPT and some systems
34983         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
34984         it's been part of POSIX.1 since day 1 (in 1988).
34985
34986 2000-01-17  Jim Meyering  <meyering@lucent.com>
34987
34988         * lib/interlock: Remove unused file.  Reported by François Pinard.
34989
34990 2000-01-16  Paul Eggert  <eggert@twinsun.com>
34991
34992         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
34993         alert, backslash, formfeed, and vertical tab unnecessarily in
34994         shell quoting style.
34995
34996 2000-01-16  Jim Meyering  <meyering@lucent.com>
34997
34998         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
34999         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
35000         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
35001         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
35002
35003 2000-01-16  Jim Meyering  <meyering@lucent.com>
35004
35005         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
35006         because the latter didn't work.
35007
35008 2000-01-15  Jim Meyering  <meyering@lucent.com>
35009
35010         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
35011         (AC_REPLACE_FUNCS): Add memcpy and memset.
35012         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
35013         Add strpbrk.
35014         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
35015
35016 2000-01-12  Jim Meyering  <meyering@lucent.com>
35017
35018         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
35019         (jm_PREREQ): Use it.
35020         (jm_PREREQ_READUTMP): New macro.
35021         (jm_PREREQ): Use it.
35022
35023 2000-01-11  Paul Eggert  <eggert@twinsun.com>
35024
35025         Quote multibyte characters correctly.
35026         * m4/c-bs-a.m4: New file.
35027         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
35028         (jm_PREREQ): Use it.
35029
35030 2000-01-11  Paul Eggert  <eggert@twinsun.com>
35031
35032         * m4/uintmax_t.m4: Port to autoconf 2.13.
35033
35034 2000-01-08  Jim Meyering  <meyering@ascend.com>
35035
35036         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
35037         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
35038
35039 2000-01-04  Jim Meyering  <meyering@ascend.com>
35040
35041         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
35042         jm_STRUCT_DIRENT_D_TYPE.
35043         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
35044         jm_STRUCT_DIRENT_D_INO.
35045         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
35046         jm_STRUCT_UTIMBUF.
35047         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
35048         renamings.
35049         * m4/utime.m4: Likewise.
35050
35051         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
35052         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
35053
35054 2000-01-03  Paul Eggert  <eggert@twinsun.com>
35055
35056         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
35057         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
35058
35059 2000-01-02  Jim Meyering  <meyering@ascend.com>
35060
35061         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
35062         remember if this is necessary.
35063
35064 1999-12-26  Jim Meyering  <meyering@ascend.com>
35065
35066         * m4/jm-macros.m4: Use it here.
35067         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
35068
35069 1999-12-23  Jim Meyering  <meyering@ascend.com>
35070
35071         * m4/jm-macros.m4: Check for clock_gettime (moved from
35072         fileutils/configure.in)
35073         Check for gettimeofday.
35074
35075 1999-12-20  Jim Meyering  <meyering@ascend.com>
35076
35077         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
35078         autoconf-2.14a-1999-12-20.
35079
35080 1999-12-19  Jim Meyering  <meyering@ascend.com>
35081
35082         * m4/lstat-slash.m4: New file.
35083         * m4/jm-macros.m4: Use the new macro:
35084         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
35085
35086 1999-12-07  Jim Meyering  <meyering@ascend.com>
35087
35088         * m4/perl.m4: Require that File::Compare be available, too.
35089         Too many systems seem to lack it.
35090
35091         * m4/strftime.m4: Add checks for most of the cpp macros tested in
35092         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
35093
35094 1999-11-18  Paul Eggert  <eggert@twinsun.com>
35095
35096         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
35097         problem with the QNX 4.25 shell, which doesn't propagate exit
35098         status of failed commands inside shell assignments.
35099
35100 1999-11-17  Jim Meyering  <meyering@ascend.com>
35101
35102         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
35103
35104 1999-11-07  Jim Meyering  <meyering@ascend.com>
35105
35106         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
35107
35108 1999-11-06  Jim Meyering  <meyering@ascend.com>
35109
35110         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
35111         * m4/jm-macros.m4 (jm_MACROS): Use it here.
35112
35113 1999-11-05  Jim Meyering  <meyering@ascend.com>
35114
35115         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
35116         configure.in of textutils, fileutils, and sh-utils into this one
35117         (shared between those packages) file.
35118         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
35119         AC_STRUCT_ST_BLKSIZE.
35120
35121 1999-11-03  Jim Meyering  <meyering@ascend.com>
35122
35123         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
35124         of AC_CHECK_TYPE checks includes unistd.h.
35125         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
35126         Suggestion from Akim Demaille.
35127
35128 1999-10-30  Jim Meyering  <meyering@ascend.com>
35129
35130         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
35131         m4-quoted string.
35132         * m4/ls-mntd-fs.m4: Likewise.
35133         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
35134         * m4/jm-winsz1.m4: Likewise.
35135
35136         * m4/const.m4: Remove file, since the fix made it into the experimental
35137         version of autoconf.
35138         * m4/mktime.m4: Likewise.
35139
35140         * m4/check-type.m4: Remove file, now that the latest version of
35141         AC_CHECK_TYPE takes a third arg to specify additional #includes.
35142
35143         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
35144         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
35145         AC_CHECK_TYPE.
35146
35147 1999-10-04  Jim Meyering  <meyering@ascend.com>
35148
35149         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
35150
35151 1999-09-22  Paul Eggert  <eggert@twinsun.com>
35152
35153         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
35154         2.95.1 bug with HP-UX 10.20.
35155
35156 1999-09-17  Jim Meyering  <meyering@ascend.com>
35157
35158         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
35159         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
35160         due to missing strdup (against sh-utils-2.0).
35161
35162 1999-08-29  Jim Meyering  <meyering@ascend.com>
35163
35164         * m4/jm-macros.m4: Require jm_BISON.
35165         * m4/bison.m4: New file.
35166
35167 1999-08-17  Paul Eggert  <eggert@twinsun.com>
35168
35169         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
35170         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
35171
35172 1999-08-05  Jim Meyering  <meyering@ascend.com>
35173
35174         * m4/getline.m4: Rename test file from conftestdata to conftest.data
35175         to avoid conflicts with `conftest' on 8+3 filesystems.
35176         Suggestion from Eli Zaretskii.
35177
35178 1999-08-04  Jim Meyering  <meyering@ascend.com>
35179
35180         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
35181         fileutils and sh-utils (textutils's getline test was inadequate).
35182         (AM_FUNC_GETLINE): Run this test.
35183         (AC_CHECK_FUNCS): Check for getdelim.
35184         Reported by Bob Proulx.
35185
35186 1999-08-02  Jim Meyering  <meyering@ascend.com>
35187
35188         * m4/jm-macros.m4: Add a comment.
35189
35190 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35191
35192         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
35193         <inttypes.h> defines strtoumax as a macro (and not as a
35194         function).
35195
35196 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35197
35198         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
35199         that we can shift, multiply and divide unsigned long long
35200         values; Ultrix cc can't do it.
35201
35202 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35203
35204         * m4/mktime.m4: New file, which is a preview of what should appear
35205         in the next public autoconf release.
35206
35207 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35208
35209         * m4/lfs.m4: Remove this file.
35210         * m4/largefile.m4: New file.  It contains the old contents of
35211         lfs.m4, except that all names with prefix AC_LFS have been
35212         changed to use the prefix AC_SYS_LARGEFILE instead, to be
35213         compatible with future autoconf versions.  Also, some minor m4
35214         quoting problems have been fixed.
35215
35216 1999-08-01  Paul Eggert  <eggert@twinsun.com>
35217
35218         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
35219         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
35220         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
35221         and simplify the shell code.
35222
35223 1999-08-01  Jim Meyering  <meyering@ascend.com>
35224
35225         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
35226         m4.
35227
35228 1999-07-20  Jim Meyering  <meyering@ascend.com>
35229
35230         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
35231
35232 1999-07-15  Jim Meyering  <meyering@ascend.com>
35233
35234         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
35235
35236 1999-05-22  Jim Meyering  <meyering@ascend.com>
35237
35238         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
35239
35240 1999-05-20  Jim Meyering  <meyering@ascend.com>
35241
35242         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
35243         Add a colon after each `then' in case $4 is empty.
35244
35245 1999-05-16  Jim Meyering  <meyering@ascend.com>
35246
35247         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
35248
35249 1999-05-10  Jim Meyering  <meyering@ascend.com>
35250
35251         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
35252
35253         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
35254         AC_FUNC_MKTIME.
35255
35256 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
35257
35258         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
35259
35260 1999-05-04  Paul Eggert  <eggert@twinsun.com>
35261
35262         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
35263         not CPPFLAGS, so that linking works correctly in IRIX.
35264
35265 1999-04-30  Paul Eggert  <eggert@twinsun.com>
35266
35267         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
35268
35269 1999-04-20  Paul Eggert  <eggert@twinsun.com>
35270
35271         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
35272         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
35273         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
35274         jm_AC_TYPE_UNSIGNED_LONG_LONG.
35275         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
35276
35277         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
35278
35279 1999-04-20  Jim Meyering  <meyering@ascend.com>
35280
35281         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
35282         AC_REPLACE xstroull if necessary.  From Paul Eggert.
35283         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
35284
35285 1999-04-18  Jim Meyering  <meyering@ascend.com>
35286
35287         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
35288         * m4/jm-macros.m4: Use it.
35289
35290 1999-04-06  Jim Meyering  <meyering@ascend.com>
35291
35292         * m4/strftime.m4: Remove test for %f.
35293
35294 1999-03-29  Jim Meyering  <meyering@ascend.com>
35295
35296         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
35297         superset of the AC_TYPE_* checks in the textutils, fileutils,
35298         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
35299         AC_TYPE_PID_T.
35300
35301 1999-03-28  Jim Meyering  <meyering@ascend.com>
35302
35303         * m4/jm-macros.m4: Define GNU_PACKAGE here.
35304         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
35305         replaced e.g., in the *.sh files of the sh-utils.
35306
35307 1999-03-20  Jim Meyering  <meyering@ascend.com>
35308
35309         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
35310         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
35311         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
35312
35313 1999-03-19  Jim Meyering  <meyering@ascend.com>
35314
35315         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
35316
35317 1999-03-12  Jim Meyering  <meyering@ascend.com>
35318
35319         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
35320
35321 1999-03-07  Jim Meyering  <meyering@ascend.com>
35322
35323         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
35324         declared.
35325
35326 1999-02-17  Jim Meyering  <meyering@ascend.com>
35327
35328         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
35329         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
35330
35331 1999-02-07  Jim Meyering  <meyering@ascend.com>
35332
35333         * m4/group-member.m4: New file -- extracted from sh-utils'
35334         configure.in.
35335
35336         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
35337         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
35338
35339 1999-02-06  Jim Meyering  <meyering@ascend.com>
35340
35341         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
35342         * m4/fnmatch.m4: Likewise.
35343         * m4/getgroups.m4: Likewise.
35344         * m4/lstat.m4: Likewise.
35345         * m4/malloc.m4: Likewise.
35346         * m4/putenv.m4: Likewise.
35347         * m4/realloc.m4: Likewise.
35348         * m4/regex.m4: Likewise.
35349         * m4/stat.m4: Likewise.
35350         * m4/strftime.m4: Likewise.
35351         Suggestion from Alain Magloire.
35352
35353         * m4/chown.m4: Use `.$ac_objext', not `.o'.
35354         * m4/fnmatch.m4: Likewise.
35355         * m4/getgroups.m4: Likewise.
35356         * m4/getline.m4: Likewise.
35357         * m4/lstat.m4: Likewise.
35358         * m4/malloc.m4: Likewise.
35359         * m4/memcmp.m4: Likewise.
35360         * m4/putenv.m4: Likewise.
35361         * m4/realloc.m4: Likewise.
35362         * m4/regex.m4: Likewise.
35363         * m4/stat.m4: Likewise.
35364         * m4/strftime.m4: Likewise.
35365         Suggestion from Alain Magloire.
35366
35367         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
35368         an argument.
35369
35370         * m4/regex.m4: Add a run-time Test for proper operation of
35371         re_compile_pattern.
35372
35373 1999-01-31  Jim Meyering  <meyering@ascend.com>
35374
35375         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
35376
35377 1999-01-30  Jim Meyering  <meyering@ascend.com>
35378
35379         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
35380
35381         * m4/jm-mktime.m4: Make this a wrapper around the official
35382         AM_FUNC_MKTIME rather than my private copy, now that the official one
35383         is up to date.
35384         * m4/mktime.m4: Remove file.
35385
35386         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
35387         * m4/uptime.m4: Likewise.
35388         * m4/uintmax_t.m4: Likewise.
35389
35390 1999-01-28  Jim Meyering  <meyering@ascend.com>
35391
35392         * m4/jm-macros.m4: Use jm_AFS.
35393         * m4/afs.m4: New file (from fileutils' configure.in).
35394
35395         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
35396         * m4/chown.m4: Likewise.
35397         * m4/d-ino.m4: Likewise.
35398         * m4/d-type.m4: Likewise.
35399         * m4/fnmatch.m4: Likewise.
35400         * m4/getgroups.m4: Likewise.
35401         * m4/gettext.m4: Likewise.
35402         * m4/jm-mktime.m4: Likewise.
35403         * m4/jm-winsz2.m4: Likewise.
35404         * m4/lcmessage.m4: Likewise.
35405         * m4/ls-mntd-fs.m4: Likewise.
35406         * m4/malloc.m4: Likewise.
35407         * m4/memcmp.m4: Likewise.
35408         * m4/putenv.m4: Likewise.
35409         * m4/realloc.m4: Likewise.
35410         * m4/st_mtim.m4: Likewise.
35411         * m4/strftime.m4: Likewise.
35412
35413 1999-01-16  Jim Meyering  <meyering@ascend.com>
35414
35415         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
35416         (ARGMATCH_DIE_DECL): Define.
35417
35418 1999-01-12  Jim Meyering  <meyering@ascend.com>
35419
35420         * m4/Makefile.am.in: Rewrite to avoid using fmt.
35421         Reported by Lars Hecking.
35422
35423 1999-01-10  Jim Meyering  <meyering@ascend.com>
35424
35425         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
35426         gross kludge.
35427         * m4/inttypes_h.m4: Likewise.
35428         * m4/lstat.m4: Likewise.
35429         * m4/malloc.m4: Likewise.
35430         * m4/readdir.m4: Likewise.
35431         * m4/realloc.m4: Likewise.
35432         * m4/st_dm_mode.m4: Likewise.
35433         * m4/stat.m4: Likewise.
35434         * m4/utimbuf.m4: Likewise.
35435         * m4/utimes.m4: Likewise.
35436
35437         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
35438         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
35439         comments in config.h.in are meaningful.
35440
35441         * m4/jm-macros.m4: Require autoconf-2.13 here.
35442
35443         * m4/regex.m4: By default, don't use the included regex.c on systems
35444         with glibc 2.  Suggestion from Uli Drepper.
35445
35446 1999-01-02  Jim Meyering  <meyering@ascend.com>
35447
35448         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
35449
35450 1998-12-18  Jim Meyering  <meyering@ascend.com>
35451
35452         * m4/Makefile.am.in (Makefile.am): Simplify rule.
35453         Based on a suggestion from Lars Hecking.
35454
35455 1998-11-16  Paul Eggert  <eggert@twinsun.com>
35456
35457         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
35458
35459 1998-11-16  Jim Meyering  <meyering@ascend.com>
35460
35461         * m4/lfs.m4: Double-quote the `uname...` expression.
35462
35463 1998-11-14  Jim Meyering  <meyering@ascend.com>
35464
35465         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
35466         * m4/stat.m4: Likewise.
35467
35468 1998-11-03  Jim Meyering  <meyering@ascend.com>
35469
35470         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
35471         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
35472
35473 1998-10-18  Jim Meyering  <meyering@ascend.com>
35474
35475         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
35476
35477 1998-10-17  Jim Meyering  <meyering@ascend.com>
35478
35479         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
35480         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
35481         calls for those previously hard-coded headers.  Instead, take a new
35482         parameter.
35483         (jm_CHECK_DECLARATIONS): Reflect interface change.
35484         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
35485         (jm_CHECK_DECL_LOCALTIME_R): New macro.
35486
35487         * m4/mktime.m4: Test for spring-forward gap before long-running test.
35488
35489 1998-10-14  Jim Meyering  <meyering@ascend.com>
35490
35491         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
35492         instead of "TZ=America/Vancouver".  From Paul Eggert.
35493
35494 1998-10-11  Jim Meyering  <meyering@ascend.com>
35495
35496         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
35497         This adds a test for a recently added compatibility fix for mktime.c.
35498         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
35499
35500 1998-09-27  Jim Meyering  <meyering@ascend.com>
35501
35502         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
35503
35504         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
35505         ../configure.in, including a change from Gordon Matzigkeit to allow
35506         cross-compiling for the Hurd.
35507
35508         * m4/glibc.m4: New file/macro to test for the GNU C Library
35509         versions 1 and 2.  From Gordon Matzigkeit.
35510         Indent.
35511
35512 1998-09-21  Jim Meyering  <meyering@ascend.com>
35513
35514         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
35515
35516 1998-08-18  Paul Eggert  <eggert@twinsun.com>
35517
35518         Port nanosecond-resolution times to UnixWare 2.1.2 and
35519         pedantic Solaris 2.6.
35520
35521         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
35522         AC_STRUCT_ST_MTIM.
35523         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
35524         Generate name of ns member, instead of just 1 or undef.
35525         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
35526
35527 1998-08-15  Jim Meyering  <meyering@ascend.com>
35528
35529         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
35530         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
35531         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
35532         instead of jm_TYPE_SSIZE_T.
35533
35534 1998-08-12  Jim Meyering  <meyering@ascend.com>
35535
35536         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
35537
35538 1998-08-02  Jim Meyering  <meyering@ascend.com>
35539
35540         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
35541         in acconfig.h manually.
35542
35543 1998-07-31  Paul Eggert  <eggert@twinsun.com>
35544
35545         * m4/st_mtim.m4: New file.
35546
35547 1998-07-28  Jim Meyering  <meyering@ascend.com>
35548
35549         * m4/utimes.m4: Undef stat.
35550
35551 1998-07-25  Jim Meyering  <meyering@ascend.com>
35552
35553         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
35554         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
35555
35556 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
35557
35558         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
35559         uid and gid actually remain unchanged.
35560
35561 1998-07-07  Jim Meyering  <meyering@ascend.com>
35562
35563         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
35564
35565 1998-07-04  Jim Meyering  <meyering@ascend.com>
35566
35567         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
35568         to prove that this macro can be used in packages without regex.c.
35569
35570 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
35571
35572         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
35573         is to be used.
35574
35575 1998-07-03  Jim Meyering  <meyering@ascend.com>
35576
35577         * m4/gettext.m4: Add -lintl if it's found to be necessary.
35578
35579         * m4/gettext.m4: New file -- from gettext-0.10.35.
35580         * m4/lcmessage.m4: Likewise.
35581         * m4/progtest.m4: Likewise.
35582
35583         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
35584         * m4/jm-macros.m4: Require the new macro.
35585
35586 1998-06-29  Jim Meyering  <meyering@ascend.com>
35587
35588         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
35589         for the definition of NGROUPS (used in a system header included
35590         by sys/mount.h).
35591
35592 1998-06-28  Jim Meyering  <meyering@ascend.com>
35593
35594         * m4/ls-mntd-fs.m4: New file.
35595         * m4/fstypename.m4: New file.
35596
35597         * m4/jm-macros.m4: Require the new macro.
35598         * m4/jm-glibc-io.m4: New file.
35599
35600 1998-05-19  Jim Meyering  <meyering@ascend.com>
35601
35602         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
35603         * m4/lchown.m4: New file.
35604
35605         * m4/Makefile.am.in: New file.
35606         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
35607
35608 1998-05-14  Jim Meyering  <meyering@ascend.com>
35609
35610         * m4/Makefile.am (EXTRA_DIST): Add them.
35611         * m4/jm-macros.m4: New file.
35612         * m4/utimbuf.m4: New file.
35613
35614 1998-05-12  Jim Meyering  <meyering@ascend.com>
35615
35616         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
35617
35618 1998-05-11  Jim Meyering  <meyering@ascend.com>
35619
35620         * m4/isc-posix.m4: New file.
35621
35622 1998-05-10  Jim Meyering  <meyering@ascend.com>
35623
35624         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
35625
35626 1998-05-09  Jim Meyering  <meyering@ascend.com>
35627
35628         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
35629         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
35630         with automake.
35631
35632         * m4/ssize_t.m4: New file.
35633         * m4/mktime.m4: Remove file -- the new automake has this now.
35634
35635 1998-04-26  Jim Meyering  <meyering@ascend.com>
35636
35637         * m4/assert.m4: New file.
35638         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
35639
35640 1998-04-05  Jim Meyering  <meyering@ascend.com>
35641
35642         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
35643         (jm_PREREQ): Use it here.
35644
35645 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
35646
35647         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
35648         in acconfig.h.
35649
35650 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
35651
35652         * m4/prereq.m4: New file.
35653         * m4/error.m4: New file.
35654         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
35655
35656 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
35657
35658         * m4/getline.m4: Don't set am_cv_func_working_getline before the
35659         cache-check for the same variable -- that defeated the purpose of
35660         the test; the test program was never run.  This was a problem only
35661         on systems with losing getline functions -- HP-UX 10.20 is one.
35662         Reported by Bjorn Helgaas.
35663
35664 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
35665
35666         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
35667
35668 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
35669
35670         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
35671
35672         * m4/const.m4: New file.  Use an initializer in this declaration
35673         typedef int charset[2]; const charset x;
35674         Reported by Bob Glickstein.
35675
35676 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
35677
35678         * m4/chown.m4: Fix reversed types on -1 args to chown.
35679         From Kaveh Ghazi.
35680
35681 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
35682
35683         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
35684         Add lseek and memchr.
35685
35686         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
35687         T.E.Dickey <dickey@clark.net> said that some older preprocessors
35688         have a 20-character limit on names.
35689
35690 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
35691
35692         * m4/inttypes_h.m4: New file.
35693         * m4/uintmax_t.m4: New file.
35694         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
35695
35696 Copyright (C) 1997-2007 Free Software Foundation, Inc.
35697 Copying and distribution of this file, with or without modification,
35698 are permitted provided the copyright notice and this notice are preserved.