* m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
[gnulib.git] / ChangeLog
1 2007-10-22  Bruno Haible  <bruno@clisp.org>
2
3         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
4         -1u, in preprocessor expression, so that we don't test for the bug
5         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
6         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
7
8 2007-10-22  Eric Blake  <ebb9@byu.net>
9
10         * tests/test-yesno.sh: Silence stderr during test.
11
12 2007-10-22  Simon Josefsson  <simon@josefsson.org>
13
14         * modules/crypto/gc-camellia: New file.
15
16         * m4/gc-camellia.m4: New file.
17
18         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
19
20         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
21
22 2007-10-22  Simon Josefsson  <simon@josefsson.org>
23
24         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
25         --help to stdout.  Reported by sms@antinode.org (Steven
26         M. Schweda).
27
28 2007-10-22  Simon Josefsson  <simon@josefsson.org>
29
30         * users.txt: Fix link to libksba.
31
32 2007-10-21  Ben Pfaff  <blp@gnu.org>
33
34         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
35         round.c roundf implementation that depends on floorf and ceilf to
36         be tested unconditionally.
37
38 2007-10-21  Ben Pfaff  <blp@gnu.org>
39
40         * m4/check-libm-func.m4: Removed.
41         * m4/check-math-lib.m4: New file.
42         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
43         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
44         definition and lack of AC_LIBOBJ([roundf]).
45         * m4/roundl.m4: Ditto, and similarly for roundl.
46         * modules/round: Reference new m4 file.
47         * modules/roundf: Ditto.
48         * modules/roundl: Ditto.
49         * tests/test-round2.c (main): Use ROUND instead of round.
50         Bug report from Bruno Haible.
51
52 2007-10-21  Bruno Haible  <bruno@clisp.org>
53
54         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
55         context.
56
57 2007-10-21  Bruno Haible  <bruno@clisp.org>
58
59         * tests/test-wcwidth.c (main): Allow negative result for some control
60         characters.
61
62         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
63         Needed on OSF/1 5.1.
64
65 2007-10-21  Bruno Haible  <bruno@clisp.org>
66
67         * tests/test-floorf1.c: Include isnanf.h.
68         (main): Use isnanf() instead of isnan().
69         * tests/test-ceilf1.c: Include isnanf.h.
70         (main): Use isnanf() instead of isnan().
71         * tests/test-truncf1.c: Include isnanf.h.
72         (main): Use isnanf() instead of isnan().
73         * tests/test-roundf1.c: Include isnanf.h.
74         (main): Use isnanf() instead of isnan().
75
76 2007-10-21  Eric Blake  <ebb9@byu.net>
77
78         * users.txt: Update URL for m4.
79
80 2007-10-21  Bruno Haible  <bruno@clisp.org>
81
82         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
83
84 2007-10-21  Bruno Haible  <bruno@clisp.org>
85
86         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
87         Git's management files if the CVS files are not present.
88
89 2007-10-20  Bruno Haible  <bruno@clisp.org>
90
91         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
92         gcc-3.4.x.
93
94 2007-10-20  Ben Pfaff  <blp@gnu.org>
95
96         * lib/math.in.h: Declare round, roundf, roundl if we are providing
97         implementations.
98         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
99         * lib/round.c: New file.
100         * lib/roundf.c: New file.
101         * lib/roundl.c: New file.
102         * m4/round.m4: New file.
103         * m4/roundf.m4: New file.
104         * m4/roundl.m4: New file.
105         * m4/check-libm-func-m4: New file.
106         * modules/math: Replace round, roundf, roundl related @VARS@ in
107         math.in.h.
108         * modules/round: New file.
109         * modules/round-tests: New file.
110         * modules/roundf: New file.
111         * modules/roundf-tests: New file.
112         * modules/roundl: New file.
113         * modules/roundl-tests: New file.
114         * tests/test-round1.c: New file.
115         * tests/test-round2.c: New file.
116         * tests/test-roundf1.c: New file.
117         * tests/test-roundf2.c: New file.
118         * tests/test-roundl.c: New file.
119         * doc/functions/round.texi: Mention round module.
120         * doc/functions/roundf.texi: Mention roundf module.
121         * doc/functions/roundl.texi: Mention roundl module.
122         * MODULES.html.sh: Mention new modules.
123         Thanks to Bruno Haible for suggestions.
124
125 2007-10-20  Jim Meyering  <meyering@redhat.com>
126
127         * lib/xprintf.c: Include <config.h> unconditionally.
128
129         Change xprintf's license to GPL.
130         * modules/xprintf (License): s/LGPL/GPL/, since this module
131         depends on modules (exit and exitfail) which are GPL.
132         Suggestion from Bruno Haible.
133
134         xprintf fixes.
135         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
136         Use a clearer diagnostic.
137         Patch from Bruno Haible.
138
139 2007-10-20  Bruno Haible  <bruno@clisp.org>
140
141         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
142         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
143         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
144
145 2007-10-20  Bruno Haible  <bruno@clisp.org>
146
147         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
148         precision in the comparison result > x - 1 or similar.
149         * tests/test-ceilf2.c (correct_result_p): Likewise.
150         * tests/test-truncf2.c (correct_result_p): Likewise.
151         * tests/test-trunc2.c (correct_result_p): Likewise.
152         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
153
154 2007-10-20  Bruno Haible  <bruno@clisp.org>
155
156         * modules/ceil: New file.
157         * m4/ceil.m4: New file.
158         * doc/functions/ceil.texi: Mention the 'ceil' module.
159
160 2007-10-20  Bruno Haible  <bruno@clisp.org>
161
162         * modules/floor: New file.
163         * m4/floor.m4: New file.
164         * doc/functions/floor.texi: Mention the 'floor' module.
165
166 2007-10-20  Bruno Haible  <bruno@clisp.org>
167
168         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
169         of %a.
170         * modules/floorf-tests (Depends-on): Likewise.
171         * modules/truncf-tests (Depends-on): Likewise.
172         * modules/trunc-tests (Depends-on): Likewise.
173         Reported by Ben Pfaff.
174
175 2007-10-19  Jim Meyering  <meyering@redhat.com>
176
177         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
178         Don't bother testing specific errno values.  Just test ferror.
179
180         New module: xprintf
181         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
182
183 2007-10-19  Bruno Haible  <bruno@clisp.org>
184
185         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
186         syntax.
187         * modules/javaexec (Makefile.am): Likewise.
188         * modules/relocatable-prog (Makefile.am): Likewise.
189         Suggested by Jim Meyering.
190
191 2007-10-18  Bruno Haible  <bruno@clisp.org>
192
193         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
194         Reported by Jim Meyering.
195
196 2007-10-18  Eric Blake  <ebb9@byu.net>
197
198         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
199
200 2007-10-18  Bruno Haible  <bruno@clisp.org>
201
202         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
203         the format string into writable memory. Needed in Fortify conditions.
204
205 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
206             Bruno Haible  <bruno@clisp.org>
207
208         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
209         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
210         * modules/trim (Depends-on): Add mbchar.
211         (configure.ac): Add gl_FUNC_MBRTOWC.
212         (Makefile.am): Augment lib_SOURCES.
213
214 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
215
216         Modify glob.c to use fstatat and dirfd, to simplify it.
217         Suggested by Eric Blake.
218         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
219         Don't include <stdbool.h>; not used.
220         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
221         (link_exists_p): Simplify implementation, since we can now assume
222         dirfd and fstatat.
223         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
224
225 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
226
227         * gnulib-tool (func_get_dependencies): Fix sed script to
228         match only tests.
229
230 2007-10-17  Bruno Haible  <bruno@clisp.org>
231
232         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
233         allow locale names without encoding suffix.
234         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
235         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
236
237 2007-10-16  Bruno Haible  <bruno@clisp.org>
238
239         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
240         * lib/getgroups.c (getgroups): Likewise.
241         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
242
243 2007-10-16  Bruno Haible  <bruno@clisp.org>
244
245         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
246         * modules/malloc-posix (License): Likewise.
247         * modules/realloc-posix (License): Likewise.
248         * modules/calloc-posix (License): Likewise.
249         * modules/intprops (License): Change from GPL to LGPL, with
250         Paul Eggert's approval.
251
252 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
253
254         Merge glibc changes into lib/glob.c.
255
256         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
257         2007-10-15 04:59:03 UTC.  Here are the changes:
258
259         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
260
261         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
262
263         * lib/glob.c: Add some branch prediction throughout.
264
265         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
266
267         [BZ #5103]
268         * lib/glob.c (glob): Recognize patterns starting \/.
269
270         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
271
272         [BZ #3996]
273         * lib/glob.c (attribute_hidden): Define if not defined.
274         (glob): Unescape dirname, filename or username when needed and not
275         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
276         is NULL.  Handle unescaped [ in pattern without closing ].
277         Don't pass GLOB_CHECK down to recursive glob for directories.
278         (__glob_pattern_type): New function.
279         (__glob_pattern_p): Implement using __glob_pattern_type.
280         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
281         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
282         Remove unreachable code.
283
284         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
285
286         * lib/glob.c (glob_in_dir): Add some comments and asserts to
287         explain why there are no leaks.
288
289         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
290
291         [BZ #3253]
292         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
293         time, rather allocate increasingly bigger arrays of pointers, if
294         possible with alloca, if too large with malloc.
295
296 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
297
298         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
299         Problem reported by H.Merijn Brand in
300         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
301         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
302         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
303
304 2007-10-15  Bruno Haible  <bruno@clisp.org>
305
306         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
307         with explicit rpl_ prefix.
308         * lib/fopen.c (fopen): Likewise.
309         * lib/freopen.c (freopen): Likewise.
310         * lib/iconv.c (iconv): Likewise.
311         * lib/iconv_close.c (iconv_close): Likewise.
312
313 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
314
315         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
316
317 2007-10-15  Bruno Haible  <bruno@clisp.org>
318
319         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
320         <stddef.h> instead of <stdlib.h> since we only need NULL.
321         Reported by Ben Pfaff <blp@cs.stanford.edu>.
322
323 2007-10-15  Bruno Haible  <bruno@clisp.org>
324
325         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
326         Replace paragraph talking about LIBOBJS.
327         Reported by Colin Watson <cjwatson@debian.org>.
328
329 2007-10-15  Bruno Haible  <bruno@clisp.org>
330
331         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
332         <stdlib.h> before using NULL.
333
334 2007-10-15  Simon Josefsson  <simon@josefsson.org>
335
336         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
337         Reported by Albert Chin <china@thewrittenword.com>.
338
339 2007-10-14  Bruno Haible  <bruno@clisp.org>
340
341         * modules/iconv_open-utf-tests: New file.
342         * tests/test-iconv-utf.c: New file.
343
344         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
345         * modules/iconv_open-utf: New file.
346         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
347         (iconv, iconv_close): New declarations.
348         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
349         be defined.
350         (iconv_open): Add special handling of conversion between UTF-8 and
351         UTF-{16,32}{BE,LE}.
352         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
353         * lib/iconv_close.c: New file.
354         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
355         gl_FUNC_ICONV_OPEN.
356         (gl_FUNC_ICONV_OPEN): Use it.
357         (gl_FUNC_ICONV_OPEN_UTF): New macro.
358         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
359         and REPLACE_ICONV_UTF.
360         * modules/iconv_open (Depends-on): Add c-strcase.
361         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
362         ICONV_CONST.
363         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
364
365 2007-10-13  Albert Chin  <china@thewrittenword.com>
366             Bruno Haible  <bruno@clisp.org>
367
368         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
369         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
370
371 2007-10-13  Bruno Haible  <bruno@clisp.org>
372
373         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
374         defined, use the ISO C99 inline semantics.
375         * lib/argp.h (ARGP_EI): Likewise.
376
377 2007-10-13  Bruno Haible  <bruno@clisp.org>
378
379         Handle 'inline' change in gcc 4.3.0.
380         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
381         argp_fmtstream_write, argp_fmtstream_set_lmargin,
382         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
383         argp_fmtstream_point): Disable 'extern' declaration if the function
384         definition is going to be provided inline.
385         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
386         semantics, not the ISO C99 inline semantics.
387         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
388         'extern' declaration if the function definition is going to be provided
389         inline.
390         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
391         the GNU C inline semantics, not the ISO C99 inline semantics. With
392         GCC 4.2, avoid a warning.
393
394 2007-10-13  Bruno Haible  <bruno@clisp.org>
395
396         * lib/freading.h (freading): Enable the use of __freading for
397         glibc >= 2.7.
398         * lib/freading.c (freading): Likewise.
399
400 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
401
402         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
403         "warning: C99 inline functions are not supported; using GNU89".
404
405 2007-10-12  Bruno Haible  <bruno@clisp.org>
406
407         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
408         of 2.
409         * tests/test-ceilf2.c: New file.
410         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
411
412         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
413         * modules/ceilf-tests: Update.
414
415 2007-10-12  Bruno Haible  <bruno@clisp.org>
416
417         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
418         of 2.
419         * tests/test-floorf2.c: New file.
420         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
421
422         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
423         * modules/floorf-tests: Update.
424
425 2007-10-12  Bruno Haible  <bruno@clisp.org>
426
427         * tests/test-trunc2.c: New file.
428         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
429
430         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
431         * modules/trunc-tests: Update.
432
433 2007-10-12  Bruno Haible  <bruno@clisp.org>
434
435         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
436         of 2.
437         * tests/test-truncf2.c: New file.
438         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
439
440         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
441         * modules/truncf-tests: Update.
442
443 2007-10-11  Eric Blake  <ebb9@byu.net>
444
445         Don't claim strerror is broken on Interix.
446         * doc/functions/strerror.texi (strerror): Known broken systems are
447         now Solaris 8, and not Interix.
448         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
449         Interix on cross-compile.
450         Reported by Martin Koeppe in
451         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
452
453 2007-10-11  Bruno Haible  <bruno@clisp.org>
454
455         * modules/i-ring-tests: New file.
456         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
457         instead of assert.
458
459 2007-10-11  Bruno Haible  <bruno@clisp.org>
460
461         * modules/filenamecat-tests: New file.
462         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
463         * lib/filenamecat.c: Remove test code.
464
465 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
466
467         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
468
469         * lib/strerror.c: Include <string.h> always, to test interface,
470         and to remove the need for the dummy.
471         Include intprops.h to compute width instead of doing it ourselves
472         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
473         (strerror): Define it to return NULL if there's no system strerror.
474         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
475         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
476         ancient pre-strerror Unix systems well any more.  Saying "unknown
477         system error" is enough.
478         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
479         simpler strerror.c implementation.
480         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
481         Simplify the tests to reflect the simpler strerror implementation.
482         * modules/strerror (Depends-on): Add intprops.
483
484 2007-10-09  Eric Blake  <ebb9@byu.net>
485
486         Silence test-fpending.
487         * modules/fpending-tests (Files): Add wrapper script.
488         * tests/test-fpending.sh: New file.
489
490 2007-10-09  Bruno Haible  <bruno@clisp.org>
491
492         * MODULES.html.sh (func_module): Don't create a hyperlink for
493         function names like 'printf_frexp'.
494         (Misc): Add crc, memxor.
495         (Characteristics of floating types): New section.
496         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
497         isnanf-nolibm, signbit, trunc, truncf, truncl.
498         (Enhancements for ISO C 99 functions): New subsection Input/output.
499         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
500         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
501         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
502         (Compatibility checks for POSIX:2001 functions): Add clock-time.
503         (Enhancements for POSIX:2001 functions): Add chdir-long.
504         (File system functions): Add areadlink, chdir-safer, read-file.
505         Remove cycle-check.
506         (File system as inode set): New section.
507         (Date and time): Add gethrxtime.
508         (Multithreading): Add openmp.
509         (Internationalization functions): Add localename.
510         (Unicode string functions): Add unistr/u*-mbsnlen.
511         (Support for maintaining and releasing projects): Add git-version-gen.
512         (Lone files): Remove directories.
513
514 2007-10-08  Ben Pfaff  <blp@gnu.org>
515
516         * lib/xmalloca.h: Fix typo in comment.
517
518 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
519
520         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
521         when avoiding problems with integer overflow.  Use a portable test
522         instead.
523
524 2007-10-08  Simon Josefsson  <simon@josefsson.org>
525
526         * modules/dummy (License): Change to LGPLv2+.
527         * modules/float (License): Likewise
528         * modules/realloc (License): Likewise
529         * modules/stdlib (License): Likewise
530
531 2007-10-07  Bruno Haible  <bruno@clisp.org>
532
533         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
534         * floor.c (TWO_MANT_DIG): Likewise.
535         * ceil.c (TWO_MANT_DIG): Likewise.
536         Reported by Ben Pfaff.
537
538 2007-10-07  Bruno Haible  <bruno@clisp.org>
539
540         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
541         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
542         * lib/frexp.c (FUNC): Likewise.
543         * lib/printf-frexp.h (printf_frexp): Likewise.
544         * lib/printf-frexpl.h (printf_frexpl): Likewise.
545         * lib/printf-frexp.c (FUNC): Likewise.
546         Suggested by Jim Meyering.
547
548 2007-10-07  Jim Meyering  <meyering@redhat.com>
549
550         Make xnanosleep's integer overflow test more robust.
551         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
552         so that gcc-4.3.0 doesn't optimize away this test for overflow.
553
554 2007-10-07  Bruno Haible  <bruno@clisp.org>
555
556         * NEWS: Mention the license change.
557
558         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
559         abbreviations in the modules files.
560
561         Change copyright notice from GPLv2+ to GPLv3+.
562         * README: Change copyright notice.
563         * MODULES.html.sh: Likewise.
564         * build-aux/bootstrap.conf: Likewise.
565         * build-aux/config.libpath: Likewise.
566         * build-aux/csharpcomp.sh.in: Likewise.
567         * build-aux/csharpexec.sh.in: Likewise.
568         * build-aux/install-reloc: Likewise.
569         * build-aux/javacomp.sh.in: Likewise.
570         * build-aux/javaexec.sh.in: Likewise.
571         * build-aux/ldd.sh.in: Likewise.
572         * build-aux/reloc-ldflags: Likewise.
573         * build-aux/relocatable.sh.in: Likewise.
574         * build-aux/x-to-1.in: Likewise.
575         * check-module: Likewise.
576         * config/srclistvars.sh: Likewise.
577         * gnulib-tool: Likewise.
578         * lib/acl-internal.h: Likewise.
579         * lib/acl.c: Likewise.
580         * lib/acl.h: Likewise.
581         * lib/acl_entries.c: Likewise.
582         * lib/areadlink-with-size.c: Likewise.
583         * lib/areadlink.c: Likewise.
584         * lib/areadlink.h: Likewise.
585         * lib/argmatch.c: Likewise.
586         * lib/argmatch.h: Likewise.
587         * lib/argp-ba.c: Likewise.
588         * lib/argp-eexst.c: Likewise.
589         * lib/argp-fmtstream.c: Likewise.
590         * lib/argp-fmtstream.h: Likewise.
591         * lib/argp-fs-xinl.c: Likewise.
592         * lib/argp-help.c: Likewise.
593         * lib/argp-namefrob.h: Likewise.
594         * lib/argp-parse.c: Likewise.
595         * lib/argp-pin.c: Likewise.
596         * lib/argp-pv.c: Likewise.
597         * lib/argp-pvh.c: Likewise.
598         * lib/argp-xinl.c: Likewise.
599         * lib/argp.h: Likewise.
600         * lib/at-func.c: Likewise.
601         * lib/atanl.c: Likewise.
602         * lib/backupfile.c: Likewise.
603         * lib/backupfile.h: Likewise.
604         * lib/basename.c: Likewise.
605         * lib/binary-io.h: Likewise.
606         * lib/byteswap.in.h: Likewise.
607         * lib/c-stack.c: Likewise.
608         * lib/c-stack.h: Likewise.
609         * lib/c-strcasestr.c: Likewise.
610         * lib/c-strcasestr.h: Likewise.
611         * lib/c-strstr.c: Likewise.
612         * lib/c-strstr.h: Likewise.
613         * lib/c-strtod.c: Likewise.
614         * lib/calloc.c: Likewise.
615         * lib/canon-host.c: Likewise.
616         * lib/canon-host.h: Likewise.
617         * lib/canonicalize-lgpl.c: Likewise.
618         * lib/canonicalize.c: Likewise.
619         * lib/canonicalize.h: Likewise.
620         * lib/ceil.c: Likewise.
621         * lib/ceilf.c: Likewise.
622         * lib/ceill.c: Likewise.
623         * lib/chdir-long.c: Likewise.
624         * lib/chdir-long.h: Likewise.
625         * lib/chdir-safer.c: Likewise.
626         * lib/chdir-safer.h: Likewise.
627         * lib/chown.c: Likewise.
628         * lib/classpath.c: Likewise.
629         * lib/classpath.h: Likewise.
630         * lib/clean-temp.c: Likewise.
631         * lib/clean-temp.h: Likewise.
632         * lib/cloexec.c: Likewise.
633         * lib/close-stream.c: Likewise.
634         * lib/closein.c: Likewise.
635         * lib/closein.h: Likewise.
636         * lib/closeout.c: Likewise.
637         * lib/closeout.h: Likewise.
638         * lib/concat-filename.c: Likewise.
639         * lib/copy-file.c: Likewise.
640         * lib/copy-file.h: Likewise.
641         * lib/count-one-bits.h: Likewise.
642         * lib/crc.c: Likewise.
643         * lib/crc.h: Likewise.
644         * lib/creat-safer.c: Likewise.
645         * lib/csharpcomp.c: Likewise.
646         * lib/csharpcomp.h: Likewise.
647         * lib/csharpexec.c: Likewise.
648         * lib/csharpexec.h: Likewise.
649         * lib/cycle-check.c: Likewise.
650         * lib/cycle-check.h: Likewise.
651         * lib/diacrit.c: Likewise.
652         * lib/diacrit.h: Likewise.
653         * lib/diffseq.h: Likewise.
654         * lib/dirchownmod.c: Likewise.
655         * lib/dirent.in.h: Likewise.
656         * lib/dirfd.c: Likewise.
657         * lib/dirfd.h: Likewise.
658         * lib/dirname.c: Likewise.
659         * lib/dirname.h: Likewise.
660         * lib/dummy.c: Likewise.
661         * lib/dup-safer.c: Likewise.
662         * lib/dup2.c: Likewise.
663         * lib/eealloc.h: Likewise.
664         * lib/error.c: Likewise.
665         * lib/error.h: Likewise.
666         * lib/euidaccess.c: Likewise.
667         * lib/exclude.c: Likewise.
668         * lib/exclude.h: Likewise.
669         * lib/execute.c: Likewise.
670         * lib/execute.h: Likewise.
671         * lib/exitfail.c: Likewise.
672         * lib/exitfail.h: Likewise.
673         * lib/expl.c: Likewise.
674         * lib/fatal-signal.c: Likewise.
675         * lib/fatal-signal.h: Likewise.
676         * lib/fbufmode.c: Likewise.
677         * lib/fbufmode.h: Likewise.
678         * lib/fchdir.c: Likewise.
679         * lib/fchmodat.c: Likewise.
680         * lib/fchownat.c: Likewise.
681         * lib/fcntl--.h: Likewise.
682         * lib/fcntl-safer.h: Likewise.
683         * lib/fcntl.in.h: Likewise.
684         * lib/fd-safer.c: Likewise.
685         * lib/fflush.c: Likewise.
686         * lib/file-has-acl.c: Likewise.
687         * lib/file-set.c: Likewise.
688         * lib/file-type.c: Likewise.
689         * lib/file-type.h: Likewise.
690         * lib/fileblocks.c: Likewise.
691         * lib/filemode.c: Likewise.
692         * lib/filemode.h: Likewise.
693         * lib/filename.h: Likewise.
694         * lib/filenamecat.c: Likewise.
695         * lib/filenamecat.h: Likewise.
696         * lib/findprog.c: Likewise.
697         * lib/findprog.h: Likewise.
698         * lib/float.in.h: Likewise.
699         * lib/floor.c: Likewise.
700         * lib/floorf.c: Likewise.
701         * lib/floorl.c: Likewise.
702         * lib/fopen-safer.c: Likewise.
703         * lib/fopen.c: Likewise.
704         * lib/fpending.c: Likewise.
705         * lib/fpending.h: Likewise.
706         * lib/fprintf.c: Likewise.
707         * lib/fprintftime.h: Likewise.
708         * lib/fpucw.h: Likewise.
709         * lib/fpurge.c: Likewise.
710         * lib/fpurge.h: Likewise.
711         * lib/freadable.c: Likewise.
712         * lib/freadable.h: Likewise.
713         * lib/freadahead.c: Likewise.
714         * lib/freadahead.h: Likewise.
715         * lib/freading.c: Likewise.
716         * lib/freading.h: Likewise.
717         * lib/free.c: Likewise.
718         * lib/freopen.c: Likewise.
719         * lib/frexp.c: Likewise.
720         * lib/frexpl.c: Likewise.
721         * lib/fseek.c: Likewise.
722         * lib/fseterr.c: Likewise.
723         * lib/fseterr.h: Likewise.
724         * lib/fstatat.c: Likewise.
725         * lib/fstrcmp.c: Likewise.
726         * lib/fstrcmp.h: Likewise.
727         * lib/fsusage.c: Likewise.
728         * lib/fsusage.h: Likewise.
729         * lib/ftell.c: Likewise.
730         * lib/ftello.c: Likewise.
731         * lib/fts-cycle.c: Likewise.
732         * lib/fts.c: Likewise.
733         * lib/fts_.h: Likewise.
734         * lib/full-read.c: Likewise.
735         * lib/full-read.h: Likewise.
736         * lib/full-write.c: Likewise.
737         * lib/full-write.h: Likewise.
738         * lib/fwritable.c: Likewise.
739         * lib/fwritable.h: Likewise.
740         * lib/fwriteerror.c: Likewise.
741         * lib/fwriteerror.h: Likewise.
742         * lib/fwriting.c: Likewise.
743         * lib/fwriting.h: Likewise.
744         * lib/gcd.c: Likewise.
745         * lib/gcd.h: Likewise.
746         * lib/getcwd.c: Likewise.
747         * lib/getdate.h: Likewise.
748         * lib/getdate.y: Likewise.
749         * lib/getdomainname.c: Likewise.
750         * lib/getdomainname.h: Likewise.
751         * lib/getgroups.c: Likewise.
752         * lib/gethostname.c: Likewise.
753         * lib/gethrxtime.c: Likewise.
754         * lib/gethrxtime.h: Likewise.
755         * lib/getloadavg.c: Likewise.
756         * lib/getndelim2.c: Likewise.
757         * lib/getndelim2.h: Likewise.
758         * lib/getnline.c: Likewise.
759         * lib/getnline.h: Likewise.
760         * lib/getopt.c: Likewise.
761         * lib/getopt.in.h: Likewise.
762         * lib/getopt1.c: Likewise.
763         * lib/getopt_int.h: Likewise.
764         * lib/getpagesize.h: Likewise.
765         * lib/getsubopt.c: Likewise.
766         * lib/gettime.c: Likewise.
767         * lib/getugroups.c: Likewise.
768         * lib/getugroups.h: Likewise.
769         * lib/getusershell.c: Likewise.
770         * lib/gl_anyavltree_list1.h: Likewise.
771         * lib/gl_anyavltree_list2.h: Likewise.
772         * lib/gl_anyhash_list1.h: Likewise.
773         * lib/gl_anyhash_list2.h: Likewise.
774         * lib/gl_anylinked_list1.h: Likewise.
775         * lib/gl_anylinked_list2.h: Likewise.
776         * lib/gl_anyrbtree_list1.h: Likewise.
777         * lib/gl_anyrbtree_list2.h: Likewise.
778         * lib/gl_anytree_list1.h: Likewise.
779         * lib/gl_anytree_list2.h: Likewise.
780         * lib/gl_anytree_oset.h: Likewise.
781         * lib/gl_anytreehash_list1.h: Likewise.
782         * lib/gl_anytreehash_list2.h: Likewise.
783         * lib/gl_array_list.c: Likewise.
784         * lib/gl_array_list.h: Likewise.
785         * lib/gl_array_oset.c: Likewise.
786         * lib/gl_array_oset.h: Likewise.
787         * lib/gl_avltree_list.c: Likewise.
788         * lib/gl_avltree_list.h: Likewise.
789         * lib/gl_avltree_oset.c: Likewise.
790         * lib/gl_avltree_oset.h: Likewise.
791         * lib/gl_avltreehash_list.c: Likewise.
792         * lib/gl_avltreehash_list.h: Likewise.
793         * lib/gl_carray_list.c: Likewise.
794         * lib/gl_carray_list.h: Likewise.
795         * lib/gl_linked_list.c: Likewise.
796         * lib/gl_linked_list.h: Likewise.
797         * lib/gl_linkedhash_list.c: Likewise.
798         * lib/gl_linkedhash_list.h: Likewise.
799         * lib/gl_list.c: Likewise.
800         * lib/gl_list.h: Likewise.
801         * lib/gl_oset.c: Likewise.
802         * lib/gl_oset.h: Likewise.
803         * lib/gl_rbtree_list.c: Likewise.
804         * lib/gl_rbtree_list.h: Likewise.
805         * lib/gl_rbtree_oset.c: Likewise.
806         * lib/gl_rbtree_oset.h: Likewise.
807         * lib/gl_rbtreehash_list.c: Likewise.
808         * lib/gl_rbtreehash_list.h: Likewise.
809         * lib/gl_sublist.c: Likewise.
810         * lib/gl_sublist.h: Likewise.
811         * lib/group-member.c: Likewise.
812         * lib/group-member.h: Likewise.
813         * lib/hard-locale.c: Likewise.
814         * lib/hard-locale.h: Likewise.
815         * lib/hash-pjw.c: Likewise.
816         * lib/hash-pjw.h: Likewise.
817         * lib/hash-triple.c: Likewise.
818         * lib/hash.c: Likewise.
819         * lib/hash.h: Likewise.
820         * lib/human.c: Likewise.
821         * lib/human.h: Likewise.
822         * lib/i-ring.c: Likewise.
823         * lib/i-ring.h: Likewise.
824         * lib/idcache.c: Likewise.
825         * lib/imaxabs.c: Likewise.
826         * lib/imaxdiv.c: Likewise.
827         * lib/inet_pton.c: Likewise.
828         * lib/inet_pton.h: Likewise.
829         * lib/intprops.h: Likewise.
830         * lib/inttostr.c: Likewise.
831         * lib/inttostr.h: Likewise.
832         * lib/inttypes.in.h: Likewise.
833         * lib/isapipe.c: Likewise.
834         * lib/isdir.c: Likewise.
835         * lib/isnan.c: Likewise.
836         * lib/isnan.h: Likewise.
837         * lib/isnanf.c: Likewise.
838         * lib/isnanf.h: Likewise.
839         * lib/isnanl-nolibm.h: Likewise.
840         * lib/isnanl.c: Likewise.
841         * lib/isnanl.h: Likewise.
842         * lib/javacomp.c: Likewise.
843         * lib/javacomp.h: Likewise.
844         * lib/javaexec.c: Likewise.
845         * lib/javaexec.h: Likewise.
846         * lib/javaversion.c: Likewise.
847         * lib/javaversion.h: Likewise.
848         * lib/javaversion.java: Likewise.
849         * lib/lbrkprop.h: Likewise.
850         * lib/lchmod.h: Likewise.
851         * lib/lchown.c: Likewise.
852         * lib/ldexpl.c: Likewise.
853         * lib/linebreak.c: Likewise.
854         * lib/linebreak.h: Likewise.
855         * lib/linebuffer.c: Likewise.
856         * lib/linebuffer.h: Likewise.
857         * lib/locale.in.h: Likewise.
858         * lib/logl.c: Likewise.
859         * lib/long-options.c: Likewise.
860         * lib/long-options.h: Likewise.
861         * lib/lstat.c: Likewise.
862         * lib/lstat.h: Likewise.
863         * lib/math.in.h: Likewise.
864         * lib/mbchar.c: Likewise.
865         * lib/mbchar.h: Likewise.
866         * lib/mbfile.h: Likewise.
867         * lib/mbiter.h: Likewise.
868         * lib/mbscasecmp.c: Likewise.
869         * lib/mbscasestr.c: Likewise.
870         * lib/mbschr.c: Likewise.
871         * lib/mbscspn.c: Likewise.
872         * lib/mbslen.c: Likewise.
873         * lib/mbsncasecmp.c: Likewise.
874         * lib/mbsnlen.c: Likewise.
875         * lib/mbspbrk.c: Likewise.
876         * lib/mbspcasecmp.c: Likewise.
877         * lib/mbsrchr.c: Likewise.
878         * lib/mbssep.c: Likewise.
879         * lib/mbsspn.c: Likewise.
880         * lib/mbsstr.c: Likewise.
881         * lib/mbstok_r.c: Likewise.
882         * lib/mbswidth.c: Likewise.
883         * lib/mbswidth.h: Likewise.
884         * lib/mbuiter.h: Likewise.
885         * lib/memcasecmp.c: Likewise.
886         * lib/memcasecmp.h: Likewise.
887         * lib/memchr.c: Likewise.
888         * lib/memcmp.c: Likewise.
889         * lib/memcoll.c: Likewise.
890         * lib/memcoll.h: Likewise.
891         * lib/memcpy.c: Likewise.
892         * lib/memrchr.c: Likewise.
893         * lib/mkancesdirs.c: Likewise.
894         * lib/mkdir-p.c: Likewise.
895         * lib/mkdir-p.h: Likewise.
896         * lib/mkdir.c: Likewise.
897         * lib/mkdirat.c: Likewise.
898         * lib/mkdtemp.c: Likewise.
899         * lib/mkstemp-safer.c: Likewise.
900         * lib/mkstemp.c: Likewise.
901         * lib/modechange.c: Likewise.
902         * lib/modechange.h: Likewise.
903         * lib/mountlist.c: Likewise.
904         * lib/mountlist.h: Likewise.
905         * lib/mpsort.c: Likewise.
906         * lib/nanosleep.c: Likewise.
907         * lib/obstack.c: Likewise.
908         * lib/obstack.h: Likewise.
909         * lib/open-safer.c: Likewise.
910         * lib/open.c: Likewise.
911         * lib/openat-die.c: Likewise.
912         * lib/openat-priv.h: Likewise.
913         * lib/openat-proc.c: Likewise.
914         * lib/openat.c: Likewise.
915         * lib/openat.h: Likewise.
916         * lib/pagealign_alloc.c: Likewise.
917         * lib/pagealign_alloc.h: Likewise.
918         * lib/physmem.c: Likewise.
919         * lib/physmem.h: Likewise.
920         * lib/pipe-safer.c: Likewise.
921         * lib/pipe.c: Likewise.
922         * lib/pipe.h: Likewise.
923         * lib/posixtm.c: Likewise.
924         * lib/posixtm.h: Likewise.
925         * lib/posixver.c: Likewise.
926         * lib/printf-frexp.c: Likewise.
927         * lib/printf-frexp.h: Likewise.
928         * lib/printf-frexpl.c: Likewise.
929         * lib/printf-frexpl.h: Likewise.
930         * lib/printf.c: Likewise.
931         * lib/progname.c: Likewise.
932         * lib/progname.h: Likewise.
933         * lib/progreloc.c: Likewise.
934         * lib/putenv.c: Likewise.
935         * lib/quote.c: Likewise.
936         * lib/quote.h: Likewise.
937         * lib/quotearg.c: Likewise.
938         * lib/quotearg.h: Likewise.
939         * lib/raise.c: Likewise.
940         * lib/readline.c: Likewise.
941         * lib/readline.h: Likewise.
942         * lib/readlink.c: Likewise.
943         * lib/readtokens.c: Likewise.
944         * lib/readtokens.h: Likewise.
945         * lib/readtokens0.c: Likewise.
946         * lib/readtokens0.h: Likewise.
947         * lib/readutmp.c: Likewise.
948         * lib/readutmp.h: Likewise.
949         * lib/realloc.c: Likewise.
950         * lib/relocwrapper.c: Likewise.
951         * lib/rename-dest-slash.c: Likewise.
952         * lib/rename.c: Likewise.
953         * lib/rmdir.c: Likewise.
954         * lib/rpmatch.c: Likewise.
955         * lib/safe-read.c: Likewise.
956         * lib/safe-read.h: Likewise.
957         * lib/safe-write.c: Likewise.
958         * lib/safe-write.h: Likewise.
959         * lib/same-inode.h: Likewise.
960         * lib/same.c: Likewise.
961         * lib/same.h: Likewise.
962         * lib/save-cwd.c: Likewise.
963         * lib/save-cwd.h: Likewise.
964         * lib/savedir.c: Likewise.
965         * lib/savedir.h: Likewise.
966         * lib/savewd.c: Likewise.
967         * lib/savewd.h: Likewise.
968         * lib/search.in.h: Likewise.
969         * lib/setenv.c: Likewise.
970         * lib/setenv.h: Likewise.
971         * lib/settime.c: Likewise.
972         * lib/sh-quote.c: Likewise.
973         * lib/sh-quote.h: Likewise.
974         * lib/sig2str.c: Likewise.
975         * lib/sig2str.h: Likewise.
976         * lib/signal.in.h: Likewise.
977         * lib/signbitd.c: Likewise.
978         * lib/signbitf.c: Likewise.
979         * lib/signbitl.c: Likewise.
980         * lib/sigprocmask.c: Likewise.
981         * lib/sincosl.c: Likewise.
982         * lib/sleep.c: Likewise.
983         * lib/sprintf.c: Likewise.
984         * lib/sqrtl.c: Likewise.
985         * lib/stat-time.h: Likewise.
986         * lib/stdio--.h: Likewise.
987         * lib/stdio-safer.h: Likewise.
988         * lib/stdlib--.h: Likewise.
989         * lib/stdlib-safer.h: Likewise.
990         * lib/stdlib.in.h: Likewise.
991         * lib/stpcpy.c: Likewise.
992         * lib/stpncpy.c: Likewise.
993         * lib/strchrnul.c: Likewise.
994         * lib/strcspn.c: Likewise.
995         * lib/strerror.c: Likewise.
996         * lib/strftime.c: Likewise.
997         * lib/strftime.h: Likewise.
998         * lib/striconveh.c: Likewise.
999         * lib/striconveh.h: Likewise.
1000         * lib/striconveha.c: Likewise.
1001         * lib/striconveha.h: Likewise.
1002         * lib/stripslash.c: Likewise.
1003         * lib/strnlen1.c: Likewise.
1004         * lib/strnlen1.h: Likewise.
1005         * lib/strtod.c: Likewise.
1006         * lib/strtoimax.c: Likewise.
1007         * lib/strtok_r.c: Likewise.
1008         * lib/strtol.c: Likewise.
1009         * lib/strtoll.c: Likewise.
1010         * lib/strtoul.c: Likewise.
1011         * lib/strtoull.c: Likewise.
1012         * lib/sysexits.in.h: Likewise.
1013         * lib/tempname.c: Likewise.
1014         * lib/tempname.h: Likewise.
1015         * lib/timespec.h: Likewise.
1016         * lib/tls.c: Likewise.
1017         * lib/tls.h: Likewise.
1018         * lib/tmpdir.c: Likewise.
1019         * lib/tmpdir.h: Likewise.
1020         * lib/tmpfile-safer.c: Likewise.
1021         * lib/tmpfile.c: Likewise.
1022         * lib/trigl.c: Likewise.
1023         * lib/trigl.h: Likewise.
1024         * lib/trim.c: Likewise.
1025         * lib/trim.h: Likewise.
1026         * lib/trunc.c: Likewise.
1027         * lib/truncf.c: Likewise.
1028         * lib/truncl.c: Likewise.
1029         * lib/tsearch.c: Likewise.
1030         * lib/unicodeio.c: Likewise.
1031         * lib/unicodeio.h: Likewise.
1032         * lib/unistd--.h: Likewise.
1033         * lib/unistd-safer.h: Likewise.
1034         * lib/unistdio/ulc-fprintf.c: Likewise.
1035         * lib/unistdio/ulc-vfprintf.c: Likewise.
1036         * lib/unlinkdir.c: Likewise.
1037         * lib/unlinkdir.h: Likewise.
1038         * lib/unlocked-io.h: Likewise.
1039         * lib/unsetenv.c: Likewise.
1040         * lib/userspec.c: Likewise.
1041         * lib/utime.c: Likewise.
1042         * lib/utimecmp.c: Likewise.
1043         * lib/utimecmp.h: Likewise.
1044         * lib/utimens.c: Likewise.
1045         * lib/verify.h: Likewise.
1046         * lib/verror.c: Likewise.
1047         * lib/verror.h: Likewise.
1048         * lib/version-etc-fsf.c: Likewise.
1049         * lib/version-etc.c: Likewise.
1050         * lib/version-etc.h: Likewise.
1051         * lib/vfprintf.c: Likewise.
1052         * lib/vprintf.c: Likewise.
1053         * lib/vsprintf.c: Likewise.
1054         * lib/w32spawn.h: Likewise.
1055         * lib/wait-process.c: Likewise.
1056         * lib/wait-process.h: Likewise.
1057         * lib/wcwidth.c: Likewise.
1058         * lib/write-any-file.c: Likewise.
1059         * lib/xalloc-die.c: Likewise.
1060         * lib/xalloc.h: Likewise.
1061         * lib/xasprintf.c: Likewise.
1062         * lib/xgetcwd.c: Likewise.
1063         * lib/xgetcwd.h: Likewise.
1064         * lib/xgetdomainname.c: Likewise.
1065         * lib/xgetdomainname.h: Likewise.
1066         * lib/xgethostname.c: Likewise.
1067         * lib/xmalloc.c: Likewise.
1068         * lib/xmalloca.c: Likewise.
1069         * lib/xmalloca.h: Likewise.
1070         * lib/xmemcoll.c: Likewise.
1071         * lib/xnanosleep.c: Likewise.
1072         * lib/xreadlink.c: Likewise.
1073         * lib/xreadlink.h: Likewise.
1074         * lib/xsetenv.c: Likewise.
1075         * lib/xsetenv.h: Likewise.
1076         * lib/xstriconv.c: Likewise.
1077         * lib/xstriconv.h: Likewise.
1078         * lib/xstrndup.c: Likewise.
1079         * lib/xstrndup.h: Likewise.
1080         * lib/xstrtod.c: Likewise.
1081         * lib/xstrtod.h: Likewise.
1082         * lib/xstrtol-error.c: Likewise.
1083         * lib/xstrtol.c: Likewise.
1084         * lib/xstrtol.h: Likewise.
1085         * lib/xtime.h: Likewise.
1086         * lib/xvasprintf.c: Likewise.
1087         * lib/xvasprintf.h: Likewise.
1088         * lib/yesno.c: Likewise.
1089         * lib/yesno.h: Likewise.
1090         * posix-modules: Likewise.
1091         * tests/test-alloca-opt.c: Likewise.
1092         * tests/test-arcfour.c: Likewise.
1093         * tests/test-arctwo.c: Likewise.
1094         * tests/test-argmatch.c: Likewise.
1095         * tests/test-argp-2.sh: Likewise.
1096         * tests/test-argp.c: Likewise.
1097         * tests/test-arpa_inet.c: Likewise.
1098         * tests/test-array_list.c: Likewise.
1099         * tests/test-array_oset.c: Likewise.
1100         * tests/test-atexit.c: Likewise.
1101         * tests/test-avltree_list.c: Likewise.
1102         * tests/test-avltree_oset.c: Likewise.
1103         * tests/test-avltreehash_list.c: Likewise.
1104         * tests/test-base64.c: Likewise.
1105         * tests/test-binary-io.c: Likewise.
1106         * tests/test-byteswap.c: Likewise.
1107         * tests/test-c-ctype.c: Likewise.
1108         * tests/test-c-strcasecmp.c: Likewise.
1109         * tests/test-c-strcasestr.c: Likewise.
1110         * tests/test-c-strncasecmp.c: Likewise.
1111         * tests/test-c-strstr.c: Likewise.
1112         * tests/test-canonicalize-lgpl.c: Likewise.
1113         * tests/test-canonicalize.c: Likewise.
1114         * tests/test-carray_list.c: Likewise.
1115         * tests/test-ceilf.c: Likewise.
1116         * tests/test-ceill.c: Likewise.
1117         * tests/test-count-one-bits.c: Likewise.
1118         * tests/test-crc.c: Likewise.
1119         * tests/test-dirname.c: Likewise.
1120         * tests/test-fbufmode.c: Likewise.
1121         * tests/test-fcntl.c: Likewise.
1122         * tests/test-fflush.c: Likewise.
1123         * tests/test-floorf.c: Likewise.
1124         * tests/test-floorl.c: Likewise.
1125         * tests/test-fopen.c: Likewise.
1126         * tests/test-fprintf-posix.c: Likewise.
1127         * tests/test-fprintf-posix.h: Likewise.
1128         * tests/test-fpurge.c: Likewise.
1129         * tests/test-freadable.c: Likewise.
1130         * tests/test-freadahead.c: Likewise.
1131         * tests/test-freading.c: Likewise.
1132         * tests/test-freopen.c: Likewise.
1133         * tests/test-frexp.c: Likewise.
1134         * tests/test-frexpl.c: Likewise.
1135         * tests/test-fseek.c: Likewise.
1136         * tests/test-fseeko.c: Likewise.
1137         * tests/test-fseterr.c: Likewise.
1138         * tests/test-fstrcmp.c: Likewise.
1139         * tests/test-ftell.c: Likewise.
1140         * tests/test-ftello.c: Likewise.
1141         * tests/test-fwritable.c: Likewise.
1142         * tests/test-fwriting.c: Likewise.
1143         * tests/test-getaddrinfo.c: Likewise.
1144         * tests/test-getpass.c: Likewise.
1145         * tests/test-gettimeofday.c: Likewise.
1146         * tests/test-hmac-md5.c: Likewise.
1147         * tests/test-hmac-sha1.c: Likewise.
1148         * tests/test-iconv.c: Likewise.
1149         * tests/test-iconvme.c: Likewise.
1150         * tests/test-inttypes.c: Likewise.
1151         * tests/test-isnan.c: Likewise.
1152         * tests/test-isnanf.c: Likewise.
1153         * tests/test-isnanl-nolibm.c: Likewise.
1154         * tests/test-isnanl.c: Likewise.
1155         * tests/test-isnanl.h: Likewise.
1156         * tests/test-ldexpl.c: Likewise.
1157         * tests/test-linked_list.c: Likewise.
1158         * tests/test-linkedhash_list.c: Likewise.
1159         * tests/test-locale.c: Likewise.
1160         * tests/test-localename.c: Likewise.
1161         * tests/test-lock.c: Likewise.
1162         * tests/test-lseek.c: Likewise.
1163         * tests/test-malloca.c: Likewise.
1164         * tests/test-math.c: Likewise.
1165         * tests/test-mbscasecmp.c: Likewise.
1166         * tests/test-mbscasestr1.c: Likewise.
1167         * tests/test-mbscasestr2.c: Likewise.
1168         * tests/test-mbscasestr3.c: Likewise.
1169         * tests/test-mbscasestr4.c: Likewise.
1170         * tests/test-mbschr.c: Likewise.
1171         * tests/test-mbscspn.c: Likewise.
1172         * tests/test-mbsncasecmp.c: Likewise.
1173         * tests/test-mbspbrk.c: Likewise.
1174         * tests/test-mbspcasecmp.c: Likewise.
1175         * tests/test-mbsrchr.c: Likewise.
1176         * tests/test-mbsspn.c: Likewise.
1177         * tests/test-mbsstr1.c: Likewise.
1178         * tests/test-mbsstr2.c: Likewise.
1179         * tests/test-mbsstr3.c: Likewise.
1180         * tests/test-md5.c: Likewise.
1181         * tests/test-memmem.c: Likewise.
1182         * tests/test-netinet_in.c: Likewise.
1183         * tests/test-open.c: Likewise.
1184         * tests/test-printf-frexp.c: Likewise.
1185         * tests/test-printf-frexpl.c: Likewise.
1186         * tests/test-printf-posix.c: Likewise.
1187         * tests/test-printf-posix.h: Likewise.
1188         * tests/test-rbtree_list.c: Likewise.
1189         * tests/test-rbtree_oset.c: Likewise.
1190         * tests/test-rbtreehash_list.c: Likewise.
1191         * tests/test-read-file.c: Likewise.
1192         * tests/test-rijndael.c: Likewise.
1193         * tests/test-search.c: Likewise.
1194         * tests/test-signbit.c: Likewise.
1195         * tests/test-sleep.c: Likewise.
1196         * tests/test-snprintf-posix.c: Likewise.
1197         * tests/test-snprintf-posix.h: Likewise.
1198         * tests/test-snprintf.c: Likewise.
1199         * tests/test-sprintf-posix.c: Likewise.
1200         * tests/test-sprintf-posix.h: Likewise.
1201         * tests/test-stat-time.c: Likewise.
1202         * tests/test-stdbool.c: Likewise.
1203         * tests/test-stdint.c: Likewise.
1204         * tests/test-stdio.c: Likewise.
1205         * tests/test-stdlib.c: Likewise.
1206         * tests/test-stpncpy.c: Likewise.
1207         * tests/test-strcasestr.c: Likewise.
1208         * tests/test-striconv.c: Likewise.
1209         * tests/test-striconveh.c: Likewise.
1210         * tests/test-striconveha.c: Likewise.
1211         * tests/test-string.c: Likewise.
1212         * tests/test-sys_select.c: Likewise.
1213         * tests/test-sys_socket.c: Likewise.
1214         * tests/test-sys_stat.c: Likewise.
1215         * tests/test-sys_time.c: Likewise.
1216         * tests/test-sysexits.c: Likewise.
1217         * tests/test-time.c: Likewise.
1218         * tests/test-tls.c: Likewise.
1219         * tests/test-trunc.c: Likewise.
1220         * tests/test-truncf.c: Likewise.
1221         * tests/test-truncl.c: Likewise.
1222         * tests/test-unistd.c: Likewise.
1223         * tests/test-vasnprintf-posix.c: Likewise.
1224         * tests/test-vasnprintf-posix2.c: Likewise.
1225         * tests/test-vasnprintf.c: Likewise.
1226         * tests/test-vasprintf-posix.c: Likewise.
1227         * tests/test-vasprintf.c: Likewise.
1228         * tests/test-verify.c: Likewise.
1229         * tests/test-vfprintf-posix.c: Likewise.
1230         * tests/test-vprintf-posix.c: Likewise.
1231         * tests/test-vsnprintf-posix.c: Likewise.
1232         * tests/test-vsnprintf.c: Likewise.
1233         * tests/test-vsprintf-posix.c: Likewise.
1234         * tests/test-wchar.c: Likewise.
1235         * tests/test-wctype.c: Likewise.
1236         * tests/test-wcwidth.c: Likewise.
1237         * tests/test-xstrtol.c: Likewise.
1238         * tests/test-xvasprintf.c: Likewise.
1239         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
1240         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
1241         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
1242         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
1243         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
1244         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
1245         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
1246         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
1247         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
1248         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
1249         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
1250         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
1251         * tests/uniname/test-uninames.c: Likewise.
1252         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
1253         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
1254         * tests/unistdio/test-u16-printf1.h: Likewise.
1255         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
1256         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
1257         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
1258         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
1259         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
1260         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
1261         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
1262         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
1263         * tests/unistdio/test-u32-printf1.h: Likewise.
1264         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
1265         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
1266         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
1267         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
1268         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
1269         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
1270         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
1271         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
1272         * tests/unistdio/test-u8-printf1.h: Likewise.
1273         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
1274         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
1275         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
1276         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
1277         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
1278         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
1279         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
1280         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
1281         * tests/unistdio/test-ulc-printf1.h: Likewise.
1282         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
1283         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
1284         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
1285         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
1286         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
1287         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
1288         * tests/uniwidth/test-u16-strwidth.c: Likewise.
1289         * tests/uniwidth/test-u16-width.c: Likewise.
1290         * tests/uniwidth/test-u32-strwidth.c: Likewise.
1291         * tests/uniwidth/test-u32-width.c: Likewise.
1292         * tests/uniwidth/test-u8-strwidth.c: Likewise.
1293         * tests/uniwidth/test-u8-width.c: Likewise.
1294         * tests/uniwidth/test-uc_width.c: Likewise.
1295         * config/srclist-update: Likewise.
1296         (fixlicense): Update to GPLv3+.
1297
1298         Change copyright notice from LGPLv2.1+ to LGPLv3+.
1299         * tests/test-tsearch.c: Change copyright notice.
1300
1301         Change copyright notice from LGPLv2.0+ to LGPLv3+.
1302         * lib/c-strcaseeq.h: Change copyright notice.
1303         * lib/streq.h: Likewise.
1304         * lib/uniconv.h: Likewise.
1305         * lib/uniconv/u-conv-from-enc.h: Likewise.
1306         * lib/uniconv/u-conv-to-enc.h: Likewise.
1307         * lib/uniconv/u-strconv-from-enc.h: Likewise.
1308         * lib/uniconv/u-strconv-to-enc.h: Likewise.
1309         * lib/uniconv/u16-conv-from-enc.c: Likewise.
1310         * lib/uniconv/u16-conv-to-enc.c: Likewise.
1311         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
1312         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
1313         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
1314         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
1315         * lib/uniconv/u32-conv-from-enc.c: Likewise.
1316         * lib/uniconv/u32-conv-to-enc.c: Likewise.
1317         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
1318         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
1319         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
1320         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
1321         * lib/uniconv/u8-conv-from-enc.c: Likewise.
1322         * lib/uniconv/u8-conv-to-enc.c: Likewise.
1323         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
1324         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
1325         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
1326         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
1327         * lib/uniname.h: Likewise.
1328         * lib/uniname/uniname.c: Likewise.
1329         * lib/unistdio.h: Likewise.
1330         * lib/unistdio/u-asnprintf.h: Likewise.
1331         * lib/unistdio/u-asprintf.h: Likewise.
1332         * lib/unistdio/u-printf-args.c: Likewise.
1333         * lib/unistdio/u-printf-args.h: Likewise.
1334         * lib/unistdio/u-printf-parse.h: Likewise.
1335         * lib/unistdio/u-snprintf.h: Likewise.
1336         * lib/unistdio/u-sprintf.h: Likewise.
1337         * lib/unistdio/u-vasprintf.h: Likewise.
1338         * lib/unistdio/u-vsnprintf.h: Likewise.
1339         * lib/unistdio/u-vsprintf.h: Likewise.
1340         * lib/unistdio/u16-asnprintf.c: Likewise.
1341         * lib/unistdio/u16-asprintf.c: Likewise.
1342         * lib/unistdio/u16-printf-parse.c: Likewise.
1343         * lib/unistdio/u16-snprintf.c: Likewise.
1344         * lib/unistdio/u16-sprintf.c: Likewise.
1345         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
1346         * lib/unistdio/u16-u16-asprintf.c: Likewise.
1347         * lib/unistdio/u16-u16-snprintf.c: Likewise.
1348         * lib/unistdio/u16-u16-sprintf.c: Likewise.
1349         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
1350         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
1351         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
1352         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
1353         * lib/unistdio/u16-vasnprintf.c: Likewise.
1354         * lib/unistdio/u16-vasprintf.c: Likewise.
1355         * lib/unistdio/u16-vsnprintf.c: Likewise.
1356         * lib/unistdio/u16-vsprintf.c: Likewise.
1357         * lib/unistdio/u32-asnprintf.c: Likewise.
1358         * lib/unistdio/u32-asprintf.c: Likewise.
1359         * lib/unistdio/u32-printf-parse.c: Likewise.
1360         * lib/unistdio/u32-snprintf.c: Likewise.
1361         * lib/unistdio/u32-sprintf.c: Likewise.
1362         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
1363         * lib/unistdio/u32-u32-asprintf.c: Likewise.
1364         * lib/unistdio/u32-u32-snprintf.c: Likewise.
1365         * lib/unistdio/u32-u32-sprintf.c: Likewise.
1366         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
1367         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
1368         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
1369         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
1370         * lib/unistdio/u32-vasnprintf.c: Likewise.
1371         * lib/unistdio/u32-vasprintf.c: Likewise.
1372         * lib/unistdio/u32-vsnprintf.c: Likewise.
1373         * lib/unistdio/u32-vsprintf.c: Likewise.
1374         * lib/unistdio/u8-asnprintf.c: Likewise.
1375         * lib/unistdio/u8-asprintf.c: Likewise.
1376         * lib/unistdio/u8-printf-parse.c: Likewise.
1377         * lib/unistdio/u8-snprintf.c: Likewise.
1378         * lib/unistdio/u8-sprintf.c: Likewise.
1379         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
1380         * lib/unistdio/u8-u8-asprintf.c: Likewise.
1381         * lib/unistdio/u8-u8-snprintf.c: Likewise.
1382         * lib/unistdio/u8-u8-sprintf.c: Likewise.
1383         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
1384         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
1385         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
1386         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
1387         * lib/unistdio/u8-vasnprintf.c: Likewise.
1388         * lib/unistdio/u8-vasprintf.c: Likewise.
1389         * lib/unistdio/u8-vsnprintf.c: Likewise.
1390         * lib/unistdio/u8-vsprintf.c: Likewise.
1391         * lib/unistdio/ulc-asnprintf.c: Likewise.
1392         * lib/unistdio/ulc-asprintf.c: Likewise.
1393         * lib/unistdio/ulc-printf-parse.c: Likewise.
1394         * lib/unistdio/ulc-snprintf.c: Likewise.
1395         * lib/unistdio/ulc-sprintf.c: Likewise.
1396         * lib/unistdio/ulc-vasnprintf.c: Likewise.
1397         * lib/unistdio/ulc-vasprintf.c: Likewise.
1398         * lib/unistdio/ulc-vsnprintf.c: Likewise.
1399         * lib/unistdio/ulc-vsprintf.c: Likewise.
1400         * lib/unistr.h: Likewise.
1401         * lib/unistr/u-cpy-alloc.h: Likewise.
1402         * lib/unistr/u-cpy.h: Likewise.
1403         * lib/unistr/u-endswith.h: Likewise.
1404         * lib/unistr/u-move.h: Likewise.
1405         * lib/unistr/u-set.h: Likewise.
1406         * lib/unistr/u-startswith.h: Likewise.
1407         * lib/unistr/u-stpcpy.h: Likewise.
1408         * lib/unistr/u-stpncpy.h: Likewise.
1409         * lib/unistr/u-strcat.h: Likewise.
1410         * lib/unistr/u-strcpy.h: Likewise.
1411         * lib/unistr/u-strcspn.h: Likewise.
1412         * lib/unistr/u-strdup.h: Likewise.
1413         * lib/unistr/u-strlen.h: Likewise.
1414         * lib/unistr/u-strncat.h: Likewise.
1415         * lib/unistr/u-strncpy.h: Likewise.
1416         * lib/unistr/u-strnlen.h: Likewise.
1417         * lib/unistr/u-strpbrk.h: Likewise.
1418         * lib/unistr/u-strspn.h: Likewise.
1419         * lib/unistr/u-strstr.h: Likewise.
1420         * lib/unistr/u-strtok.h: Likewise.
1421         * lib/unistr/u16-check.c: Likewise.
1422         * lib/unistr/u16-chr.c: Likewise.
1423         * lib/unistr/u16-cmp.c: Likewise.
1424         * lib/unistr/u16-cpy-alloc.c: Likewise.
1425         * lib/unistr/u16-cpy.c: Likewise.
1426         * lib/unistr/u16-endswith.c: Likewise.
1427         * lib/unistr/u16-mblen.c: Likewise.
1428         * lib/unistr/u16-mbsnlen.c: Likewise.
1429         * lib/unistr/u16-mbtouc-aux.c: Likewise.
1430         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
1431         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
1432         * lib/unistr/u16-mbtouc.c: Likewise.
1433         * lib/unistr/u16-mbtoucr.c: Likewise.
1434         * lib/unistr/u16-move.c: Likewise.
1435         * lib/unistr/u16-next.c: Likewise.
1436         * lib/unistr/u16-prev.c: Likewise.
1437         * lib/unistr/u16-set.c: Likewise.
1438         * lib/unistr/u16-startswith.c: Likewise.
1439         * lib/unistr/u16-stpcpy.c: Likewise.
1440         * lib/unistr/u16-stpncpy.c: Likewise.
1441         * lib/unistr/u16-strcat.c: Likewise.
1442         * lib/unistr/u16-strchr.c: Likewise.
1443         * lib/unistr/u16-strcmp.c: Likewise.
1444         * lib/unistr/u16-strcpy.c: Likewise.
1445         * lib/unistr/u16-strcspn.c: Likewise.
1446         * lib/unistr/u16-strdup.c: Likewise.
1447         * lib/unistr/u16-strlen.c: Likewise.
1448         * lib/unistr/u16-strmblen.c: Likewise.
1449         * lib/unistr/u16-strmbtouc.c: Likewise.
1450         * lib/unistr/u16-strncat.c: Likewise.
1451         * lib/unistr/u16-strncmp.c: Likewise.
1452         * lib/unistr/u16-strncpy.c: Likewise.
1453         * lib/unistr/u16-strnlen.c: Likewise.
1454         * lib/unistr/u16-strpbrk.c: Likewise.
1455         * lib/unistr/u16-strrchr.c: Likewise.
1456         * lib/unistr/u16-strspn.c: Likewise.
1457         * lib/unistr/u16-strstr.c: Likewise.
1458         * lib/unistr/u16-strtok.c: Likewise.
1459         * lib/unistr/u16-to-u32.c: Likewise.
1460         * lib/unistr/u16-to-u8.c: Likewise.
1461         * lib/unistr/u16-uctomb-aux.c: Likewise.
1462         * lib/unistr/u16-uctomb.c: Likewise.
1463         * lib/unistr/u32-check.c: Likewise.
1464         * lib/unistr/u32-chr.c: Likewise.
1465         * lib/unistr/u32-cmp.c: Likewise.
1466         * lib/unistr/u32-cpy-alloc.c: Likewise.
1467         * lib/unistr/u32-cpy.c: Likewise.
1468         * lib/unistr/u32-endswith.c: Likewise.
1469         * lib/unistr/u32-mblen.c: Likewise.
1470         * lib/unistr/u32-mbsnlen.c: Likewise.
1471         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
1472         * lib/unistr/u32-mbtouc.c: Likewise.
1473         * lib/unistr/u32-mbtoucr.c: Likewise.
1474         * lib/unistr/u32-move.c: Likewise.
1475         * lib/unistr/u32-next.c: Likewise.
1476         * lib/unistr/u32-prev.c: Likewise.
1477         * lib/unistr/u32-set.c: Likewise.
1478         * lib/unistr/u32-startswith.c: Likewise.
1479         * lib/unistr/u32-stpcpy.c: Likewise.
1480         * lib/unistr/u32-stpncpy.c: Likewise.
1481         * lib/unistr/u32-strcat.c: Likewise.
1482         * lib/unistr/u32-strchr.c: Likewise.
1483         * lib/unistr/u32-strcmp.c: Likewise.
1484         * lib/unistr/u32-strcpy.c: Likewise.
1485         * lib/unistr/u32-strcspn.c: Likewise.
1486         * lib/unistr/u32-strdup.c: Likewise.
1487         * lib/unistr/u32-strlen.c: Likewise.
1488         * lib/unistr/u32-strmblen.c: Likewise.
1489         * lib/unistr/u32-strmbtouc.c: Likewise.
1490         * lib/unistr/u32-strncat.c: Likewise.
1491         * lib/unistr/u32-strncmp.c: Likewise.
1492         * lib/unistr/u32-strncpy.c: Likewise.
1493         * lib/unistr/u32-strnlen.c: Likewise.
1494         * lib/unistr/u32-strpbrk.c: Likewise.
1495         * lib/unistr/u32-strrchr.c: Likewise.
1496         * lib/unistr/u32-strspn.c: Likewise.
1497         * lib/unistr/u32-strstr.c: Likewise.
1498         * lib/unistr/u32-strtok.c: Likewise.
1499         * lib/unistr/u32-to-u16.c: Likewise.
1500         * lib/unistr/u32-to-u8.c: Likewise.
1501         * lib/unistr/u32-uctomb.c: Likewise.
1502         * lib/unistr/u8-check.c: Likewise.
1503         * lib/unistr/u8-chr.c: Likewise.
1504         * lib/unistr/u8-cmp.c: Likewise.
1505         * lib/unistr/u8-cpy-alloc.c: Likewise.
1506         * lib/unistr/u8-cpy.c: Likewise.
1507         * lib/unistr/u8-endswith.c: Likewise.
1508         * lib/unistr/u8-mblen.c: Likewise.
1509         * lib/unistr/u8-mbsnlen.c: Likewise.
1510         * lib/unistr/u8-mbtouc-aux.c: Likewise.
1511         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
1512         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
1513         * lib/unistr/u8-mbtouc.c: Likewise.
1514         * lib/unistr/u8-mbtoucr.c: Likewise.
1515         * lib/unistr/u8-move.c: Likewise.
1516         * lib/unistr/u8-next.c: Likewise.
1517         * lib/unistr/u8-prev.c: Likewise.
1518         * lib/unistr/u8-set.c: Likewise.
1519         * lib/unistr/u8-startswith.c: Likewise.
1520         * lib/unistr/u8-stpcpy.c: Likewise.
1521         * lib/unistr/u8-stpncpy.c: Likewise.
1522         * lib/unistr/u8-strcat.c: Likewise.
1523         * lib/unistr/u8-strchr.c: Likewise.
1524         * lib/unistr/u8-strcmp.c: Likewise.
1525         * lib/unistr/u8-strcpy.c: Likewise.
1526         * lib/unistr/u8-strcspn.c: Likewise.
1527         * lib/unistr/u8-strdup.c: Likewise.
1528         * lib/unistr/u8-strlen.c: Likewise.
1529         * lib/unistr/u8-strmblen.c: Likewise.
1530         * lib/unistr/u8-strmbtouc.c: Likewise.
1531         * lib/unistr/u8-strncat.c: Likewise.
1532         * lib/unistr/u8-strncmp.c: Likewise.
1533         * lib/unistr/u8-strncpy.c: Likewise.
1534         * lib/unistr/u8-strnlen.c: Likewise.
1535         * lib/unistr/u8-strpbrk.c: Likewise.
1536         * lib/unistr/u8-strrchr.c: Likewise.
1537         * lib/unistr/u8-strspn.c: Likewise.
1538         * lib/unistr/u8-strstr.c: Likewise.
1539         * lib/unistr/u8-strtok.c: Likewise.
1540         * lib/unistr/u8-to-u16.c: Likewise.
1541         * lib/unistr/u8-to-u32.c: Likewise.
1542         * lib/unistr/u8-uctomb-aux.c: Likewise.
1543         * lib/unistr/u8-uctomb.c: Likewise.
1544         * lib/unitypes.h: Likewise.
1545         * lib/uniwidth.h: Likewise.
1546         * lib/uniwidth/cjk.h: Likewise.
1547         * lib/uniwidth/u16-strwidth.c: Likewise.
1548         * lib/uniwidth/u16-width.c: Likewise.
1549         * lib/uniwidth/u32-strwidth.c: Likewise.
1550         * lib/uniwidth/u32-width.c: Likewise.
1551         * lib/uniwidth/u8-strwidth.c: Likewise.
1552         * lib/uniwidth/u8-width.c: Likewise.
1553         * lib/uniwidth/width.c: Likewise.
1554
1555 2007-10-07  Bruno Haible  <bruno@clisp.org>
1556
1557         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
1558         The file is still under LGPL (see modules/inttypes).
1559
1560 2007-10-06  Bruno Haible  <bruno@clisp.org>
1561
1562         * modules/trunc (Dependencies): Add 'extensions'.
1563         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
1564         Reported by Ben Pfaff <blp@gnu.org>.
1565
1566 2007-10-06  Bruno Haible  <bruno@clisp.org>
1567
1568         * modules/freopen-tests: New file.
1569         * tests/test-freopen.c: New file.
1570
1571         * modules/fopen-tests: New file.
1572         * tests/test-fopen.c: New file.
1573
1574         * modules/fopen: New file.
1575         * lib/fopen.c: New file.
1576         * m4/fopen.m4: New file.
1577         * modules/freopen: New file.
1578         * lib/freopen.c: New file.
1579         * m4/freopen.m4: New file.
1580         * lib/stdio.in.h (fopen, freopen): New declarations.
1581         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
1582         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
1583         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
1584         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
1585         * doc/functions/fopen.texi: Mention the 'fopen' module.
1586         * doc/functions/freopen.texi: Mention the 'freopen' module.
1587
1588 2007-10-06  Bruno Haible  <bruno@clisp.org>
1589
1590         * modules/open-tests: New file.
1591         * tests/test-open.c: New file.
1592
1593         * modules/open: New file.
1594         * lib/open.c: New file.
1595         * m4/open.m4: New file.
1596         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
1597         lib/open.c does.
1598         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
1599         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
1600         macros.
1601         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
1602         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
1603         REPLACE_OPEN.
1604         * doc/functions/open.texi: Mention the 'open' module.
1605
1606 2007-10-04  Bruno Haible  <bruno@clisp.org>
1607
1608         * modules/ceill-tests: New file.
1609         * tests/test-ceill.c: New file.
1610
1611         * modules/ceill: New file.
1612         * lib/ceill.c: Replace entire file.
1613         * m4/ceill.m4: New file.
1614         * lib/math.in.h (ceill): Replace declaration.
1615         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
1616         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
1617         * doc/functions/ceill.texi: Mention the 'ceill' module.
1618         * modules/mathl (Files): Remove lib/ceill.c.
1619         (Depends-on): Add ceill.
1620
1621 2007-10-04  Bruno Haible  <bruno@clisp.org>
1622
1623         * modules/ceilf-tests: New file.
1624         * tests/test-ceilf.c: New file.
1625
1626         * modules/ceilf: New file.
1627         * lib/ceil.c: New file.
1628         * lib/ceilf.c: New file.
1629         * m4/ceilf.m4: New file.
1630         * lib/math.in.h (ceilf): New declaration.
1631         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
1632         HAVE_DECL_CEILF.
1633         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
1634         HAVE_DECL_CEILF.
1635         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
1636
1637 2007-10-04  Bruno Haible  <bruno@clisp.org>
1638
1639         * modules/floorl-tests: New file.
1640         * tests/test-floorl.c: New file.
1641
1642         * modules/floorl: New file.
1643         * lib/floorl.c: Replace entire file.
1644         * m4/floorl.m4: New file.
1645         * lib/math.in.h (floorl): Replace declaration.
1646         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
1647         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
1648         * doc/functions/floorl.texi: Mention the 'floorl' module.
1649         * modules/mathl (Files): Remove lib/floorl.c.
1650         (Depends-on): Add floorl.
1651
1652 2007-10-04  Bruno Haible  <bruno@clisp.org>
1653
1654         * modules/floorf-tests: New file.
1655         * tests/test-floorf.c: New file.
1656
1657         * modules/floorf: New file.
1658         * lib/floor.c: New file.
1659         * lib/floorf.c: New file.
1660         * m4/floorf.m4: New file.
1661         * lib/math.in.h (floorf): New declaration.
1662         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
1663         HAVE_DECL_FLOORF.
1664         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
1665         HAVE_DECL_FLOORF.
1666         * doc/functions/floorf.texi: Mention the 'floorf' module.
1667
1668 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
1669             Bruno Haible  <bruno@clisp.org>
1670
1671         Advertise for the Git server instead of the CVS server.
1672         * doc/gnulib-intro.texi (Steady Development): Mention the Git
1673         repository instead of the CVS one.
1674         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
1675         about all VCS systems generically.
1676         * doc/gnulib.texi (Introduction): Capitalize `Git'.
1677
1678 2007-10-04  Bruno Haible  <bruno@clisp.org>
1679
1680         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
1681         means.
1682         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
1683
1684 2007-10-04  Bruno Haible  <bruno@clisp.org>
1685
1686         * modules/truncl-tests: New file.
1687         * tests/test-truncl.c: New file.
1688
1689         * modules/truncl: New file.
1690         * lib/truncl.c: New file.
1691         * m4/truncl.m4: New file.
1692         * lib/math.in.h (truncl): New declaration.
1693         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
1694         HAVE_DECL_TRUNCL.
1695         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
1696         HAVE_DECL_TRUNCL.
1697         * doc/functions/truncl.texi: Mention the 'truncl' module.
1698
1699 2007-10-04  Bruno Haible  <bruno@clisp.org>
1700
1701         * modules/truncf-tests: New file.
1702         * tests/test-truncf.c: New file.
1703
1704         * modules/truncf: New file.
1705         * lib/trunc.c: Make paramerizable through USE_* macros.
1706         * lib/truncf.c: New file.
1707         * m4/truncf.m4: New file.
1708         * lib/math.in.h (truncf): New declaration.
1709         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
1710         HAVE_DECL_TRUNCF.
1711         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
1712         HAVE_DECL_TRUNCF.
1713         * doc/functions/truncf.texi: Mention the 'truncf' module.
1714
1715 2007-10-03  Bruno Haible  <bruno@clisp.org>
1716
1717         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
1718         augmentation also for tests modules.
1719         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
1720         * modules/atexit-tests (Makefile.am): Likewise.
1721         * modules/binary-io-tests (Makefile.am): Likewise.
1722         * modules/c-strcase-tests (Makefile.am): Likewise.
1723         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
1724         * modules/canonicalize-tests (Makefile.am): Likewise.
1725         * modules/closein-tests (Makefile.am): Likewise.
1726         * modules/fprintf-posix-tests (Makefile.am): Likewise.
1727         * modules/freadahead-tests (Makefile.am): Likewise.
1728         * modules/fseek-tests (Makefile.am): Likewise.
1729         * modules/fseeko-tests (Makefile.am): Likewise.
1730         * modules/ftell-tests (Makefile.am): Likewise.
1731         * modules/ftello-tests (Makefile.am): Likewise.
1732         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
1733         * modules/isnanl-tests (Makefile.am): Likewise.
1734         * modules/lseek-tests (Makefile.am): Likewise.
1735         * modules/mbscasecmp-tests (Makefile.am): Likewise.
1736         * modules/mbscasestr-tests (Makefile.am): Likewise.
1737         * modules/mbschr-tests (Makefile.am): Likewise.
1738         * modules/mbscspn-tests (Makefile.am): Likewise.
1739         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
1740         * modules/mbspbrk-tests (Makefile.am): Likewise.
1741         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
1742         * modules/mbsrchr-tests (Makefile.am): Likewise.
1743         * modules/mbsspn-tests (Makefile.am): Likewise.
1744         * modules/mbsstr-tests (Makefile.am): Likewise.
1745         * modules/printf-posix-tests (Makefile.am): Likewise.
1746         * modules/snprintf-posix-tests (Makefile.am): Likewise.
1747         * modules/sprintf-posix-tests (Makefile.am): Likewise.
1748         * modules/tsearch-tests (Makefile.am): Likewise.
1749         * modules/uniname/uniname-tests (Makefile.am): Likewise.
1750         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
1751         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
1752         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
1753         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
1754         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
1755         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
1756         * modules/vprintf-posix-tests (Makefile.am): Likewise.
1757         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
1758         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
1759         * modules/xstrtoimax-tests (Makefile.am): Likewise.
1760         * modules/xstrtol-tests (Makefile.am): Likewise.
1761         * modules/xstrtoumax-tests (Makefile.am): Likewise.
1762         * modules/yesno-tests (Makefile.am): Likewise.
1763
1764 2007-10-03  Bruno Haible  <bruno@clisp.org>
1765
1766         * modules/trunc-tests: New file.
1767         * tests/test-trunc.c: New file.
1768
1769         * modules/trunc: New file.
1770         * lib/trunc.c: New file.
1771         * m4/trunc.m4: New file.
1772         * lib/math.in.h (trunc): New declaration.
1773         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
1774         HAVE_DECL_TRUNC.
1775         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
1776         HAVE_DECL_TRUNC.
1777         * doc/functions/trunc.texi: Mention the 'trunc' module.
1778
1779 2007-10-03  Bruno Haible  <bruno@clisp.org>
1780
1781         * tests/test-fpending.c: New file, mostly copied
1782         from coreutils/lib/t-fpending.c.
1783         * modules/fpending-tests: New file.
1784
1785 2007-10-03  Bruno Haible  <bruno@clisp.org>
1786
1787         Port the stdio extensions to QNX (untested).
1788         * lib/fseterr.c (fseterr): Add support for QNX.
1789         * lib/fbufmode.c (fbufmode): Likewise.
1790         * lib/freadable.c (freadable): Likewise.
1791         * lib/fwritable.c (fwritable): Likewise.
1792         * lib/freading.c (freading): Likewise.
1793         * lib/fwriting.c (fwriting): Likewise.
1794         * lib/freadahead.c (freadahed): Likewise.
1795         * lib/fpurge.c (fpurge): Likewise.
1796         * lib/fseeko.c (rpl_fseeko): Likewise.
1797
1798 2007-10-03  Bruno Haible  <bruno@clisp.org>
1799             Jim Meyering  <jim@meyering.net>
1800             Eric Blake  <ebb9@byu.net>
1801
1802         * doc/relocatable.texi: Use @command instead of @program.
1803
1804 2007-10-02  Jim Meyering  <jim@meyering.net>
1805
1806         Perform one more "_.h" -> ".in.h" substitution.
1807         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
1808         instead of unistd_.h here, too.
1809
1810 2007-10-01  Bruno Haible  <bruno@clisp.org>
1811
1812         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
1813         Needed for the alloca-opt module.
1814
1815 2007-09-30  Bruno Haible  <bruno@clisp.org>
1816
1817         * lib/alloca.in.h: Renamed from lib/alloca_.h.
1818         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
1819         alloca_.h.
1820         * lib/argz.in.h: Renamed from lib/argz_.h.
1821         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
1822         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
1823         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
1824         byteswap_.h.
1825         * lib/dirent.in.h: Renamed from lib/dirent_.h.
1826         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
1827         dirent_.h.
1828         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
1829         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
1830         fcntl_.h.
1831         * lib/float.in.h: Renamed from lib/float_.h.
1832         * modules/float (Files, Makefile.am): Use float.in.h instead of
1833         float_.h.
1834         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
1835         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
1836         fnmatch_.h.
1837         * lib/getopt.in.h: Renamed from lib/getopt_.h.
1838         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
1839         getopt_.h.
1840         * lib/glob.in.h: Renamed from lib/glob_.h.
1841         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
1842         * lib/iconv.in.h: Renamed from lib/iconv_.h.
1843         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
1844         iconv_.h.
1845         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
1846         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
1847         inttypes_.h.
1848         * lib/locale.in.h: Renamed from lib/locale_.h.
1849         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
1850         locale_.h.
1851         * lib/math.in.h: Renamed from lib/math_.h.
1852         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
1853         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
1854         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
1855         of netinet_in_.h. Add dependency.
1856         * lib/poll.in.h: Renamed from lib/poll_.h.
1857         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
1858         * lib/search.in.h: Renamed from lib/search_.h.
1859         * modules/search (Files, Makefile.am): Use search.in.h instead of
1860         search_.h.
1861         * lib/signal.in.h: Renamed from lib/signal_.h.
1862         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
1863         _signal.h.
1864         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
1865         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
1866         stdbool_.h.
1867         * lib/stdint.in.h: Renamed from lib/stdint_.h.
1868         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
1869         stdint_.h.
1870         * lib/stdio.in.h: Renamed from lib/stdio_.h.
1871         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
1872         stdio_.h.
1873         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
1874         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
1875         stdlib_.h.
1876         * lib/string.in.h: Renamed from lib/string_.h.
1877         * modules/string (Files, Makefile.am): Use string.in.h instead of
1878         string_.h.
1879         * doc/gnulib-tool.texi (Initial import): Update.
1880         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
1881         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
1882         of sys_select_.h. Add dependency.
1883         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
1884         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
1885         of sys_socket_.h.
1886         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
1887         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
1888         sys_stat_.h.
1889         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
1890         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
1891         sys_time_.h.
1892         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
1893         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
1894         sysexits_.h.
1895         * lib/time.in.h: Renamed from lib/time_.h.
1896         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
1897         * lib/unistd.in.h: Renamed from lib/unistd_.h.
1898         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
1899         unistd_.h.
1900         * lib/wchar.in.h: Renamed from lib/wchar_.h.
1901         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
1902         wchar_.h.
1903         * lib/wctype.in.h: Renamed from lib/wctype_.h.
1904         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
1905         wctype_.h.
1906         * build-aux/bootstrap (slurp): Update.
1907         * lib/.cppi-disable: Update.
1908
1909 2007-09-30  Bruno Haible  <bruno@clisp.org>
1910
1911         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
1912         Needed on BeOS.
1913
1914 2007-09-30  Bruno Haible  <bruno@clisp.org>
1915
1916         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
1917
1918 2007-09-29  Bruno Haible  <bruno@clisp.org>
1919
1920         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
1921
1922 2007-09-29  Bruno Haible  <bruno@clisp.org>
1923
1924         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
1925         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
1926         * build-aux/install-reloc: Compile also areadlink.c.
1927         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
1928
1929 2007-09-29  Bruno Haible  <bruno@clisp.org>
1930
1931         * gnulib-tool (func_emit_initmacro_done): Indentation.
1932
1933 2007-09-29  Bruno Haible  <bruno@clisp.org>
1934
1935         * README: Add CVS checkout update instructions.
1936         Info from Bob Proulx <bob@proulx.com>.
1937
1938 2007-09-28  Eric Blake  <ebb9@byu.net>
1939
1940         Provide move-if-change.
1941         * build-aux/move-if-change: New file, based on best practice
1942         rather than any canonical upstream location.
1943
1944 2007-09-28  Jim Meyering  <jim@meyering.net>
1945
1946         Fix canonicalize loop-detection corner case.
1947         Do not attempt to stat the symlink values stored via seen_triple.
1948         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
1949         on linux-2.6.18, (but not 2.6.22).
1950         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
1951         triple_compare.  The former compares dev,ino,filename, while the latter
1952         would actually stat dirname(filename) when dev and ino were equal.
1953         * lib/hash-triple.c: Install <string.h>.
1954         (STREQ): Define.
1955         (triple_compare_ino_str): New function.
1956         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
1957
1958 2007-09-28  Eric Blake  <ebb9@byu.net>
1959
1960         Enforce that AC_REPLACE_FUNCS files exist.
1961         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
1962         override check for typos.
1963
1964         Fix test-closein on Solaris 10.
1965         * tests/test-closein.c (main): Don't assume stdin can be inherited
1966         closed on all systems.
1967         * tests/test-closein.sh: Likewise.
1968         Reported by Piotr Tarnowski.
1969
1970 2007-09-28  Jim Meyering  <jim@meyering.net>
1971
1972         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
1973
1974 2007-09-27  Jim Meyering  <jim@meyering.net>
1975
1976         canonicalize: Avoid a false-positive cycle failure.
1977         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
1978         Sort.  Remove cycle-check.
1979         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
1980         not cycle-check.h.
1981         (seen_triple): New function.
1982         (canonicalize_filename_mode): Use it instead of cycle-check.
1983         * tests/test-canonicalize.c: Add a test for this bug.
1984         * tests/test-canonicalize.sh: Set up and run the test.
1985
1986         New module, file-set, from coreutils.
1987         * modules/file-set: Define it.
1988         * lib/file-set.c, lib/file-set.h: Implement.
1989
1990         New module, hash-triple, from coreutils.
1991         * modules/hash-triple: Define it.
1992         * lib/hash-triple.c, lib/hash-triple.h: Implement.
1993
1994 2007-09-25  Eric Blake  <ebb9@byu.net>
1995
1996         Fix strerror on Interix.
1997         * lib/string_.h (strerror): Declare replacement.
1998         * doc/functions/strerror.texi (strerror): Document the Interix
1999         shortcoming.
2000         * modules/string (Makefile.am): Support new hooks.
2001         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
2002         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
2003         gl_FUNC_STRERROR_SEPARATE.
2004         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
2005         * lib/strerror.c (rpl_strerror): Provide replacement.
2006         * modules/strerror (Depends-on): Add string.
2007         (configure.ac): Detect use of module.
2008         * tests/test-strerror.c: New file.
2009         * modules/strerror-tests: New test module.
2010         * modules/argp (Depends-on): Add strerror.
2011         * modules/error (Depends-on): Likewise.
2012         Reported by Martin Koeppe.
2013
2014 2007-09-24  Bruno Haible  <bruno@clisp.org>
2015
2016         * README: Update git instructions.
2017
2018 2007-09-24  Eric Blake  <ebb9@byu.net>
2019
2020         Revert fpending breakage from 2007-09-08.
2021         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
2022         __fpending.c.
2023
2024 2007-09-24  Jim Meyering  <jim@meyering.net>
2025
2026         filenamecat.c: Add a test.
2027         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
2028         showing how the function works when DIR is the empty string.
2029
2030 2007-09-21  Simon Josefsson  <simon@josefsson.org>
2031
2032         * tests/test-canonicalize.sh: Turn on executable bit.
2033
2034 2007-09-19  Eric Blake  <ebb9@byu.net>
2035
2036         * README: Update CVS instructions.
2037
2038 2007-09-18  Bruno Haible  <bruno@clisp.org>
2039
2040         * modules/areadlink: New file.
2041         * lib/areadlink.h (areadlink): New declaration.
2042         * lib/areadlink.c: New file, based on lib/xreadlink.c.
2043
2044 2007-09-17  Jim Meyering  <jim@meyering.net>
2045
2046         * lib/savewd.c (ESTALE) [!defined]: Define.
2047         Reported to be required on Interix by Martin Koeppe.
2048
2049 2007-09-17  Bruno Haible  <bruno@clisp.org>
2050
2051         * gnulib-tool (func_version): Use $version.
2052
2053 2007-09-16  Bruno Haible  <bruno@clisp.org>
2054
2055         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
2056         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
2057         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
2058         Reported by Greg Schafer <gschafer@zip.com.au>.
2059
2060 2007-09-15  Bruno Haible  <bruno@clisp.org>
2061
2062         * gnulib-tool (sed): Try a little harder to make bash understand the
2063         alias.
2064         Reported by Bruce Korb <bruce.korb@gmail.com>.
2065
2066 2007-09-13  Eric Blake  <ebb9@byu.net>
2067
2068         * ChangeLog: Remove conflict markers.
2069
2070 2007-09-13  Simon Josefsson  <simon@josefsson.org>
2071
2072         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
2073         Reported by Bruno Haible <bruno@clisp.org>.
2074
2075 2007-09-12  Bruno Haible  <bruno@clisp.org>
2076
2077         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
2078         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
2079         is not defined.
2080
2081 2007-09-12  Eric Blake  <ebb9@byu.net>
2082
2083         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
2084         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
2085         Autoconf definition.
2086         * modules/euidaccess (Depends-on): Add extensions, for
2087         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
2088         * modules/fnmatch (Depends-on): Likewise.
2089         * modules/getaddrinfo (Depends-on): Likewise.
2090         * modules/getdelim (Depends-on): Likewise.
2091         * modules/getline (Depends-on): Likewise.
2092         * modules/getsubopt (Depends-on): Likewise.
2093         * modules/gettext (Depends-on): Likewise.
2094         * modules/group-member (Depends-on): Likewise.
2095         * modules/mbchar (Depends-on): Likewise.
2096         * modules/memmem (Depends-on): Likewise.
2097         * modules/mempcpy (Depends-on): Likewise.
2098         * modules/memrchr (Depends-on): Likewise.
2099         * modules/pagealign_alloc (Depends-on): Likewise.
2100         * modules/readutmp (Depends-on): Likewise.
2101         * modules/stpcpy (Depends-on): Likewise.
2102         * modules/stpncpy (Depends-on): Likewise.
2103         * modules/strchrnul (Depends-on): Likewise.
2104         * modules/strndup (Depends-on): Likewise.
2105         * modules/strsep (Depends-on): Likewise.
2106         * modules/strverscmp (Depends-on): Likewise.
2107         * modules/vasprintf (Depends-on): Likewise.
2108         * modules/wcwidth (Depends-on): Likewise.
2109         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
2110         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
2111         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
2112         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
2113         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
2114         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2115         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
2116         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
2117         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
2118         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
2119         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
2120         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
2121         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
2122         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
2123         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
2124         * m4/readutmp.m4 (gl_READUTMP): Likewise.
2125         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
2126         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
2127         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
2128         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
2129         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
2130         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
2131         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
2132         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
2133         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
2134         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
2135         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
2136         so that lock.m4 can be used in gettext without extensions module.
2137
2138 2007-09-11  Bruno Haible  <bruno@clisp.org>
2139
2140         * m4/isc-posix.m4: Remove file.
2141         Suggested by Eric Blake.
2142
2143 2007-09-11  Eric Blake  <ebb9@byu.net>
2144
2145         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
2146
2147 2007-09-10  Bruno Haible  <bruno@clisp.org>
2148
2149         * posix-modules: Fix typo in error message.
2150         Reported by Matt <mkraai@beckman.com>.
2151
2152 2007-09-09  Bruno Haible  <bruno@clisp.org>
2153
2154         * doc/functions/getdelim.texi: Update list of platforms lacking the
2155         function.
2156         * doc/functions/getline.texi: Likewise.
2157
2158 2007-09-09  Jim Meyering  <jim@meyering.net>
2159
2160         * lib/hash.c (hash_initialize): Detect calloc failure.
2161         Reported by Bruno Haible.
2162
2163 2007-09-09  Bruno Haible  <bruno@clisp.org>
2164
2165         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
2166         malloc or realloc fails.
2167
2168 2007-09-09  Bruno Haible  <bruno@clisp.org>
2169
2170         * modules/getcwd (Depends-on): Add malloc-posix.
2171         * modules/glob (Depends-on): Likewise.
2172         * modules/putenv (Depends-on): Likewise.
2173         * modules/strdup (Depends-on): Likewise.
2174         * modules/getdelim (Depends-on): Add realloc-posix.
2175         * modules/read-file (Depends-on): Likewise.
2176
2177 2007-09-09  Bruno Haible  <bruno@clisp.org>
2178
2179         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
2180         (gl_FUNC_MALLOC_POSIX): Require it.
2181         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
2182         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
2183         * modules/realloc (Files): Add m4/malloc.m4.
2184         * modules/calloc (Files): Likewise.
2185
2186 2007-09-09  Bruno Haible  <bruno@clisp.org>
2187
2188         * modules/malloc-posix: New file.
2189         * modules/malloc (Depends-on): Add malloc-posix.
2190         * lib/malloc.c: Include errno.h.
2191         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
2192         and a POSIX-compatible malloc into a single function. Set ENOMEM
2193         when returning NULL.
2194         * m4/malloc.m4: New file.
2195         * doc/functions/malloc.texi: Mention the malloc-posix module.
2196         * lib/stdlib_.h (malloc): New declaration.
2197         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2198         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
2199         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
2200         and HAVE_MALLOC_POSIX.
2201
2202 2007-09-09  Bruno Haible  <bruno@clisp.org>
2203
2204         * modules/realloc-posix: New file.
2205         * modules/realloc (Depends-on): Add realloc-posix.
2206         * lib/realloc.c: Include errno.h.
2207         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
2208         and a POSIX-compatible realloc into a single function. Set ENOMEM
2209         when returning NULL.
2210         * m4/realloc.m4: New file.
2211         * doc/functions/realloc.texi: Mention the realloc-posix module.
2212         * lib/stdlib_.h (realloc): New declaration.
2213         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2214         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
2215         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
2216         and HAVE_REALLOC_POSIX.
2217
2218 2007-09-09  Bruno Haible  <bruno@clisp.org>
2219
2220         * modules/calloc-posix: New file.
2221         * modules/calloc (Depends-on): Add calloc-posix.
2222         * lib/calloc.c: Include errno.h.
2223         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
2224         and a POSIX-compatible calloc into a single function. Set ENOMEM
2225         when returning NULL.
2226         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
2227         * doc/functions/calloc.texi: Mention the calloc-posix module.
2228         * lib/stdlib_.h (calloc): New declaration.
2229         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
2230         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
2231         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
2232         and HAVE_CALLOC_POSIX.
2233
2234 2007-09-09  Bruno Haible  <bruno@clisp.org>
2235
2236         Allow for modules to show an arbitrary notice.
2237         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
2238         * gnulib-tool: New option --extract-notice.
2239         (func_usage): Document it.
2240         (sed_extract_prog): Update.
2241         (func_get_notice): New function.
2242         (func_modules_notice): New function.
2243         (func_import, func_create_testdir): Invoke it.
2244         Suggested by Jim Meyering.
2245
2246 2007-09-09  Bruno Haible  <bruno@clisp.org>
2247
2248         * gnulib-tool: New options --verbose, --quiet.
2249         (func_usage): Document them.
2250         (verbose): New variable.
2251         (func_execute_command): New function.
2252         (func_import): Don't show the module list and the file list if
2253         $verbose < 0.
2254         (func_create_testdir): Likewise. Use func_execute_command.
2255         (func_create_megatestdir): Use func_execute_command.
2256
2257 2007-09-08  Bruno Haible  <bruno@clisp.org>
2258
2259         * gnulib-tool (func_import): Prefer rsync over wget when available,
2260         for fetching the PO files.
2261
2262 2007-09-08  Bruno Haible  <bruno@clisp.org>
2263
2264         * posix-modules: New file. Portions copied from gnulib-tool.
2265         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
2266
2267 2007-09-08  Jim Meyering  <jim@meyering.net>
2268
2269         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
2270         * lib/fpending.h: Rename from __fpending.h.
2271         * lib/fpending.c: Rename from __fpending.c.
2272         Include "fpending.h", not "__fpending.h".
2273         * lib/__fpending.h, lib/__fpending.c: Remove files.
2274         * modules/fpending (Files): Reflect new file names.
2275         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
2276
2277 2007-09-08  Bruno Haible  <bruno@clisp.org>
2278
2279         * m4/inttypes-h.m4: Remove stub file.
2280
2281 2007-09-07  Simon Josefsson  <simon@josefsson.org>
2282
2283         * doc/headers/stdint.texi: Discuss #include_next issue.
2284
2285 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
2286
2287         * build-aux/bootstrap: Remove obsolete comment about wget --help.
2288
2289 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2290
2291         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
2292         in variable name.
2293
2294 2007-09-03  Jim Meyering  <jim@meyering.net>
2295
2296         New module: git-version-gen.
2297         * modules/git-version-gen: New file.
2298
2299         Import changes from coreutils for bootstrap script.
2300
2301         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
2302
2303         bootstrap: uses rsync to download the .po files
2304         * build-aux/bootstrap (po_download_command_format): New global.
2305         (download_po_files): Use rsync.
2306         (update_po_files): Don't remove .po files after download,
2307         so future rsync runs can take advantage of the copies.
2308
2309         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
2310
2311         Solve the unnecessary-.po-file-regeneration problem once and for all.
2312         * build-aux/bootstrap (download_po_files): New function, renamed from
2313         get_translations.  Now, downloads, but doesn't update LINGUAS.
2314         (update_po_files): New function.
2315
2316         bootstrap: Ignore more.
2317         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
2318         uniwidth to e.g., lib/.gitignore.
2319         (slurp): Handle the sys_stat_.h -> sys mapping, too.
2320
2321         * build-aux/bootstrap: New setting: vc_ignore.
2322         (insert_sorted_if_absent): Create $file if absent.
2323         Adapt to new, possibly empty, list: $vc_ignore.
2324
2325         bootstrap: generate more ignorable names
2326         * build-aux/bootstrap (slurp): When generating ignorable names,
2327         also map .sin to .sed, .gperf to .c, and .y to .c.
2328
2329 2007-09-03  Jim Meyering  <jim@meyering.net>
2330
2331         * build-aux/git-version-gen: New file, from coreutils.  For details, see
2332         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
2333
2334 2007-09-02  Bruno Haible  <bruno@clisp.org>
2335
2336         Fix mis-recognition of 'mcs' on QNX 6.
2337         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
2338         output contains the string "Mono".
2339         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
2340         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
2341
2342 2007-09-01  Bruno Haible  <bruno@clisp.org>
2343
2344         Fix collision between uniwidth/* and linebreak modules.
2345         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
2346         u32_width): Remove declarations.
2347         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
2348         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
2349         streq3, streq2, streq1, streq0): Remove functions.
2350         (STREQ): Remove macro.
2351         (is_cjk_encoding): Remove function.
2352         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
2353         (uc_width, u8_width, u16_width, u32_width): Remove functions.
2354         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
2355         * NEWS: Document the change.
2356
2357 2007-09-01  Bruno Haible  <bruno@clisp.org>
2358
2359         * lib/streq.h: Add double-inclusion guard.
2360
2361 2007-09-01  Karl Berry  <karl@gnu.org>
2362
2363         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
2364
2365 2007-08-28  Jim Meyering  <jim@meyering.net>
2366
2367         Rename mreadlink_with_size to areadlink_with_size.
2368         * NEWS: Document the change.
2369         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
2370         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
2371         * lib/mreadlink.h: Rename this to...
2372         * lib/areadlink.h: ...this.
2373         * modules/mreadlink-with-size: Rename this to...
2374         * modules/areadlink-with-size: ...this.
2375         * lib/canonicalize.c: Reflect the renaming.
2376         * modules/canonicalize: Likewise.
2377
2378 2007-08-26  Bruno Haible  <bruno@clisp.org>
2379
2380         * gnulib-tool (func_import): When deciding which files to remove,
2381         consider also dangling symbolic links.
2382         Reported by Eric Blake.
2383
2384 2007-08-26  Bruno Haible  <bruno@clisp.org>
2385
2386         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
2387
2388 2007-08-23  Simon Josefsson  <simon@josefsson.org>
2389
2390         * lib/readline.c: Don't include getline.h, the prototype is now
2391         found in stdio.h.
2392
2393 2007-08-23  Jim Meyering  <jim@meyering.net>
2394
2395         Getdelim touchup.
2396         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
2397         around the funlockfile call, since funlockfile never sets errno.
2398         Don't set errno upon failed realloc.
2399
2400 2007-08-22  Eric Blake  <ebb9@byu.net>
2401
2402         Getline touchups.
2403         * lib/getdelim.c (getdelim): Revert regression that required *n to
2404         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
2405         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
2406         getdelim, rather than whether implementation is missing.
2407         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
2408         * lib/stdio_.h (getline): Also declare if replacement is
2409         required.
2410         * doc/functions/getdelim.texi: New file.
2411         * doc/functions/getline.texi: Likewise.
2412         * doc/gnulib.texi (Function Substitutes): Add new files.
2413         Reported by Bruno Haible.
2414
2415 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
2416
2417         * users.txt: Add Guile.
2418
2419 2007-08-22  Eric Blake  <ebb9@byu.net>
2420
2421         * tests/test-getdelim.c (main): Use remove, not unlink.
2422         * tests/test-getline.c (main): Likewise.
2423
2424         Move getline and getdelim into stdio.h, per POSIX 200x.
2425         * modules/getline (Files): Remove getline.h.
2426         (Depends-on): Add stdio.
2427         (configure.ac): Add module indicator.
2428         * modules/getdelim (Files): Remove getdelim.h.
2429         (Depends-on): Add stdio.
2430         (configure.ac): Add module indicator.
2431         * modules/stdio (Makefile.am): Work with new indicators.
2432         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
2433         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
2434         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
2435         * lib/getdelim.h: Delete.
2436         * lib/getline.h: Delete.
2437         * lib/stdio_.h (getdelim, getline): Declare.
2438         * modules/getdelim-tests: New module.
2439         * modules/getline-tests: Likewise.
2440         * tests/test-getdelim.c: New file.
2441         * tests/test-getline.c: Likewise.
2442         * NEWS: Document the change.
2443         * lib/getline.c: Update choice of header.
2444         * lib/csharpcomp.c: Likewise.
2445         * lib/getpass.c: Likewise.
2446         * lib/javacomp.c: Likewise.
2447         * lib/javaversion.c: Likewise.
2448         * lib/yesno.c: Likewise.
2449         * lib/getdelim.c: Likewise.
2450         (getdelim): Set errno on failure, and avoid memory leak.
2451
2452 2007-08-19  Bruno Haible  <bruno@clisp.org>
2453
2454         * modules/closein (Depends-on): Add freadahead.
2455         * lib/closein.c: Include freadahead.h.
2456         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
2457         is zero.
2458
2459 2007-08-19  Bruno Haible  <bruno@clisp.org>
2460
2461         * modules/freadahead-tests: New file.
2462         * tests/test-freadahead.sh: New file.
2463         * tests/test-freadahead.c: New file.
2464
2465         * modules/freadahead: New file.
2466         * lib/freadahead.h: New file.
2467         * lib/freadahead.c: New file.
2468         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
2469         fbufmode, fpurge, freadable, fwritable.
2470
2471 2007-08-19  Eric Blake  <ebb9@byu.net>
2472
2473         Test yesno in combination with closein.
2474         * lib/yesno.c (yesno): Document use of stdin.
2475         * modules/yesno-tests (Files): New module.
2476         * tests/test-yesno.c (main): New file.
2477         * tests/test-yesno.sh: Likewise.
2478
2479 2007-08-19  Bruno Haible  <bruno@clisp.org>
2480
2481         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
2482         * lib/fseeko.c (rpl_fseeko): Likewise.
2483         * lib/fseterr.c (fseterr): Likewise.
2484
2485 2007-08-19  Bruno Haible  <bruno@clisp.org>
2486
2487         * tests/test-lseek.c (main): Disable a test for BeOS.
2488         * doc/functions/lseek.texi: Document the BeOS bug.
2489
2490 2007-08-19  Bruno Haible  <bruno@clisp.org>
2491             Eric Blake  <ebb9@byu.net>
2492
2493         * lib/lseek.c: Include <sys/stat.h>.
2494         (rpl_lseek): Add workaround code also for Unix platforms.
2495         Needed for BeOS.
2496         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
2497         * doc/functions/lseek.texi: Document BeOS definiency.
2498
2499 2007-08-18  Bruno Haible  <bruno@clisp.org>
2500
2501         * modules/fstrcmp-tests: New file.
2502         * tests/test-fstrcmp.c: New file.
2503
2504 2007-08-18  Bruno Haible  <bruno@clisp.org>
2505
2506         * modules/fstrcmp: New file, from GNU gettext with modifications.
2507         * lib/fstrcmp.h: New file, from GNU gettext.
2508         * lib/fstrcmp.c: New file, from GNU gettext.
2509         * MODULES.html.sh (String handling): Add fstrcmp.
2510
2511 2007-08-18  Bruno Haible  <bruno@clisp.org>
2512
2513         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
2514         'bool'.
2515         (diag, compareseq): Remove const from the ctxt argument.
2516         (USE_HEURISTIC): Undefine at the end.
2517
2518 2007-08-18  Jim Meyering  <jim@meyering.net>
2519
2520         New file: lib/idcache.h
2521         * NEWS: Mention the addition.
2522         * modules/idcache (Files): Add lib/idcache.h
2523         * lib/idcache.c: Include "idcache.h".
2524         Don't include <sys/types.h>.
2525         Add a FIXME comment.
2526         Move file-scoped "static" declarations to the top.
2527         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
2528
2529 2007-08-17  Bruno Haible  <bruno@clisp.org>
2530         and Paul Eggert  <eggert@cs.ucla.edu>
2531
2532         * MODULES.html.sh: Add diffseq.
2533         * modules/diffseq: New file.
2534         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
2535         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
2536
2537 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
2538
2539         Import changes from coreutils for bootstrap script.
2540
2541         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
2542
2543         * build-aux/bootstrap (slurp): Work even in environments where
2544         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
2545         current code does not slurp files whose names start with ".", and
2546         this looks like it might be a troublesome area.
2547
2548         2007-07-11  Jim Meyering  <jim@meyering.net>
2549
2550         If there's a GPL vN copyright comment, require that N == 3.
2551
2552         2007-07-08  Jim Meyering  <jim@meyering.net>
2553
2554         Run the coreutils-specific code only if tests/Makefile.am.in exists.
2555         * build-aux/bootstrap (mam_template): Move definition out of loop.
2556
2557         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
2558
2559         * build-aux/bootstrap (symlink_to_dir): Rename function from
2560         symlink_to_gnulib.  Add a directory parameter.  Update all
2561         callers.
2562         (cp_mark_as_generated): Also check for -- and link to -- files in
2563         gl/.
2564
2565         2007-07-08  Jim Meyering  <jim@meyering.net>
2566
2567         Adapt to deeper hierarchy in gnulib.
2568         * build-aux/bootstrap (symlink_to_dir): If the destination
2569         directory doesn't exist, create it. This is required at least for
2570         "lib/uniwidth/cjk.h".
2571
2572         2007-05-15  Jim Meyering  <jim@meyering.net>
2573
2574         * build-aux/bootstrap: Now that generated Makefile.am files
2575         are no longer under version control, they must be created at
2576         bootstrap time.
2577
2578 2007-08-14  Ben Pfaff  <blp@gnu.org>
2579
2580         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
2581
2582 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
2583
2584         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
2585         given the changes below.
2586         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
2587         even on hosts that have padding bits beyond the supported 64.
2588
2589 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
2590
2591         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
2592         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
2593         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
2594         depends on it.
2595         (xstrtol_error): Remove.
2596         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
2597         but with a different signature.
2598         (ATTRIBUTE_NORETURN, __attribute__): New macros.
2599         * lib/xstrtol-error.c: Include exitfail.h.
2600         (xstrtol_fatal): New function, with a different signature from the
2601         old xstrtol_error, so that the caller need not worry about passing
2602         in an exit status, or about storage management of the option argument.
2603         (xstrtol_error): Now a static function.  Redo signature to
2604         implement xstrtol_fatal.  Output the correct number of hyphens in
2605         front of the option so that the caller need not worry about
2606         storage management.
2607         (N_): New macro.
2608         (_): Remove; not used now.
2609         * modules/xstrtol: Depend on getopt.
2610         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
2611         of old STRTOL_FATAL_ERROR macro.
2612         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
2613         of test program.
2614         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
2615         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
2616
2617 2007-08-08  Eric Blake  <ebb9@byu.net>
2618
2619         * lib/xstrtol-error.c: Add missing include.
2620
2621         Move xstrtol messages into gnulib domain, when --pobase is used.
2622         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
2623         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
2624         * modules/xstrtol (Files): Distribute new file.
2625         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
2626         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
2627         * tests/test-xstrtol.c: ...into new file.
2628         * tests/test-xstrtoul.c: Also test xstrtoul.
2629         * tests/test-xstrtoimax.c: Also test xstrtoimax.
2630         * tests/test-xstrtoumax.c: Also test xstrtoumax.
2631         * tests/test-xstrtol.sh: Drive the tests.
2632         * tests/test-xstrtoimax.sh: Likewise.
2633         * tests/test-xstrtoumax.sh: Likewise.
2634         * modules/xstrtol-tests: New module.
2635         * modules/xstrtoimax-tests: Likewise.
2636         * modules/xstrtoumax-tests: Likewise.
2637
2638 2007-08-08  Jim Meyering  <jim@meyering.net>
2639
2640         New function: mfile_name_concat.
2641         * lib/filenamecat.c (mfile_name_concat): New function, just like
2642         file_name_concat, but return NULL upon failure rather than exiting
2643         with a diagnostic.
2644         * lib/filenamecat.h: Declare it.
2645
2646 2007-08-07  Bruno Haible  <bruno@clisp.org>
2647
2648         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
2649         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
2650         warning from gcc.
2651         Reported by Eric Blake.
2652
2653 2007-08-07  Simon Josefsson  <simon@josefsson.org>
2654
2655         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
2656         * modules/crypto/arcfour (License): Likewise.
2657         * modules/crypto/des-tests (License): Likewise.
2658         * modules/crypto/gc-arctwo-tests (License): Likewise.
2659         * modules/crypto/gc-des-tests (License): Likewise.
2660         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
2661         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
2662         * modules/crypto/gc-md2-tests (License): Likewise.
2663         * modules/crypto/gc-md4-tests (License): Likewise.
2664         * modules/crypto/gc-md5-tests (License): Likewise.
2665         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
2666         * modules/crypto/gc-rijndael-tests (License): Likewise.
2667         * modules/crypto/gc-sha1-tests (License): Likewise.
2668         * modules/crypto/gc-tests (License): Likewise.
2669         * modules/crypto/hmac-md5 (License): Likewise.
2670         * modules/crypto/hmac-sha1 (License): Likewise.
2671         * modules/crypto/md2-tests (License): Likewise.
2672         * modules/crypto/md4-tests (License): Likewise.
2673         * modules/crypto/md5 (License): Likewise.
2674         * modules/crypto/rijndael (License): Likewise.
2675         * modules/crypto/sha1 (License): Likewise.
2676         * modules/memxor (License): Likewise.
2677
2678 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
2679         and Bruno Haible  <bruno@clisp.org>
2680
2681         * NEWS: Describe interface changes to human, xstrtol.
2682         * lib/human.h: Include <xstrtol.h>.
2683         (human_options): Return enum strtol_error, not int.  Remove
2684         bool arg; take int * instead.
2685         * lib/human.c: Don't include "gettext.h".
2686         (_): Remove; no longer used.
2687         Don't include <xstrtol.h>, since human.h does it.
2688         (human_options): Adjust to abovementioned interface changes.
2689         Do not report error to stderr; that's now the caller's
2690         responsibility.
2691         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
2692         interface change.
2693         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
2694         Str, Argument_type_string.  All uses changed.  Put " argument"
2695         in diagnostics to make them clearer.  Change wording of suffix
2696         message for clarity.
2697         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
2698         Argument_type_string.
2699         (STRTOL_FATAL_WARN): Remove; no longer used.
2700         * modules/human (Depends-on): Remove gettext-h.
2701
2702 2007-08-06  Simon Josefsson  <simon@josefsson.org>
2703
2704         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
2705
2706 2007-07-31  Bruno Haible  <bruno@clisp.org>
2707
2708         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
2709         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
2710         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
2711
2712 2007-07-31  Bruno Haible  <bruno@clisp.org>
2713
2714         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
2715         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
2716
2717 2007-07-30  Bruno Haible  <bruno@clisp.org>
2718
2719         * modules/base64 (License): Use the synonymous term "LGPLv2+".
2720         * modules/c-ctype (License): Likewise.
2721         * modules/c-strcase (License): Likewise.
2722         * modules/check-version (License): Likewise.
2723         * modules/iconv (License): Likewise.
2724         * modules/iconv_open (License): Likewise.
2725         * modules/read-file (License): Likewise.
2726         * modules/striconv (License): Likewise.
2727         * modules/strverscmp (License): Likewise.
2728         * modules/vasprintf (License): Likewise.
2729         * modules/crypto/des (License): Likewise.
2730         * modules/crypto/gc (License): Likewise.
2731         * modules/crypto/gc-arcfour (License): Likewise.
2732         * modules/crypto/gc-arctwo (License): Likewise.
2733         * modules/crypto/gc-des (License): Likewise.
2734         * modules/crypto/gc-hmac-md5 (License): Likewise.
2735         * modules/crypto/gc-hmac-sha1 (License): Likewise.
2736         * modules/crypto/gc-md2 (License): Likewise.
2737         * modules/crypto/gc-md4 (License): Likewise.
2738         * modules/crypto/gc-md5 (License): Likewise.
2739         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
2740         * modules/crypto/gc-random (License): Likewise.
2741         * modules/crypto/gc-rijndael (License): Likewise.
2742         * modules/crypto/gc-sha1 (License): Likewise.
2743         * modules/crypto/md2 (License): Likewise.
2744         * modules/crypto/md4 (License): Likewise.
2745
2746 2007-07-30  Jim Meyering  <jim@meyering.net>
2747
2748         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
2749         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
2750         it has valid stat data.  This bug would cause du not to count the
2751         sizes of inaccessible directories.
2752         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
2753         in <http://bugzilla.redhat.com/250077>.
2754
2755 2007-07-25  Peter O'Gorman  <peter@pogma.com>
2756             Bruno Haible  <bruno@clisp.org>
2757
2758         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
2759         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
2760         #include_next, gives a diagnostic about it, but reports no error in
2761         the exit code.
2762         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
2763
2764 2007-07-24  Ben Pfaff  <blp@gnu.org>
2765
2766         Improve name: "count-one-bits" is better than "popcount".
2767         * MODULES.html.sh: Update name.
2768         * lib/popcount.h: Renamed lib/count-one-bits.h.
2769         (popcount): Renamed count_one_bits.
2770         (popcountl): Renamed count_one_bits_l.
2771         (popcountll): Renamed count_one_bits_ll.
2772         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
2773         * modules/popcount: Renamed module/count-one-bits.
2774         * modules/popcount-tests: Renamed module/count-one-bits-tests.
2775         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
2776
2777 2007-07-23  Ben Pfaff  <blp@gnu.org>
2778
2779         * lib/popcount.h (popcount32): Reduce size of constants, to allow
2780         better code generation, and add U to large constants to avoid
2781         warnings, in non-GCC case.
2782         Suggested by Bruno Haible.
2783
2784 2007-07-23  Ben Pfaff  <blp@gnu.org>
2785
2786         * lib/popcount.h: Use verify_true instead of if...abort.
2787         * modules/popcount: Depend on verify module.
2788         Suggested by Jim Meyering.
2789
2790 2007-07-23  Bruno Haible  <bruno@clisp.org>
2791
2792         * gnulib-tool (func_import): Create a .cvsignore file also when the
2793         directory is not yet in CVS but the toplevel directory is. When
2794         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
2795         Reported by Karl Berry.
2796
2797 2007-07-22  Ben Pfaff  <blp@gnu.org>
2798
2799         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
2800         case.
2801         Suggested by Eric Blake.
2802
2803 2007-07-22  Ben Pfaff  <blp@gnu.org>
2804
2805         New module: popcount.
2806         * MODULES.html.sh: Add popcount.
2807         * modules/popcount: New file.
2808         * modules/popcount-tests: New file.
2809         * tests/test-popcount.c: New file.
2810         * lib/popcount.h: New file.
2811         * m4/popcount.m4: New file.
2812
2813 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
2814
2815         * build-aux/announce-gen: Update to GPLv3.
2816
2817         * build-aux/config.guess: Update from config.
2818
2819 2007-07-21  Bruno Haible  <bruno@clisp.org>
2820
2821         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
2822         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
2823
2824 2007-07-20  Jim Meyering  <jim@meyering.net>
2825
2826         * check-module: Diagnose a self-dependency.
2827
2828 2007-07-19  Bruno Haible  <bruno@clisp.org>
2829
2830         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
2831         empty.
2832         Reported by Eric Blake.
2833
2834 2007-07-18  Bruno Haible  <bruno@clisp.org>
2835
2836         * gnulib-tool: New options --po-base, --po-domain.
2837         (func_usage): Document them.
2838         (pobase, po_domain): New variables.
2839         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
2840         DEFAULT_TEXT_DOMAIN.
2841         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
2842         (func_import): Consider pobase and po_domain. Create a po/ directory.
2843         (func_create_testdir): Set pobase and po_domain to empty.
2844         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
2845         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
2846
2847 2007-07-18  Bruno Haible  <bruno@clisp.org>
2848
2849         * gnulib-tool (func_get_automake_snippet): Synthesize also an
2850         EXTRA_DIST augmentation for files in build-aux/.
2851
2852 2007-07-16  Bruno Haible  <bruno@clisp.org>
2853
2854         * modules/lseek (License): Use the synonymous term "LGPLv2+".
2855         * modules/getdelim (License): Likewise.
2856
2857 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
2858
2859         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
2860         * modules/d-type (License): Likewise.
2861         * modules/extensions (License): Likewise.
2862         * modules/fnmatch (License): Likewise.
2863         * modules/fseeko (License): Likewise.
2864         * modules/getaddrinfo (License): Likewise.
2865         * modules/getline (License): Likewise.
2866         * modules/getlogin_r (License): Likewise.
2867         * modules/getpass (License): Likewise.
2868         * modules/gettimeofday (License): Likewise.
2869         * modules/glob (License): Likewise.
2870         * modules/inet_ntop (License): Likewise.
2871         * modules/malloc (License): Likewise.
2872         * modules/malloca (License): Likewise.
2873         * modules/memmem (License): Likewise.
2874         * modules/mempcpy (License): Likewise.
2875         * modules/memset (License): Likewise.
2876         * modules/minmax (License): Likewise.
2877         * modules/mktime (License): Likewise.
2878         * modules/netinet_in (License): Likewise.
2879         * modules/pathmax (License): Likewise.
2880         * modules/poll (License): Likewise.
2881         * modules/regex (License): Likewise.
2882         * modules/snprintf (License): Likewise.
2883         * modules/stdbool (License): Likewise.
2884         * modules/stdint (License): Likewise.
2885         * modules/stdio (License): Likewise.
2886         * modules/strcase (License): Likewise.
2887         * modules/strcasestr (License): Likewise.
2888         * modules/strdup (License): Likewise.
2889         * modules/string (License): Likewise.
2890         * modules/strndup (License): Likewise.
2891         * modules/strnlen (License): Likewise.
2892         * modules/strpbrk (License): Likewise.
2893         * modules/strptime (License): Likewise.
2894         * modules/strsep (License): Likewise.
2895         * modules/sys_select (License): Likewise.
2896         * modules/sys_socket (License): Likewise.
2897         * modules/sys_stat (License): Likewise.
2898         * modules/sys_time (License): Likewise.
2899         * modules/time (License): Likewise.
2900         * modules/time_r (License): Likewise.
2901         * modules/timegm (License): Likewise.
2902         * modules/unistd (License): Likewise.
2903         * modules/vsnprintf (License): Likewise.
2904         * modules/wctype (License): Likewise.
2905
2906 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2907
2908         * modules/argz (License): LGPLv2+.
2909
2910 2007-07-15  Karl Berry  <karl@gnu.org>
2911
2912         * doc/gnulib.texi: revise node structure per new fdl.texi.
2913
2914 2007-07-14  Bruno Haible  <bruno@clisp.org>
2915
2916         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
2917         the output file.
2918         * lib/uniname/uninames.h: Regenerated.
2919
2920 2007-07-14  Karl Berry  <karl@gnu.org>
2921
2922         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
2923         omitting sectioning and index commands.
2924
2925 2007-07-13  Bruno Haible  <bruno@clisp.org>
2926
2927         New gnulib-tool option --more-symlinks.
2928         * gnulib-tool (func_usage): Document --more-symlinks.
2929         (do_copyrights): New variable.
2930         Recognize option --more-symlinks.
2931         (func_import): Don't add a copyright notice transform to
2932         sed_transform_lib_file if do_copyrights is empty.
2933
2934 2007-07-13  Bruno Haible  <bruno@clisp.org>
2935
2936         * lib/vasnprintf.c (decimal_point_char): Define also if
2937         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
2938         && !NEED_PRINTF_DIRECTIVE_A.
2939         Reported by Clemens Koller <clemens.koller@anagramm.de> via
2940         Gary V. Vaughan <gary@gnu.org>.
2941
2942 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
2943
2944         * lib/inttypes_.h: Undo previous change, since it was fixed
2945         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
2946
2947 2007-07-13  Bruno Haible  <bruno@clisp.org>
2948
2949         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
2950         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
2951
2952 2007-07-13  Jim Meyering  <jim@meyering.net>
2953
2954         df: Don't fail for Tru64's "file-on-file mount".
2955         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
2956         so we fall through and use statfs instead.  Details here:
2957         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
2958         Reported by Albert Chin.
2959
2960 2007-07-13  Bruno Haible  <bruno@clisp.org>
2961
2962         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
2963         * modules/configmake (License): Likewise.
2964         * modules/gettext (License): Likewise.
2965         * modules/gettext-h (License): Likewise.
2966         * modules/include_next (License): Likewise.
2967         * modules/link-warning (License): Likewise.
2968         * modules/localcharset (License): Likewise.
2969         * modules/localename (License): Likewise.
2970         * modules/lock (License): Likewise.
2971         * modules/relocatable-lib-lgpl (License): Likewise.
2972         * modules/size_max (License): Likewise.
2973         * modules/vasnprintf (License): Likewise.
2974         * modules/wchar (License): Likewise.
2975         * modules/xsize (License): Likewise.
2976
2977 2007-07-13  Bruno Haible  <bruno@clisp.org>
2978
2979         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
2980         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
2981
2982 2007-07-12  Bruno Haible  <bruno@clisp.org>
2983
2984         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
2985         in the modules files.
2986
2987 2007-07-11  Karl Berry  <karl@gnu.org>
2988
2989         * MODULES.html.sh (func_module): use
2990          sed -e '\|^'"${includefile}"'$|d'
2991          instead of /.../d, to avoid errors on $includefile's containing /.
2992
2993 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
2994
2995         * gnulib-tool (func_import): Avoid duplication of --avoid
2996         statements
2997         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
2998         names to `_' in variable names.
2999
3000 2007-07-10  Eric Blake  <ebb9@byu.net>
3001
3002         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
3003         * NEWS: Document this change.
3004
3005 2007-07-08  Bruno Haible  <bruno@clisp.org>
3006
3007         Update to Unicode 5.0.
3008         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
3009         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
3010         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
3011         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
3012         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
3013         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
3014         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
3015         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
3016         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
3017         U+10A3F, U+1D242..U+1D244.
3018         (nonspacing_table_ind): Update.
3019         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
3020         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
3021
3022 2007-07-08  Bruno Haible  <bruno@clisp.org>
3023
3024         Update to Unicode 5.0.
3025         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
3026         code transform. Extend the name index field of unicode_name_to_code and
3027         unicode_code_to_name from 16 to 24 bits.
3028         * lib/uniname/uniname.c (unicode_character_name,
3029         unicode_name_character): Add the range 0x12xxx to the code transform.
3030         * lib/uniname/uninames.h: Regenerated.
3031         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
3032
3033 2007-07-07  Bruno Haible  <bruno@clisp.org>
3034
3035         * modules/wcwidth-tests: New file.
3036         * tests/test-wcwidth.c: New file.
3037
3038         Work around MacOS X wcwidth() bug.
3039         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
3040         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
3041         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
3042         original wcwidth in non-UTF-8 locales.
3043         * modules/wcwidth (Depends-on): Add localcharset, streq,
3044         uniwidth/width.
3045         * doc/functions/wcwidth.texi: Update.
3046
3047 2007-07-07  Bruno Haible  <bruno@clisp.org>
3048
3049         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
3050         (wcwidth): New declaration.
3051         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
3052         macros.
3053         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
3054         here. Prepare for creating <wchar.h> unconditionally.
3055         * modules/wchar (Depends-on): Add link-warning.
3056         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
3057         REPLACE_WCWIDTH, and GL_LINK_WARNING.
3058         * lib/wcwidth.h: Remove file.
3059         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
3060         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
3061         * modules/wcwidth (Files): Remove lib/wcwidth.h.
3062         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
3063         (Include): Replace wcwidth.h with <wchar.h>.
3064         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
3065         * lib/mbchar.h: Don't include wcwidth.h.
3066         * lib/mbswidth.c: Likewise.
3067         * NEWS: Mention the change.
3068
3069 2007-07-07  Bruno Haible  <bruno@clisp.org>
3070
3071         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
3072         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
3073         definition with an external declaration.
3074         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
3075         defined as a function. Remove AC_C_INLINE requirement.
3076         * modules/wcwidth (Files): Add lib/wcwidth.c.
3077         (Makefile.am): Remove redundant statement.
3078
3079 2007-07-07  Bruno Haible  <bruno@clisp.org>
3080
3081         * MODULES.html.sh (Unicode string functions): Add the new modules.
3082
3083         * tests/uniwidth/test-u32-strwidth.c: New file.
3084         * modules/uniwidth/u32-strwidth-tests: New file.
3085
3086         * lib/uniwidth/u32-strwidth.c: New file.
3087         * modules/uniwidth/u32-strwidth: New file.
3088
3089         * tests/uniwidth/test-u16-strwidth.c: New file.
3090         * modules/uniwidth/u16-strwidth-tests: New file.
3091
3092         * lib/uniwidth/u16-strwidth.c: New file.
3093         * modules/uniwidth/u16-strwidth: New file.
3094
3095         * tests/uniwidth/test-u8-strwidth.c: New file.
3096         * modules/uniwidth/u8-strwidth-tests: New file.
3097
3098         * lib/uniwidth/u8-strwidth.c: New file.
3099         * modules/uniwidth/u8-strwidth: New file.
3100
3101         * tests/uniwidth/test-u32-width.c: New file.
3102         * modules/uniwidth/u32-width-tests: New file.
3103
3104         * lib/uniwidth/u32-width.c: New file.
3105         * modules/uniwidth/u32-width: New file.
3106
3107         * tests/uniwidth/test-u16-width.c: New file.
3108         * modules/uniwidth/u16-width-tests: New file.
3109
3110         * lib/uniwidth/u16-width.c: New file.
3111         * modules/uniwidth/u16-width: New file.
3112
3113         * tests/uniwidth/test-u8-width.c: New file.
3114         * modules/uniwidth/u8-width-tests: New file.
3115
3116         * lib/uniwidth/u8-width.c: New file.
3117         * modules/uniwidth/u8-width: New file.
3118
3119         * tests/uniwidth/test-uc_width.c: New file.
3120         * modules/uniwidth/width-tests: New file.
3121
3122         * lib/uniwidth/width.c: New file, from GNU libiconv.
3123         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
3124         * modules/uniwidth/width: New file.
3125
3126         * lib/uniwidth.h: New file, from GNU libiconv.
3127         * modules/uniwidth/base: New file.
3128
3129 2007-07-07  Bruno Haible  <bruno@clisp.org>
3130
3131         * lib/uniname.h: New file, from GNU gettext.
3132         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
3133         * lib/uniname/uninames.h: New file, from GNU gettext.
3134         * lib/uniname/uniname.c: New file, from GNU gettext.
3135         * tests/uniname/test-uninames.sh: New file.
3136         * tests/uniname/test-uninames.c: New file, from GNU gettext.
3137         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
3138         * modules/uniname/base: New file.
3139         * modules/uniname/uniname: New file.
3140         * modules/uniname/uniname-tests: New file.
3141         * MODULES.html.sh (Unicode string functions): Add the new modules.
3142
3143 2007-07-06  Bruno Haible  <bruno@clisp.org>
3144
3145         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
3146
3147 2007-07-06  Bruno Haible  <bruno@clisp.org>
3148
3149         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
3150         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
3151         includes <cygwin/sys_time.h> which includes <sys/select.h> which
3152         include <sys/time.h>.
3153         Reported by Eric Blake.
3154
3155 2007-07-06  Eric Blake  <ebb9@byu.net>
3156
3157         Fix testing canonicalize on cygwin.
3158         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
3159         Revert patch from 2007-06-19.
3160         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
3161         canonicalize module is also in use.
3162         * tests/test-canonicalize.c: New file.
3163         * tests/test-canonicalize.sh: Likewise.
3164         * modules/canonicalize-tests: Likewise.
3165
3166 2007-07-06  Jim Meyering  <jim@meyering.net>
3167
3168         * lib/getugroups.c (getugroups): Detect getgrent failure.
3169         Adjust comment to reflect reality: this function may return -1.
3170
3171 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
3172
3173         * build-aux/bootstrap (TP_URL,get_translations): Update to use
3174         the new TP address.
3175         (usage): Fix typo
3176         (gnulib_mk): New variable.
3177
3178 2007-07-05  Jim Meyering  <jim@meyering.net>
3179
3180         Don't let endgrent clobber errno, no matter how improbable.
3181         * lib/getugroups.c (getugroups): Save and restore errno around
3182         endgrent call.
3183
3184         Close the group DB even when failing with 2^31 or more members.
3185         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
3186
3187 2007-07-04  Jim Meyering  <jim@meyering.net>
3188
3189         * lib/getugroups.h: New file.
3190         * lib/getugroups.c: Include "getugroups.h".
3191         Remove uses of "register" keyword.
3192         Move local variable, "cp", down into scope where used.
3193         Give "username" parameter the "const" attribute.
3194         * modules/getugroups (Files): Add lib/getugroups.h
3195
3196 2007-07-04  Karl Berry  <karl@gnu.org>
3197
3198         * MODULES.html.sh (func_all_modules): Complete rename of
3199         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
3200
3201 2007-07-02  Bruno Haible  <bruno@clisp.org>
3202
3203         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
3204         mode, when inttypes.h comes from gnulib.
3205         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
3206
3207 2007-07-02  Simon Josefsson  <simon@josefsson.org>
3208
3209         * NEWS: Mention lgpl module name change.
3210
3211         * modules/lgpl-2.1: Renamed from lgpl.
3212
3213         * NEWS: Mention gpl module name change.
3214
3215         * modules/gpl-3.0: New file, based on gpl-2.0.
3216
3217         * modules/gpl-2.0: Renamed from gpl.
3218
3219         * modules/gpl: Fix filename, doc/gpl.texi is now found at
3220         doc/gpl-2.0.texi.
3221
3222 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
3223
3224         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
3225         #define __STDC_LIMIT_MACROS temporarily while including
3226         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
3227         Problem reported by Joel E. Denny in
3228         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
3229
3230 2007-07-01  Bruno Haible  <bruno@clisp.org>
3231
3232         * lib/unistdio.h: New file.
3233         * lib/unistdio/u-asnprintf.h: New file.
3234         * lib/unistdio/u-asprintf.h: New file.
3235         * lib/unistdio/u-printf-args.c: New file.
3236         * lib/unistdio/u-printf-args.h: New file.
3237         * lib/unistdio/u-printf-parse.h: New file.
3238         * lib/unistdio/u-snprintf.h: New file.
3239         * lib/unistdio/u-sprintf.h: New file.
3240         * lib/unistdio/u-vasprintf.h: New file.
3241         * lib/unistdio/u-vsnprintf.h: New file.
3242         * lib/unistdio/u-vsprintf.h: New file.
3243         * lib/unistdio/ulc-asnprintf.c: New file.
3244         * lib/unistdio/ulc-asprintf.c: New file.
3245         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
3246         * lib/unistdio/ulc-printf-parse.c: New file.
3247         * lib/unistdio/ulc-snprintf.c: New file.
3248         * lib/unistdio/ulc-sprintf.c: New file.
3249         * lib/unistdio/ulc-vasnprintf.c: New file.
3250         * lib/unistdio/ulc-vasprintf.c: New file.
3251         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
3252         * lib/unistdio/ulc-vsnprintf.c: New file.
3253         * lib/unistdio/ulc-vsprintf.c: New file.
3254         * lib/unistdio/u8-asnprintf.c: New file.
3255         * lib/unistdio/u8-asprintf.c: New file.
3256         * lib/unistdio/u8-printf-parse.c: New file.
3257         * lib/unistdio/u8-snprintf.c: New file.
3258         * lib/unistdio/u8-sprintf.c: New file.
3259         * lib/unistdio/u8-vasnprintf.c: New file.
3260         * lib/unistdio/u8-vasprintf.c: New file.
3261         * lib/unistdio/u8-vsnprintf.c: New file.
3262         * lib/unistdio/u8-vsprintf.c: New file.
3263         * lib/unistdio/u8-u8-asnprintf.c: New file.
3264         * lib/unistdio/u8-u8-asprintf.c: New file.
3265         * lib/unistdio/u8-u8-snprintf.c: New file.
3266         * lib/unistdio/u8-u8-sprintf.c: New file.
3267         * lib/unistdio/u8-u8-vasnprintf.c: New file.
3268         * lib/unistdio/u8-u8-vasprintf.c: New file.
3269         * lib/unistdio/u8-u8-vsnprintf.c: New file.
3270         * lib/unistdio/u8-u8-vsprintf.c: New file.
3271         * lib/unistdio/u16-asnprintf.c: New file.
3272         * lib/unistdio/u16-asprintf.c: New file.
3273         * lib/unistdio/u16-printf-parse.c: New file.
3274         * lib/unistdio/u16-snprintf.c: New file.
3275         * lib/unistdio/u16-sprintf.c: New file.
3276         * lib/unistdio/u16-vasnprintf.c: New file.
3277         * lib/unistdio/u16-vasprintf.c: New file.
3278         * lib/unistdio/u16-vsnprintf.c: New file.
3279         * lib/unistdio/u16-vsprintf.c: New file.
3280         * lib/unistdio/u16-u16-asnprintf.c: New file.
3281         * lib/unistdio/u16-u16-asprintf.c: New file.
3282         * lib/unistdio/u16-u16-snprintf.c: New file.
3283         * lib/unistdio/u16-u16-sprintf.c: New file.
3284         * lib/unistdio/u16-u16-vasnprintf.c: New file.
3285         * lib/unistdio/u16-u16-vasprintf.c: New file.
3286         * lib/unistdio/u16-u16-vsnprintf.c: New file.
3287         * lib/unistdio/u16-u16-vsprintf.c: New file.
3288         * lib/unistdio/u32-asnprintf.c: New file.
3289         * lib/unistdio/u32-asprintf.c: New file.
3290         * lib/unistdio/u32-printf-parse.c: New file.
3291         * lib/unistdio/u32-snprintf.c: New file.
3292         * lib/unistdio/u32-sprintf.c: New file.
3293         * lib/unistdio/u32-vasnprintf.c: New file.
3294         * lib/unistdio/u32-vasprintf.c: New file.
3295         * lib/unistdio/u32-vsnprintf.c: New file.
3296         * lib/unistdio/u32-vsprintf.c: New file.
3297         * lib/unistdio/u32-u32-asnprintf.c: New file.
3298         * lib/unistdio/u32-u32-asprintf.c: New file.
3299         * lib/unistdio/u32-u32-snprintf.c: New file.
3300         * lib/unistdio/u32-u32-sprintf.c: New file.
3301         * lib/unistdio/u32-u32-vasnprintf.c: New file.
3302         * lib/unistdio/u32-u32-vasprintf.c: New file.
3303         * lib/unistdio/u32-u32-vsnprintf.c: New file.
3304         * lib/unistdio/u32-u32-vsprintf.c: New file.
3305         * tests/unistdio/test-ulc-asnprintf1.c: New file.
3306         * tests/unistdio/test-ulc-asnprintf1.h: New file.
3307         * tests/unistdio/test-ulc-printf1.h: New file.
3308         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
3309         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
3310         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
3311         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
3312         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
3313         * tests/unistdio/test-ulc-vasprintf1.c: New file.
3314         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
3315         * tests/unistdio/test-ulc-vsprintf1.c: New file.
3316         * tests/unistdio/test-u8-asnprintf1.c: New file.
3317         * tests/unistdio/test-u8-asnprintf1.h: New file.
3318         * tests/unistdio/test-u8-printf1.h: New file.
3319         * tests/unistdio/test-u8-vasnprintf1.c: New file.
3320         * tests/unistdio/test-u8-vasnprintf2.c: New file.
3321         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
3322         * tests/unistdio/test-u8-vasnprintf3.c: New file.
3323         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
3324         * tests/unistdio/test-u8-vasprintf1.c: New file.
3325         * tests/unistdio/test-u8-vsnprintf1.c: New file.
3326         * tests/unistdio/test-u8-vsprintf1.c: New file.
3327         * tests/unistdio/test-u16-asnprintf1.c: New file.
3328         * tests/unistdio/test-u16-asnprintf1.h: New file.
3329         * tests/unistdio/test-u16-printf1.h: New file.
3330         * tests/unistdio/test-u16-vasnprintf1.c: New file.
3331         * tests/unistdio/test-u16-vasnprintf2.c: New file.
3332         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
3333         * tests/unistdio/test-u16-vasnprintf3.c: New file.
3334         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
3335         * tests/unistdio/test-u16-vasprintf1.c: New file.
3336         * tests/unistdio/test-u16-vsnprintf1.c: New file.
3337         * tests/unistdio/test-u16-vsprintf1.c: New file.
3338         * tests/unistdio/test-u32-asnprintf1.c: New file.
3339         * tests/unistdio/test-u32-asnprintf1.h: New file.
3340         * tests/unistdio/test-u32-printf1.h: New file.
3341         * tests/unistdio/test-u32-vasnprintf1.c: New file.
3342         * tests/unistdio/test-u32-vasnprintf2.c: New file.
3343         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
3344         * tests/unistdio/test-u32-vasnprintf3.c: New file.
3345         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
3346         * tests/unistdio/test-u32-vasprintf1.c: New file.
3347         * tests/unistdio/test-u32-vsnprintf1.c: New file.
3348         * tests/unistdio/test-u32-vsprintf1.c: New file.
3349         * modules/unistdio/base: New file.
3350         * modules/unistdio/u-printf-args: New file.
3351         * modules/unistdio/ulc-asnprintf: New file.
3352         * modules/unistdio/ulc-asprintf: New file.
3353         * modules/unistdio/ulc-fprintf: New file.
3354         * modules/unistdio/ulc-printf-parse: New file.
3355         * modules/unistdio/ulc-snprintf: New file.
3356         * modules/unistdio/ulc-sprintf: New file.
3357         * modules/unistdio/ulc-vasnprintf: New file.
3358         * modules/unistdio/ulc-vasprintf: New file.
3359         * modules/unistdio/ulc-vfprintf: New file.
3360         * modules/unistdio/ulc-vsnprintf: New file.
3361         * modules/unistdio/ulc-vsprintf: New file.
3362         * modules/unistdio/u8-asnprintf: New file.
3363         * modules/unistdio/u8-asprintf: New file.
3364         * modules/unistdio/u8-printf-parse: New file.
3365         * modules/unistdio/u8-snprintf: New file.
3366         * modules/unistdio/u8-sprintf: New file.
3367         * modules/unistdio/u8-vasnprintf: New file.
3368         * modules/unistdio/u8-vasprintf: New file.
3369         * modules/unistdio/u8-vsnprintf: New file.
3370         * modules/unistdio/u8-vsprintf: New file.
3371         * modules/unistdio/u8-u8-asnprintf: New file.
3372         * modules/unistdio/u8-u8-asprintf: New file.
3373         * modules/unistdio/u8-u8-snprintf: New file.
3374         * modules/unistdio/u8-u8-sprintf: New file.
3375         * modules/unistdio/u8-u8-vasnprintf: New file.
3376         * modules/unistdio/u8-u8-vasprintf: New file.
3377         * modules/unistdio/u8-u8-vsnprintf: New file.
3378         * modules/unistdio/u8-u8-vsprintf: New file.
3379         * modules/unistdio/u16-asnprintf: New file.
3380         * modules/unistdio/u16-asprintf: New file.
3381         * modules/unistdio/u16-printf-parse: New file.
3382         * modules/unistdio/u16-snprintf: New file.
3383         * modules/unistdio/u16-sprintf: New file.
3384         * modules/unistdio/u16-vasnprintf: New file.
3385         * modules/unistdio/u16-vasprintf: New file.
3386         * modules/unistdio/u16-vsnprintf: New file.
3387         * modules/unistdio/u16-vsprintf: New file.
3388         * modules/unistdio/u16-u16-asnprintf: New file.
3389         * modules/unistdio/u16-u16-asprintf: New file.
3390         * modules/unistdio/u16-u16-snprintf: New file.
3391         * modules/unistdio/u16-u16-sprintf: New file.
3392         * modules/unistdio/u16-u16-vasnprintf: New file.
3393         * modules/unistdio/u16-u16-vasprintf: New file.
3394         * modules/unistdio/u16-u16-vsnprintf: New file.
3395         * modules/unistdio/u16-u16-vsprintf: New file.
3396         * modules/unistdio/u32-asnprintf: New file.
3397         * modules/unistdio/u32-asprintf: New file.
3398         * modules/unistdio/u32-printf-parse: New file.
3399         * modules/unistdio/u32-snprintf: New file.
3400         * modules/unistdio/u32-sprintf: New file.
3401         * modules/unistdio/u32-vasnprintf: New file.
3402         * modules/unistdio/u32-vasprintf: New file.
3403         * modules/unistdio/u32-vsnprintf: New file.
3404         * modules/unistdio/u32-vsprintf: New file.
3405         * modules/unistdio/u32-u32-asnprintf: New file.
3406         * modules/unistdio/u32-u32-asprintf: New file.
3407         * modules/unistdio/u32-u32-snprintf: New file.
3408         * modules/unistdio/u32-u32-sprintf: New file.
3409         * modules/unistdio/u32-u32-vasnprintf: New file.
3410         * modules/unistdio/u32-u32-vasprintf: New file.
3411         * modules/unistdio/u32-u32-vsnprintf: New file.
3412         * modules/unistdio/u32-u32-vsprintf: New file.
3413         * modules/unistdio/ulc-asnprintf-tests: New file.
3414         * modules/unistdio/ulc-vasnprintf-tests: New file.
3415         * modules/unistdio/ulc-vasprintf-tests: New file.
3416         * modules/unistdio/ulc-vsnprintf-tests: New file.
3417         * modules/unistdio/ulc-vsprintf-tests: New file.
3418         * modules/unistdio/u8-asnprintf-tests: New file.
3419         * modules/unistdio/u8-vasnprintf-tests: New file.
3420         * modules/unistdio/u8-vasprintf-tests: New file.
3421         * modules/unistdio/u8-vsnprintf-tests: New file.
3422         * modules/unistdio/u8-vsprintf-tests: New file.
3423         * modules/unistdio/u16-asnprintf-tests: New file.
3424         * modules/unistdio/u16-vasnprintf-tests: New file.
3425         * modules/unistdio/u16-vasprintf-tests: New file.
3426         * modules/unistdio/u16-vsnprintf-tests: New file.
3427         * modules/unistdio/u16-vsprintf-tests: New file.
3428         * modules/unistdio/u32-asnprintf-tests: New file.
3429         * modules/unistdio/u32-vasnprintf-tests: New file.
3430         * modules/unistdio/u32-vasprintf-tests: New file.
3431         * modules/unistdio/u32-vsnprintf-tests: New file.
3432         * modules/unistdio/u32-vsprintf-tests: New file.
3433         * MODULES.html.sh (Unicode string functions): Add the new modules.
3434
3435 2007-07-01  Bruno Haible  <bruno@clisp.org>
3436
3437         * lib/sprintf.c (sprintf): Limit the available length estimation,
3438         to avoid address wraparound.
3439         * lib/vsprintf.c (vsprintf): Likewise.
3440         * modules/sprintf-posix (Dependencies): Add stdint.
3441         * modules/vsprintf-posix (Dependencies): Likewise.
3442
3443 2007-07-01  Bruno Haible  <bruno@clisp.org>
3444
3445         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
3446         Windows PATH as well. Conservative double-quoting. Comments.
3447
3448 2007-07-01  Bruno Haible  <bruno@clisp.org>
3449             Eric Blake  <ebb9@byu.net>
3450             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3451
3452         * gnulib-tool (self_abspathname): Fix algorithm to cope with
3453         empty components in $PATH, denoting '.'.
3454
3455 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3456
3457         * gnulib-tool: Fix indentation.
3458         (func_create_megatestdir): Likewise.
3459         Report by Bruno Haible.
3460
3461 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3462
3463         Sync from Automake.
3464         * build-aux/gnupload: Fix shell portability issues with for loops.
3465         Report by Karl Berry.
3466
3467 2007-06-29  Simon Josefsson  <simon@josefsson.org>
3468
3469         * build-aux/maint.mk (POURL): Use translationproject.org.
3470
3471 2007-06-27  Simon Josefsson  <simon@josefsson.org>
3472             Bruno Haible  <bruno@clisp.org>
3473
3474         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
3475         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
3476         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
3477         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
3478         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
3479
3480 2007-06-27  Bruno Haible  <bruno@clisp.org>
3481
3482         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
3483         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
3484
3485 2007-06-26  Karl Berry  <karl@gnu.org>
3486
3487         * MODULES.html.sh: remove xreadlink-with-size.
3488
3489 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3490
3491         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
3492         method that I hope also handles the double-include problem noted
3493         by Bruno Haible in
3494         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
3495
3496 2007-06-23  Bruno Haible  <bruno@clisp.org>
3497
3498         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
3499         Don't let the 'mostlyclean' target fail if the last subdirectory could
3500         not be removed.
3501         Reported by Karl Berry.
3502
3503 2007-06-23  Bruno Haible  <bruno@clisp.org>
3504
3505         * gnulib-tool (echo): Add a speedier workaround for ksh.
3506         * tests/test-echo.sh: Likewise.
3507
3508 2007-06-23  Bruno Haible  <bruno@clisp.org>
3509
3510         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
3511         * tests/test-echo.sh: Likewise.
3512
3513 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3514
3515         * gnulib-tool (IFS): Initialize early, so we don't set it to
3516         empty later.
3517         (self_abspathname): Rewrite algorithm to set it, reindent.
3518         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
3519         (func_create_megatestdir): Merge some sed scripts.
3520
3521 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
3522
3523         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
3524         exposed by Sun Studio 11 cc on Solaris 8.
3525
3526 2007-06-22  Bruno Haible  <bruno@clisp.org>
3527
3528         * gnulib-tool (echo): Ensure the echo primitive does not interpret
3529         backslashes.
3530         * tests/test-echo.sh: New file.
3531
3532 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3533
3534         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
3535         simplify `sed_replace_build_aux' scripts, they are portable but
3536         echoing them with `echo' is not.
3537         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
3538
3539 2007-06-21  Karl Berry  <karl@gnu.org>
3540
3541         * config/srclist.txt: guess we can't handle the licenses via
3542         srclist at the moment.
3543
3544 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
3545
3546         * MODULES.html.sh: Add include_next.
3547         * modules/include_next: New file.
3548
3549 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
3550
3551         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
3552         INCLUDE_NEXT.
3553         (gl_CHECK_NEXT_HEADERS): New macro.
3554         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
3555         the obsolescent gl_ABSOLUTE_HEADER.
3556         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
3557         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
3558         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
3559         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
3560         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
3561         * m4/math_h.m4 (gl_MATH_H): Likewise.
3562         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
3563         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
3564         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
3565         * m4/stdint.m4 (gl_STDINT_H): Likewise.
3566         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
3567         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
3568         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
3569         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
3570         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
3571         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
3572         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
3573         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
3574         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
3575         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
3576         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
3577         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
3578         * m4/inttypes.m4 (gl_INTTYPES_H): Define
3579         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
3580         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
3581         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
3582         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
3583         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
3584         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
3585         * lib/float_.h: Likewise.
3586         * lib/inttypes_.h: Likewise.
3587         * lib/math_.h: Likewise.
3588         * lib/search_.h: Likewise.
3589         * lib/signal_.h: Likewise.
3590         * lib/stdint_.h: Likewise.
3591         * lib/stdio_.h: Likewise.
3592         * lib/stdlib_.h: Likewise.
3593         * lib/string_.h: Likewise.
3594         * lib/sys_stat_.h: Likewise.
3595         * lib/sys_time_.h: Likewise.
3596         * lib/time_.h: Likewise.
3597         * lib/unistd_.h: Likewise.
3598         * lib/wchar_.h: Likewise.
3599         * lib/wctype_.h: Likewise.
3600         * lib/dirent_.h: Likewise.
3601         * lib/iconv_.h: Likewise.
3602         * lib/locale_.h: Likewise.
3603         * lib/netinet_in_.h: Likewise.
3604         * lib/sys_select_.h: Likewise.
3605         * lib/sys_socket_.h: Likewise.
3606         * lib/sysexits_.h: Likewise.
3607         * modules/fcntl (Depends-on): Depend on include_next, not
3608         absolute_header.
3609         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
3610         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
3611         * modules/fchdir: Likewise.
3612         * modules/float: Likewise.
3613         * modules/iconv_open: Likewise.
3614         * modules/inttypes: Likewise.
3615         * modules/locale: Likewise.
3616         * modules/math: Likewise.
3617         * modules/netinet_in: Likewise.
3618         * modules/search: Likewise.
3619         * modules/signal: Likewise.
3620         * modules/stdint: Likewise.
3621         * modules/stdio: Likewise.
3622         * modules/stdlib: Likewise.
3623         * modules/string: Likewise.
3624         * modules/sys_select: Likewise.
3625         * modules/sys_socket: Likewise.
3626         * modules/sys_stat: Likewise.
3627         * modules/sys_time: Likewise.
3628         * modules/sysexits: Likewise.
3629         * modules/time: Likewise.
3630         * modules/unistd: Likewise.
3631         * modules/wchar: Likewise.
3632         * modules/wctype: Likewise.
3633         * modules/sys_stat: Change maintainer to "all".
3634         * modules/unistd: Likewise.
3635
3636 2007-06-20  Karl Berry  <karl@gnu.org>
3637
3638         * config/srclist.txt: track www changes in license files.
3639
3640 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
3641
3642         * build-aux/bootstrap: Remove stray dot.
3643         Make sure build_aux settings are honored when linking
3644         gnulib_extra_files.
3645
3646 2007-06-19  Eric Blake  <ebb9@byu.net>
3647
3648         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
3649         Allow compilation on cygwin.
3650
3651 2007-06-19  Jim Meyering  <jim@meyering.net>
3652
3653         xreadlink-with-size: Remove module.  No longer used.
3654         Ex-callers now use xreadlink or mreadlink-with-size.
3655         * modules/xreadlink-with-size: Remove module.
3656         * lib/xreadlink-with-size.c: Remove file.
3657         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
3658         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
3659         just before the function definition *is* accurate.
3660
3661         Eliminate one way canonicalize_filename_mode could exit.
3662         * lib/canonicalize.c (canonicalize_filename_mode):
3663         Use mreadlink_with_size, not xreadlink_with_size.
3664
3665 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
3666
3667         Detect porting problems to FreeBSD/arm, which has time_t wider than
3668         long int.  Original problem reported for GNU diff by Xin Li in
3669         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
3670         * modules/getdate (Depends-on): Add intprops, verify.
3671         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
3672         is an integer type no wider than long int.
3673
3674 2007-06-18  Jim Meyering  <jim@meyering.net>
3675
3676         New module: mreadlink-with-size.
3677         * MODULES.html.sh: Add mreadlink-with-size.
3678         * modules/mreadlink-with-size: New module
3679         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
3680         not xreadlink-with-size.
3681         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
3682
3683 2007-06-16  Bruno Haible  <bruno@clisp.org>
3684
3685         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
3686         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
3687         Reported by Gary V. Vaughan <gary@gnu.org>.
3688
3689 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
3690
3691         Revamp lchown so that it lives in unistd.h where it belongs.
3692         * lib/lchown.h: Remove.
3693         * lib/dirchownmod.c: Don't include lib/lchown.h.
3694         * lib/fchownat.c: Likewise.
3695         * lib/openat.c: Likewise.
3696         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
3697         does not follow symlinks.
3698         (EOPNOTSUPP): Define if not defined.
3699         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
3700         is defined to 0.
3701         (lchown): New decl.
3702         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
3703         Do not check for lchown decl.
3704         Set REPLACE_LCHOWN.
3705         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
3706         REPLACE_LCHOWN.
3707         * modules/chown: Make it clear it follows symlinks.
3708         * modules/lchown: Make it clear it doesn't follow symlinks.
3709         (Files): Remove lib/lchown.h
3710         (Depends-on): Add unistd.
3711         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
3712         (Include): Include <unistd.h>, not "lchown.h".
3713         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
3714         REPLACE_LCHOWN.
3715
3716 2007-06-15  Jim Meyering  <jim@meyering.net>
3717
3718         Change license (GPL to LGPL) of fsusage and dependents.
3719         * modules/fsusage (License): Change to LGPL.
3720         * modules/full-read (License): Likewise.
3721         * modules/full-write (License): Likewise.
3722         * modules/safe-read (License): Likewise.
3723         * modules/safe-write (License): Likewise.
3724
3725 2007-06-14  Ben Pfaff  <blp@gnu.org>
3726
3727         Missing part of allocsa -> malloca transition.
3728         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
3729         gl_MALLOCA.
3730
3731 2007-06-12  Bruno Haible  <bruno@clisp.org>
3732
3733         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
3734         to ia64, x86_64, i386.
3735         Reported by Eric Blake.
3736
3737 2007-06-12  Bruno Haible  <bruno@clisp.org>
3738
3739         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
3740         cross-compiling to x86_64.
3741
3742 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
3743
3744         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
3745         glitch reported by Ralf Wildenhues in
3746         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
3747
3748         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
3749         Vin Shelton.
3750
3751 2007-06-11  Bruno Haible  <bruno@clisp.org>
3752
3753         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
3754         replacement string.
3755         Reported by Eric Blake.
3756
3757 2007-06-10  Bruno Haible  <bruno@clisp.org>
3758
3759         Prepare vasnprintf code for use with Unicode strings.
3760         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
3761         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
3762         TYPE_U32_STRING.
3763         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
3764         a_u32_string variants.
3765         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
3766         * lib/printf-args.c: Don't include config.h and the specification
3767         header if PRINTF_FETCHARGS is already defined.
3768         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
3769         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
3770         TYPE_U16_STRING, TYPE_U32_STRING.
3771         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
3772         u16_directive, u16_directives, u32_directive, u32_directives): New
3773         types.
3774         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
3775         New declarations.
3776         * lib/printf-parse.c: Don't include config.h and the specification
3777         header if PRINTF_PARSE is already defined. Eliminate the set of
3778         parameters for WIDE_CHAR_VERSION; the user of this file must provide
3779         them now. Include c-ctype.h.
3780         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
3781         directive and CHAR_T_ONLY_ASCII.
3782         * lib/vasnprintf.c: Don't include config.h and the specification header
3783         if VASNPRINTF is already defined.
3784         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
3785         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
3786         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
3787         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
3788         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
3789         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
3790         code accordingly.
3791         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
3792         pad_ourselves also in this case, with the 'c' and 's' directives, and
3793         with a different notion of "width".
3794         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
3795
3796 2007-06-10  Bruno Haible  <bruno@clisp.org>
3797
3798         * modules/unistr/u32-mbsnlen: New file.
3799         * lib/unistr/u32-mbsnlen.c: New file.
3800
3801         * modules/unistr/u16-mbsnlen: New file.
3802         * lib/unistr/u16-mbsnlen.c: New file.
3803
3804         * modules/unistr/u8-mbsnlen: New file.
3805         * lib/unistr/u8-mbsnlen.c: New file.
3806
3807         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
3808         declarations.
3809
3810 2007-06-10  Bruno Haible  <bruno@clisp.org>
3811
3812         * lib/string_.h (mbsnlen): New declaration.
3813         * lib/mbsnlen.c: New file.
3814         * m4/mbsnlen.m4: New file.
3815         * modules/mbsnlen: New file.
3816         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
3817         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
3818         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
3819
3820 2007-06-10  Bruno Haible  <bruno@clisp.org>
3821
3822         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
3823
3824 2007-06-10  Bruno Haible  <bruno@clisp.org>
3825
3826         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
3827         * lib/mbuiter.h: Likewise.
3828
3829 2007-06-10  Bruno Haible  <bruno@clisp.org>
3830
3831         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
3832         declaration.
3833
3834 2007-06-10  Karl Berry  <karl@gnu.org>
3835
3836         * config/srclist.txt: remove gettext entries, Bruno prefers
3837         to update individually.
3838
3839 2007-06-10  Bruno Haible  <bruno@clisp.org>
3840
3841         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
3842         'maxlen'. Ensure only length + width bytes are allocated, not
3843         length + 1 + width.
3844
3845 2007-06-09  Bruno Haible  <bruno@clisp.org>
3846
3847         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
3848         (CHAR_T): Remove macro.
3849         (VASNPRINTF): Update.
3850
3851 2007-06-09  Bruno Haible  <bruno@clisp.org>
3852
3853         * MODULES.html.sh (Unicode string functions): Add the new modules.
3854
3855         * modules/uniconv/u32-conv-to-enc: New file.
3856         * lib/uniconv/u32-conv-to-enc.c: New file.
3857         * modules/uniconv/u32-conv-to-enc-tests: New file.
3858         * tests/uniconv/test-u32-conv-to-enc.c: New file.
3859
3860         * modules/uniconv/u16-conv-to-enc: New file.
3861         * lib/uniconv/u16-conv-to-enc.c: New file.
3862         * lib/uniconv/u-conv-to-enc.h: New file.
3863         * modules/uniconv/u16-conv-to-enc-tests: New file.
3864         * tests/uniconv/test-u16-conv-to-enc.c: New file.
3865
3866         * modules/uniconv/u8-conv-to-enc: New file.
3867         * lib/uniconv/u8-conv-to-enc.c: New file.
3868         * modules/uniconv/u8-conv-to-enc-tests: New file.
3869         * tests/uniconv/test-u8-conv-to-enc.c: New file.
3870
3871         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
3872         u32_conv_to_encoding): New declarations.
3873
3874 2007-06-09  Bruno Haible  <bruno@clisp.org>
3875
3876         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
3877
3878 2007-06-09  Bruno Haible  <bruno@clisp.org>
3879
3880         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
3881         * modules/malloca: Renamed from modules/allocsa, updated.
3882         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
3883         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
3884         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
3885         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
3886         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
3887         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
3888         * modules/xmalloca: Renamed from modules/xallocsa, updated.
3889         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
3890         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
3891         * modules/c-strcasestr (Depends-on): Update.
3892         * lib/c-strcasestr.c: Update.
3893         * modules/c-strstr (Depends-on): Update.
3894         * lib/c-strstr.c: Update.
3895         * modules/canonicalize-lgpl (Depends-on): Update.
3896         * lib/canonicalize-lgpl.c: Update.
3897         * modules/clean-temp (Depends-on): Update.
3898         * lib/clean-temp.c: Update.
3899         * modules/csharpcomp (Depends-on): Update.
3900         * lib/csharpcomp.c: Update.
3901         * modules/csharpexec (Depends-on): Update.
3902         * lib/csharpexec.c: Update.
3903         * modules/javacomp (Depends-on): Update.
3904         * lib/javacomp.c: Update.
3905         * modules/javaexec (Depends-on): Update.
3906         * lib/javaexec.c: Update.
3907         * modules/mbscasestr (Depends-on): Update.
3908         * lib/mbscasestr.c: Update.
3909         * modules/mbsstr (Depends-on): Update.
3910         * lib/mbsstr.c: Update.
3911         * modules/setenv (Depends-on): Update.
3912         * lib/setenv.c: Update.
3913         * modules/strcasestr (Depends-on): Update.
3914         * lib/strcasestr.c: Update.
3915         * modules/striconveha (Depends-on): Update.
3916         * lib/striconveha.c: Update.
3917         * modules/relocatable-prog-wrapper (Files): Update.
3918         * lib/relocwrapper.c: Update.
3919         * build-aux/install-reloc: Update.
3920         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
3921
3922 2007-06-08  Bruno Haible  <bruno@clisp.org>
3923
3924         Port to uClibc.
3925         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
3926         * lib/fpurge.c (fpurge): Likewise.
3927         * lib/freading.c (freading): Likewise.
3928         * lib/fseeko.c (rpl_fseeko): Likewise.
3929         * lib/fseterr.c (fseterr): Likewise.
3930         * lib/fwriting.c (fwriting): Likewise.
3931         * tests/test-fflush.c (main): Avoid a failure on uClibc.
3932
3933 2007-06-08  Bruno Haible  <bruno@clisp.org>
3934
3935         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
3936         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
3937         * modules/gettext (Files): Add m4/intlmacosx.m4.
3938
3939 2007-06-07  Bruno Haible  <bruno@clisp.org>
3940
3941         * modules/localename-tests: New file.
3942         * tests/test-localename.c: New file.
3943
3944         New module 'localename'.
3945         * lib/localename.h: New file.
3946         * lib/localename.c: New file, from GNU gettext.
3947         * m4/localename.m4: New file.
3948         * modules/localename: New file.
3949
3950 2007-06-07  Bruno Haible  <bruno@clisp.org>
3951
3952         Work around the lack of <wchar.h> on some builds of uClibc.
3953         * doc/headers/wchar.texi: Update.
3954         * lib/wchar_.h: Include <wchar.h> only if it exists.
3955         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
3956         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
3957         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
3958         doesn't exist.
3959         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
3960         * modules/mbfile (Depends-on): Add wchar.
3961         * modules/mbiter (Depends-on): Likewise.
3962         * modules/mbuiter (Depends-on): Likewise.
3963         Reported by Simon Josefsson.
3964
3965 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
3966
3967         Work around problem reported by Steven M. Schweda in
3968         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
3969         Tru64 5.1B with the Compaq compiler environment installed declares
3970         an 'isblank' function but does not define it in the C library.
3971         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
3972         * lib/regex_internal.h (isblank): Likewise.
3973         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
3974         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
3975
3976 2007-06-05  Bruno Haible  <bruno@clisp.org>
3977
3978         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
3979         ia64.
3980         * modules/printf-safe: New file.
3981         * modules/fprintf-posix (Depends-on): Add printf-safe.
3982         * modules/printf-posix (Depends-on): Likewise.
3983         * modules/snprintf-posix (Depends-on): Likewise.
3984         * modules/sprintf-posix (Depends-on): Likewise.
3985         * modules/vasnprintf-posix (Depends-on): Likewise.
3986         * modules/vasprintf-posix (Depends-on): Likewise.
3987         * modules/vfprintf-posix (Depends-on): Likewise.
3988         * modules/vprintf-posix (Depends-on): Likewise.
3989         * modules/vsnprintf-posix (Depends-on): Likewise.
3990         * modules/vsprintf-posix (Depends-on): Likewise.
3991         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
3992         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
3993         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
3994         "no" on i386, x86_64, ia64.
3995         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
3996         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
3997         on i386, x86_64, ia64.
3998         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
3999         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4000         on i386, x86_64, ia64.
4001         * tests/test-vasnprintf-posix.c: Include float.h.
4002         (LDBL80_WORDS): New macro.
4003         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4004         on i386, x86_64, ia64.
4005         * tests/test-vasprintf-posix.c: Include float.h.
4006         (LDBL80_WORDS): New macro.
4007         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
4008         on i386, x86_64, ia64.
4009         * tests/test-snprintf-posix.c: Include float.h.
4010         * tests/test-sprintf-posix.c: Likewise.
4011         * tests/test-vsnprintf-posix.c: Likewise.
4012         * tests/test-vsprintf-posix.c: Likewise.
4013
4014 2007-06-05  Bruno Haible  <bruno@clisp.org>
4015
4016         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
4017         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
4018         non-IEEE numbers on i386, x86_64, ia64.
4019         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
4020         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
4021         * tests/test-isnanl.h: Include float.h.
4022         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
4023
4024 2007-06-05  Bruno Haible  <bruno@clisp.org>
4025
4026         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
4027         also the %a / %A. Handle the %a / %A code before this extra handling.
4028
4029 2007-06-05  Bruno Haible  <bruno@clisp.org>
4030
4031         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
4032         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
4033
4034 2007-06-05  Bruno Haible  <bruno@clisp.org>
4035
4036         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
4037         typo in variable name.
4038
4039 2007-06-05  Eric Blake  <ebb9@byu.net>
4040
4041         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
4042         Reported by Simon Josefsson.
4043
4044 2007-06-04  Bruno Haible  <bruno@clisp.org>
4045
4046         Avoid test failures on some PowerPC platforms.
4047         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
4048         Define differently for PowerPC.
4049         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
4050         Reported by Gary V. Vaughan <gary@gnu.org>.
4051
4052 2007-06-02  Bruno Haible  <bruno@clisp.org>
4053
4054         Fix test-stdint failure on FreeBSD/ia64.
4055         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
4056         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
4057         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
4058         * doc/headers/stdint.texi: Update.
4059
4060 2007-06-01  Bruno Haible  <bruno@clisp.org>
4061
4062         * tests/test-binary-io.c (main): Pass a third argument to open().
4063         Reported by Gary V. Vaughan <gary@gnu.org>.
4064
4065 2007-06-01  Bruno Haible  <bruno@clisp.org>
4066
4067         * doc/functions/frexpl.texi: Update for mingw.
4068
4069 2007-06-01  Bruno Haible  <bruno@clisp.org>
4070
4071         * tests/test-lseek.c (main): Disable test of errno for invalid third
4072         argument.
4073         * doc/functions/lseek.texi: Update.
4074         Reported by Gary V. Vaughan <gary@gnu.org>.
4075
4076 2007-05-28  Bruno Haible  <bruno@clisp.org>
4077
4078         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
4079
4080 2007-05-31  Eric Blake  <ebb9@byu.net>
4081
4082         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
4083         cross compiling.
4084
4085 2007-05-30  Eric Blake  <ebb9@byu.net>
4086         and Bruno Haible  <bruno@clisp.org>
4087
4088         Work around mingw test failures exposed by m4-1.4.9b.
4089         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
4090         * tests/test-unistd.c: Disable uid_t and git_t tests for the
4091         moment.
4092
4093 2007-05-30  Bruno Haible  <bruno@clisp.org>
4094
4095         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
4096         assuming that they are closed. Needed on HP-UX 11.
4097
4098 2007-05-29  Bruno Haible  <bruno@clisp.org>
4099
4100         Fix a problem with #include_next.
4101         * lib/dirent_.h: Split the double-inclusion guard.
4102         * lib/fcntl_.h: Likewise.
4103         * lib/float_.h: Likewise.
4104         * lib/iconv_.h: Likewise.
4105         * lib/inttypes_.h: Likewise.
4106         * lib/locale_.h: Likewise.
4107         * lib/math_.h: Likewise.
4108         * lib/netinet_in_.h: Likewise.
4109         * lib/search_.h: Likewise.
4110         * lib/signal_.h: Likewise.
4111         * lib/stdint_.h: Likewise.
4112         * lib/stdio_.h: Likewise.
4113         * lib/stdlib_.h: Likewise.
4114         * lib/string_.h: Likewise.
4115         * lib/sys_select_.h: Likewise.
4116         * lib/sys_socket_.h: Likewise.
4117         * lib/sys_stat_.h: Likewise.
4118         * lib/sys_time_.h: Likewise.
4119         * lib/sysexits_.h: Likewise.
4120         * lib/time_.h: Likewise.
4121         * lib/unistd_.h: Likewise.
4122         * lib/wchar_.h: Likewise.
4123         * lib/wctype_.h: Likewise.
4124
4125 2007-05-29  Bruno Haible  <bruno@clisp.org>
4126
4127         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
4128         for the moment.
4129
4130 2007-05-29  Bruno Haible  <bruno@clisp.org>
4131
4132         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
4133         invocation.
4134         Reported by Eric Blake.
4135
4136 2007-05-29  Bruno Haible  <bruno@clisp.org>
4137
4138         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
4139         compiling case.
4140
4141 2007-05-29  Eric Blake  <ebb9@byu.net>
4142             Bruno Haible  <bruno@clisp.org>
4143
4144         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
4145         cross compiles.
4146
4147 2007-05-28  Eric Blake  <ebb9@byu.net>
4148
4149         * modules/closein-tests (test_closein_LDADD): Support test on
4150         cygwin with libtool.
4151
4152 2007-05-28  Bruno Haible  <bruno@clisp.org>
4153
4154         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
4155         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
4156         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
4157         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
4158         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
4159         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
4160         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
4161         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
4162         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
4163
4164 2007-05-28  Eric Blake  <ebb9@byu.net>
4165
4166         Unconditionally include <config.h> in unit tests.
4167         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
4168         * tests/test-allocsa.c, tests/test-arcfour.c,
4169         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
4170         tests/test-array_list.c, tests/test-array_oset.c,
4171         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
4172         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
4173         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
4174         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
4175         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
4176         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
4177         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
4178         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
4179         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
4180         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
4181         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
4182         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
4183         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
4184         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
4185         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
4186         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
4187         test-md5.c, test-memmem.c, test-printf-posix.c,
4188         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
4189         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
4190         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
4191         test-strcasestr.c, test-striconv.c, test-striconveh.c,
4192         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
4193         test-vasnprintf-posix2.c, test-vasnprintf.c,
4194         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
4195         test-vfprintf-posix.c, test-vprintf-posix.c,
4196         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
4197         test-xvasprintf.c: Likewise.
4198
4199 2007-05-28  Bruno Haible  <bruno@clisp.org>
4200
4201         * gnulib-tool (func_import): Remember the --with-tests command-line
4202         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
4203         Reported by Eric Blake.
4204
4205 2007-05-28  Bruno Haible  <bruno@clisp.org>
4206
4207         * modules/ftell-tests: New file.
4208         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
4209         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
4210
4211         * lib/ftell.c: New file.
4212         * modules/ftell: New file.
4213         * m4/ftell.m4: New file.
4214         * doc/functions/ftell.texi: Update.
4215         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
4216         REPLACE_FTELL.
4217         * lib/stdio_.h (rpl_ftell): New declaration.
4218         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
4219         REPLACE_FTELL.
4220
4221 2007-05-28  Eric Blake  <ebb9@byu.net>
4222
4223         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
4224
4225 2007-05-28  Bruno Haible  <bruno@clisp.org>
4226
4227         * modules/fseek-tests: New file.
4228         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
4229         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
4230
4231         * lib/fseek.c: New file.
4232         * modules/fseek: New file.
4233         * m4/fseek.m4: New file.
4234         * doc/functions/fseek.texi: Update.
4235         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
4236         REPLACE_FSEEK.
4237         * lib/stdio_.h (rpl_fseek): New declaration.
4238         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
4239         REPLACE_FSEEK.
4240
4241 2007-05-28  Bruno Haible  <bruno@clisp.org>
4242
4243         * lib/stdio_.h (fflush): More comments.
4244
4245 2007-05-28  Bruno Haible  <bruno@clisp.org>
4246
4247         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
4248         runtime test.
4249
4250 2007-05-28  Eric Blake  <ebb9@byu.net>
4251
4252         Improve lseek module.
4253         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
4254         * lib/unistd_.h (lseek): Scale back link warning message.
4255         * tests/test-lseek.c: Beef up test.
4256         * tests/test-lseek.sh: Exercise more facets of lseek.
4257         Reported by Bruno Haible.
4258
4259 2007-05-28  Bruno Haible  <bruno@clisp.org>
4260
4261         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
4262         to define.
4263
4264 2007-05-27  Bruno Haible  <bruno@clisp.org>
4265
4266         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
4267
4268 2007-05-27  Bruno Haible  <bruno@clisp.org>
4269
4270         * modules/openmp: New file.
4271         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
4272         Noah Misch.
4273
4274 2007-05-26  Bruno Haible  <bruno@clisp.org>
4275
4276         * modules/chdir-long (Depends-on): Add fchdir.
4277         * modules/chdir-safer (Depends-on): Likewise.
4278         * modules/fts (Depends-on): Likewise.
4279         * modules/fts-lgpl (Depends-on): Likewise.
4280         * modules/openat (Depends-on): Likewise.
4281         * modules/savewd (Depends-on): Likewise.
4282
4283 2007-05-24  Eric Blake  <ebb9@byu.net>
4284
4285         Fix lseek on mingw.
4286         * modules/lseek: New module.
4287         * m4/lseek.m4: New file.
4288         * lib/lseek.c: New file.
4289         * modules/lseek-tests: New file.
4290         * tests/test-lseek.c: New file.
4291         * tests/test-lseek.sh: New file.
4292         * MODULES.html.sh: Document lseek module.
4293         * modules/fflush (Depends-on): Add lseek, fseeko.
4294         * modules/fseeko (Depends-on): Likewise.
4295         * modules/ftello (Depends-on): Likewise.
4296         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
4297         broken.
4298         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
4299         broken.
4300         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
4301         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
4302         * lib/ftello.c (rpl_ftello): Likewise.
4303         * tests/test-fseeko.c (main): Test this.
4304         * tests/test-fseeko.sh: Likewise.
4305         * tests/test-ftello.c (main): Likewise.
4306         * tests/test-ftello.sh: Likewise.
4307         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
4308         implies replacing fseek.
4309         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
4310         HAVE_FTELLO.
4311         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
4312         * modules/unistd (Makefile.am): Likewise.
4313         * lib/unistd_.h (lseek): Declare a replacement.
4314         * doc/functions/lseek.texi (lseek): Document this fix.
4315         * doc/functions/fseek.texi (fseek): Likewise.
4316         * doc/functions/ftell.texi (ftell): Likewise.
4317
4318 2007-05-24  Bruno Haible  <bruno@clisp.org>
4319
4320         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
4321         in the printed representation of a NaN.
4322         * tests/test-vasprintf-posix.c (test_function): Likewise.
4323         * tests/test-snprintf-posix.h (test_function): Likewise.
4324         * tests/test-sprintf-posix.h (test_function): Likewise.
4325         Reported by Eric Blake.
4326
4327 2007-05-23  Eric Blake  <ebb9@byu.net>
4328
4329         Fix fseeko/ftello on cygwin 1.5.24.
4330         * doc/functions/fseeko.texi (fseeko): Document the fix.
4331         * doc/functions/ftello.texi (ftello): Document the fix.
4332         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
4333         * doc/functions/stdout.text (stdout): New file.
4334         * doc/functions/stderr.text (stderr): New file.
4335         * doc/gnulib.texi (Function Substitutes): Use new files.
4336         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
4337         prior to 1.7.0.
4338         * tests/test-ftello.c (main): Likewise for ftello.
4339         * tests/test-fseeko.sh: New file.
4340         * tests/test-ftello.sh: New file.
4341         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
4342         with seekable stdin.
4343         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
4344         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
4345         (gl_REPLACE_FSEEKO): New macro.
4346         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
4347         * modules/fseeko (Files): Distribute fseeko.c.
4348         * modules/ftello (Files): Distribute ftello.c.
4349         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
4350         mode.
4351         * lib/ftello.c (rpl_ftello): New file.
4352         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
4353         fseeko, ftello.
4354         (gl_STDIN_LARGE_OFFSET): New macro.
4355         * modules/stdio (Makefile.am): Perform the replacement.
4356         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
4357
4358 2007-05-23  Bruno Haible  <bruno@clisp.org>
4359
4360         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
4361         GNULIB_POSIXCHECK is defined.
4362
4363 2007-05-21  Bruno Haible  <bruno@clisp.org>
4364
4365         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
4366         Check also the output for NaN arguments. When cross-compiling, guess
4367         no on IRIX.
4368         * lib/vasnprintf.c: Update comments.
4369         * tests/test-vasnprintf-posix.c (strisnan): New function.
4370         (test_function): Use it.
4371         * tests/test-vasprintf-posix.c (strisnan): New function.
4372         (test_function): Use it.
4373         * tests/test-snprintf-posix.h (strisnan): New function.
4374         (test_function): Use it.
4375         * tests/test-sprintf-posix.h (strisnan): New function.
4376         (test_function): Use it.
4377         Reported by Eric Blake.
4378
4379 2007-05-20  Bruno Haible  <bruno@clisp.org>
4380
4381         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
4382         numbers that fails on BeOS.
4383         * doc/functions/frexpl.texi: Update.
4384
4385 2007-05-20  Jim Meyering  <jim@meyering.net>
4386
4387         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
4388         forced upon us by glibc-2.6.
4389
4390 2007-05-20  Bruno Haible  <bruno@clisp.org>
4391
4392         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
4393         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
4394         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
4395         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
4396         NEED_PRINTF_INFINITE.
4397         (is_infinitel): New function.
4398         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
4399         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
4400         gl_PREREQ_VASNPRINTF_INFINITE.
4401         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
4402         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4403         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
4404         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
4405         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
4406         gl_PREREQ_VASNPRINTF_INFINITE.
4407         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4408         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4409         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4410         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4411         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4412         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4413         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4414         * doc/functions/fprintf.texi: Update.
4415         * doc/functions/printf.texi: Update.
4416         * doc/functions/snprintf.texi: Update.
4417         * doc/functions/sprintf.texi: Update.
4418         * doc/functions/vfprintf.texi: Update.
4419         * doc/functions/vprintf.texi: Update.
4420         * doc/functions/vsnprintf.texi: Update.
4421         * doc/functions/vsprintf.texi: Update.
4422
4423 2007-05-20  Bruno Haible  <bruno@clisp.org>
4424
4425         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
4426         was not found in libc.
4427         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
4428
4429 2007-05-20  Bruno Haible  <bruno@clisp.org>
4430
4431         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4432         printed as "-nan" instead of "nan".
4433         * tests/test-vasprintf-posix.c (test_function): Likewise.
4434         * tests/test-snprintf-posix.h (test_function): Likewise.
4435         * tests/test-sprintf-posix.h (test_function): Likewise.
4436         Needed for HP-UX 11.
4437
4438 2007-05-20  Jim Meyering  <jim@meyering.net>
4439
4440         Fix buggy test for the fchownat-deref bug.
4441         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
4442         symlink required for the run-test.  Without it, this test would
4443         always declare that fchownat doesn't work, and client code would
4444         unnecessarily use the replacement function with fixed libc.
4445         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
4446         Reported by Greg Schafer.
4447
4448 2007-05-19  Bruno Haible  <bruno@clisp.org>
4449
4450         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
4451         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
4452         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
4453         Needed for IRIX 6.5 and Solaris 2.5.1.
4454
4455 2007-05-19  Bruno Haible  <bruno@clisp.org>
4456
4457         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
4458         (test_function): Skip tests involving -0.0 on platforms where
4459         -0.0 = 0.0.
4460         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
4461         (test_function): Skip tests involving -0.0 on platforms where
4462         -0.0 = 0.0.
4463         * tests/test-snprintf-posix.h (have_minus_zero): New function.
4464         (test_function): Skip tests involving -0.0 on platforms where
4465         -0.0 = 0.0.
4466         * tests/test-sprintf-posix.h (have_minus_zero): New function.
4467         (test_function): Skip tests involving -0.0 on platforms where
4468         -0.0 = 0.0.
4469         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
4470         tests.
4471         * tests/test-printf-posix.h (test_function): Likewise.
4472         * tests/test-printf-posix.output: Remove all -0.0 related results.
4473         Needed for IRIX 6.5.
4474
4475 2007-05-19  Bruno Haible  <bruno@clisp.org>
4476
4477         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
4478         printed as "nan0x7fffffff" instead of "nan".
4479         * tests/test-vasprintf-posix.c (test_function): Likewise.
4480         * tests/test-snprintf-posix.h (test_function): Likewise.
4481         * tests/test-sprintf-posix.h (test_function): Likewise.
4482         * tests/test-fprintf-posix.h (NaN): Remove macro.
4483         (test_function): Remove all NaN related tests.
4484         * tests/test-printf-posix.h (NaN): Remove macro.
4485         (test_function): Remove all NaN related tests.
4486         * tests/test-printf-posix.output: Remove all NaN related results.
4487         Needed for IRIX 6.5.
4488
4489 2007-05-19  Bruno Haible  <bruno@clisp.org>
4490
4491         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
4492         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
4493
4494 2007-05-19  Bruno Haible  <bruno@clisp.org>
4495
4496         * lib/float_.h: New file.
4497         * m4/float_h.m4: New file.
4498         * modules/float: New file.
4499         * modules/isnanl (Dependencies): Add float.
4500         * modules/isnanl-nolibm (Dependencies): Likewise.
4501         * modules/mathl (Dependencies): Likewise.
4502         * modules/printf-frexpl (Dependencies): Likewise.
4503         * modules/signbit (Dependencies): Likewise.
4504         * modules/vasnprintf (Dependencies): Likewise.
4505         * doc/headers/float.texi: Update.
4506
4507 2007-05-19  Jim Meyering  <jim@meyering.net>
4508
4509         * lib/utimens.c (gl_futimens): Rename from futimens,
4510         now that glibc-2.6 declares futimens.
4511         * lib/utimens.h: Likewise.
4512
4513 2007-05-19  Bruno Haible  <bruno@clisp.org>
4514
4515         Avoid test failures on mingw.
4516         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
4517         * tests/test-printf-posix.sh: Likewise.
4518         * tests/test-vfprintf-posix.sh: Likewise.
4519         * tests/test-vprintf-posix.sh: Likewise.
4520
4521 2007-05-19  Bruno Haible  <bruno@clisp.org>
4522
4523         Fix *printf result for NaN, Inf, -0.0 on mingw.
4524         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
4525         * lib/vasnprintf.c: Include math.h and isnan.h.
4526         (is_infinite_or_zero): New function.
4527         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
4528         values in the %f, %F, %e, %E, %g, %G directives.
4529         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
4530         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4531         gl_PRINTF_INFINITE and test its result. Invoke
4532         gl_PREREQ_VASNPRINTF_INFINITE.
4533         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4534         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4535         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4536         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4537         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4538         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4539         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4540         * doc/functions/fprintf.texi: Update.
4541         * doc/functions/printf.texi: Update.
4542         * doc/functions/snprintf.texi: Update.
4543         * doc/functions/sprintf.texi: Update.
4544         * doc/functions/vfprintf.texi: Update.
4545         * doc/functions/vprintf.texi: Update.
4546         * doc/functions/vsnprintf.texi: Update.
4547         * doc/functions/vsprintf.texi: Update.
4548
4549 2007-05-19  Bruno Haible  <bruno@clisp.org>
4550
4551         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
4552         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
4553         Instead of multiplying with 10^k, set extra_zeroes to k.
4554         (scale10_round_long_double): Remove function.
4555
4556 2007-05-18  Bruno Haible  <bruno@clisp.org>
4557
4558         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
4559         introduced on 2007-05-06.
4560
4561 2007-05-18  Bruno Haible  <bruno@clisp.org>
4562
4563         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
4564         %g directives.
4565         * tests/test-vasprintf-posix.c (test_function): Likewise.
4566         * tests/test-snprintf-posix.h (test_function): Likewise.
4567         * tests/test-sprintf-posix.h (test_function): Likewise.
4568
4569 2007-05-18  Bruno Haible  <bruno@clisp.org>
4570
4571         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
4572         (strmatch): New function.
4573         (test_function): Test the %f directive on numbers of various exponents.
4574         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
4575         (strmatch): New function.
4576         (test_function): Test the %f directive on numbers of various exponents.
4577         * tests/test-snprintf-posix.h (strmatch): New function.
4578         (test_function): Test the %f directive on numbers of various exponents.
4579         * tests/test-sprintf-posix.h (strmatch): New function.
4580         (test_function): Test the %f directive on numbers of various exponents.
4581         * tests/test-snprintf-posix.c (SIZEOF): New macro.
4582         * tests/test-sprintf-posix.c (SIZEOF): New macro.
4583         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
4584         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
4585
4586 2007-05-18  Bruno Haible  <bruno@clisp.org>
4587
4588         Add support for 'long double' number output.
4589         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
4590         * lib/vasnprintf.c: Include math.h and float+.h.
4591         (mp_limb_t): New type.
4592         (GMP_LIMB_BITS): New macro.
4593         (mp_twolimb_t): New type.
4594         (GMP_TWOLIMB_BITS): New macro.
4595         (mpn_t): New type.
4596         (multiply, divide, convert_to_decimal, decode_long_double,
4597         scale10_round_long_double, scale10_round_decimal_long_double,
4598         floorlog10l): New functions.
4599         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
4600         for the %f, %F, %e, %E, %g, %G directives.
4601         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
4602         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4603         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
4604         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
4605         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4606         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4607         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4608         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4609         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4610         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4611         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4612         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
4613         * modules/snprintf-posix (Depends-on): Likewise.
4614         * modules/sprintf-posix (Depends-on): Likewise.
4615         * modules/vasnprintf-posix (Depends-on): Likewise.
4616         * modules/vasprintf-posix (Depends-on): Likewise.
4617         * modules/vfprintf-posix (Depends-on): Likewise.
4618         * modules/vsnprintf-posix (Depends-on): Likewise.
4619         * modules/vsprintf-posix (Depends-on): Likewise.
4620         * modules/vasnprintf (Files): Add lib/float+.h.
4621         * doc/functions/fprintf.texi: Update.
4622         * doc/functions/printf.texi: Update.
4623         * doc/functions/snprintf.texi: Update.
4624         * doc/functions/sprintf.texi: Update.
4625         * doc/functions/vfprintf.texi: Update.
4626         * doc/functions/vprintf.texi: Update.
4627         * doc/functions/vsnprintf.texi: Update.
4628         * doc/functions/vsprintf.texi: Update.
4629
4630 2007-05-18  Bruno Haible  <bruno@clisp.org>
4631
4632         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
4633
4634 2007-05-18  Bruno Haible  <bruno@clisp.org>
4635
4636         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
4637         for printing 64-bit integers. Needed for mingw.
4638
4639 2007-05-18  Bruno Haible  <bruno@clisp.org>
4640
4641         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
4642         gl_FUNC_FREXPL_WORKS.
4643         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
4644
4645 2007-05-18  Bruno Haible  <bruno@clisp.org>
4646
4647         * modules/frexpl-nolibm-tests: New file.
4648
4649         * modules/frexpl-nolibm: New file.
4650         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
4651
4652 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
4653
4654         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
4655         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
4656         GCC 4.2, which otherwise issues a lot of warnings.
4657         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
4658         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
4659         Likewise.
4660         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
4661         * modules/iconv_open (iconv.h): Likewise.
4662         * modules/locale (locale.h): Likewise.
4663         * modules/netinet_in (netinet/in.h): Likewise.
4664         * modules/sys_select (sys_select.h): Likewise.
4665         * modules/sys_socket (sys/socket.h): Likewise.
4666         * modules/sys_stat (sys/stat.h): Likewise.
4667         * modules/sysexits (sysexits.h): Likewise.
4668         * modules/unistd (unistd.h): Likewise.
4669
4670 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4671
4672         * modules/closein-tests (Makefile.am): Distribute
4673         `test-closein.sh'.
4674
4675 2007-05-17  Bruno Haible  <bruno@clisp.org>
4676
4677         * tests/test-printf-posix.output: Renamed from
4678         tests/test-fprintf-posix.out.
4679         * modules/fprintf-posix-tests: Update.
4680         * modules/printf-posix-tests: Update.
4681         * modules/vfprintf-posix-tests: Update.
4682         * modules/vprintf-posix-tests: Update.
4683         * tests/test-fprintf-posix.sh: Update.
4684         * tests/test-printf-posix.sh: Update.
4685         * tests/test-vfprintf-posix.sh: Update.
4686         * tests/test-vprintf-posix.sh: Update.
4687         Reported by Ralf Wildenhues.
4688
4689 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
4690
4691         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
4692         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
4693         GCC 4.2, which otherwise issues a lot of warnings.
4694         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
4695         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
4696         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
4697         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
4698         it should no longer be needed.
4699         * lib/string_.h: Likewise.
4700         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
4701         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
4702         * modules/inttypes (inttypes.h): Likewise.
4703         * modules/math (math.h): Likewise.
4704         * modules/search (search.h): Likewise.
4705         * modules/signal (signal.h): Likewise.
4706         * modules/stdint (stdint.h): Likewise.
4707         * modules/stdio (stdio.h): Likewise.
4708         * modules/stdlib (stdlib.h): Likewise.
4709         * modules/string (string.h): Likewise.
4710         * modules/sys_time (sys/time.h): Likewise.
4711         * modules/time (time.h): Likewise.
4712         * modules/wchar (wchar.h): Likewise.
4713         * modules/wctype (wtype.h): Likewise.
4714
4715 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
4716
4717         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
4718
4719 2007-05-13  Bruno Haible  <bruno@clisp.org>
4720
4721         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
4722         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
4723         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
4724         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
4725         (gl_PREREQ_STRTOK_R): Don't require it here.
4726
4727 2007-05-13  Bruno Haible  <bruno@clisp.org>
4728
4729         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
4730         when used in C++ mode.
4731
4732 2007-05-12  Bruno Haible  <bruno@clisp.org>
4733
4734         * lib/linebuffer.h: Tweak doc.
4735         * lib/linebuffer.c: Likewise.
4736
4737 2007-05-12  James Youngman  <jay@gnu.org>
4738
4739         * lib/linebuffer.c (readlinebuffer_delim): New function,
4740         like readlinebuffer, but use a caller-specified delimiter.
4741         (readlinebuffer): Just call readlinebuffer_delim with '\n'
4742         as the delimiter.
4743         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
4744
4745 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
4746
4747         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
4748         * modules/openat (Files): Remove openat-die.c.
4749         (Depends-on): Add openat-die.
4750         * modules/openat-die: New module.
4751
4752 2007-05-06  Bruno Haible  <bruno@clisp.org>
4753
4754         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
4755         Update with info about Cygwin.
4756         * doc/functions/fprintf.texi: Update.
4757         * doc/functions/printf.texi: Update.
4758         * doc/functions/snprintf.texi: Update.
4759         * doc/functions/sprintf.texi: Update.
4760         * doc/functions/vfprintf.texi: Update.
4761         * doc/functions/vprintf.texi: Update.
4762         * doc/functions/vsnprintf.texi: Update.
4763         * doc/functions/vsprintf.texi: Update.
4764         Reported by Eric Blake.
4765
4766 2007-05-06  Bruno Haible  <bruno@clisp.org>
4767
4768         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
4769         padding ourselves for the floating-point directives.
4770         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
4771         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
4772         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4773         gl_PRINTF_FLAG_ZERO and test its result. Invoke
4774         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
4775         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4776         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
4777         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4778         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4779         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4780         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4781         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4782         * tests/test-snprintf-posix.h (test_function): Also check the width
4783         and some flags in the %f directive.
4784         * tests/test-sprintf-posix.h (test_function): Likewise.
4785         * tests/test-vasnprintf-posix.c (test_function): Likewise.
4786         * tests/test-vasprintf-posix.c (test_function): Likewise.
4787         * doc/functions/fprintf.texi: Update.
4788         * doc/functions/printf.texi: Update.
4789         * doc/functions/snprintf.texi: Update.
4790         * doc/functions/sprintf.texi: Update.
4791         * doc/functions/vfprintf.texi: Update.
4792         * doc/functions/vprintf.texi: Update.
4793         * doc/functions/vsnprintf.texi: Update.
4794         * doc/functions/vsprintf.texi: Update.
4795
4796 2007-05-06  Bruno Haible  <bruno@clisp.org>
4797
4798         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
4799         pass the ' flag character to sprintf or snprintf.
4800         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
4801         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
4802         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4803         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
4804         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
4805         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4806         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
4807         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4808         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4809         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4810         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4811         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4812         * tests/test-snprintf-posix.h (test_function): Also check the grouping
4813         flag.
4814         * tests/test-sprintf-posix.h (test_function): Likewise.
4815         * tests/test-vasnprintf-posix.c (test_function): Likewise.
4816         * tests/test-vasprintf-posix.c (test_function): Likewise.
4817         * doc/functions/fprintf.texi: Update.
4818         * doc/functions/printf.texi: Update.
4819         * doc/functions/snprintf.texi: Update.
4820         * doc/functions/sprintf.texi: Update.
4821         * doc/functions/vfprintf.texi: Update.
4822         * doc/functions/vprintf.texi: Update.
4823         * doc/functions/vsnprintf.texi: Update.
4824         * doc/functions/vsprintf.texi: Update.
4825
4826 2007-05-01  Bruno Haible  <bruno@clisp.org>
4827
4828         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
4829
4830 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
4831
4832         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
4833         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
4834
4835 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
4836
4837         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
4838         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
4839         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
4840
4841 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
4842
4843         * lib/argp-help.c (struct hol_entry): New member `ord'.
4844         (HOL_ENTRY_PTRCMP): Use ord for comparison
4845         (hol_sort): Initialize ord.
4846
4847 2007-05-01  Bruno Haible  <bruno@clisp.org>
4848
4849         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
4850         Reported by Eric Blake.
4851         * doc/gnulib.texi (Function Substitutes): Update.
4852
4853 2007-05-01  Bruno Haible  <bruno@clisp.org>
4854
4855         * doc/functions.texi: Remove file, now redundant through
4856         doc/functions/*.texi.
4857
4858 2007-05-01  Bruno Haible  <bruno@clisp.org>
4859
4860         * modules/argp (Depends-on): Add sleep.
4861
4862 2007-05-01  Bruno Haible  <bruno@clisp.org>
4863
4864         * modules/sleep-tests: New file.
4865         * tests/test-sleep.c: New file.
4866
4867         * modules/sleep: New file.
4868         * lib/sleep.c: New file.
4869         * m4/sleep.m4: New file.
4870         * lib/unistd_.h (sleep): New declaration.
4871         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
4872         HAVE_SLEEP.
4873         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
4874         * doc/functions/sleep.texi: Document the sleep module.
4875
4876 2007-05-01  Bruno Haible  <bruno@clisp.org>
4877
4878         * lib/sigprocmask.h: Remove file.
4879         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
4880         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
4881         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
4882         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
4883         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
4884         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
4885         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
4886         HAVE_SIGSET_T as a shell variable.
4887         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
4888         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
4889         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
4890         (Depends-on): Add signal. Remove verify.
4891         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
4892         (Include): Mention <signal.h> instead of sigprocmask.h.
4893         * NEWS: Mention the change.
4894         * lib/fatal-signal.c: Don't include sigprocmask.h.
4895
4896 2007-05-01  Bruno Haible  <bruno@clisp.org>
4897
4898         * modules/signal: New file.
4899         * lib/signal_.h: New file.
4900         * m4/signal_h.m4: New file.
4901
4902 2007-05-01  Bruno Haible  <bruno@clisp.org>
4903
4904         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
4905         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
4906         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
4907         HAVE_WCTYPE_CTMP_BUG into wctype.h.
4908
4909 2007-05-01  Bruno Haible  <bruno@clisp.org>
4910
4911         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
4912         configure time.
4913         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
4914         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
4915         * modules/sys_stat (Makefile.am): Substitute their values into
4916         sys/stat.h.
4917
4918 2007-05-01  Bruno Haible  <bruno@clisp.org>
4919
4920         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
4921         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
4922         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
4923
4924 2007-05-01  Bruno Haible  <bruno@clisp.org>
4925
4926         * doc/header/assert.texi: Undo last change: don't mention the gnulib
4927         'assert' module here.
4928
4929 2007-05-01  Bruno Haible  <bruno@clisp.org>
4930
4931         * doc/functions/*.texi: New files.
4932         * doc/functions/google-ranking.txt: New file.
4933         * doc/gnulib.texi (Function Substitutes): New chapter.
4934         (ctime, inet_ntoa): Remove sections.
4935         * doc/ctime.texi: Remove file.
4936         * doc/inet_ntoa.texi: Remove file.
4937         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
4938         dependencies.
4939         (%.info): New rule, specifying a --reference-limit.
4940
4941 2007-05-01  Bruno Haible  <bruno@clisp.org>
4942
4943         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
4944
4945 2007-05-01  Bruno Haible  <bruno@clisp.org>
4946
4947         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
4948         the portability of 'mkdir' to mingw systems.
4949
4950 2007-05-01  Bruno Haible  <bruno@clisp.org>
4951
4952         * doc/headers/google-ranking.txt: New file.
4953
4954 2007-04-30  Eric Blake  <ebb9@byu.net>
4955
4956         Prefer fseeko to fseek.
4957         * modules/getpass (Depends-on): Add fseeko.
4958         * lib/getpass.c (getpass): Use fseeko, not fseek.
4959
4960 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
4961
4962         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
4963         assumes the sorting is stable, while most qsort implementations
4964         are not.  Use argument addresses to ensure they never compare as
4965         equal.
4966
4967         * tests/test-argp-2.sh (usage-indent test): Fix output
4968         (func_compare): Restore diff options
4969         * tests/test-argp.c: Restore #include "progname.h"
4970
4971 2007-04-29  Bruno Haible  <bruno@clisp.org>
4972
4973         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
4974         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
4975         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
4976         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4977         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
4978         (configure.ac): Define CHECK_SNPRINTF_POSIX.
4979         (TESTS, check_PROGRAMS): Add test-snprintf.
4980         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
4981         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
4982         (TESTS, check_PROGRAMS): Add test-vsnprintf.
4983         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
4984         assertions that fail on HP-UX, OSF/1, or IRIX.
4985         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
4986
4987 2007-04-29  Bruno Haible  <bruno@clisp.org>
4988
4989         * MODULES.html.sh (posix_functions): Remove 'contents'.
4990
4991 2007-04-29  Karl Berry  <karl@gnu.org>
4992
4993         * config/srclist.txt (gendocs_template_min): new entry.
4994
4995 2007-04-29  Bruno Haible  <bruno@clisp.org>
4996
4997         Work around fpurge bug on BSD systems.
4998         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
4999         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
5000         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
5001         fpurge to rpl_fpurge if the system already has this function.
5002         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
5003         the case where the system already has this function. Correct invariants
5004         on BSD systems.
5005         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
5006         BSD systems.
5007
5008 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
5009
5010         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
5011         proposed by Sven Verdoolaege.
5012
5013         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
5014         options.
5015         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
5016         (usage and help tests): Update
5017
5018 2007-04-29  Bruno Haible  <bruno@clisp.org>
5019
5020         * tests/test-fflush.c (main): Use a file of size 17, not 10.
5021         Print more information in case of failure. Disable a test on BeOS.
5022
5023 2007-04-29  Bruno Haible  <bruno@clisp.org>
5024
5025         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
5026         This helps debugging on systems on which no gdb is available.
5027
5028 2007-04-29  Bruno Haible  <bruno@clisp.org>
5029
5030         * lib/freading.h: Improve comments.
5031         * lib/fwriting.h: Likewise.
5032         * tests/test-freading.c (main): Don't check freading immediately after
5033         repositioning. Needed for glibc.
5034
5035 2007-04-29  Bruno Haible  <bruno@clisp.org>
5036
5037         * lib/freading.c (freading): Trivial simplification.
5038
5039 2007-04-28  Bruno Haible  <bruno@clisp.org>
5040
5041         * tests/test-fwriting.c (main): Also test the interaction between
5042         fflush and fwriting.
5043         * modules/fwriting-tests (Depends-on): Add fflush.
5044
5045         * tests/test-freading.c (main): Also test the interaction between
5046         fflush and freading.
5047         * modules/freading-tests (Depends-on): Add fflush.
5048
5049 2007-04-28  Bruno Haible  <bruno@clisp.org>
5050
5051         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
5052         fseeko and ftello.
5053         Suggested by Eric Blake.
5054
5055 2007-04-28  Jim Meyering  <jim@meyering.net>
5056
5057         Avoid false-negative in gl_STDINT_H's C99 conformance test.
5058         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
5059         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
5060
5061 2007-04-27  Eric Blake  <ebb9@byu.net>
5062
5063         * doc/headers/assert.texi (assert.h): Document assert module use.
5064
5065 2007-04-27  Bruno Haible  <bruno@clisp.org>
5066
5067         * doc/headers/*.texi: New files.
5068         * doc/gnulib.texi (Header File Substitutes): New chapter.
5069         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
5070         dependencies.
5071         (standards.info ,standards.html, standards.dvi): Update dependencies.
5072         (mostlyclean, clean): New targets.
5073
5074 2007-04-27  Bruno Haible  <bruno@clisp.org>
5075
5076         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
5077         * modules/sysexits (Files, Makefile.am): Update.
5078
5079         * lib/sys_socket_.h: Renamed from lib/socket_.h.
5080         * modules/sys_socket (Files, Makefile.am): Update.
5081
5082         * lib/sys_stat_.h: Renamed from lib/stat_.h.
5083         * modules/sys_stat (Files, Makefile.am): Update.
5084
5085 2007-04-27  Eric Blake  <ebb9@byu.net>
5086
5087         * lib/freading.h: Improve comments.
5088         * lib/fwriting.h: Likewise.
5089         * lib/fflush.c: Likewise.
5090
5091         Fix closein for mingw.
5092         * modules/closein-tests: Add tests for closein.
5093         * tests/test-closein.c: New file.
5094         * tests/test-closein.sh: Likewise.
5095         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
5096         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
5097
5098 2007-04-27  Bruno Haible  <bruno@clisp.org>
5099
5100         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
5101         version is < 6.
5102         * lib/math_.h [__DECC]: Likewise.
5103         * lib/stdio_.h [__DECC]: Likewise.
5104         * lib/stdlib_.h [__DECC]: Likewise.
5105         * lib/string_.h [__DECC]: Likewise.
5106         * lib/time_.h [__DECC]: Likewise.
5107         * lib/wchar_.h [__DECC]: Likewise.
5108         * lib/wctype_.h [__DECC]: Likewise.
5109
5110 2007-04-27  Bruno Haible  <bruno@clisp.org>
5111
5112         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
5113
5114 2007-04-27  Bruno Haible  <bruno@clisp.org>
5115
5116         * lib/fflush.c: Add comments.
5117         * modules/fpurge-tests (Depends-on): Add fflush.
5118         * modules/freadable-tests (Depends-on): Likewise.
5119         * modules/fwritable-tests (Depends-on): Likewise.
5120
5121 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
5122
5123         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
5124         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
5125         Report by Bruno Haible <bruno@clisp.org>.
5126
5127 2007-04-26  Eric Blake  <ebb9@byu.net>
5128
5129         Fix fflush on mingw.
5130         * modules/fflush (Depends-on): Add freading.
5131         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
5132         but unread data.
5133
5134 2007-04-26  Eric Blake  <ebb9@byu.net>
5135         and Bruno Haible  <bruno@clisp.org>
5136
5137         Implement freading and fwriting.
5138         * lib/freading.c: New file.
5139         * lib/freading.h: Likewise.
5140         * m4/freading.m4: Likewise.
5141         * modules/freading: Likewise.
5142         * modules/freading-tests: Likewise.
5143         * tests/test-freading.c: Likewise.
5144         * lib/fwriting.c: New file.
5145         * lib/fwriting.h: Likewise.
5146         * m4/fwriting.m4: Likewise.
5147         * modules/fwriting: Likewise.
5148         * modules/fwriting-tests: Likewise.
5149         * tests/test-fwriting.c: Likewise.
5150         * MODULES.html.sh (File stream based Input/Output): Mention them.
5151
5152 2007-04-26  Bruno Haible  <bruno@clisp.org>
5153
5154         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
5155         'long' when we assume it.
5156         Suggested by Eric Blake.
5157
5158 2007-04-26  Bruno Haible  <bruno@clisp.org>
5159
5160         Ensure fseeko, ftello are declared on glibc systems.
5161         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
5162         * modules/fseeko (configure.ac-early): Likewise.
5163         * modules/ftello (configure.ac-early): Likewise.
5164         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
5165         AC_FUNC_FSEEKO for this.
5166         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
5167         (gl_CHECK_FSEEKO): Remove macro.
5168
5169 2007-04-26  Bruno Haible  <bruno@clisp.org>
5170
5171         * tests/test-fflush.c (main): Also check the ftell result after
5172         fflush and fseek/fseeko.
5173         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
5174         file descriptor position cache in the stream.
5175         * lib/fseeko.c (rpl_fseeko): Likewise.
5176
5177 2007-04-26  Bruno Haible  <bruno@clisp.org>
5178
5179         * modules/fflush-tests (Depends-on): Add fseeko.
5180
5181 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
5182             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5183
5184         * lib/argz_.h: ensure error_t definition is obtained in same
5185         mechanism system argz.h would have.
5186         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
5187         argz facilities are known bad.  Err on the side of caution if
5188         cross-compiling.
5189
5190 2007-04-25  Eric Blake  <ebb9@byu.net>
5191
5192         * lib/fpurge.c (includes): Use stdlib.h for free.
5193         * tests/test-fflush.c (main): Also test fflush-fseeko.
5194
5195 2007-04-25  Bruno Haible  <bruno@clisp.org>
5196
5197         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
5198         * lib/fseeko.c: New file.
5199         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
5200         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
5201         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
5202         gl_FUNC_FSEEKO.
5203         (gl_FUNC_FSEEKO): Invoke it.
5204         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
5205         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
5206         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
5207
5208 2007-04-25  Bruno Haible  <bruno@clisp.org>
5209
5210         * modules/fflush (Depends-on): Add ftello.
5211
5212 2007-04-25  Bruno Haible  <bruno@clisp.org>
5213
5214         * modules/ftello-tests: New file.
5215         * tests/test-ftello.c: New file.
5216
5217         * modules/ftello: New file.
5218         * m4/ftello.m4: New file.
5219         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
5220         HAVE_FTELLO.
5221         * lib/stdio_.h (ftello): New declaration.
5222         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
5223         HAVE_FTELLO.
5224
5225 2007-04-25  Bruno Haible  <bruno@clisp.org>
5226
5227         * modules/fseeko-tests: New file.
5228         * tests/test-fseeko.c: New file.
5229
5230         * modules/fseeko: New file.
5231         * m4/fseeko.m4: New file.
5232         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
5233         HAVE_FSEEKO.
5234         * lib/stdio_.h (fseeko): New declaration.
5235         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
5236         HAVE_FSEEKO.
5237
5238 2007-04-25  Bruno Haible  <bruno@clisp.org>
5239
5240         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
5241
5242 2007-04-25  Bruno Haible  <bruno@clisp.org>
5243
5244         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
5245         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
5246         * tests/test-unistd.c: Likewise.
5247         * tests/test-fcntl.c: Likewise.
5248
5249 2007-04-23  Eric Blake  <ebb9@byu.net>
5250
5251         * lib/fflush.c: Fix missing include.
5252         Reported by Bruno Haible.
5253
5254 2007-04-23  Bruno Haible  <bruno@clisp.org>
5255
5256         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
5257         Reported by Eric Blake.
5258
5259 2007-04-23  Bruno Haible  <bruno@clisp.org>
5260
5261         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
5262
5263 2007-04-23  Bruno Haible  <bruno@clisp.org>
5264
5265         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
5266
5267 2007-04-23  Bruno Haible  <bruno@clisp.org>
5268
5269         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
5270         Needed on HP-UX 11.
5271
5272 2007-04-16  Eric Blake  <ebb9@byu.net>
5273
5274         Make fflush rely on fpurge.
5275         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
5276         open coding all variants.
5277         * modules/fflush (Depends-on): Add fpurge and unistd.
5278         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
5279         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
5280
5281         Fix --with-tests compilation on cygwin.
5282         * modules/argmatch-tests (Makefile.am): List gnulib library first
5283         in LDADD.
5284         * modules/argp-tests (Makefile.am): Likewise.
5285         * modules/array-list-tests (Makefile.am): Likewise.
5286         * modules/array-oset-tests (Makefile.am): Likewise.
5287         * modules/avltree-list-tests (Makefile.am): Likewise.
5288         * modules/avltree-oset-tests (Makefile.am): Likewise.
5289         * modules/avltreehash-list-tests (Makefile.am): Likewise.
5290         * modules/carray-list-tests (Makefile.am): Likewise.
5291         * modules/dirname-tests (Makefile.am): Likewise.
5292         * modules/frexp-tests (Makefile.am): Likewise.
5293         * modules/isnanl-tests (Makefile.am): Likewise.
5294         * modules/linked-list-tests (Makefile.am): Likewise.
5295         * modules/linkedhash-list-tests (Makefile.am): Likewise.
5296         * modules/lock-tests (Makefile.am): Likewise.
5297         * modules/rbtree-list-tests (Makefile.am): Likewise.
5298         * modules/rbtree-oset-tests (Makefile.am): Likewise.
5299         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
5300         * modules/tls-tests (Makefile.am): Likewise.
5301         * modules/tsearch-tests (Makefile.am): Likewise.
5302         * modules/xvasprintf-tests (Makefile.am): Likewise.
5303
5304         Fix fpurge for cygwin.
5305         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
5306         value.
5307         * modules/fpurge-tests (Depends-on): Clean up trash.
5308
5309 2007-04-16  Simon Josefsson  <simon@josefsson.org>
5310
5311         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
5312
5313         * m4/autobuild.m4: Re-indent.
5314
5315 2007-04-13  Bruno Haible  <bruno@clisp.org>
5316
5317         * modules/fpurge-tests: New file.
5318         * tests/test-fpurge.c: New file.
5319
5320         * modules/fpurge: New file.
5321         * lib/fpurge.h: New file.
5322         * lib/fpurge.c: New file.
5323         * m4/fpurge.m4: New file.
5324
5325 2007-04-13  Bruno Haible  <bruno@clisp.org>
5326
5327         * modules/fbufmode-tests: New file.
5328         * tests/test-fbufmode.c: New file.
5329
5330         * modules/fbufmode: New file.
5331         * lib/fbufmode.h: New file.
5332         * lib/fbufmode.c: New file.
5333         * m4/fbufmode.m4: New file.
5334
5335 2007-04-13  Bruno Haible  <bruno@clisp.org>
5336
5337         * modules/fwritable-tests: New file.
5338         * tests/test-fwritable.c: New file.
5339
5340         * modules/fwritable: New file.
5341         * lib/fwritable.h: New file.
5342         * lib/fwritable.c: New file.
5343         * m4/fwritable.m4: New file.
5344
5345 2007-04-13  Bruno Haible  <bruno@clisp.org>
5346
5347         * modules/freadable-tests: New file.
5348         * tests/test-freadable.c: New file.
5349
5350         * modules/freadable: New file.
5351         * lib/freadable.h: New file.
5352         * lib/freadable.c: New file.
5353         * m4/freadable.m4: New file.
5354
5355 2007-04-13  Bruno Haible  <bruno@clisp.org>
5356
5357         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
5358         MOSTLYCLEANFILES.
5359
5360 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
5361
5362         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
5363         gzip bootstrap.conf to avoid dragging in i18n machinery.
5364         (gnulib_tool_option): Use it.
5365
5366 2007-04-13  Bruno Haible  <bruno@clisp.org>
5367
5368         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
5369         %F directives.
5370         * tests/test-vasprintf-posix.c (test_function): Likewise.
5371         * tests/test-snprintf-posix.h (test_function): Likewise.
5372         * tests/test-sprintf-posix.h (test_function): Likewise.
5373         * tests/test-fprintf-posix.h (test_function): Likewise.
5374         * tests/test-printf-posix.h (test_function): Likewise.
5375         * tests/test-fprintf-posix.out: Likewise.
5376
5377 2007-04-13  Bruno Haible  <bruno@clisp.org>
5378
5379         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
5380         * modules/tls-tests (configure.ac): Likewise.
5381         Reported by Arto C. Nirkko <anirkko@insel.ch>.
5382
5383 2007-04-13  Bruno Haible  <bruno@clisp.org>
5384
5385         * lib/tls.c (glthread_tls_get): Fix return type.
5386         Patch by Arto C. Nirkko <anirkko@insel.ch>.
5387
5388 2007-04-12  Eric Blake  <ebb9@byu.net>
5389
5390         * modules/gettime (Depends-on): Remove gettime.
5391         Reported by Dmitry V. Levin.
5392
5393 2007-04-12  Bruno Haible  <bruno@clisp.org>
5394
5395         * modules/fflush (Include): Mention <stdio.h>.
5396         * modules/strtoimax (Include): Mention <inttypes.h>.
5397         * modules/strtoumax (Include): Likewise.
5398
5399 2007-04-12  Eric Blake  <ebb9@byu.net>
5400
5401         * .cvsignore: New file.
5402         * .gitignore: Likewise.
5403
5404 2007-04-12  Bruno Haible  <bruno@clisp.org>
5405
5406         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
5407         not before, since $(LDADD) often contains libgnu.a.
5408         * modules/striconv-tests (test_striconv_LDADD): Likewise.
5409         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
5410         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
5411         Needed on Cygwin.
5412
5413 2007-04-12  Eric Blake  <ebb9@byu.net>
5414
5415         Work around glibc's failure to flush stdin on fclose.
5416         * lib/closein.c (close_stdin): Flush stdin before closing.
5417
5418         Work around glibc's failure to reset seekable stdin on exit.
5419         * modules/closein: New module.
5420         * lib/closein.c: New file.
5421         * lib/closein.h: Likewise.
5422         * m4/closein.m4: Likewise.
5423         * MODULES.html.sh (File stream based Input/Output): Document it.
5424
5425 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5426
5427         * gnulib-tool: Rename generated 'autobuild' script to
5428         'do-autobuild' in --create-megatestdir output.
5429
5430         * doc/gnulib.texi (Build robot for gnulib): Fix.
5431
5432 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5433
5434         * modules/sysexits (Depends-on): Add absolute-header.
5435
5436 2007-04-12  Eric Blake  <ebb9@byu.net>
5437
5438         No need to preserve errno on success.
5439         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
5440         Reported by Bruno Haible.
5441
5442 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5443
5444         * MODULES.html.sh (Support for maintaining and releasing
5445         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
5446
5447 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5448
5449         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
5450
5451 2007-04-12  Simon Josefsson  <simon@josefsson.org>
5452
5453         * modules/autobuild: New module.
5454
5455         * m4/autobuild.m4: New file.
5456
5457 2007-04-11  Bruno Haible  <bruno@clisp.org>
5458
5459         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
5460         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
5461         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
5462         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
5463         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
5464         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5465         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5466         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
5467         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5468         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5469         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
5470         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5471         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5472         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
5473         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5474         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5475         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
5476         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5477         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5478         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
5479         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5480         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5481         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
5482         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5483         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5484         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
5485         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
5486         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
5487         Reported by Eric Blake.
5488
5489 2007-04-11  Bruno Haible  <bruno@clisp.org>
5490
5491         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
5492
5493 2007-04-10  Bruno Haible  <bruno@clisp.org>
5494
5495         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
5496         for NaN and Infinity. Needed on FreeBSD 6.1.
5497         * tests/test-vasnprintf-posix.c (test_function): Undo last change
5498         regarding results for "%010a" of Infinity and NaN.
5499         * tests/test-vasprintf-posix.c (test_function): Likewise.
5500         * tests/test-snprintf-posix.h (test_function): Likewise.
5501         * tests/test-sprintf-posix.h (test_function): Likewise.
5502         * tests/test-fprintf-posix.h (test_function): Likewise.
5503         * tests/test-printf-posix.h (test_function): Likewise.
5504         * tests/test-fprintf-posix.out: Likewise.
5505
5506 2007-04-10  Bruno Haible  <bruno@clisp.org>
5507
5508         * modules/locale-tests: New file.
5509         * tests/test-locale.c: New file.
5510
5511         * modules/locale: New file.
5512         * lib/locale_.h: New file.
5513         * m4/locale_h.m4: New file.
5514
5515 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
5516             Bruno Haible  <bruno@clisp.org>
5517
5518         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
5519         be determined, test for availability of the copysignf, copysign,
5520         copysignl functions.
5521         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
5522         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
5523         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
5524
5525 2007-04-09  Eric Blake  <ebb9@byu.net>
5526
5527         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
5528         * modules/stdio (Makefile.am): Support fflush.
5529         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
5530         * modules/fflush: New file.
5531         * lib/fflush.c: Likewise.
5532         * m4/fflush.m4: Likewise.
5533         * modules/fflush-tests: New test.
5534         * tests/test-fflush.c: Likewise.
5535         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
5536
5537 2007-04-06  Bruno Haible  <bruno@clisp.org>
5538
5539         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
5540         (VASNPRINTF): Use signbit for faster determination whether to print a
5541         minus sign.
5542         * modules/vasnprintf (Files): Remove lib/float+.h.
5543         * modules/fprintf-posix (Depends-on): Add signbit.
5544         * modules/snprintf-posix (Depends-on): Likewise.
5545         * modules/sprintf-posix (Depends-on): Likewise.
5546         * modules/vasnprintf-posix (Depends-on): Likewise.
5547         * modules/vasprintf-posix (Depends-on): Likewise.
5548         * modules/vfprintf-posix (Depends-on): Likewise.
5549         * modules/vsnprintf-posix (Depends-on): Likewise.
5550         * modules/vsprintf-posix (Depends-on): Likewise.
5551
5552 2007-04-06  Bruno Haible  <bruno@clisp.org>
5553
5554         * tests/test-frexp.c (main): Test also the sign bit of zero results.
5555         * tests/test-frexpl.c (main): Likewise.
5556         * tests/test-ldexpl.c (main): Likewise.
5557         * modules/frexp-tests (Depends-on): Add signbit.
5558         * modules/frexpl-tests (Depdends-on): Likewise.
5559         * modules/ldexpl-tests (Depdends-on): Likewise.
5560
5561 2007-04-06  Bruno Haible  <bruno@clisp.org>
5562
5563         * modules/signbit-tests: New file.
5564         * tests/test-signbit.c: New file.
5565
5566         * modules/signbit: New file.
5567         * lib/signbitf.c: New file.
5568         * lib/signbitd.c: New file.
5569         * lib/signbitl.c: New file.
5570         * m4/signbit.m4: New file.
5571         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
5572         (signbit): New macro.
5573         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
5574         REPLACE_SIGNBIT.
5575         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
5576         REPLACE_FREXPL into math.h.
5577
5578 2007-04-06  Bruno Haible  <bruno@clisp.org>
5579
5580         * modules/isnanf-nolibm-tests: New file.
5581         * tests/test-isnanf.c: New file.
5582
5583         * modules/isnanf-nolibm: New file.
5584         * lib/isnanf.h: New file.
5585         * lib/isnanf.c: New file.
5586         * lib/isnan.c: Consider the USE_FLOAT macro.
5587         * m4/isnanf.m4: New file.
5588
5589 2007-04-06  Bruno Haible  <bruno@clisp.org>
5590
5591         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
5592         (Link): New section.
5593
5594         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
5595
5596 2007-04-06  Bruno Haible  <bruno@clisp.org>
5597
5598         Assume the 'long double' type.
5599         * m4/longdouble.m4: Remove file.
5600         * config/srclist.txt: Don't mention longdouble.m4.
5601         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
5602         * lib/float+.h: Likewise.
5603         * lib/frexp.c: Likewise.
5604         * lib/printf-args.h: Likewise.
5605         * lib/printf-args.c: Likewise.
5606         * lib/printf-frexp.c: Likewise.
5607         * lib/printf-parse.c: Likewise.
5608         * lib/vasnprintf.c: Likewise.
5609         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
5610         * m4/intl.m4: Likewise.
5611         * m4/isnanl.m4: Likewise.
5612         * m4/printf.m4: Likewise.
5613         * m4/printf-frexpl.m4: Likewise.
5614         * m4/vasnprintf.m4: Likewise.
5615         * modules/allocsa (Files): Remove m4/longdouble.m4.
5616         * modules/gettext (Files): Likewise.
5617         * modules/relocatable-prog-wrapper (Files): Likewise.
5618         * modules/vasnprintf (Files): Likewise.
5619         * modules/isnanl (Files): Likewise.
5620         (Include): Simplify.
5621         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
5622         (Include): Simplify.
5623         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
5624         (Include): Simplify.
5625         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
5626         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5627         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
5628         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5629         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
5630         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5631         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
5632         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5633         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
5634         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5635         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
5636         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
5637         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
5638         * tests/test-isnanl.c: Likewise.
5639         * tests/test-snprintf-posix.h: Likewise.
5640         * tests/test-sprintf-posix.h: Likewise.
5641         * tests/test-vasnprintf-posix.c: Likewise.
5642         * tests/test-vasnprintf-posix2.c: Likewise.
5643         * tests/test-vasprintf-posix.c: Likewise.
5644
5645 2007-04-06  Bruno Haible  <bruno@clisp.org>
5646
5647         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
5648         * lib/math_.h [__DECC]: Include the overridden include file through
5649         #include_next, outside the double-inclusion guard.
5650         * lib/stdio_.h [__DECC]: Likewise.
5651         * lib/stdlib_.h [__DECC]: Likewise.
5652         * lib/string_.h [__DECC]: Likewise.
5653         * lib/time_.h [__DECC]: Likewise.
5654         * lib/wchar_.h [__DECC]: Likewise.
5655         * lib/wctype_.h [__DECC]: Likewise.
5656         * lib/inttypes_.h [__DECC]: Likewise.
5657         Reported by Albert Chin <china@thewrittenword.com> in
5658         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
5659
5660 2007-04-04  Eric Blake  <ebb9@byu.net>
5661
5662         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
5663         1.5.x.
5664
5665 2007-04-04  Bruno Haible  <bruno@clisp.org>
5666
5667         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
5668         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
5669
5670 2007-04-04  Bruno Haible  <bruno@clisp.org>
5671
5672         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
5673         results for "%010a" of Infinity and NaN.
5674         * tests/test-vasprintf-posix.c (test_function): Likewise.
5675         * tests/test-snprintf-posix.h (test_function): Likewise.
5676         * tests/test-sprintf-posix.h (test_function): Likewise.
5677         * tests/test-fprintf-posix.h (test_function): Remove these tests.
5678         * tests/test-printf-posix.h (test_function): Likewise.
5679         * tests/test-fprintf-posix.out: Update.
5680         Needed for FreeBSD 6.1.
5681
5682 2007-04-04  Bruno Haible  <bruno@clisp.org>
5683
5684         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
5685         directly used by the gnulib modules nor by gnulib-tool.
5686
5687 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
5688
5689         * DEPENDENCIES: Give overall description of version dependency
5690         desirability.  Use more-typical names for apps.
5691         Add shell, coreutils, diffutils, grep, tar, gzip.
5692
5693 2007-04-04  Simon Josefsson  <simon@josefsson.org>
5694
5695         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
5696
5697 2007-04-04  Karl Berry  <karl@gnu.org>
5698
5699         * MODULES.html.sh (func_module): missing '.
5700
5701 2007-04-03  Bruno Haible  <bruno@clisp.org>
5702
5703         * modules/argmatch-tests (Makefile.am): New variable
5704         test_argmatch_LDADD.
5705         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
5706         * modules/array-list-tests (Makefile.am): New variable
5707         test_array_list_LDADD.
5708         * modules/array-oset-tests (Makefile.am): New variable
5709         test_array_oset_LDADD.
5710         * modules/avltree-list-tests (Makefile.am): New variable
5711         test_avltree_list_LDADD.
5712         * modules/avltree-oset-tests (Makefile.am): New variable
5713         test_avltree_oset_LDADD.
5714         * modules/avltreehash-list-tests (Makefile.am): New variable
5715         test_avltreehash_list_LDADD.
5716         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
5717         test_canonicalize_lgpl_LDADD.
5718         * modules/carray-list-tests (Makefile.am): New variable
5719         test_carray_list_LDADD.
5720         * modules/dirname-tests (Makefile.am): New variable
5721         test_dirname_LDADD.
5722         * modules/linked-list-tests (Makefile.am): New variable
5723         test_linked_list_LDADD.
5724         * modules/linkedhash-list-tests (Makefile.am): New variable
5725         test_linkedhash_list_LDADD.
5726         * modules/rbtree-list-tests (Makefile.am): New variable
5727         test_rbtree_list_LDADD.
5728         * modules/rbtree-oset-tests (Makefile.am): New variable
5729         test_rbtree_oset_LDADD.
5730         * modules/rbtreehash-list-tests (Makefile.am): New variable
5731         test_rbtreehash_list_LDADD.
5732         * modules/xvasprintf-tests (Makefile.am): New variable
5733         test_xvasprintf_LDADD.
5734         Reported by Eric Blake.
5735
5736 2007-04-03  Eric Blake  <ebb9@byu.net>
5737
5738         * DEPENDENCIES: Weaken m4 requirements.
5739
5740 2007-04-03  Bruno Haible  <bruno@clisp.org>
5741
5742         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
5743         * modules/isnanl-tests (configure.ac): Likewise.
5744
5745 2007-04-03  Ben Pfaff  <blp@gnu.org>
5746
5747         * modules/iconv_open: Add $(srcdir)/ to source directory
5748         references in Makefile fragments that call gperf, to fix VPATH
5749         builds.
5750
5751 2007-04-03  Bruno Haible  <bruno@clisp.org>
5752
5753         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
5754         * lib/ldexpl.c: Undo last change.
5755
5756 2007-04-03  Bruno Haible  <bruno@clisp.org>
5757
5758         * modules/printf-frexpl (Depends-on): Undo last change.
5759         (Files): Add m4/ldexpl.m4.
5760
5761 2007-04-03  Bruno Haible  <bruno@clisp.org>
5762
5763         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
5764         * modules/isnanl (Link): New section.
5765
5766         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
5767         * modules/frexp (Link): New section.
5768
5769         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
5770         * modules/frexpl (Link): New section.
5771
5772         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
5773         * modules/ldexpl (Link): New section.
5774
5775 2007-04-03  Bruno Haible  <bruno@clisp.org>
5776
5777         * modules/TEMPLATE-EXTENDED: New file.
5778         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
5779
5780 2007-04-03  Bruno Haible  <bruno@clisp.org>
5781
5782         * DEPENDENCIES: New file.
5783         Suggested by Simon Josefsson.
5784
5785 2007-04-03  Bruno Haible  <bruno@clisp.org>
5786
5787         * doc/gnulib.texi: Escape @.
5788
5789 2007-04-03  James Youngman  <jay@gnu.org>
5790         and Paul Eggert  <eggert@cs.ucla.edu>
5791
5792         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
5793         birthtime on all systems that have birthtime, not just those which
5794         use st_birthtimensec rather than st_birthtim.  Putting zero in
5795         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
5796         that the birth time is not available for files on an NFS mount.
5797
5798 2007-04-03  Simon Josefsson  <simon@josefsson.org>
5799
5800         * modules/memxor: Move back from crypto/, suggested by Bruno.
5801         * modules/crypto/hmac-sha1: Fix memxor dependency.
5802
5803         * modules/crypto/gc: Moved from ../.
5804
5805 2007-04-02  Eric Blake  <ebb9@byu.net>
5806
5807         * lib/ldexpl.c (includes): Avoid libm.
5808
5809         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
5810
5811 2007-04-02  Bruno Haible  <bruno@clisp.org>
5812
5813         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
5814         on IRIX.
5815
5816 2007-04-02  Bruno Haible  <bruno@clisp.org>
5817
5818         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
5819         x86 or x86_64 platforms running MacOS X.
5820         Reported by Ryan Schmidt <@ryandesign.com>.
5821
5822 2007-04-02  Bruno Haible  <bruno@clisp.org>
5823
5824         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
5825         i386.
5826
5827 2007-04-01  Simon Josefsson  <simon@josefsson.org>
5828
5829         * modules/crypto/arcfour: Moved from ../.
5830         * modules/crypto/arcfour-tests: Moved from ../.
5831         * modules/crypto/arctwo: Moved from ../.
5832         * modules/crypto/arctwo-tests: Moved from ../.
5833         * modules/crypto/des: Moved from ../.
5834         * modules/crypto/des-tests: Moved from ../.
5835         * modules/crypto/gc-arcfour: Moved from ../.
5836         * modules/crypto/gc-arcfour-tests: Moved from ../.
5837         * modules/crypto/gc-arctwo: Moved from ../.
5838         * modules/crypto/gc-arctwo-tests: Moved from ../.
5839         * modules/crypto/gc-des: Moved from ../.
5840         * modules/crypto/gc-des-tests: Moved from ../.
5841         * modules/crypto/gc-hmac-md5: Moved from ../.
5842         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
5843         * modules/crypto/gc-hmac-sha1: Moved from ../.
5844         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
5845         * modules/crypto/gc-md2: Moved from ../.
5846         * modules/crypto/gc-md2-tests: Moved from ../.
5847         * modules/crypto/gc-md4: Moved from ../.
5848         * modules/crypto/gc-md4-tests: Moved from ../.
5849         * modules/crypto/gc-md5: Moved from ../.
5850         * modules/crypto/gc-md5-tests: Moved from ../.
5851         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
5852         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
5853         * modules/crypto/gc-random: Moved from ../.
5854         * modules/crypto/gc-rijndael: Moved from ../.
5855         * modules/crypto/gc-rijndael-tests: Moved from ../.
5856         * modules/crypto/gc-sha1: Moved from ../.
5857         * modules/crypto/gc-sha1-tests: Moved from ../.
5858         * modules/crypto/gc-tests: Moved from ../.
5859         * modules/crypto/hmac-md5: Moved from ../.
5860         * modules/crypto/hmac-md5-tests: Moved from ../.
5861         * modules/crypto/hmac-sha1: Moved from ../.
5862         * modules/crypto/hmac-sha1-tests: Moved from ../.
5863         * modules/crypto/md2: Moved from ../.
5864         * modules/crypto/md2-tests: Moved from ../.
5865         * modules/crypto/md4: Moved from ../.
5866         * modules/crypto/md4-tests: Moved from ../.
5867         * modules/crypto/md5: Moved from ../.
5868         * modules/crypto/md5-tests: Moved from ../.
5869         * modules/crypto/memxor: Moved from ../.
5870         * modules/crypto/rijndael: Moved from ../.
5871         * modules/crypto/rijndael-tests: Moved from ../.
5872         * modules/crypto/sha1: Moved from ../.
5873
5874 2007-03-30  James Youngman  <jay@gnu.org>
5875
5876         * tests/test-stat-time.c (prepare_test): use chmod() rather than
5877         rename() to change the ctime of a file (because ctime is unaffected
5878         by rename on jfs2 on AIX 5.1).
5879         (main): Start by doing cleanup, in case a previous run failed leaving
5880         test files behind.
5881
5882 2007-03-31  Bruno Haible  <bruno@clisp.org>
5883
5884         Support old proprietary implementations of iconv.
5885         * modules/iconv_open: New file.
5886         * lib/iconv_.h: New file.
5887         * m4/iconv_h.m4: New file.
5888         * lib/iconv_open.c: New file.
5889         * lib/iconv_open-aix.gperf: New file.
5890         * lib/iconv_open-hpux.gperf: New file.
5891         * lib/iconv_open-irix.gperf: New file.
5892         * lib/iconv_open-osf.gperf: New file.
5893         * m4/iconv_open.m4: New file.
5894         * modules/linebreak (Depends-on): Add iconv_open.
5895         * modules/striconv (Depends-on): Likewise.
5896         * modules/striconveh (Depends-on): Likewise.
5897         * modules/unicodeio (Depends-on): Likewise.
5898         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
5899         (iconv_t)(-1).
5900         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
5901         conversion if cd is (iconv_t)(-1).
5902         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
5903         is not possible.
5904
5905 2007-03-31  Bruno Haible  <bruno@clisp.org>
5906
5907         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
5908         work on Solaris either. Protect also second use of "autodetect_jp".
5909
5910 2007-03-31  Bruno Haible  <bruno@clisp.org>
5911
5912         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
5913         the function is not present.
5914
5915 2007-03-31  Bruno Haible  <bruno@clisp.org>
5916
5917         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
5918         the function is not present.
5919
5920 2007-03-31  Bruno Haible  <bruno@clisp.org>
5921
5922         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
5923         a bug in HP-UX iconv_open().
5924
5925 2007-03-31  Bruno Haible  <bruno@clisp.org>
5926
5927         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
5928         (Mathematics <math.h>): New section, add fpieee.
5929         (Input/output <stdio.h>): Add fseterr.
5930         (Mathematics <math.h>): New section, add printf-frexp.
5931         (Container data structures): Add sublist.
5932         (Core language properties): Add fpucw, inline.
5933         (Functions for greatest-width integer types <inttypes.h>): Add
5934         imaxabs, imaxdiv, inttypes.
5935         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
5936         isnanl-nolibm, ldexp.
5937         (Mathematics <math.h>): New section, add printf-frexpl.
5938         (Support for systems lacking POSIX:2001): Add fprintf-posix,
5939         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
5940         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
5941         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
5942         (Unicode string functions): Add unistr/u*-mbtoucr.
5943         (Java): Add javacomp-script, javaexec-script.
5944         (C#): Add csharpcomp-script, csharpexec-script.
5945         (Support for building libraries and executables): Add havelib,
5946         relocatable-*.
5947         (Support for maintaining and releasing projects): Renamed from
5948         'Support for maintaining and release projects'. Add announce-gen.
5949
5950 2007-03-31  Bruno Haible  <bruno@clisp.org>
5951
5952         * README: Talk primarily about git.
5953         (git and CVS): Renamed from CVS.
5954         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
5955         gnulib is available through git.
5956         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
5957
5958 2007-03-30  Bruno Haible  <bruno@clisp.org>
5959
5960         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
5961         * lib/poll_.h: Likewise.
5962         * lib/stat_.h: Likewise.
5963         * lib/sys_time_.h: Likewise.
5964         * lib/sysexit_.h: Likewise.
5965         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
5966         * lib/stdbool_.h: Likewise.
5967         * lib/byteswap_.h: Add double-inclusion guard.
5968
5969 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
5970
5971         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
5972
5973 2007-03-30  Karl Berry  <karl@gnu.org>
5974
5975         * config/srclist-update: double space after USA in the license
5976         substitution, since that's how it's usually (?) written.
5977
5978 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
5979
5980         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
5981         reported by Bruno Haible.
5982
5983 2007-03-29  Bruno Haible  <bruno@clisp.org>
5984
5985         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
5986         a bug in AIX iconv().
5987
5988 2007-03-29  Bruno Haible  <bruno@clisp.org>
5989
5990         * modules/ldexpl-tests: New file.
5991         * tests/test-ldexpl.c: New file.
5992
5993 2007-03-29  Bruno Haible  <bruno@clisp.org>
5994
5995         * lib/ldexpl.c: Include fpucw.h.
5996         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
5997         multiplication.
5998         * modules/ldexpl (Depends-on): Add fpucw.
5999
6000 2007-03-29  Bruno Haible  <bruno@clisp.org>
6001
6002         * modules/ldexpl: New file.
6003         * m4/ldexpl.m4: New file.
6004         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
6005         set.
6006         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
6007         REPLACE_LDEXPL.
6008         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
6009         REPLACE_LDEXPL.
6010         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
6011         gl_FUNC_LDEXPL_WORKS.
6012         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
6013         * modules/mathl (Files): Remove lib/ldexpl.c.
6014         (Depends-on): Add ldexpl.
6015
6016 2007-03-29  Bruno Haible  <bruno@clisp.org>
6017
6018         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
6019
6020 2007-03-29  Bruno Haible  <bruno@clisp.org>
6021
6022         * tests/test-striconveh.c (main): Don't assume that a direct conversion
6023         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
6024         and possibly also HP-UX.
6025         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
6026         work on AIX, IRIX, HP-UX, OSF/1.
6027         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
6028         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
6029         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
6030         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
6031         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
6032         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
6033
6034 2007-03-29  Bruno Haible  <bruno@clisp.org>
6035
6036         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
6037
6038 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
6039
6040         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
6041         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
6042
6043 2007-03-29  Eric Blake  <ebb9@byu.net>
6044
6045         * lib/acl-internal.h: Remove redundant include.
6046         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
6047         Cygwin when a file is locked.
6048
6049 2007-03-29  Bruno Haible  <bruno@clisp.org>
6050
6051         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
6052         file.
6053         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
6054
6055 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
6056
6057         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
6058         try to remove a parent directory if the child couldn't be removed
6059         (except for the first rmdir, which could fail because the child
6060         doesn't exist).  Problem reported by Jeff Blaine in
6061         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
6062
6063 2007-03-28  Bruno Haible  <bruno@clisp.org>
6064
6065         * lib/striconveh.c (utf8conv_carefully): New function.
6066         (mem_cd_iconveh_internal): Invoke it.
6067
6068 2007-03-28  Bruno Haible  <bruno@clisp.org>
6069
6070         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
6071         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
6072         input.
6073         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
6074         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
6075         unistr/u8-uctomb.
6076
6077 2007-03-28  Bruno Haible  <bruno@clisp.org>
6078
6079         * modules/unistr/u8-mbtoucr: New file.
6080         * lib/unistr/u8-mbtoucr.c: New file.
6081         * modules/unistr/u16-mbtoucr: New file.
6082         * lib/unistr/u16-mbtoucr.c: New file.
6083         * modules/unistr/u16-mbtoucr: New file.
6084         * lib/unistr/u16-mbtoucr.c: New file.
6085         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
6086
6087 2007-03-27  Simon Josefsson  <simon@josefsson.org>
6088             Bruno Haible  <bruno@clisp.org>
6089
6090         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
6091         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
6092         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
6093
6094         * m4/stdio_h.m4: Add stubs for vasprintf too.
6095
6096         * modules/stdio: Support vasprintf in sed command.
6097
6098         * modules/vasprintf: Depend on stdio for prototypes.  Remove
6099         vasprintf.h.  Add stdio module indicator.
6100
6101         * lib/stdio_.h: Declare asprintf and vasprintf, based on
6102         vasprintf.h.
6103
6104         * lib/vasprintf.h: File removed.
6105
6106         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
6107         * lib/vasprintf.c: Ditto.
6108         * lib/xvasprintf.c: Ditto.
6109         * tests/test-vasprintf-posix.c: Ditto.
6110         * tests/test-vasprintf.c: Ditto.
6111
6112 2007-03-27  Bruno Haible  <bruno@clisp.org>
6113
6114         Make vasnprintf multithread-safe.
6115         * lib/vasnprintf.c (decimal_point_char): New function.
6116         (VASNPRINTF): Use it.
6117         Suggested by Simon Josefsson.
6118
6119 2007-03-27  Eric Blake  <ebb9@byu.net>
6120
6121         Support sub-second birthtime on cygwin.
6122         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
6123         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
6124         (get_stat_birthtime): Also work with st_birthtim.
6125
6126 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
6127
6128         * lib/stat-time.h (USE_BIRTHTIME): Remove.
6129         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
6130         (get_stat_birthtime_ns): Do not try to use "spare" fields.
6131         (get_stat_birthtime_ns): Simplify compile-time tests.
6132         (get_stat_birthtime): Change the API to look like
6133         get_stat_mtime etc., except return a negative tv_nsec on error.
6134         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
6135         Don't check for "spare" fields.
6136         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
6137         or for struct stat.st_birthtime, as these tests aren't used.
6138         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
6139
6140 2007-03-27  Bruno Haible  <bruno@clisp.org>
6141
6142         * lib/stat-time.h: Include <sys/stat.h>.
6143
6144 2007-03-27  James Youngman  <jay@gnu.org>
6145
6146         * lib/stat-time.h (get_stat_birthtime): New function for
6147           retrieving st_birthtime as provided by UFS2 (hence *BSD).
6148         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
6149           and its variants.
6150         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
6151         * modules/stat-time-test: New file.
6152         * tests/test-stat-time.c: New test, devised by Bruno Haible.
6153
6154 2007-03-26  Bruno Haible  <bruno@clisp.org>
6155
6156         Better support of signalling NaNs.
6157         * lib/atanl.c: Include isnanl.h.
6158         (atanl): Perform test for NaN at the beginning of the function and
6159         through a call to isnanl.
6160         * lib/cosl.c: Include isnanl.h.
6161         (cosl): Perform test for NaN at the beginning of the function and
6162         through a call to isnanl.
6163         * lib/ldexpl.c: Include isnanl.h.
6164         (ldexpl): Perform test for NaN through a call to isnanl.
6165         * lib/logl.c: Include isnanl.h.
6166         (logl): Perform test for NaN at the beginning of the function and
6167         through a call to isnanl.
6168         * lib/sinl.c: Include isnanl.h.
6169         (sinl): Perform test for NaN at the beginning of the function and
6170         through a call to isnanl.
6171         * lib/sqrtl.c: Include isnanl.h.
6172         (sqrtl): Perform test for NaN at the beginning of the function and
6173         through a call to isnanl.
6174         * lib/tanl.c: Include isnanl.h.
6175         (tanl): Perform test for NaN at the beginning of the function and
6176         through a call to isnanl.
6177         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
6178         * modules/mathl (Depends-on): Add isnanl.
6179
6180 2007-03-26  Eric Blake  <ebb9@byu.net>
6181
6182         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
6183         regression in logic sense of previous patch.
6184
6185 2007-03-26  Bruno Haible  <bruno@clisp.org>
6186
6187         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
6188         unportable shell command "if ! ...".
6189         Reported by Ralf Wildenhues.
6190
6191 2007-03-25  Bruno Haible  <bruno@clisp.org>
6192
6193         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
6194         <sysexits.h> file, and only add EX_CONFIG.
6195         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
6196         absolute file name and whether it is sufficient. Substitute also
6197         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
6198         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
6199         ABSOLUTE_SYSEXITS_H into sysexits.h.
6200
6201 2007-03-25  Bruno Haible  <bruno@clisp.org>
6202
6203         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
6204         hints is NULL.
6205
6206 2007-03-25  Bruno Haible  <bruno@clisp.org>
6207
6208         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
6209         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
6210
6211 2007-03-25  Bruno Haible  <bruno@clisp.org>
6212
6213         * lib/vasnprintf.c: Include langinfo.h.
6214         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
6215         multithread-safe.
6216         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
6217         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
6218         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6219         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6220         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6221         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6222         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6223         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
6224         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6225         Reported by Simon Josefsson.
6226
6227 2007-03-25  Bruno Haible  <bruno@clisp.org>
6228
6229         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
6230         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
6231         * modules/vasnprintf (Depends-on): Add stdint.
6232
6233 2007-03-25  Bruno Haible  <bruno@clisp.org>
6234
6235         * modules/fpieee: New file.
6236         * m4/fpieee.m4: New file.
6237         * modules/isnan-nolibm (Depends-on): Add fpieee.
6238         * modules/isnanl-nolibm (Depends-on): Add fpieee.
6239         * modules/isnanl (Depends-on): Add fpieee.
6240
6241 2007-03-25  Bruno Haible  <bruno@clisp.org>
6242
6243         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
6244
6245 2007-03-25  Bruno Haible  <bruno@clisp.org>
6246
6247         Avoid test failures on IRIX 6.5.
6248         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
6249         (main): Use it.
6250         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
6251         macros.
6252         (main): Use them.
6253
6254 2007-03-25  Bruno Haible  <bruno@clisp.org>
6255
6256         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
6257         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
6258         exists but doesn't work.
6259         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
6260         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
6261         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
6262         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
6263
6264 2007-03-25  Bruno Haible  <bruno@clisp.org>
6265
6266         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
6267         returns inf. Needed on IRIX 6.5.
6268
6269 2007-03-25  Bruno Haible  <bruno@clisp.org>
6270
6271         * tests/test-frexpl.c: Include isnanl-nolibm.h.
6272         (main): Use isnanl instead of x != x idiom.
6273         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
6274
6275         * tests/test-frexp.c: Include isnan.h.
6276         (main): Use isnan instead of x != x idiom.
6277         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
6278
6279 2007-03-25  Bruno Haible  <bruno@clisp.org>
6280
6281         * tests/test-frexp.c (NaN): New function/macro.
6282         (main): Use it instead of 0.0 / 0.0.
6283         * tests/test-isnan.c (NaN): New function/macro.
6284         (main): Use it instead of 0.0 / 0.0.
6285         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
6286         (test_function): Use it instead of 0.0 / 0.0.
6287         * tests/test-vasprintf-posix.c (NaN): New function/macro.
6288         (test_function): Use it instead of 0.0 / 0.0.
6289         * tests/test-snprintf-posix.h (NaN): New function/macro.
6290         (test_function): Use it instead of 0.0 / 0.0.
6291         * tests/test-sprintf-posix.h (NaN): New function/macro.
6292         (test_function): Use it instead of 0.0 / 0.0.
6293         * tests/test-fprintf-posix.h (NaN): New function/macro.
6294         (test_function): Use it instead of 0.0 / 0.0.
6295         * tests/test-printf-posix.h (NaN): New function/macro.
6296         (test_function): Use it instead of 0.0 / 0.0.
6297
6298         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
6299
6300 2007-03-25  Bruno Haible  <bruno@clisp.org>
6301
6302         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
6303
6304 2007-03-25  Bruno Haible  <bruno@clisp.org>
6305
6306         * lib/regexec.c (merge_state_with_log): Make static.
6307
6308 2007-03-25  Bruno Haible  <bruno@clisp.org>
6309
6310         * lib/trigl.c (kernel_rem_pio2): Make static.
6311
6312 2007-03-25  Bruno Haible  <bruno@clisp.org>
6313
6314         * lib/sincosl.c (sincosl_table): Make static.
6315
6316 2007-03-25  Bruno Haible  <bruno@clisp.org>
6317
6318         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
6319         if the compiler does not support C99.
6320
6321 2007-03-25  Bruno Haible  <bruno@clisp.org>
6322
6323         * modules/time (Makefile.am): Ensure all rule action lines start with a
6324         tab.
6325
6326 2007-03-24  Bruno Haible  <bruno@clisp.org>
6327
6328         * modules/tsearch-tests: New file.
6329         * tests/test-tsearch.sh: New file.
6330         * tests/test-tsearch.c: New file, mostly copied from glibc.
6331
6332         * modules/search-tests: New file.
6333         * tests/test-search.c: New file.
6334
6335         * modules/search: New file.
6336         * lib/search_.h: New file, incorporating lib/tsearch.h.
6337         * m4/search_h.m4: New file.
6338         * lib/tsearch.h: Remove file.
6339         * lib/tsearch.c: Include search.h instead of tsearch.h.
6340         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
6341         HAVE_TSEARCH.
6342         * modules/tsearch (Files): Remove lib/tsearch.h.
6343         (Depends-on): Add search.
6344         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
6345         (Include): Change tsearch.h into search.h.
6346
6347 2007-03-24  Bruno Haible  <bruno@clisp.org>
6348
6349         * modules/fpucw: New file.
6350         * lib/fpucw.h: New file.
6351         * lib/frexp.c: Include fpucw.h.
6352         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
6353         (FUNC): Use them.
6354         * lib/printf-frexp.c: Include fpucw.h.
6355         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
6356         (FUNC): Use them.
6357         * lib/vasnprintf.c: Include fpucw.h.
6358         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
6359         'long double' calculations.
6360         * tests/test-frexpl.c: Include fpucw.h.
6361         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
6362         * tests/test-printf-frexpl.c: Include fpucw.h.
6363         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
6364         * modules/frexpl (Depends-on): Add fpucw.
6365         * modules/printf-frexpl (Depends-on): Likewise.
6366         * modules/fprintf-posix (Depends-on): Likewise.
6367         * modules/snprintf-posix (Depends-on): Likewise.
6368         * modules/sprintf-posix (Depends-on): Likewise.
6369         * modules/vasnprintf-posix (Depends-on): Likewise.
6370         * modules/vasprintf-posix (Depends-on): Likewise.
6371         * modules/vfprintf-posix (Depends-on): Likewise.
6372         * modules/vsnprintf-posix (Depends-on): Likewise.
6373         * modules/vsprintf-posix (Depends-on): Likewise.
6374         * modules/frexpl-tests (Depends-on): Likewise.
6375         * modules/printf-frexpl-tests (Depends-on): Likewise.
6376
6377 2007-03-24  Bruno Haible  <bruno@clisp.org>
6378
6379         * lib/float+.h: New file.
6380         * lib/isnan.c: Include float+.h.
6381         (SIZE): New macro.
6382         (FUNC): Compare only SIZE bytes of the value.
6383         * lib/vasnprintf.c: Include float+.h.
6384         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
6385         SIZEOF_LDBL or SIZEOF_DBL bytes.
6386         * modules/isnan-nolibm (Files): Add lib/float+.h.
6387         * modules/isnanl-nolibm (Files): Add lib/float+.h.
6388         * modules/isnanl (Files): Add lib/float+.h.
6389         * modules/vasnprintf (Files): Add lib/float+.h.
6390
6391 2007-03-24  Bruno Haible  <bruno@clisp.org>
6392
6393         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
6394         include isnanl-nolibm.h.
6395
6396 2007-03-24  Bruno Haible  <bruno@clisp.org>
6397
6398         * tests/test-read-file.c (main): Don't produce spurious output for
6399         expected situations. Make the test fail if it encountered unexpected
6400         results.
6401
6402 2007-03-24  Bruno Haible  <bruno@clisp.org>
6403
6404         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
6405         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
6406
6407 2007-03-24  Bruno Haible  <bruno@clisp.org>
6408
6409         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
6410
6411 2007-03-24  Bruno Haible  <bruno@clisp.org>
6412
6413         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
6414         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
6415
6416         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
6417         * modules/utf8-ucs4: Turn into a symbolic link to module
6418         unistr/u8-mbtouc.
6419
6420         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
6421         utf8-ucs4-unsafe.
6422         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
6423         unistr/u8-mbtouc-unsafe.
6424
6425         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
6426         * modules/utf16-ucs4: Turn into a symbolic link to module
6427         unistr/u16-mbtouc.
6428
6429         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
6430         utf16-ucs4-unsafe.
6431         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
6432         unistr/u16-mbtouc-unsafe.
6433
6434         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
6435         * modules/ucs4-utf8: Turn into a symbolic link to module
6436         unistr/u8-ubtomb.
6437
6438         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
6439         * modules/ucs4-utf16: Turn into a symbolic link to module
6440         unistr/u16-ubtomb.
6441
6442 2007-03-24  Bruno Haible  <bruno@clisp.org>
6443
6444         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
6445         Enable the function only if HAVE_INLINE.
6446         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
6447         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6448         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
6449         Enable the function only if HAVE_INLINE.
6450         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
6451         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
6452         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
6453         Enable the function only if HAVE_INLINE.
6454         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
6455         Enable the function only if HAVE_INLINE.
6456         * modules/utf8-ucs4: Update.
6457         * modules/utf8-ucs4-unsafe: Update.
6458         * modules/utf16-ucs4: Update.
6459         * modules/utf16-ucs4-unsafe: Update.
6460         * modules/ucs4-utf8: Update.
6461         * modules/ucs4-utf16: Update.
6462
6463 2007-03-24  Bruno Haible  <bruno@clisp.org>
6464
6465         * lib/utf8-ucs4.h: Remove file.
6466         * lib/utf8-ucs4-unsafe.h: Remove file.
6467         * lib/utf16-ucs4.h: Remove file.
6468         * lib/utf16-ucs4-unsafe.h: Remove file.
6469         * lib/ucs4-utf8.h: Remove file.
6470         * lib/ucs4-utf16.h: Remove file.
6471         * lib/unistr.h: Include their previous contents.
6472         * m4/utf-ucs4.m4: Remove file.
6473         * m4/ucs4-utf.m4: Remove file.
6474         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
6475         (Depends-on): Add unistr/base.
6476         (configure.ac): Remove gl_UTF_UCS4.
6477         (Makefile.am): Update.
6478         (Include): Change to unistr.h.
6479         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
6480         (Depends-on): Add unistr/base.
6481         (configure.ac): Remove gl_UTF_UCS4.
6482         (Makefile.am): Update.
6483         (Include): Change to unistr.h.
6484         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
6485         (Depends-on): Add unistr/base.
6486         (configure.ac): Remove gl_UTF_UCS4.
6487         (Makefile.am): Update.
6488         (Include): Change to unistr.h.
6489         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
6490         (Depends-on): Add unistr/base.
6491         (configure.ac): Remove gl_UTF_UCS4.
6492         (Makefile.am): Update.
6493         (Include): Change to unistr.h.
6494         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
6495         (Depends-on): Add unistr/base.
6496         (configure.ac): Remove gl_UCS4_UTF.
6497         (Makefile.am): Update.
6498         (Include): Change to unistr.h.
6499         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
6500         (Depends-on): Add unistr/base.
6501         (configure.ac): Remove gl_UCS4_UTF.
6502         (Makefile.am): Update.
6503         (Include): Change to unistr.h.
6504         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
6505         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
6506         utf8-ucs4-unsafe.h.
6507         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
6508         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
6509         utf16-ucs4-unsafe.h.
6510         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
6511         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
6512         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
6513         * lib/unistr/u8-strchr.c: Likewise.
6514         * lib/unistr/u8-strrchr.c: Likewise.
6515         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
6516         * lib/unistr/u16-strchr.c: Likewise.
6517         * lib/unistr/u16-strrchr.c: Likewise.
6518         * lib/striconveh.c: Update.
6519         * lib/linebreak.c: Update.
6520
6521 2007-03-24  Bruno Haible  <bruno@clisp.org>
6522
6523         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
6524         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
6525
6526 2007-03-22  Bruno Haible  <bruno@clisp.org>
6527
6528         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
6529
6530 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
6531
6532         * MODULES.html.sh (File system functions): New module write-any-file.
6533         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
6534         * m4/write-any-file.m4: New files.
6535
6536 2007-03-23  Eric Blake  <ebb9@byu.net>
6537
6538         * gnulib-tool: Rearrange space-tab sequences, since some editors
6539         like to eat them.
6540
6541 2007-03-23  Eric Blake  <ebb9@byu.net>
6542
6543         * lib/version-etc.c (version_etc_va): Update license wording to
6544         be more concise.  Recommended by Richard Stallman.
6545
6546 2007-03-22  Bruno Haible  <bruno@clisp.org>
6547
6548         * lib/poll.c (MSG_PEEK): New fallback definition.
6549
6550 2007-03-22  Bruno Haible  <bruno@clisp.org>
6551
6552         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
6553         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
6554         (main): Update.
6555         Fixes a compilation error on BeOS.
6556
6557 2007-03-22  Bruno Haible  <bruno@clisp.org>
6558
6559         * modules/frexpl-tests: New file.
6560         * tests/test-frexpl.c: New file.
6561
6562         * modules/frexpl: New file.
6563         * m4/frexpl.m4: New file.
6564         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
6565         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
6566         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
6567         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
6568         (Depends-on): Add frexpl. Remove isnanl-nolibm.
6569         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
6570
6571 2007-03-22  Bruno Haible  <bruno@clisp.org>
6572
6573         * lib/frexpl.c: Share code with lib/frexp.c.
6574         * modules/mathl (Files): Add lib/frexp.c.
6575         (Depends-on): Add isnanl-nolibm.
6576
6577 2007-03-22  Bruno Haible  <bruno@clisp.org>
6578
6579         * modules/printf-frexp (Files): Add m4/frexp.m4.
6580         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
6581         only if the found frexp function actually works.
6582
6583 2007-03-22  Bruno Haible  <bruno@clisp.org>
6584
6585         * lib/frexp.c: Remove older implementation that uses divisions.
6586
6587 2007-03-21  Bruno Haible  <bruno@clisp.org>
6588
6589         * modules/frexp-tests: New file.
6590         * tests/test-frexp.c: New file.
6591
6592         * modules/frexp: New file.
6593         * lib/frexp.c: New file.
6594         * m4/frexp.m4: New file.
6595         * lib/math_.h (frexp): New declaration.
6596         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
6597         REPLACE_FREXP.
6598         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
6599
6600 2007-03-21  Bruno Haible  <bruno@clisp.org>
6601
6602         * modules/isnanl-tests: New file.
6603         * tests/test-isnanl.c: New file.
6604
6605         * modules/isnanl: New file.
6606         * lib/isnanl.h: New file.
6607         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
6608         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
6609         gl_FUNC_ISNANL_WORKS.
6610         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
6611         New macros.
6612
6613 2007-03-21  Bruno Haible  <bruno@clisp.org>
6614
6615         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
6616         lib/isnanl.h.
6617         (Include): Update.
6618         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
6619         * lib/vasnprintf.c: Update.
6620         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
6621         tests/test-isnanl.h, remove tests/test-isnanl.c.
6622         (Makefile.am): Update.
6623         * tests/test-isnanl-nolibm.c: New file.
6624         * tests/test-isnanl.h: New file.
6625         * tests/test-isnanl.c: Remove file.
6626
6627 2007-03-21  Jim Meyering  <jim@meyering.net>
6628
6629         When trying to open ".", treat ESTALE like EACCES.
6630         * lib/savewd.c (savewd_save): Resort to forking not just upon
6631         failure with EACCES, but also when errno is ESTALE.
6632
6633 2007-03-20  Bruno Haible  <bruno@clisp.org>
6634
6635         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
6636         Needed on AIX 5.1. Reported by Matthew Woehlke.
6637
6638 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6639
6640         Suggestions by Bruno Haible:
6641         * lib/acl-internal.h: Include "gettext.h" rather than rolling
6642         our own.
6643         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
6644         * modules/acl (Depends-on): Add gettext.
6645
6646 2007-03-19  Bruno Haible  <bruno@clisp.org>
6647
6648         * modules/iconvme: Remove file.
6649         * lib/iconvme.h: Remove file.
6650         * lib/iconvme.c: Remove file.
6651         * m4/iconvme.m4: Remove file.
6652
6653 2007-03-19  Bruno Haible  <bruno@clisp.org>
6654
6655         * doc/relocatable-maint.texi: Break long shell script line.
6656         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
6657
6658 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6659
6660         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
6661         handle file_has_acl.
6662         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
6663         * lib/acl.c: Move header inclusions and related macro defns into
6664         lib/acl-internal.h.
6665         (S_ISLNK): Remove defn, since that's now done for us.
6666         (file_has_acl): Move to lib/file-has-acl.c.
6667         Call acl_trivial if available.  This is the crucial part of the fix.
6668         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
6669         shared within the library.  Rewrite a bit, partly to make it compatible
6670         with the GNU coding style.
6671         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
6672         Remove unnecessary double-quotes.
6673         Don't test for acl_to_text; the build will catch that.
6674         Replace acl_entries if it doesn't exist and it is needed.
6675         Check for -lsec and acl_trivial (as used on Solaris 10).
6676         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
6677         lib/file-has-acl.c.
6678         (Depends-on): Add sys_stat, for S_ISLNK.
6679
6680 2007-03-19  Ben Pfaff  <blp@gnu.org>
6681
6682         * doc/gnulib.texi: Fix typos.
6683         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
6684
6685 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
6686
6687         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
6688         If size is zero here, buf must be zero.
6689
6690 2007-03-19  Simon Josefsson  <simon@josefsson.org>
6691
6692         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
6693         <bruno@clisp.org>.
6694
6695 2007-03-18  Bruno Haible  <bruno@clisp.org>
6696
6697         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
6698         Suggested by Eric Blake.
6699
6700 2007-03-18  Ben Pfaff  <blp@gnu.org>
6701
6702         * doc/relocatable.texi: Recommend using as prefix a directory
6703         that does not exist and will never be created.  Based on
6704         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
6705         and others.
6706
6707 2007-03-17  Bruno Haible  <bruno@clisp.org>
6708
6709         * lib/fchownat.c: Include lchown.h.
6710
6711 2007-03-17  Bruno Haible  <bruno@clisp.org>
6712
6713         Fix endless loop when the given allocated size was > INT_MAX.
6714         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
6715         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
6716         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
6717         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
6718         * lib/sprintf.c (sprintf): Likewise.
6719
6720 2007-03-17  Bruno Haible  <bruno@clisp.org>
6721
6722         * tests/test-argp-2.sh (func_compare): Output a context diff.
6723
6724 2007-03-17  Bruno Haible  <bruno@clisp.org>
6725
6726         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
6727         locale's decimal-point character.
6728
6729 2007-03-17  Bruno Haible  <bruno@clisp.org>
6730
6731         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
6732         before comparing it. Needed because on some platforms (e.g. x86) a
6733         'long double' occupies less bytes than sizeof (long double).
6734
6735 2007-03-17  Bruno Haible  <bruno@clisp.org>
6736
6737         * tests/test-crc.c (main): Make printf statements 64-bit clean.
6738         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
6739         * tests/test-getaddrinfo.c (simple): Likewise.
6740         * tests/test-read-file.c (main): Likewise.
6741
6742 2007-03-17  Bruno Haible  <bruno@clisp.org>
6743
6744         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
6745
6746 2007-03-17  Bruno Haible  <bruno@clisp.org>
6747
6748         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
6749         unused variable.
6750
6751 2007-03-17  Bruno Haible  <bruno@clisp.org>
6752
6753         * tests/test-c-strcasecmp.c: Include c-strcase.h.
6754         * tests/test-c-strncasecmp.c: Likewise.
6755
6756 2007-03-17  Bruno Haible  <bruno@clisp.org>
6757
6758         * modules/stdlib (Depends-on): Add unistd.
6759         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
6760         Needed for MacOS X 10.3.
6761
6762 2007-03-17  Bruno Haible  <bruno@clisp.org>
6763
6764         * lib/unistr/u-strdup.h: Include <stdlib.h>.
6765
6766 2007-03-17  Bruno Haible  <bruno@clisp.org>
6767
6768         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
6769
6770 2007-03-17  Bruno Haible  <bruno@clisp.org>
6771
6772         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
6773         to reflect files copied from gnulib (with or without modifications).
6774         Suggested by Jim Meyering.
6775
6776 2007-03-17  Eric Blake  <ebb9@byu.net>
6777
6778         * NEWS: Document stdlib change from 2007-02-18.
6779
6780 2007-03-17  Jim Meyering  <jim@meyering.net>
6781
6782         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
6783         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
6784         someone uses a name containing shell meta-characters.
6785         Reported by Alfred M. Szmidt.
6786
6787         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
6788
6789 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
6790
6791         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
6792         and copy gettext configuration files only if configure.ac contains
6793         a use of AM_GNU_GETTEXT_VERSION.
6794
6795 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
6796
6797         * build-aux/bootstrap (gnulib_name): New variable.
6798         (gnulib_tool_options): Use it.
6799
6800 2007-03-13  Simon Josefsson  <simon@josefsson.org>
6801
6802         * tests/test-des.c: Use new namespace.
6803
6804 2007-03-15  Bruno Haible  <bruno@clisp.org>
6805
6806         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
6807         Reported by James Youngman <jay@gnu.org>.
6808
6809 2007-03-15  Bruno Haible  <bruno@clisp.org>
6810
6811         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
6812         declared prototype. Needed with cc on OSF/1 5.1.
6813
6814 2007-03-15  Bruno Haible  <bruno@clisp.org>
6815
6816         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
6817         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
6818         (struct gl_list_implementation): Add dispose_fn argument to the
6819         'create_empty', 'create' methods.
6820         (struct gl_list_impl_base): Add field 'dispose_fn'.
6821         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
6822         argument.
6823         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
6824         dispose_fn argument.
6825         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
6826         dispose_fn on the dropped values.
6827         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
6828         dispose_fn argument.
6829         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
6830         dropped values.
6831         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
6832         (gl_tree_remove_node): Call dispose_fn on the dropped value.
6833         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
6834         (gl_tree_remove_node): Call dispose_fn on the dropped value.
6835         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
6836         argument.
6837         (gl_tree_list_free): Call dispose_fn on the dropped values.
6838         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
6839         the dropped values.
6840         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
6841         Add dispose_fn argument.
6842         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
6843         Call dispose_fn on the dropped values.
6844         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
6845         Add dispose_fn argument.
6846         (gl_sublist_create): Initialize the 'dispose_fn' field.
6847         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
6848         * tests/test-array_list.c (main): Update.
6849         * tests/test-carray_list.c (main): Update.
6850         * tests/test-avltree_list.c (main): Update.
6851         * tests/test-rbtree_list.c (main): Update.
6852         * tests/test-avltreehash_list.c (main): Update.
6853         * tests/test-rbtreehash_list.c (main): Update.
6854         * tests/test-linked_list.c (main): Update.
6855         * tests/test-linkedhash_list.c (main): Update.
6856         * tests/test-array_oset.c (main): Update.
6857
6858 2007-03-15  Bruno Haible  <bruno@clisp.org>
6859
6860         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
6861         (gl_oset_create_empty): Add dispose_fn argument.
6862         (struct gl_oset_implementation): Add dispose_fn argument to
6863         'create_empty' method.
6864         (struct gl_oset_impl_base): Add dispose_fn field.
6865         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
6866         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
6867         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
6868         values.
6869         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
6870         (gl_tree_oset_free): Call dispose_fn on the dropped values.
6871         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
6872         dropped value.
6873         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
6874         dropped value.
6875         * tests/test-array_oset.c (main): Update.
6876         * tests/test-avltree_oset.c (main): Update.
6877         * tests/test-rbtree_oset.c (main): Update.
6878         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
6879
6880 2007-03-13  Bruno Haible  <bruno@clisp.org>
6881
6882         * tests/test-stdbool.c (i): Update after last patch.
6883
6884 2007-03-12  Bruno Haible  <bruno@clisp.org>
6885
6886         * lib/quotearg.c: Include <wctype.h> early, before the definition of
6887         the iswprint macro. Needed on Solaris 2.5.1.
6888
6889 2007-03-12  Bruno Haible  <bruno@clisp.org>
6890
6891         * tests/test-printf-frexp.c (main): Declare x as volatile.
6892
6893 2007-03-12  Simon Josefsson  <simon@josefsson.org>
6894
6895         * doc/gnulib.texi (Build robot for gnulib): New section.
6896
6897 2007-03-12  Jim Meyering  <jim@meyering.net>
6898
6899         * build-aux/bootstrap: New file.
6900         * build-aux/bootstrap.conf: New file, from coreutils.
6901
6902 2007-03-11  Bruno Haible  <bruno@clisp.org>
6903
6904         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
6905
6906 2007-03-12  Simon Josefsson  <simon@josefsson.org>
6907
6908         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
6909         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
6910         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
6911
6912 2007-03-11  Bruno Haible  <bruno@clisp.org>
6913
6914         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
6915         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
6916
6917 2007-03-11  Bruno Haible  <bruno@clisp.org>
6918
6919         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
6920         formula. Needed for SunPRO C 5.0.
6921
6922 2007-03-11  Bruno Haible  <bruno@clisp.org>
6923
6924         * modules/long-options (Depends-on): Add getopt.
6925
6926 2007-03-11  Bruno Haible  <bruno@clisp.org>
6927
6928         * modules/modechange (Depends-on): Add stdbool.
6929
6930 2007-03-11  Bruno Haible  <bruno@clisp.org>
6931
6932         * modules/i-ring (Depends-on): Add stdbool.
6933
6934 2007-03-11  Bruno Haible  <bruno@clisp.org>
6935
6936         * modules/gc-des (Depends-on): Add stdbool.
6937
6938 2007-03-11  Bruno Haible  <bruno@clisp.org>
6939
6940         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
6941
6942 2007-03-11  Bruno Haible  <bruno@clisp.org>
6943
6944         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
6945
6946 2007-03-11  Bruno Haible  <bruno@clisp.org>
6947
6948         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
6949
6950 2007-03-11  Bruno Haible  <bruno@clisp.org>
6951
6952         * lib/vasnprintf.c (sprintf): Undefine.
6953
6954 2007-03-11  Bruno Haible  <bruno@clisp.org>
6955
6956         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
6957         initializers in SunPRO C and Compaq C compilers.
6958
6959 2007-03-11  Bruno Haible  <bruno@clisp.org>
6960
6961         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
6962         decrementing code ANSI C compliant.
6963
6964 2007-03-11  Bruno Haible  <bruno@clisp.org>
6965
6966         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
6967         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
6968
6969 2007-03-11  Bruno Haible  <bruno@clisp.org>
6970
6971         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
6972         <stdbool.h> substitute doesn't pass.
6973
6974 2007-03-11  Bruno Haible  <bruno@clisp.org>
6975
6976         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
6977
6978 2007-03-11  Bruno Haible  <bruno@clisp.org>
6979
6980         * gnulib-tool (func_create_megatestdir): Create also an autobuild
6981         script, for submission to autobuild.josefsson.org.
6982
6983 2007-03-10  Bruno Haible  <bruno@clisp.org>
6984
6985         * modules/canonicalize-lgpl-tests: New file.
6986         * tests/test-canonicalize-lgpl.sh: New file.
6987         * tests/test-canonicalize-lgpl.c: New file.
6988
6989         * modules/c-strcase-tests: New file.
6990         * tests/test-c-strcase.sh: New file.
6991         * tests/test-c-strcasecmp.c: New file.
6992         * tests/test-c-strncasecmp.c: New file.
6993
6994         * modules/atexit-tests: New file.
6995         * tests/test-atexit.sh: New file.
6996         * tests/test-atexit.c: New file.
6997
6998 2007-03-10  Bruno Haible  <bruno@clisp.org>
6999
7000         * tests/test-binary-io.sh: Use temporary filenames that are not so
7001         likely to clash with those of other tests (in a parallel make).
7002         * tests/test-binary-io.c: Likewise.
7003
7004 2007-03-10  Bruno Haible  <bruno@clisp.org>
7005
7006         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
7007         fallback; use #error instead.
7008         Suggested by Simon Josefsson.
7009
7010 2007-03-10  Bruno Haible  <bruno@clisp.org>
7011
7012         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
7013         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
7014         first and the last.
7015
7016 2007-03-10  Bruno Haible  <bruno@clisp.org>
7017
7018         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
7019
7020 2007-03-10  Bruno Haible  <bruno@clisp.org>
7021
7022         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
7023         "make distcheck".
7024         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
7025         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
7026         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
7027
7028 2007-03-10  Bruno Haible  <bruno@clisp.org>
7029
7030         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
7031         variable.
7032         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
7033         variable.
7034
7035 2007-03-09  Eric Blake  <ebb9@byu.net>
7036         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
7037
7038         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
7039         types are not being provided by gnulib.
7040         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
7041         types are supported.
7042
7043 2007-03-10  Bruno Haible  <bruno@clisp.org>
7044
7045         * lib/stdio_.h (__attribute__): New macro.
7046         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
7047         vsprintf): Specify __attribute__ __format__ for GCC.
7048         Suggested by Eric Blake.
7049
7050 2007-03-09  Bruno Haible  <bruno@clisp.org>
7051
7052         * modules/printf-posix-tests: New file.
7053         * tests/test-printf-posix.sh: New file.
7054         * tests/test-printf-posix.c: New file.
7055
7056         * modules/printf-posix: New file.
7057         * lib/printf.c: New file.
7058         * m4/printf-posix-rpl.m4: New file.
7059         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
7060         REPLACE_PRINTF.
7061         * lib/stdio_.h (printf): New declaration.
7062         (format, __format__, ____printf____, ____scanf____, ____strftime____,
7063         ____strfmon____): New macros.
7064         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
7065         REPLACE_PRINTF.
7066
7067 2007-03-09  Bruno Haible  <bruno@clisp.org>
7068
7069         * tests/test-vasnprintf-posix2.sh: New file.
7070         * tests/test-vasnprintf-posix2.c: New file.
7071         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
7072         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
7073         (Makefile.am): Activate test-vasnprintf-posix2.sh.
7074
7075         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
7076         a locale dependent decimal point, rather than always '.'.
7077
7078 2007-03-09  Eric Blake  <ebb9@byu.net>
7079
7080         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
7081         spite of platforms like Tandem/NSK that define it to -1.
7082
7083 2007-03-08  Bruno Haible  <bruno@clisp.org>
7084
7085         * modules/vprintf-posix-tests: New file.
7086         * tests/test-vprintf-posix.sh: New file.
7087         * tests/test-vprintf-posix.c: New file.
7088         * tests/test-printf-posix.h: New file.
7089
7090         * modules/vprintf-posix: New file.
7091         * lib/vprintf.c: New file.
7092         * m4/vprintf-posix.m4: New file.
7093         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
7094         REPLACE_VPRINTF.
7095         * lib/stdio_.h (vprintf): New declaration.
7096         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
7097         REPLACE_VPRINTF.
7098
7099 2007-03-08  Bruno Haible  <bruno@clisp.org>
7100
7101         * modules/fprintf-posix-tests: New file.
7102         * tests/test-fprintf-posix.sh: New file.
7103         * tests/test-fprintf-posix.c: New file.
7104
7105         * modules/fprintf-posix: New file.
7106         * lib/fprintf.c: New file.
7107         * m4/fprintf-posix.m4: New file.
7108         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
7109         REPLACE_FPRINTF.
7110         * lib/stdio_.h (fprintf): New declaration.
7111         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
7112         REPLACE_FPRINTF.
7113
7114 2007-03-08  Bruno Haible  <bruno@clisp.org>
7115
7116         * modules/vfprintf-posix-tests: New file.
7117         * tests/test-vfprintf-posix.sh: New file.
7118         * tests/test-vfprintf-posix.c: New file.
7119         * tests/test-fprintf-posix.h: New file.
7120         * tests/test-fprintf-posix.out: New file.
7121
7122         * modules/vfprintf-posix: New file.
7123         * lib/vfprintf.c: New file.
7124         * m4/vfprintf-posix.m4: New file.
7125         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
7126         REPLACE_VFPRINTF.
7127         * lib/stdio_.h (vfprintf): New declaration.
7128         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
7129         REPLACE_VFPRINTF.
7130
7131 2007-03-08  Bruno Haible  <bruno@clisp.org>
7132
7133         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
7134
7135 2007-03-08  Bruno Haible  <bruno@clisp.org>
7136
7137         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
7138         instead of 'expr' invocations.
7139         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
7140         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
7141         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
7142         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7143         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
7144         Suggested by Paul Eggert.
7145
7146 2007-03-08  Bruno Haible  <bruno@clisp.org>
7147
7148         * modules/fseterr-tests: New file.
7149         * tests/test-fseterr.c: New file.
7150
7151         * modules/fseterr: New file.
7152         * lib/fseterr.h: New file.
7153         * lib/fseterr.c: New file.
7154
7155 2007-03-08  Bruno Haible  <bruno@clisp.org>
7156
7157         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
7158         * lib/getopt_.h: Likewise.
7159         * lib/mbswidth.h: Likewise.
7160         * lib/setenv.h: Likewise.
7161         * lib/vasnprintf.h: Likewise.
7162         * lib/vasprintf.h: Likewise.
7163         * lib/verror.h: Likewise.
7164         * lib/xsetenv.h: Likewise.
7165         * lib/xvasprintf.h: Likewise.
7166
7167 2007-03-08  Jim Meyering  <jim@meyering.net>
7168
7169         * users.txt: Add parted.
7170
7171         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
7172
7173 2007-03-07  Bruno Haible  <bruno@clisp.org>
7174
7175         * m4/printf.m4: Make the shell script snippets copy&pastable.
7176
7177 2007-03-02  Bruno Haible  <bruno@clisp.org>
7178
7179         * lib/netinet_in_.h: New file.
7180         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
7181         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
7182         * modules/netinet_in (Files): Add lib/netinet_in_.h.
7183         (Depends-on): Add absolute-header.
7184         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
7185         into netinet/in.h.
7186
7187 2007-03-03  Bruno Haible  <bruno@clisp.org>
7188
7189         * lib/sys_select_.h: New file.
7190         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
7191         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
7192         * modules/sys_select (Files): Add lib/sys_select_.h.
7193         (Depends-on): Add absolute-header.
7194         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
7195         into sys/select.h.
7196
7197 2007-03-02  Bruno Haible  <bruno@clisp.org>
7198
7199         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
7200         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
7201         values.
7202         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
7203         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
7204         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
7205         * modules/sys_socket (Depends-on): Add absolute-header.
7206         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
7207         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
7208         (Include): Remove requirement of inclusion of <sys/types.h>.
7209
7210 2007-03-02  Bruno Haible  <bruno@clisp.org>
7211
7212         * lib/byteswap_.h (bswap_32): Fix formula.
7213
7214 2007-03-06  Bruno Haible  <bruno@clisp.org>
7215
7216         * modules/sprintf-posix-tests: New file.
7217         * tests/test-sprintf-posix.c: New file.
7218
7219         * modules/sprintf-posix: New file.
7220         * lib/sprintf.c: New file.
7221         * m4/sprintf-posix.m4: New file.
7222         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
7223         REPLACE_SPRINTF.
7224         * lib/stdio_.h (sprintf): New declaration.
7225         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
7226         REPLACE_SPRINTF.
7227
7228 2007-03-06  Bruno Haible  <bruno@clisp.org>
7229
7230         * modules/vsprintf-posix-tests: New file.
7231         * tests/test-vsprintf-posix.c: New file.
7232         * tests/test-sprintf-posix.h: New file.
7233
7234         * modules/vsprintf-posix: New file.
7235         * lib/vsprintf.c: New file.
7236         * m4/vsprintf-posix.m4: New file.
7237         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
7238         REPLACE_VSPRINTF.
7239         * lib/stdio_.h (vsprintf): New declaration.
7240         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
7241         REPLACE_VSPRINTF.
7242
7243 2007-03-06  Bruno Haible  <bruno@clisp.org>
7244
7245         * modules/vsnprintf (Depend-on): Remove minmax.
7246
7247 2007-03-06  Bruno Haible  <bruno@clisp.org>
7248
7249         * modules/snprintf-posix-tests: New file.
7250         * tests/test-snprintf-posix.c: New file.
7251
7252         * modules/snprintf-posix: New file.
7253         * m4/snprintf-posix.m4: New file.
7254         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
7255         gl_FUNC_SNPRINTF.
7256         (gl_FUNC_SNPRINTF): Invoke it.
7257         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
7258         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
7259         is set.
7260         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
7261
7262 2007-03-06  Bruno Haible  <bruno@clisp.org>
7263
7264         * modules/vsnprintf-posix-tests: New file.
7265         * tests/test-vsnprintf-posix.c: New file.
7266         * tests/test-snprintf-posix.h: New file.
7267
7268         * modules/vsnprintf-posix: New file.
7269         * m4/vsnprintf-posix.m4: New file.
7270         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
7271         gl_FUNC_VSNPRINTF.
7272         (gl_FUNC_VSNPRINTF): Invoke it.
7273         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
7274         * lib/stdio_.h (vsnprintf): Define as a replacement if
7275         REPLACE_VSNPRINTF is set.
7276         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
7277
7278 2007-03-06  Bruno Haible  <bruno@clisp.org>
7279
7280         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
7281         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
7282
7283 2007-03-06  Bruno Haible  <bruno@clisp.org>
7284
7285         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
7286         (asinl): Declare also if HAVE_DECL_ASINL is set.
7287         (atanl): Declare also if HAVE_DECL_ATANL is set.
7288         (ceill): Declare also if HAVE_DECL_CEILL is set.
7289         (cosl): Declare also if HAVE_DECL_COSL is set.
7290         (expl): Declare also if HAVE_DECL_EXPL is set.
7291         (floorl): Declare also if HAVE_DECL_FLOORL is set.
7292         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
7293         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
7294         (logl): Declare also if HAVE_DECL_LOGL is set.
7295         (sinl): Declare also if HAVE_DECL_SINL is set.
7296         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
7297         (tanl): Declare also if HAVE_DECL_TANL is set.
7298         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
7299         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
7300         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
7301         declaration of frexpl, ldexpl.
7302         * modules/printf-frexpl (Depends-on): Add math.
7303         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
7304
7305 2007-03-05  Bruno Haible  <bruno@clisp.org>
7306
7307         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
7308         frexpl and ldexpl are declared.
7309         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
7310
7311 2007-03-05  Bruno Haible  <bruno@clisp.org>
7312
7313         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
7314         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
7315
7316 2007-03-05  Bruno Haible  <bruno@clisp.org>
7317
7318         * lib/stdio_.h: Include <stddef.h>.
7319
7320 2007-03-05  Bruno Haible  <bruno@clisp.org>
7321
7322         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
7323
7324 2007-03-05  Bruno Haible  <bruno@clisp.org>
7325
7326         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
7327         NetBSD 4, from Ralf Wildenhues.
7328
7329 2007-03-04  Bruno Haible  <bruno@clisp.org>
7330
7331         * lib/vasprintf.h: Update #if logic for the case when the functions
7332         exist but are overridden.
7333
7334 2007-03-04  Bruno Haible  <bruno@clisp.org>
7335
7336         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
7337         implementations: glibc-2.4 and MacOS X 10.3.
7338         * tests/test-vasnprintf-posix.c (test_function): Test also the case
7339         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
7340         * tests/test-vasprintf-posix.c (test_function): Likewise.
7341
7342 2007-03-04  Bruno Haible  <bruno@clisp.org>
7343
7344         * modules/vasprintf-posix-tests: New file.
7345         * tests/test-vasprintf-posix.c: New file.
7346
7347         * modules/vasprintf-posix: New file.
7348         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
7349         defined.
7350         * m4/vasprintf-posix.m4: New file.
7351         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
7352         gl_FUNC_VASPRINTF.
7353         (gl_FUNC_VASPRINTF): Invoke it.
7354         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
7355         here.
7356         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
7357
7358 2007-03-04  Bruno Haible  <bruno@clisp.org>
7359
7360         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
7361         REPLACE_GETTIMEOFDAY.
7362         * modules/sys_time (Makefile.am): Likewise.
7363         * m4/sys_time_h.m4: Likewise.
7364         * m4/gettimeofday.m4: Likewise.
7365
7366 2007-03-04  Bruno Haible  <bruno@clisp.org>
7367
7368         * modules/vasnprintf-posix-tests: New file.
7369         * tests/test-vasnprintf-posix.c: New file.
7370
7371         * modules/vasnprintf-posix: New file.
7372         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
7373         printf-frexpl.h.
7374         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
7375         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
7376         REPLACE_VASNPRINTF is defined.
7377         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
7378         gl_FUNC_VASNPRINTF.
7379         (gl_FUNC_VASNPRINTF): Invoke it.
7380         * m4/vasnprintf-posix.m4: New file.
7381         * m4/printf.m4: New file.
7382
7383 2007-03-04  Bruno Haible  <bruno@clisp.org>
7384
7385         Compile progreloc.c only if --enable-relocatable is specified.
7386         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
7387         if --enable-relocatable was specified.
7388         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
7389         lib_SOURCES.
7390
7391 2007-03-04  Jim Meyering  <jim@meyering.net>
7392
7393         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
7394         Use it consistently, rather than enumerating errno constants.
7395
7396 2007-03-04  Bruno Haible  <bruno@clisp.org>
7397
7398         * modules/xvasprintf-tests: New file.
7399         * tests/test-xvasprintf.c: New file.
7400
7401         * modules/vasprintf-tests: New file.
7402         * tests/test-vasprintf.c: New file.
7403
7404         * modules/vasnprintf-tests: New file.
7405         * tests/test-vasnprintf.c: New file.
7406
7407         * modules/vsnprintf-tests: New file.
7408         * tests/test-vsnprintf.c: New file.
7409
7410         * modules/snprintf-tests: New file.
7411         * tests/test-snprintf.c: New file.
7412
7413 2007-03-04  Bruno Haible  <bruno@clisp.org>
7414
7415         Compile relocatable.c only if --enable-relocatable is specified.
7416         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
7417         gl_RELOCATABLE_LIBRARY.
7418         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
7419         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
7420         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
7421         gl_RELOCATABLE_LIBRARY.
7422         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
7423         (Makefile.am): Remove lib_SOURCES.
7424         * modules/relocatable-lib-lgpl (configure.ac): Invoke
7425         gl_RELOCATABLE_LIBRARY.
7426         (Makefile.am): Remove lib_SOURCES.
7427         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
7428         always.
7429         * modules/relocatable-prog-wrapper (configure.ac): Invoke
7430         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
7431
7432 2007-03-04  Bruno Haible  <bruno@clisp.org>
7433
7434         * modules/argmatch-tests: New file.
7435         * tests/test-argmatch.c: New file.
7436
7437         * tests/test-allocsa.c (main): Halve the number of loop runs.
7438
7439         * modules/alloca-opt-tests: New file.
7440         * tests/test-alloca-opt.c: New file.
7441
7442 2007-03-04  Jim Meyering  <jim@meyering.net>
7443
7444         Work around difference between Linux ACLs and Solaris 10 ZFS.
7445         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
7446         for EINVAL.
7447
7448 2007-03-03  Bruno Haible  <bruno@clisp.org>
7449
7450         * modules/relocatable-prog (Depends-on): Add back progreloc's
7451         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
7452
7453 2007-03-03  Bruno Haible  <bruno@clisp.org>
7454
7455         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
7456         * modules/relocatable-lib: New file.
7457
7458 2007-03-03  Bruno Haible  <bruno@clisp.org>
7459
7460         * modules/relocatable-prog: Renamed from modules/relocatable.
7461         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
7462
7463 2007-03-03  Bruno Haible  <bruno@clisp.org>
7464
7465         * modules/relocatable-script (Files): Add doc/relocatable.texi,
7466         m4/relocatable-lib.m4.
7467         (Depends-on): Remove 'relocatable'.
7468         (configure.ac): Add gl_RELOCATABLE_NOP.
7469
7470 2007-03-03  Bruno Haible  <bruno@clisp.org>
7471
7472         * modules/relocatable-prog-wrapper: New file.
7473         * modules/relocatable (Depends-on): Add it. Remove all other
7474         dependencies except progname.
7475         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
7476
7477         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
7478         (gl_FUNC_STRERROR): Nop.
7479         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
7480
7481         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
7482         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
7483
7484         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
7485         (gl_FUNC_READLINK): Update.
7486
7487         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
7488
7489 2007-03-03  Bruno Haible  <bruno@clisp.org>
7490
7491         * lib/xreadlink.c: Include <unistd.h> unconditionally.
7492         * modules/xreadlink (Depends-on): Add unistd.
7493         * modules/xreadlink-with-size (Depends-on): Likewise.
7494
7495 2007-03-03  Bruno Haible  <bruno@clisp.org>
7496
7497         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
7498         extracted from gt_FUNC_SETENV.
7499         (gt_FUNC_SETENV): Remove macro.
7500         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
7501         remove gt_FUNC_SETENV.
7502
7503 2007-03-03  Bruno Haible  <bruno@clisp.org>
7504
7505         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
7506         ENABLE_RELOCATABLE here.
7507         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
7508
7509 2007-03-03  Bruno Haible  <bruno@clisp.org>
7510
7511         * modules/rbtreehash-list-tests (Depends-on): Add progname.
7512         * tests/test-rbtreehash_list.c: Include progname.h.
7513         (main): Call set_program_name.
7514
7515         * modules/rbtree-oset-tests (Depends-on): Add progname.
7516         * tests/test-rbtree_oset.c: Include progname.h.
7517         (main): Call set_program_name.
7518
7519         * modules/rbtree-list-tests (Depends-on): Add progname.
7520         * tests/test-rbtree_list.c: Include progname.h.
7521         (main): Call set_program_name.
7522
7523         * modules/linked-list-tests (Depends-on): Add progname.
7524         * tests/test-linked_list.c: Include progname.h.
7525         (main): Call set_program_name.
7526
7527 2007-03-03  Bruno Haible  <bruno@clisp.org>
7528
7529         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
7530         All uses of __restrict changed to _Restrict_.
7531         * lib/glob_.h (__restrict): Remove macro.
7532
7533 2007-03-02  Bruno Haible  <bruno@clisp.org>
7534
7535         * modules/gettext (configure.ac): Require gettext infrastructure
7536         from version 0.16.1.
7537
7538 2007-03-02  Bruno Haible  <bruno@clisp.org>
7539
7540         * modules/linkedhash-list-tests (Depends-on): Add progname.
7541         * tests/test-linkedhash_list.c: Include progname.h.
7542         (main): Call set_program_name.
7543
7544         * modules/carray-list-tests (Depends-on): Add progname.
7545         * tests/test-carray_list.c: Include progname.h.
7546         (main): Call set_program_name.
7547
7548         * modules/avltreehash-list-tests (Depends-on): Add progname.
7549         * tests/test-avltreehash_list.c: Include progname.h.
7550         (main): Call set_program_name.
7551
7552         * modules/avltree-oset-tests (Depends-on): Add progname.
7553         * tests/test-avltree_oset.c: Include progname.h.
7554         (main): Call set_program_name.
7555
7556         * modules/avltree-list-tests (Depends-on): Add progname.
7557         * tests/test-avltree_list.c: Include progname.h.
7558         (main): Call set_program_name.
7559
7560         * modules/array-oset-tests (Depends-on): Add progname.
7561         * tests/test-array_oset.c: Include progname.h.
7562         (main): Call set_program_name.
7563
7564         * modules/array-list-tests (Depends-on): Add progname.
7565         * tests/test-array_list.c: Include progname.h.
7566         (main): Call set_program_name.
7567
7568         * modules/argp-tests (Depends-on): Add progname.
7569         * tests/test-argp.c: Include argp.h first. Include progname.h.
7570         (main): Call set_program_name.
7571
7572 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
7573
7574         * doc/gnulib-tool.texi (Initial import): Reword description of
7575         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
7576         limited effect even if defined after the first system include.
7577
7578 2007-03-01  Bruno Haible  <bruno@clisp.org>
7579
7580         * build-aux/config.libpath: Update to libtool-1.5.22.
7581         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
7582
7583 2007-03-01  Bruno Haible  <bruno@clisp.org>
7584
7585         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
7586         foo_CFLAGS.
7587         Reported by Ralf Wildenhues.
7588
7589 2007-03-01  Bruno Haible  <bruno@clisp.org>
7590
7591         * build-aux/install-reloc: Remove object files left over by some
7592         compilers.
7593         Reported by Ralf Wildenhues.
7594
7595 2007-03-01  Bruno Haible  <bruno@clisp.org>
7596
7597         * build-aux/install-reloc: Break long lines.
7598
7599 2007-03-01  Bruno Haible  <bruno@clisp.org>
7600
7601         * doc/relocatable.texi: Document that it may not work on OpenBSD.
7602         Reported by Ralf Wildenhues.
7603
7604 2007-03-01  Bruno Haible  <bruno@clisp.org>
7605
7606         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
7607         include ordering constraints.
7608
7609 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
7610
7611         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
7612         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
7613         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
7614         as another example.
7615         * lib/time_.h: Fix misspelling.
7616         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
7617         Require gl_HEADER_TIME_H_DEFAULTS.
7618         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
7619         * m4/time_r.m4 (gl_TIME_R): Likewise.
7620         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
7621
7622 2007-03-01  Bruno Haible  <bruno@clisp.org>
7623
7624         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
7625         * m4/utimens.m4 (gl_UTIMENS): Likewise.
7626
7627 2007-03-01  Jim Meyering  <jim@meyering.net>
7628
7629         * modules/xreadlink (Maintainer): Add my name.
7630         * modules/xreadlink-with-size (Depends-on): Alphabetize.
7631
7632 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
7633             Bruno Haible  <bruno@clisp.org>
7634
7635         * build-aux/install-reloc: Compile also c-ctype.c.
7636         * build-aux/relocatable.sh.in: New file.
7637         * doc/relocatable.texi: New file.
7638         * doc/relocatable-maint.texi: New file.
7639         * doc/gnulib.texi: Include relocatable-maint.texi.
7640         * lib/progreloc.c: Include unistd.h unconditionally.
7641         * lib/relocwrapper.c: Include unistd.h unconditionally.
7642         Include c-ctype.h.
7643         (add_dotbin): Use c_tolower.
7644         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
7645         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
7646         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
7647         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
7648         to m4/relocatable-lib.m4.
7649         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
7650         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
7651         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
7652         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
7653         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
7654         * modules/relocatable: New file.
7655         * modules/relocatable-lib: New file.
7656         * modules/relocatable-script: New file.
7657
7658 2007-02-28  Bruno Haible  <bruno@clisp.org>
7659
7660         Import --enable-relocatable infrastructure.
7661         * build-aux/config.libpath: New file, from GNU gettext.
7662         * build-aux/install-reloc: New file, from GNU gettext.
7663         * build-aux/reloc-ldflags: New file, from GNU gettext.
7664         * lib/relocatable.h: New file, from GNU gettext.
7665         * lib/relocatable.c: New file, from GNU gettext.
7666         * lib/relocwrapper.c: New file, from GNU gettext.
7667         * m4/relocatable.m4: New file, from GNU gettext.
7668
7669 2007-02-28  Bruno Haible  <bruno@clisp.org>
7670
7671         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
7672
7673         * modules/xreadlink: New file, from GNU gettext with modifications.
7674         * lib/xreadlink.c: New file, from GNU gettext.
7675         * lib/xreadlink.h: Add comments.
7676         (xreadlink): New declaration.
7677
7678         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
7679         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
7680         lib/xreadlink-with-size.c.
7681         (configure.ac): Remove gl_XREADLINK invocation.
7682         (Makefile.am): Augment lib_SOURCES.
7683         * m4/xreadlink.m4: Remove file.
7684         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
7685         (xreadlink_with_size): Renamed from xreadink.
7686         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
7687         * modules/canonicalize (Depends-on): Replace xreadlink with
7688         xreadlink-with-size.
7689         * lib/canonicalize.c (canonicalize_filename_mode): Update.
7690
7691 2007-02-25  Jim Meyering  <jim@meyering.net>
7692
7693         * build-aux/announce-gen: When complaining about excess arguments,
7694         list them.
7695
7696 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
7697
7698         * README: Document signed integer overflow situation more
7699         accurately.
7700
7701 2007-02-25  Bruno Haible  <bruno@clisp.org>
7702
7703         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
7704         'a' or 'A' conversion.
7705
7706 2007-02-25  Bruno Haible  <bruno@clisp.org>
7707
7708         * modules/filename: Renamed from modules/pathname.
7709         (Files): Replace lib/pathname.h with lib/filename.h. Replace
7710         lib/concatpath.c with lib/concat-filename.c.
7711         (Makefile.am): Update.
7712         (Include): Replace pathname.h with filename.h.
7713         * lib/filename.h: Renamed from lib/pathname.h.
7714         (concatenated_filename): Renamed from concatenated_pathname.
7715         * lib/concat-filename.c: Renamed from lib/concatpath.c.
7716         (concatenated_filename): Renamed from concatenated_pathname.
7717         * lib/findprog.c: Include filename.h instead of pathname.h.
7718         (find_in_path): Update.
7719         * lib/javacomp.c: Include filename.h instead of pathname.h.
7720         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
7721         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
7722         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
7723         is_oldgcj_14_13_usable, is_javac_usable): Update.
7724         * lib/javaexec.c: Include filename.h instead of pathname.h.
7725         (execute_java_class): Update.
7726         * modules/findprog: Update.
7727         * modules/javacomp: Update.
7728         * modules/javaexec: Update.
7729         * MODULES.html.sh (File system functions): Add 'filename', remove
7730         'pathname'.
7731
7732 2007-02-25  Bruno Haible  <bruno@clisp.org>
7733
7734         * modules/printf-frexpl-tests: New file.
7735         * tests/test-printf-frexpl.c: New file.
7736
7737         * modules/printf-frexpl: New file.
7738         * lib/printf-frexpl.h: New file.
7739         * lib/printf-frexpl.c: New file.
7740         * m4/printf-frexpl.m4: New file.
7741
7742 2007-02-25  Bruno Haible  <bruno@clisp.org>
7743
7744         * modules/printf-frexp-tests: New file.
7745         * tests/test-printf-frexp.c: New file.
7746
7747         * modules/printf-frexp: New file.
7748         * lib/printf-frexp.h: New file.
7749         * lib/printf-frexp.c: New file.
7750         * m4/printf-frexp.m4: New file.
7751
7752 2007-02-25  Bruno Haible  <bruno@clisp.org>
7753
7754         Assume automake >= 1.10 for the tests.
7755         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
7756         * modules/arctwo-tests: Likewise.
7757         * modules/argp-tests: Likewise.
7758         * modules/avltree-list-tests: Likewise.
7759         * modules/avltree-oset-tests: Likewise.
7760         * modules/avltreehash-list-tests: Likewise.
7761         * modules/carray-list-tests: Likewise.
7762         * modules/crc-tests: Likewise.
7763         * modules/des-tests: Likewise.
7764         * modules/gc-arcfour-tests: Likewise.
7765         * modules/gc-arctwo-tests: Likewise.
7766         * modules/gc-des-tests: Likewise.
7767         * modules/gc-hmac-md5-tests: Likewise.
7768         * modules/gc-hmac-sha1-tests: Likewise.
7769         * modules/gc-md2-tests: Likewise.
7770         * modules/gc-md4-tests: Likewise.
7771         * modules/gc-md5-tests: Likewise.
7772         * modules/gc-pbkdf2-sha1-tests: Likewise.
7773         * modules/gc-rijndael-tests: Likewise.
7774         * modules/gc-sha1-tests: Likewise.
7775         * modules/gc-tests: Likewise.
7776         * modules/getaddrinfo-tests: Likewise.
7777         * modules/hmac-md5-tests: Likewise.
7778         * modules/hmac-sha1-tests: Likewise.
7779         * modules/linked-list-tests: Likewise.
7780         * modules/linkedhash-list-tests: Likewise.
7781         * modules/lock-tests: Likewise.
7782         * modules/md2-tests: Likewise.
7783         * modules/md4-tests: Likewise.
7784         * modules/md5-tests: Likewise.
7785         * modules/rbtree-list-tests: Likewise.
7786         * modules/rbtree-oset-tests: Likewise.
7787         * modules/rbtreehash-list-tests: Likewise.
7788         * modules/read-file-tests: Likewise.
7789         * modules/rijndael-tests: Likewise.
7790         * modules/stdint-tests: Likewise.
7791         * modules/tls-tests: Likewise.
7792
7793 2007-02-24  Bruno Haible  <bruno@clisp.org>
7794
7795         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
7796         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
7797         function; instead check whether isnan with a double argument links.
7798         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
7799         function; instead check whether isnan with a 'long double' argument
7800         links.
7801         Reported by Eric Blake <ebb9@byu.net>.
7802
7803 2007-02-24  Bruno Haible  <bruno@clisp.org>
7804
7805         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
7806         defined.
7807         * lib/isnanl.c: Remove all code. Just include isnan.c.
7808         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
7809
7810 2007-02-25  Jim Meyering  <jim@meyering.net>
7811
7812         Avoid conflicting types for 'unsetenv' on FreeBSD.
7813         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
7814         conflicting with FreeBSD's (5.0 and 6.1) function declaration
7815         in stdlib.h.
7816
7817 2007-02-24  Bruno Haible  <bruno@clisp.org>
7818
7819         * modules/isnanl-nolibm-tests: New file.
7820         * tests/test-isnanl.c: New file.
7821
7822         * modules/isnanl-nolibm: New file.
7823         * lib/isnanl.h: New file.
7824         * lib/isnanl.c: New file.
7825         * m4/isnanl.m4: New file.
7826
7827 2007-02-24  Bruno Haible  <bruno@clisp.org>
7828
7829         * modules/isnan-nolibm-tests: New file.
7830         * tests/test-isnan.c: New file.
7831
7832         * modules/isnan-nolibm: New file.
7833         * lib/isnan.h: New file.
7834         * lib/isnan.c: New file.
7835         * m4/isnan.m4: New file.
7836
7837 2007-02-24  Bruno Haible  <bruno@clisp.org>
7838
7839         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
7840         assume that an exponent fits in 20 bits.
7841
7842 2007-02-24  Jim Meyering  <jim@meyering.net>
7843
7844         * m4/regex.m4: Update the description of the configure-time option,
7845         --without-included-regex, to state accurately what the defaults are,
7846         and perhaps to give people an idea why using this option is risky.
7847
7848 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
7849
7850         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
7851         loops on small arguments.  This attempts to avoid the problem
7852         Bruno Haible reported for AIX 4.3.2 in
7853         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
7854
7855 2007-02-23  Bruno Haible  <bruno@clisp.org>
7856
7857         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
7858         Needed for help2man.
7859
7860 2007-02-23  Karl Berry  <karl@gnu.org>
7861
7862         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
7863         exists, foo.h should be cvs-ignored, not committed.
7864
7865 2007-02-23  Eric Blake  <ebb9@byu.net>
7866
7867         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
7868         * lib/stat-time.h (includes): Likewise.
7869         * lib/utimecmp.c (includes): Likewise.
7870         * lib/utimens.h (includes): Likewise.
7871         * lib/getdate.y (includes): Also include "timespec.h" for use
7872         internal to the module.
7873         * modules/utimens (Depends-on): Revert yesterday's patch.
7874         * modules/nanosleep (Depends-on): Add missing dependency.
7875
7876 2007-02-22  Bruno Haible  <bruno@clisp.org>
7877
7878         * lib/glob.c: Don't include getlogin_r.h.
7879
7880 2007-02-22  Jim Meyering  <jim@meyering.net>
7881
7882         * modules/utimens (Depends-on): Add timespec, required for
7883         utimens.h's inclusion of timespec.h.
7884
7885 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
7886
7887         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
7888         long unreadable paths in GNU/Linux.  Problem reported by Andreas
7889         Schwab in
7890         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
7891         I'll try to think of a better way to fix the Solaris problem.
7892
7893         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
7894         like glibc; on Solaris 10, it fails with errno == EINVAL.
7895         POSIX says the behavior is unspecified if the first argument is NULL,
7896         so play it safe and never pass NULL to the system getcwd.
7897
7898 2007-02-21  Jim Meyering  <jim@meyering.net>
7899
7900         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
7901         of gettimeofday.  It would conflict with the one now always
7902         provided via sys_time_.h.  Reported by Matthew Woehlke, as
7903         an IRIX 6.5 build failure.
7904
7905 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
7906
7907         Minor fixups to port to Solaris 10 with Sun C 5.8.
7908         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
7909         * modules/getcwd (Depends-on): Add dirfd.
7910         * lib/putenv.c (putenv): #undef it.
7911         (rpl_putenv): New decl.
7912         (malloc, free): Include <stdlib.h> rather than prototyping separately.
7913
7914 2007-02-20  Bruno Haible  <bruno@clisp.org>
7915
7916         * modules/stdio-tests: New file.
7917         * tests/test-stdio.c: New file.
7918
7919         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
7920         (Depends-on): Add stdio.
7921         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
7922         (Include): Use <stdio.h> instead of vsnprintf.h.
7923         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
7924         HAVE_DECL_VSNPRINTF.
7925         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
7926
7927         * modules/snprintf (Files): Remove lib/snprintf.h.
7928         (Depends-on): Add stdio.
7929         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
7930         (Include): Use <stdio.h> instead of snprintf.h.
7931         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
7932         HAVE_DECL_SNPRINTF.
7933         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
7934         * lib/getaddrinfo.c: Likewise.
7935
7936         * modules/stdio: New file.
7937         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
7938         * lib/snprintf.h: Remove file.
7939         * lib/vsnprintf.h: Remove file.
7940         * lib/.cppi-disable: Remove snprintf.h.
7941         * m4/stdio_h.m4: New file.
7942         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
7943
7944 2007-02-20  Jim Meyering  <jim@meyering.net>
7945
7946         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
7947         used by e.g., mingw.  From Bruno Haible.
7948
7949 2007-02-19  Bruno Haible  <bruno@clisp.org>
7950
7951         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
7952         warnings.
7953         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7954
7955 2007-02-19  Bruno Haible  <bruno@clisp.org>
7956
7957         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
7958         from mingw users.
7959
7960 2007-02-19  Bruno Haible  <bruno@clisp.org>
7961
7962         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
7963         warnings.
7964         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
7965
7966 2007-02-19  Jim Meyering  <jim@meyering.net>
7967
7968         Don't use FD after a successful "fdopendir (fd)".
7969         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
7970         Reset it by calling dirfd on the just-obtained DIR*.
7971
7972         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
7973         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
7974
7975 2007-02-18  Bruno Haible  <bruno@clisp.org>
7976
7977         * lib/readlink.c: Include <unistd.h>.
7978         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
7979         HAVE_READLINK.
7980         * modules/readlink (Depends-on): Add unistd.
7981         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7982         (Include): Add <unistd.h>.
7983
7984         * lib/getlogin_r.h: Remove file.
7985         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
7986         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
7987         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
7988         HAVE_DECL_GETLOGIN_R.
7989         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
7990         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7991         (Include): Use <unistd.h> instead of getlogin_r.h.
7992
7993         * lib/getcwd.h: Remove file.
7994         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
7995         * lib/xgetcwd.c: Likewise.
7996         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
7997         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
7998         * modules/getcwd (Files): Remove lib/getcwd.h.
7999         (Depends-on): Add unistd.
8000         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8001         (Include): Use <unistd.h> instad of getcwd.h.
8002
8003         * lib/ftruncate.c: Include <unistd.h> first.
8004         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
8005         Set HAVE_FTRUNCATE.
8006         * modules/ftruncate (Depends-on): Add unistd.
8007         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8008
8009         * lib/fchdir.c: Include <unistd.h> first.
8010         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
8011         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
8012         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
8013         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8014         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
8015
8016         * lib/dup2.c: Include <unistd.h> first.
8017         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
8018         HAVE_DUP2.
8019         * modules/dup2 (Depends-on): Add unistd.
8020         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8021
8022         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
8023         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
8024         REPLACE_CHOWN. Don't define chown as a macro here.
8025         * modules/chown (Depends-on): Add unistd.
8026         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8027
8028         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
8029         Add definition for GL_LINK_WARNING.
8030         (chown, dup2): New declarations.
8031         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
8032         link warning.
8033         (ftruncate): New declaration.
8034         (getcwd): New declaration, taken from old getcwd.h.
8035         (getlogin_r): New declaration, taken from old getlogin_r.h.
8036         (readlink): New declaration.
8037         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
8038         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
8039         (gl_PREREQ_UNISTD): Remove macro.
8040         (gl_UNISTD_MODULE_INDICATOR): New macro.
8041         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
8042         many new variables. Don't set UNISTD_H.
8043         * modules/unistd (Description): Change.
8044         (Depends-on): Add link-warning.
8045         (configure.ac): Update.
8046         (Makefile.am): Create unistd.h always. Substitute many new variables
8047         into it.
8048
8049 2007-02-18  Bruno Haible  <bruno@clisp.org>
8050
8051         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
8052         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
8053         HAVE_GETSUBOPT.
8054         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
8055         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
8056         * lib/getsubopt.h: Remove file.
8057         * modules/getsubopt (Files): Remove lib/getsubopt.h.
8058         (Depends-on): Add stdlib.
8059         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8060         (Includes): Use <stdlib.h> instead of getsubopt.h.
8061         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
8062         Set HAVE_GETSUBOPT.
8063         * lib/getsubopt.c: Don't include getsubopt.h.
8064
8065 2007-02-18  Bruno Haible  <bruno@clisp.org>
8066
8067         * modules/fchdir (Depends-on): Add dup2.
8068
8069 2007-02-18  Bruno Haible  <bruno@clisp.org>
8070
8071         * lib/stdlib_.h: Handle glibc's special invocation convention
8072         specially.
8073
8074 2007-02-18  Bruno Haible  <bruno@clisp.org>
8075
8076         * modules/stdlib-tests: New file.
8077         * tests/test-stdlib.c: New file.
8078
8079         * modules/mkstemp (Files): Remove lib/mkstemp.h.
8080         (Depends-on): Add stdlib.
8081         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8082         (Includes): Use <stdlib.h> instead of mkstemp.h.
8083         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
8084         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
8085         * lib/mkstemp.c: Don't include mkstemp.h.
8086         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
8087         * lib/stdlib--.h: Don't include mkstemp.h.
8088
8089         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
8090         (Depends-on): Add stdlib.
8091         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8092         (Includes): Use <stdlib.h> instead of mkdtemp.h.
8093         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
8094         HAVE_MKDTEMP.
8095         * lib/mkdtemp.c: Don't include mkdtemp.h.
8096         * lib/clean-temp.c: Don't include mkdtemp.h.
8097
8098         * modules/exit (Files): Remove lib/exit.h.
8099         (Depends-on): Add stdlib.
8100         (Makefile.am): Remove lib_SOURCES.
8101         (Include): Use <stdlib.h> instead of exit.h.
8102         * lib/argmatch.c: Don't include exit.h.
8103         * lib/execute.c: Likewise.
8104         * lib/pagealign_alloc.c: Likewise.
8105         * lib/pipe.c: Likewise.
8106         * lib/wait-process.c: Likewise.
8107         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
8108         * lib/exitfail.c: Likewise.
8109         * lib/savewd.c: Likewise.
8110         * lib/xsetenv.c: Likewise.
8111
8112         * modules/stdlib: New file.
8113         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
8114         and extra comments about mkstemp().
8115         * lib/exit.h: Remove file.
8116         * lib/mkdtemp.h: Remove file.
8117         * lib/mkstemp.h: Remove file.
8118         * m4/stdlib_h.m4: New file.
8119         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
8120
8121 2007-02-18  Bruno Haible  <bruno@clisp.org>
8122
8123         * modules/math-tests: New file.
8124         * tests/test-math.c: New file.
8125
8126         * modules/math: New file.
8127         * modules/mathl (Files): Remove lib/mathl.h.
8128         (Depends-on): Add math.
8129         (Makefile.am): Don't mention mathl.h.
8130         (Include): Use <math.h> instead of mathl.h.
8131         * lib/math_.h: New file.
8132         * lib/mathl.h: Remove file.
8133         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
8134         mathl.h.
8135         * lib/asinl.c: Likewise.
8136         * lib/atanl.c: Likewise.
8137         * lib/ceill.c: Likewise.
8138         * lib/cosl.c: Likewise.
8139         * lib/expl.c: Likewise.
8140         * lib/floorl.c: Likewise.
8141         * lib/frexpl.c: Likewise.
8142         * lib/ldexpl.c: Likewise.
8143         * lib/logl.c: Likewise.
8144         * lib/sincosl.c: Likewise.
8145         * lib/sinl.c: Likewise.
8146         * lib/sqrtl.c: Likewise.
8147         * lib/tanl.c: Likewise.
8148         * lib/trigl.c: Likewise.
8149         * m4/math_h.m4: New file.
8150         * MODULES.html.sh (Mathematics): Add math.
8151
8152 2007-02-17  Bruno Haible  <bruno@clisp.org>
8153
8154         * modules/wctype-tests: New file.
8155         * tests/test-wctype.c: New file.
8156
8157         * modules/wchar-tests: New file.
8158         * tests/test-wchar.c: New file.
8159
8160         * modules/unistd-tests: New file.
8161         * tests/test-unistd.c: New file.
8162
8163         * modules/time-tests: New file.
8164         * tests/test-time.c: New file.
8165
8166         * modules/sysexits-tests: New file.
8167         * tests/test-sysexits.c: New file.
8168
8169         * modules/sys_time-tests: New file.
8170         * tests/test-sys_time.c: New file.
8171
8172         * modules/sys_stat-tests: New file.
8173         * tests/test-sys_stat.c: New file.
8174
8175         * modules/sys_socket-tests: New file.
8176         * tests/test-sys_socket.c: New file.
8177
8178         * modules/sys_select-tests: New file.
8179         * tests/test-sys_select.c: New file.
8180
8181         * modules/string-tests: New file.
8182         * tests/test-string.c: New file.
8183
8184         * modules/stdbool-tests: New file.
8185         * tests/test-stdbool.c: New file.
8186
8187         * modules/netinet_in-tests: New file.
8188         * tests/test-netinet_in.c: New file.
8189
8190         * modules/inttypes-tests: New file.
8191         * tests/test-inttypes.c: New file.
8192
8193         * modules/fcntl-tests: New file.
8194         * tests/test-fcntl.c: New file.
8195
8196         * modules/byteswap-tests: New file.
8197         * tests/test-byteswap.c: New file.
8198
8199         * modules/arpa_inet-tests: New file.
8200         * tests/test-arpa_inet.c: New file.
8201
8202 2007-02-17  Bruno Haible  <bruno@clisp.org>
8203
8204         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
8205         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
8206         if the corresponding module is not enabled. Emit link warnings if
8207         the function is used nevertheless.
8208         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
8209         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
8210         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
8211         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
8212         * modules/inttypes (Depends-on): Add link-warning.
8213         (Makefile.am): Copy the contents of build-aux/link-warning.h into
8214         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
8215         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
8216         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
8217         * modules/imaxdiv (configure.ac): Likewise.
8218         * modules/strtoimax (configure.ac): Likewise.
8219         * modules/strtoumax (configure.ac): Likewise.
8220
8221 2007-02-17  Bruno Haible  <bruno@clisp.org>
8222
8223         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
8224         gl_STRING_MODULE_INDICATOR_DEFAULTS.
8225         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
8226         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
8227
8228 2007-02-17  Bruno Haible  <bruno@clisp.org>
8229
8230         * modules/link-warning: New file.
8231         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
8232         * lib/string_.h (GL_LINK_WARNING): Remove definition.
8233         * modules/string (Depends-on): Add link-warning.
8234         (Makefile.am): Copy the contents of build-aux/link-warning.h into
8235         string.h.
8236         * MODULES.html.sh (Support for building libraries and executables): Add
8237         link-warning.
8238
8239 2007-02-17  Bruno Haible  <bruno@clisp.org>
8240
8241         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
8242         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
8243         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
8244         long lines.
8245
8246 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
8247             Bruno Haible  <bruno@clisp.org>
8248
8249         * modules/tmpfile: New file.
8250         * lib/tmpfile.c: New file.
8251         * m4/tmpfile.m4: New file.
8252         * MODULES.html.sh (func_all_modules): New section "Input/output".
8253
8254 2007-02-15  Bruno Haible  <bruno@clisp.org>
8255
8256         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
8257         (supports_delete_on_close): New function.
8258         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
8259
8260 2007-02-14  Bruno Haible  <bruno@clisp.org>
8261
8262         * modules/mbspcasecmp-tests: New file.
8263         * tests/test-mbspcasecmp.sh: New file.
8264         * tests/test-mbspcasecmp.c: New file.
8265
8266         New module mbspcasecmp.
8267         * modules/mbspcasecmp: New file.
8268         * lib/mbspcasecmp.c: New file.
8269         * lib/string_.h (strncasecmp): Change warning message.
8270         (mbspcasecmp): New declaration.
8271         * m4/mbspcasecmp.m4: New file.
8272         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8273         GNULIB_MBSPCASECMP.
8274         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
8275         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
8276
8277 2007-02-14  Bruno Haible  <bruno@clisp.org>
8278
8279         * modules/mbsncasecmp-tests: New file.
8280         * tests/test-mbsncasecmp.sh: New file.
8281         * tests/test-mbsncasecmp.c: New file.
8282
8283         New module mbsncasecmp.
8284         * modules/mbsncasecmp: New file.
8285         * lib/mbsncasecmp.c: New file.
8286         * lib/string_.h (mbsncasecmp): New declaration.
8287         * m4/mbsncasecmp.m4: New file.
8288         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8289         GNULIB_MBSNCASECMP.
8290         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
8291         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
8292
8293 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
8294
8295         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
8296         Verify that it doesn't overlap with our flags.
8297         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
8298         do not have the desired effect in multibyte locales; instead, use
8299         mbscasecmp.
8300         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
8301         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
8302         we don't require GNU fnmatch ourselves (if our users require it, they
8303         should do so explicitly).
8304
8305         Fix regex code so it doesn't rely on strcasecmp.
8306         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
8307         Otherwise, include gnulib's langinfo.h.
8308         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
8309         undesirable behavior in non-C locales.  Instead, rely on localecharset.
8310         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
8311         * modules/regex (FILES): Remove m4/codeset.m4.
8312         (Depends-on): Add localcharset.  Remove strcase.
8313
8314 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8315
8316         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
8317         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
8318
8319 2007-02-13  Bruno Haible  <bruno@clisp.org>
8320
8321         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
8322         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8323
8324 2007-02-12  Bruno Haible  <bruno@clisp.org>
8325
8326         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
8327         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
8328         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
8329         time warning rather than a link error.
8330
8331 2007-02-12  Bruno Haible  <bruno@clisp.org>
8332
8333         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
8334         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
8335         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8336
8337 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
8338
8339         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
8340         args, not 2.
8341
8342 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
8343
8344         New module 'time', so that apps can include <time.h> as per
8345         POSIX and GNU instead of separate include files like time_r.h
8346         and timegm.h.  This implementation tries out a simpler approach
8347         for replacing decls in standard include files (as compared to
8348         the string module), somewhat as an experiment.
8349
8350         * config/srclist.txt: Comment out mktime.c for now.
8351         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
8352         since it doesn't apply any more.  Use generic wording instead.
8353         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
8354         'time'.
8355         * lib/time_.h, m4/time_h.m4, modules/time: New files.
8356         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
8357         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
8358         Don't include <sys/types.h>; no longer needed since we assume C89.
8359         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
8360         * lib/strftime.c: Likewise.
8361         * lib/time_r.c: Likewise.
8362         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
8363         * lib/nanosleep.c: Include <time.h> first, to check interface.
8364         * lib/strptime.c: Likewise.
8365         * lib/time_r.c: Likewise.
8366         * lib/timegm.c: Likewise.
8367         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
8368         needed.
8369         * lib/timegm.c: Don't include timegm.h; no longer needed.
8370         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
8371         time.h now handles any problems in that area.
8372         (struct timespec, nanosleep): Remove; time.h now arranges for these.
8373         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
8374         that time.h defines struct timespec.
8375         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
8376         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
8377         handles that.
8378         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
8379         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
8380         needed.  Set REPLACE_LOCALTIME.
8381         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
8382         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
8383         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
8384         nanosleep; time_h.m4 now does that.  Don't require
8385         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
8386         module handles this now.
8387         * modules/getdate (Depends-on): Remove timespec.  Add time.
8388         * modules/nanosleep (Depends-on): Likewise.
8389         * modules/stat-time (Depends-on): Likewise.
8390         * modules/nanosleep (Include): Include time.h, not timespec.h.
8391         * modules/strptime (Files): Remove lib/strptime.h.
8392         (Depends-on): Add extensions, time.
8393         (Include): Include time.h, not strptime.h.
8394         * modules/time_r (Files): Remove lib/time_r.h.
8395         (Depends-on): Add time.
8396         (Include): Include time.h, not time_r.h.
8397         * modules/timegm: Likewise.
8398         * modules/timespec (Description): Now does timespec-related decls
8399         of our own, instead of struct timespec itself.
8400         (Depends-on): Add time; remove extensions.
8401         (Maintainer): Add self.
8402         * modules/utimecmp (Depends-on): Add time; remove timespec.
8403         * modules/utimens (Depends-on): Likewise.
8404         * modules/xnanosleep (Depends-on): Likewise.
8405
8406 2007-02-11  Bruno Haible  <bruno@clisp.org>
8407
8408         * lib/c-strstr.c: Include allocsa.h.
8409         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8410         * lib/c-strcasestr.c: Include allocsa.h.
8411         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8412         * lib/strcasestr.c: Include allocsa.h.
8413         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
8414         * lib/mbsstr.c: Include allocsa.h.
8415         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8416         allocsa/freesa instead of malloc/free.
8417         * lib/mbscasestr.c: Include allocsa.h.
8418         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
8419         allocsa/freesa instead of malloc/free.
8420         * modules/c-strstr (Depends-on): Add allocsa.
8421         * modules/c-strcasestr (Depends-on): Likewise.
8422         * modules/strcasestr (Depends-on): Likewise.
8423         * modules/mbsstr (Depends-on): Likewise.
8424         * modules/mbscasestr (Depends-on): Likewise.
8425
8426 2007-02-11  Bruno Haible  <bruno@clisp.org>
8427
8428         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
8429
8430         * modules/mbsspn-tests: New file.
8431         * tests/test-mbsspn.sh: New file.
8432         * tests/test-mbsspn.c: New file.
8433
8434 2007-02-11  Bruno Haible  <bruno@clisp.org>
8435
8436         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
8437
8438         * modules/mbspbrk-tests: New file.
8439         * tests/test-mbspbrk.sh: New file.
8440         * tests/test-mbspbrk.c: New file.
8441
8442 2007-02-11  Bruno Haible  <bruno@clisp.org>
8443
8444         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
8445         unneeded cast.
8446
8447         * modules/mbscspn-tests: New file.
8448         * tests/test-mbscspn.sh: New file.
8449         * tests/test-mbscspn.c: New file.
8450
8451 2007-02-11  Bruno Haible  <bruno@clisp.org>
8452
8453         * modules/mbscasecmp-tests: New file.
8454         * tests/test-mbscasecmp.sh: New file.
8455         * tests/test-mbscasecmp.c: New file.
8456
8457 2007-02-11  Bruno Haible  <bruno@clisp.org>
8458
8459         Ensure O(n) worst-case complexity of mbscasestr.
8460         * lib/mbscasestr.c: Include stdbool.h.
8461         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8462         functions.
8463         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
8464         the bookkeeping indicates that it's worth it.
8465         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
8466
8467         * modules/mbscasestr-tests: New file.
8468         * tests/test-mbscasestr1.c: New file.
8469         * tests/test-mbscasestr2.sh: New file.
8470         * tests/test-mbscasestr2.c: New file.
8471         * tests/test-mbscasestr3.sh: New file.
8472         * tests/test-mbscasestr3.c: New file.
8473         * tests/test-mbscasestr4.sh: New file.
8474         * tests/test-mbscasestr4.c: New file.
8475         * m4/locale-tr.m4: New file.
8476
8477 2007-02-11  Bruno Haible  <bruno@clisp.org>
8478
8479         Ensure O(n) worst-case complexity of mbsstr.
8480         * lib/mbsstr.c: Include stdbool.h.
8481         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
8482         functions.
8483         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
8484         bookkeeping indicates that it's worth it.
8485         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
8486
8487         * modules/mbsstr-tests: New file.
8488         * tests/test-mbsstr1.c: New file.
8489         * tests/test-mbsstr2.sh: New file.
8490         * tests/test-mbsstr2.c: New file.
8491         * tests/test-mbsstr3.sh: New file.
8492         * tests/test-mbsstr3.c: New file.
8493         * m4/locale-fr.m4: New file.
8494
8495 2007-02-11  Bruno Haible  <bruno@clisp.org>
8496
8497         * lib/mbsrchr.c (mbsrchr): Fix bug.
8498
8499         * modules/mbsrchr-tests: New file.
8500         * tests/test-mbsrchr.sh: New file.
8501         * tests/test-mbsrchr.c: New file.
8502
8503 2007-02-11  Bruno Haible  <bruno@clisp.org>
8504
8505         * lib/mbschr.c (mbschr): Fix bug.
8506
8507         * modules/mbschr-tests: New file.
8508         * tests/test-mbschr.sh: New file.
8509         * tests/test-mbschr.c: New file.
8510         * m4/locale-zh.m4: New file.
8511
8512 2007-02-11  Bruno Haible  <bruno@clisp.org>
8513
8514         Support for copying multibyte string iterators.
8515         * lib/mbiter.h: Include <string.h>.
8516         (mbiter_multi_copy): New function.
8517         (mbi_copy): New macro.
8518         * lib/mbuiter.h: Include <string.h>.
8519         (mbuiter_multi_copy): New function.
8520         (mbui_copy): New macro.
8521
8522 2007-02-11  Bruno Haible  <bruno@clisp.org>
8523
8524         New module mbslen.
8525         * modules/mbslen: New file.
8526         * lib/mbslen.c: New file.
8527         * lib/string_.h (mbslen): New declaration.
8528         * m4/mbslen.m4: New file.
8529         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8530         GNULIB_MBSLEN.
8531         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
8532         * MODULES.html.sh (Internationalization functions): Add mbslen.
8533
8534 2007-02-11  Bruno Haible  <bruno@clisp.org>
8535
8536         Ensure O(n) worst-case complexity of strcasestr substitute.
8537         * lib/strcasestr.c: Include stdbool.h.
8538         (knuth_morris_pratt): New function.
8539         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
8540         bookkeeping indicates that it's worth it.
8541         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
8542
8543         * modules/strcasestr-tests: New file.
8544         * tests/test-strcasestr.c: New file.
8545
8546 2007-02-11  Bruno Haible  <bruno@clisp.org>
8547
8548         Ensure O(n) worst-case complexity of c_strcasestr.
8549         * lib/c-strcasestr.c: Include stdbool.h, string.h.
8550         (knuth_morris_pratt): New function.
8551         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
8552         the bookkeeping indicates that it's worth it.
8553         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
8554
8555         * modules/c-strcasestr-tests: New file.
8556         * tests/test-c-strcasestr.c: New file.
8557
8558 2007-02-11  Bruno Haible  <bruno@clisp.org>
8559
8560         Ensure O(n) worst-case complexity of c_strstr.
8561         * lib/c-strstr.c: Include stdbool.h, string.h.
8562         (knuth_morris_pratt): New function.
8563         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
8564         bookkeeping indicates that it's worth it.
8565         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
8566
8567         * lib/c-strstr.c: Complete rewrite for maintainability.
8568
8569         * modules/c-strstr-tests: New file.
8570         * tests/test-c-strstr.c: New file.
8571
8572 2007-02-11  Bruno Haible  <bruno@clisp.org>
8573
8574         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
8575         5.2.1 and earlier, whereby \055 was treated just like the range
8576         delimiter '-'.
8577         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
8578
8579 2007-02-08  Bruno Haible  <bruno@clisp.org>
8580
8581         * modules/regex (Depends-on): Add stdbool.
8582         Reported by Dalibor Topic <robilad@kaffe.org>.
8583
8584 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
8585
8586         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
8587         Prefer returning from main to exiting from it.
8588         Remove unnecessary parens after sizeof.
8589
8590 2007-02-05  Bruno Haible  <bruno@clisp.org>
8591
8592         New module mbssep.
8593         * modules/mbssep: New file.
8594         * lib/mbssep.c: New file.
8595         * lib/string_.h (strsep): Add a conditional link warning.
8596         (mbssep): New declaration.
8597         * m4/mbssep.m4: New file.
8598         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8599         GNULIB_MBSSEP.
8600         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
8601         * MODULES.html.sh (Internationalization functions): Add mbssep.
8602
8603 2007-02-05  Bruno Haible  <bruno@clisp.org>
8604
8605         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
8606         Optimize search in case of 1 delimiter.
8607
8608 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
8609
8610         * lib/acl.h: Include sys/types.h before sys/acl.h.
8611
8612 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
8613
8614         Merge upstream fix for glibc bugzilla #3957:
8615
8616         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
8617
8618         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
8619         bit for RE_HAT_LISTS_NOT_NEWLINE.
8620         (build_charclass_op): Remove bogus comment.
8621
8622 2007-02-05  Simon Josefsson  <simon@josefsson.org>
8623
8624         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
8625
8626 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8627
8628         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
8629         * lib/memmem.c [!defined _LIBC]: Include config.h.
8630
8631 2007-02-04  Bruno Haible  <bruno@clisp.org>
8632
8633         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
8634         warning message.
8635
8636 2007-02-04  Bruno Haible  <bruno@clisp.org>
8637
8638         New module mbstok_r.
8639         * modules/mbstok_r: New file.
8640         * lib/mbstok_r.c: New file.
8641         * lib/string_.h (strtok_r): Change argument names to match the
8642         comments. Add a conditional link warning.
8643         (mbstok_r): New declaration.
8644         * m4/mbstok_r.m4: New file.
8645         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8646         GNULIB_MBSTOK_R.
8647         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
8648         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
8649
8650 2007-02-04  Bruno Haible  <bruno@clisp.org>
8651
8652         New module mbsspn.
8653         * modules/mbsspn: New file.
8654         * lib/mbsspn.c: New file.
8655         * lib/string_.h (strspn): Add a conditional link warning.
8656         (mbsspn): New declaration.
8657         * m4/mbsspn.m4: New file.
8658         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8659         GNULIB_MBSSPN.
8660         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
8661         * MODULES.html.sh (Internationalization functions): Add mbsspn.
8662
8663 2007-02-04  Bruno Haible  <bruno@clisp.org>
8664
8665         New module mbspbrk.
8666         * modules/mbspbrk: New file.
8667         * lib/mbspbrk.c: New file.
8668         * lib/string_.h (strpbrk): Add a conditional link warning.
8669         (mbspbrk): New declaration.
8670         * m4/mbspbrk.m4: New file.
8671         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8672         GNULIB_MBSPBRK.
8673         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
8674         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
8675
8676 2007-02-04  Bruno Haible  <bruno@clisp.org>
8677
8678         New module mbscspn.
8679         * modules/mbscspn: New file.
8680         * lib/mbscspn.c: New file.
8681         * lib/string_.h (strcspn): Add a conditional link warning.
8682         (mbscspn): New declaration.
8683         * m4/mbscspn.m4: New file.
8684         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8685         GNULIB_MBSCSPN.
8686         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
8687         * MODULES.html.sh (Internationalization functions): Add mbscspn.
8688
8689 2007-02-04  Bruno Haible  <bruno@clisp.org>
8690
8691         New module mbscasestr, reduced goal of strcasestr.
8692         * modules/mbscasestr: New file.
8693         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
8694         (mbscasestr): Renamed from strcasestr.
8695         * lib/strcasestr.c: Don't include mbuiter.h.
8696         (strcasestr): Remove support for multibyte locales.
8697         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
8698         Change the conditional link warning.
8699         (mbscasestr): New declaration.
8700         * m4/mbscasestr.m4: New file.
8701         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
8702         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
8703         REPLACE_STRCASESTR.
8704         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
8705         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
8706         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
8707         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
8708         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
8709         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
8710         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
8711         (Depends-on): Remove mbuiter.
8712         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
8713
8714 2007-02-04  Bruno Haible  <bruno@clisp.org>
8715
8716         Simplify handling of strncasecmp.
8717         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
8718         the conditional link warning.
8719         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
8720         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
8721         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
8722         * modules/strcase (configure.ac): Don't invoke
8723         gl_STRING_MODULE_INDICATOR.
8724         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
8725
8726 2007-02-04  Bruno Haible  <bruno@clisp.org>
8727
8728         New module mbscasecmp, reduced goal of strcasecmp.
8729         * modules/mbscasecmp: New file.
8730         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
8731         (mbscasecmp): Renamed from strcasecmp.
8732         * lib/strcasecmp.c: Don't include mbuiter.h.
8733         (strcasecmp): Remove support for multibyte locales.
8734         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
8735         Change the conditional link warning.
8736         (mbscasecmp): New declaration.
8737         * m4/mbscasecmp.m4: New file.
8738         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
8739         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
8740         REPLACE_STRCASECMP.
8741         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
8742         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8743         GNULIB_MBSCASECMP.
8744         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
8745         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
8746         * modules/strcase (Files): Remove m4/mbrtowc.m4.
8747         (Depends-on): Remove mbuiter.
8748         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
8749
8750 2007-02-04  Bruno Haible  <bruno@clisp.org>
8751
8752         New module mbsstr. Remove module strstr.
8753         * modules/mbsstr: New file.
8754         * modules/strstr: Remove file.
8755         * lib/mbsstr.c: Renamed from lib/strstr.c.
8756         (mbsstr): Renamed from strstr.
8757         * lib/string_.h (strstr): Remove declaration. Change the conditional
8758         link warning.
8759         (mbsstr): New declaration.
8760         * m4/mbsstr.m4: New file.
8761         * m4/strstr.m4: Remove file.
8762         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
8763         REPLACE_STRSTR.
8764         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
8765         Don't initialize GNULIB_STRSTR.
8766         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
8767         substitute GNULIB_STRSTR and REPLACE_STRSTR.
8768         * MODULES.html.sh (Internationalization functions): Add mbsstr.
8769         (Support for systems lacking ANSI C 89): Remove strstr.
8770
8771 2007-02-04  Bruno Haible  <bruno@clisp.org>
8772
8773         New module mbsrchr.
8774         * modules/mbsrchr: New file.
8775         * lib/mbsrchr.c: New file.
8776         * lib/string_.h (strrchr): Add a conditional link warning.
8777         (mbsrchr): New declaration.
8778         * m4/mbsrchr.m4: New file.
8779         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8780         GNULIB_MBSRCHR.
8781         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
8782         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
8783
8784 2007-02-04  Bruno Haible  <bruno@clisp.org>
8785
8786         New module mbschr.
8787         * modules/mbschr: New file.
8788         * lib/mbschr.c: New file.
8789         * lib/string_.h (strchr): Add a conditional link warning.
8790         (mbschr): New declaration.
8791         * m4/mbschr.m4: New file.
8792         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
8793         GNULIB_MBSCHR.
8794         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
8795         * MODULES.html.sh (Internationalization functions): Add mbschr.
8796
8797 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
8798
8799         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
8800
8801         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
8802
8803 2007-02-04  Bruno Haible  <bruno@clisp.org>
8804
8805         New module description section 'configure.ac-early'.
8806         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
8807         (func_get_autoconf_early_snippet): New function.
8808         (func_import, func_create_testdir): Use it. Remove special cases for
8809         modules 'extensions' and 'lock'.
8810         * modules/extensions (configure.ac-early): Require
8811         gl_USE_SYSTEM_EXTENSIONS.
8812         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
8813
8814 2007-02-04  Bruno Haible  <bruno@clisp.org>
8815
8816         Make use of gcj-4.3's -fsource and -ftarget option.
8817         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
8818         and if so try the options -fsource and -ftarget.
8819         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
8820         source_version, ftarget_option, target_version arguments.
8821         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
8822         (is_envjavac_oldgcj_14_14_usable): Renamed from
8823         is_envjavac_gcj_14_14_usable.
8824         (is_envjavac_oldgcj_14_13_usable): Renamed from
8825         is_envjavac_gcj_14_13_usable.
8826         (is_gcj_present): Update.
8827         (is_gcj_43, is_gcj43_usable): New functions.
8828         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
8829         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
8830         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
8831         try the options -fsource and -ftarget.
8832
8833 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
8834
8835         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
8836         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
8837         larger value.
8838
8839 2007-02-03  Jim Meyering  <jim@meyering.net>
8840
8841         Give tools a better chance to allocate space for very large buffers.
8842         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
8843
8844         Make pwd and readlink work also when run with an unreadable parent dir
8845         on systems with openat support.
8846         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
8847         provided getcwd function, even when we have openat support.
8848         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
8849
8850 2007-02-02  Bruno Haible  <bruno@clisp.org>
8851
8852         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
8853         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
8854         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
8855         portability problems if one of these functions is only used on specific
8856         platforms.
8857         Reported by Paul Eggert.
8858
8859 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
8860
8861         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
8862         is causing more trouble than it's curing.
8863         * lib/regex_internal.h (__mempcpy): Remove.
8864         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
8865         (and make the code a tad smaller to boot).
8866         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
8867
8868 2007-02-02  Jim Meyering  <jim@meyering.net>
8869
8870         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
8871         section, not in the Makefile.am: one.
8872
8873 2007-02-02  Eric Blake  <ebb9@byu.net>
8874
8875         * lib/strchrnul.c: Always include config.h first.
8876
8877         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
8878         gnulib strstr is not necessary here.
8879
8880 2007-02-02  Simon Josefsson  <simon@josefsson.org>
8881
8882         * m4/socklen.m4: Fix typo.
8883
8884 2007-02-02  Eric Blake  <ebb9@byu.net>
8885
8886         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
8887         * modules/netinet_in (Makefile.am): Likewise.
8888
8889 2007-02-01  Bruno Haible  <bruno@clisp.org>
8890
8891         * lib/string_.h (GL_LINK_WARNING): New macro.
8892         (strcasecmp, strstr, strcasestr): If provided by the system,
8893         conditionally define as a macro that leads to a warning instead of to
8894         an error.
8895         (strncasecmp): Conditionally define as a macro that leads to a warning.
8896
8897 2007-02-01  Karl Berry  <karl@gnu.org>
8898
8899         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
8900
8901 2007-02-01  Bruno Haible  <bruno@clisp.org>
8902
8903         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
8904         renamings.
8905
8906 2007-02-01  Eric Blake  <ebb9@byu.net>
8907
8908         * modules/regex (Depends-on): Revert dependence on mempcpy.
8909         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
8910         module's definition of mempcpy.
8911         Reported by Paul Eggert.
8912
8913 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
8914
8915         * lib/string_.h: If the gnulib module XYZ is not present, undefine
8916         the symbol XYZ before redefining it.  This fixes a problem with
8917         programs that don't use XYZ, when compiled on systems that define
8918         XYZ to something else.
8919
8920 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
8921
8922         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
8923         occurs when "mkdir -m foo" creates a setgid directory that is (1)
8924         writeable to group or other and (2) is intended to have a special
8925         mode bit that is set or cleared.  In such a case, the directory
8926         should be neither group- nor other-writeable until the special
8927         mode bits are right.
8928
8929 2007-01-31  Eric Blake  <ebb9@byu.net>
8930
8931         * modules/mountlist (Depends-on): Add strstr.
8932
8933         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
8934         bug.
8935         * modules/string (Makefile.am): Remove redundant replacement.
8936         * modules/regex (Depends-on): Add mempcpy.
8937
8938 2007-01-31  Bruno Haible  <bruno@clisp.org>
8939
8940         New module description field 'Link'.
8941         * gnulib-tool (func_usage): Document --extract-link-directive.
8942         (sed_extract_prog): Recognize 'Link' directive.
8943         (func_get_link_directive): New function.
8944         (func_import): Show summary of link directives.
8945         Handle --extract-link-directive option.
8946         * modules/acl (Link): New section.
8947         * modules/clock-time (Link): New section.
8948         * modules/euidaccess (Link): New section.
8949         * modules/gettext (Link): New section.
8950         * modules/iconv (Link): New section.
8951         * modules/lock (Link): New section.
8952         * modules/nanosleep (Link): New section.
8953         * modules/readline (Link): New section.
8954
8955 2007-01-27  Bruno Haible  <bruno@clisp.org>
8956
8957         Enforce the use of gnulib modules for unportable <string.h> functions.
8958         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
8959         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
8960         (gl_HEADER_STRING_H_BODY): Require it.
8961         * lib/string_.h: If the gnulib module XYZ is not present, redefine
8962         the symbol XYZ to one that gives a link error.
8963         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
8964         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
8965         * modules/mempcpy (configure.ac): Likewise.
8966         * modules/memrchr (configure.ac): Likewise.
8967         * modules/stpcpy (configure.ac): Likewise.
8968         * modules/stpncpy (configure.ac): Likewise.
8969         * modules/strcase (configure.ac): Likewise.
8970         * modules/strcasestr (configure.ac): Likewise.
8971         * modules/strchrnul (configure.ac): Likewise.
8972         * modules/strdup (configure.ac): Likewise.
8973         * modules/strndup (configure.ac): Likewise.
8974         * modules/strnlen (configure.ac): Likewise.
8975         * modules/strpbrk (configure.ac): Likewise.
8976         * modules/strsep (configure.ac): Likewise.
8977         * modules/strstr (configure.ac): Likewise.
8978         * modules/strtok_r (configure.ac): Likewise.
8979
8980 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
8981
8982         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
8983
8984 2007-01-30  Jim Meyering  <jim@meyering.net>
8985
8986         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
8987
8988 2007-01-29  Bruno Haible  <bruno@clisp.org>
8989
8990         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
8991         * lib/execute.c: Likewise.
8992         * lib/pipe.c: Likewise.
8993         * lib/printf-args.h: Likewise.
8994         * lib/printf-args.c: Likewise.
8995         * lib/printf-parse.c: Likewise.
8996         * lib/vasnprintf.c: Likewise.
8997
8998 2007-01-29  Eric Blake  <ebb9@byu.net>
8999
9000         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
9001         declaration.
9002
9003 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
9004
9005         * lib/strptime.h (strptime): Use 'restrict' for args where
9006         POSIX requires this.
9007         * lib/strptime.c (strptime): Likewise.
9008         Change license notice from LGPL to GPL, since gnulib-tool will
9009         change this as needed.
9010         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
9011         defined.
9012         Include "strptime.h" first, to check interface.
9013         Do not #undef _LIBC and _NL_CURRENT.
9014         Do not include <stdlib.h>; no longer needed.
9015         Include "time_r.h" and declare ptime_locale_status
9016         only if _LIBC is not defined.
9017         (__P): Remove unused macro.
9018         (match_string): Bring back glibc version, but use it only if _LIBC
9019         is defined.
9020         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
9021         Remove unnecessary assertion and abort() call.
9022         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
9023         * m4/strptime.m4: Fix serial number comment.
9024         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
9025         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
9026         (Depends-on): Add time_r.
9027
9028 2007-01-29  Bruno Haible  <bruno@clisp.org>
9029
9030         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9031         strptime.
9032         * modules/strptime (Depends-on): Add stdbool.
9033         * lib/strptime.h: Include <time.h> always. Add comments.
9034
9035 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
9036
9037         * modules/strptime: New file.
9038         * lib/strptime.h: New file.
9039         * lib/strptime.c: New file.
9040         * m4/strptime.m4: New file.
9041
9042 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
9043
9044         * MODULES.html.sh: New module mpsort.
9045         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
9046
9047         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
9048         a circularity problem with HP-UX ia64 reported by Bob Proulx in
9049         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
9050         All uses changed.
9051         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
9052         All uses changed.
9053         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
9054         to _Restrict_.
9055         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
9056         the parameter matches the prototype.
9057
9058 2007-01-28  Jim Meyering  <jim@meyering.net>
9059
9060         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
9061         sys/time.h here, reverting that part of the previous patch:
9062         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
9063
9064 2007-01-28  Bruno Haible  <bruno@clisp.org>
9065
9066         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
9067         value of $(SYS_TIME_H).
9068         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
9069         remove it conditionally, too. [added by Jim Meyering]
9070         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
9071         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
9072         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
9073         GETTIMEOFDAY_REPLACEMENT to 1.
9074
9075 2007-01-28  Bruno Haible  <bruno@clisp.org>
9076
9077         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
9078         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
9079         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
9080         Set UNISTD_H instead of UNISTD_H2.
9081         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
9082
9083 2007-01-28  Bruno Haible  <bruno@clisp.org>
9084
9085         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
9086         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
9087
9088 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9089
9090         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
9091         (func_create_testdir): Ensure C locale for `grep' and `tr'
9092         character ranges.
9093         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
9094         ACLOCAL_AMFLAGS parsing state machine.
9095
9096 2007-01-27  Bruno Haible  <bruno@clisp.org>
9097
9098         * modules/unistr/base: Update.
9099
9100 2007-01-27  Bruno Haible  <bruno@clisp.org>
9101
9102         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
9103         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
9104         * modules/unistr/u32-mbtouc-unsafe: Renamed from
9105         modules/unistr/u32-mbtouc.
9106         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
9107         * lib/unistr.h: Update.
9108         * lib/linebreak.c: Update.
9109         * modules/unistr/u32-mbtouc: Renamed from
9110         modules/unistr/u32-mbtouc-safe.
9111         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
9112         * lib/unistr.h: Update.
9113         * lib/unistr/u32-to-u8.c: Update.
9114         * lib/unistr/u32-to-u16.c: Update.
9115
9116 2007-01-27  Bruno Haible  <bruno@clisp.org>
9117
9118         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
9119         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
9120         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
9121         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
9122         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
9123         * modules/unistr/u16-mbtouc-unsafe: Renamed from
9124         modules/unistr/u16-mbtouc.
9125         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
9126         * lib/unistr.h: Update.
9127         * lib/linebreak.c: Update.
9128         * modules/linebreak: Update.
9129         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
9130         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
9131         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
9132         * modules/unistr/u16-mbtouc: Renamed from
9133         modules/unistr/u16-mbtouc-safe.
9134         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
9135         * lib/unistr.h: Update.
9136         * lib/unistr/u16-to-u8.c: Update.
9137         * modules/unistr/u16-to-u8: Update.
9138         * lib/unistr/u16-to-u32.c: Update.
9139         * modules/unistr/u16-to-u32: Update.
9140
9141 2007-01-27  Bruno Haible  <bruno@clisp.org>
9142
9143         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
9144         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
9145         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
9146         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
9147         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
9148         * modules/unistr/u8-mbtouc-unsafe: Renamed from
9149         modules/unistr/u8-mbtouc.
9150         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
9151         * lib/unistr.h: Update.
9152         * lib/striconveh.c: Update.
9153         * modules/striconveh: Update.
9154         * lib/linebreak.c: Update.
9155         * modules/linebreak: Update.
9156         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
9157         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
9158         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
9159         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
9160         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
9161         * lib/unistr.h: Update.
9162         * lib/striconveh.c: Update.
9163         * modules/striconveh: Update.
9164         * lib/unistr/u8-to-u16.c: Update.
9165         * modules/unistr/u8-to-u16: Update.
9166         * lib/unistr/u8-to-u32.c: Update.
9167         * modules/unistr/u8-to-u32: Update.
9168
9169 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9170
9171         Sync from Libtool.
9172         * lib/argz.c: Do not include strings.h nor memory.h, include
9173         string.h unconditionally.  Patch by Simon Josefsson.
9174
9175 2007-01-27  Bruno Haible  <bruno@clisp.org>
9176
9177         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
9178         from gl_HEADER_STRING_H_BODY.
9179         (gl_HEADER_STRING_H_BODY): Require it.
9180         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
9181         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
9182         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
9183         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
9184         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
9185         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
9186         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
9187         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
9188         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
9189         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
9190         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
9191         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
9192         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
9193         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
9194         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
9195
9196 2007-01-27  Bruno Haible  <bruno@clisp.org>
9197
9198         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
9199         check_PROGRAMS into noinst_PROGRAMS.
9200         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
9201         check_PROGRAMS in this case.
9202         (func_import): Set for_test to false.
9203         (func_create_testdir): Set for_test to true.
9204
9205 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
9206             Bruno Haible  <bruno@clisp.org>
9207
9208         * modules/strcasestr (Files): Remove lib/strcasestr.h.
9209         (Depends-on): Add string.
9210         (Includes): Use <string.h> instead of strcasestr.h.
9211         * modules/string (Makefile.am): Also substitute the value of
9212         REPLACE_STRCASESTR.
9213         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
9214         assume strcasestr is declared in <string.h> not <strings.h>. Also
9215         set REPLACE_STRCASESTR.
9216         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
9217         REPLACE_STRCASESTR.
9218         * lib/strcasestr.h: Remove file.
9219         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
9220         * lib/string_.h (strcasestr): New declaration.
9221
9222 2007-01-27  Bruno Haible  <bruno@clisp.org>
9223
9224         * lib/string_.h: Use 'extern'.
9225
9226 2007-01-27  Jim Meyering  <jim@meyering.net>
9227
9228         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
9229         of set-but-not-used local, "q".
9230
9231         * lib/mempcpy.c: Include <config.h> before <string.h>.
9232         This fixes a compilation error on HP-UX, due to the system's
9233         "restrict"-using mempcpy prototype.
9234
9235 2007-01-26  Bruno Haible  <bruno@clisp.org>
9236
9237         Small optimization.
9238         * lib/javacomp.c: Include c-strstr.h.
9239          (is_envjavac_gcj): Use c_strstr instead of strstr.
9240         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
9241
9242 2007-01-26  Bruno Haible  <bruno@clisp.org>
9243
9244         * MODULES.html.sh (Unicode string functions): Add the new modules.
9245
9246         * modules/uniconv/u32-strconv-to-locale: New file.
9247         * lib/uniconv/u32-strconv-to-locale.c: New file.
9248
9249         * modules/uniconv/u16-strconv-to-locale: New file.
9250         * lib/uniconv/u16-strconv-to-locale.c: New file.
9251
9252         * modules/uniconv/u8-strconv-to-locale: New file.
9253         * lib/uniconv/u8-strconv-to-locale.c: New file.
9254
9255         * modules/uniconv/u32-strconv-from-locale: New file.
9256         * lib/uniconv/u32-strconv-from-locale.c: New file.
9257
9258         * modules/uniconv/u16-strconv-from-locale: New file.
9259         * lib/uniconv/u16-strconv-from-locale.c: New file.
9260
9261         * modules/uniconv/u8-strconv-from-locale: New file.
9262         * lib/uniconv/u8-strconv-from-locale.c: New file.
9263
9264         * modules/uniconv/u32-strconv-to-enc: New file.
9265         * lib/uniconv/u32-strconv-to-enc.c: New file.
9266         * modules/uniconv/u32-strconv-to-enc-tests: New file.
9267         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
9268
9269         * modules/uniconv/u16-strconv-to-enc: New file.
9270         * lib/uniconv/u16-strconv-to-enc.c: New file.
9271         * lib/uniconv/u-strconv-to-enc.h: New file.
9272         * modules/uniconv/u16-strconv-to-enc-tests: New file.
9273         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
9274
9275         * modules/uniconv/u8-strconv-to-enc: New file.
9276         * lib/uniconv/u8-strconv-to-enc.c: New file.
9277         * modules/uniconv/u8-strconv-to-enc-tests: New file.
9278         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
9279
9280         * modules/uniconv/u32-strconv-from-enc: New file.
9281         * lib/uniconv/u32-strconv-from-enc.c: New file.
9282         * modules/uniconv/u32-strconv-from-enc-tests: New file.
9283         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
9284
9285         * modules/uniconv/u16-strconv-from-enc: New file.
9286         * lib/uniconv/u16-strconv-from-enc.c: New file.
9287         * modules/uniconv/u16-strconv-from-enc-tests: New file.
9288         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
9289
9290         * modules/uniconv/u8-strconv-from-enc: New file.
9291         * lib/uniconv/u8-strconv-from-enc.c: New file.
9292         * lib/uniconv/u-strconv-from-enc.h: New file.
9293         * modules/uniconv/u8-strconv-from-enc-tests: New file.
9294         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
9295
9296         * modules/uniconv/u32-conv-from-enc: New file.
9297         * lib/uniconv/u32-conv-from-enc.c: New file.
9298         * modules/uniconv/u32-conv-from-enc-tests: New file.
9299         * tests/uniconv/test-u32-conv-from-enc.c: New file.
9300
9301         * modules/uniconv/u16-conv-from-enc: New file.
9302         * lib/uniconv/u16-conv-from-enc.c: New file.
9303         * lib/uniconv/u-conv-from-enc.h: New file.
9304         * modules/uniconv/u16-conv-from-enc-tests: New file.
9305         * tests/uniconv/test-u16-conv-from-enc.c: New file.
9306
9307         * modules/uniconv/u8-conv-from-enc: New file.
9308         * lib/uniconv/u8-conv-from-enc.c: New file.
9309         * modules/uniconv/u8-conv-from-enc-tests: New file.
9310         * tests/uniconv/test-u8-conv-from-enc.c: New file.
9311
9312         * modules/uniconv/base: New file.
9313         * lib/uniconv.h: New file.
9314
9315 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
9316
9317         * doc/gnulib-tool.texi (Initial import): Update to match current
9318         behavior with strdup module.
9319         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
9320         * lib/memmem.h: Remove; all uses removed.  This is now done
9321         by <string.h>.
9322         * lib/mempcpy.h: Likewise.
9323         * lib/memrchr.h: Likewise.
9324         * lib/stpcpy.h: Likewise.
9325         * lib/stpncpy.h: Likewise.
9326         * lib/strcase.h: Likewise.
9327         * lib/strchrnul.h: Likewise.
9328         * lib/strdup.h: Likewise.
9329         * lib/strndup.h: Likewise.
9330         * lib/strnlen.h: Likewise.
9331         * lib/strpbrk.h: Likewise.
9332         * lib/strsep.h: Likewise.
9333         * lib/strstr.h: Likewise.
9334         * lib/strtok_r.h: Likewise.
9335         * lib/string_.h: New file.
9336         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
9337         Rely on <string.h> instead.
9338         * lib/canon-host.c: Likewise.
9339         * lib/chdir-long.c: Likewise.
9340         * lib/concatpath.c: Likewise.
9341         * lib/exclude.c: Likewise.
9342         * lib/fchdir.c: Likewise.
9343         * lib/getaddrinfo.c: Likewise.
9344         * lib/getcwd.c: Likewise.
9345         * lib/getsubopt.c: Likewise.
9346         * lib/glob.c: Likewise.
9347         * lib/hard-locale.c: Likewise.
9348         * lib/iconvme.c: Likewise.
9349         * lib/javacomp.c: Likewise.
9350         * lib/mempcpy.c: Likewise.
9351         * lib/memrchr.c: Likewise.
9352         * lib/regex_internal.h: Likewise.
9353         * lib/stpncpy.c: Likewise.
9354         * lib/strcasecmp.c: Likewise.
9355         * lib/strchrnul.c: Likewise.
9356         * lib/strdup.c: Likewise.
9357         * lib/striconv.c: Likewise.
9358         * lib/striconveh.c: Likewise.
9359         * lib/striconveha.c: Likewise.
9360         * lib/strncasecmp.c: Likewise.
9361         * lib/strndup.c: Likewise.
9362         * lib/strnlen.c: Likewise.
9363         * lib/strsep.c: Likewise.
9364         * lib/strstr.c: Likewise.
9365         * lib/strtok_r.c: Likewise.
9366         * lib/userspec.c: Likewise.
9367         * lib/w32spawn.h: Likewise.
9368         * lib/xstrndup.c: Likewise.
9369         * lib/mountlist.c (strstr): Remove decl.
9370         * m4/string_h.m4: New file.
9371         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
9372         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
9373         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
9374         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
9375         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
9376         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
9377         Set REPLACE_STRCASECMP if necessary.
9378         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
9379         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
9380         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
9381         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
9382         HAVE_DECL_STRDUP if necessary.
9383         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
9384         since gl_FUNC_STRNDUP does that now.
9385         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
9386         Check for decl here...
9387         (gl_PREREQ_STRNLEN): ... not here.
9388         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
9389         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
9390         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
9391         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
9392         necessary.
9393         * modules/string: New file.
9394         * modules/memmem (Files): Remove special-purpose include file.
9395         (Depends-on): Add string.
9396         (Include): Include <string.h>, not the removed file.
9397         * modules/mempcpy: Likewise.
9398         * modules/memrchr: Likewise.
9399         * modules/stpcpy: Likewise.
9400         * modules/stpncpy: Likewise.
9401         * modules/strcase: Likewise.
9402         * modules/strchrnul: Likewise.
9403         * modules/strdup: Likewise.
9404         * modules/strndup: Likewise.
9405         * modules/strnlen: Likewise.
9406         * modules/strpbrk: Likewise.
9407         * modules/strsep: Likewise.
9408         * modules/strstr: Likewise.
9409         * modules/strtok_r: Likewise.
9410         * tests/test-dirname.c: Don't include "strdup.h", since
9411         <string.h> now suffices.
9412         * tests/test-memmem.c: Don't include "memmem.h", since
9413         <string.h> now suffices.
9414
9415 2007-01-25  Bruno Haible  <bruno@clisp.org>
9416
9417         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
9418         *resultp is 0.
9419
9420         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
9421         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
9422         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
9423         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
9424
9425         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
9426         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
9427         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
9428         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
9429         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
9430         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
9431
9432 2007-01-24  Bruno Haible  <bruno@clisp.org>
9433
9434         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
9435         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
9436         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
9437         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
9438         gl_FUNC_FTS_CORE.
9439         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
9440         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
9441         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
9442         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
9443         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
9444         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
9445         gl_FUNC_FCHOWNAT.
9446         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
9447         gl_FUNC_STRFTIME.
9448         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
9449         Reported by Ralf Wildenhues.
9450
9451 2007-01-24  Bruno Haible  <bruno@clisp.org>
9452
9453         Drop AC_REQUIRE calls that are redundant with the module dependencies.
9454         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
9455         gl_GETADDRINFO.
9456         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
9457         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
9458         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
9459
9460 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
9461
9462         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
9463         Don't use 'exit'; just return from 'main'.
9464         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
9465
9466         * lib/fnmatch_.h: Readjust white space and comments to match
9467         glibc, to avoid spurious diffs.
9468
9469 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9470
9471         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
9472         2004-12-01 change by Jakub Jelinek, since this code won't compile
9473         if !LIBC.  Problem reported by Bob Proulx.
9474
9475 2007-01-23  Bruno Haible  <bruno@clisp.org>
9476
9477         * lib/striconveh.c: Include c-strcaseeq.h.
9478         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
9479         * modules/striconveh (Depends-on): Add c-strcaseeq.
9480
9481 2007-01-23  Bruno Haible  <bruno@clisp.org>
9482
9483         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
9484
9485         * modules/c-strcaseeq: New file.
9486         * lib/c-strcaseeq.h: New file.
9487
9488         * modules/streq: New file.
9489         * lib/streq.h: New file.
9490
9491 2007-01-23  Bruno Haible  <bruno@clisp.org>
9492
9493         * modules/striconveha-tests: New file.
9494         * tests/test-striconveha.c: New file.
9495
9496         * lib/striconveha.h: Include <stdbool.h>.
9497         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
9498         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
9499         (mem_iconveha_notranslit): Renamed from mem_iconveha.
9500         (mem_iconveha): New function.
9501         (str_iconveha_notranslit): Renamed from str_iconveha.
9502         (str_iconveha): New function.
9503         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
9504         c-strcase.
9505
9506 2007-01-23  Bruno Haible  <bruno@clisp.org>
9507
9508         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
9509         encodings without forgiving before trying any encoding with handler.
9510         (str_iconveha): Try all encodings without forgiving before trying any
9511         encoding with handler.
9512
9513 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
9514
9515         Import the following changes from libc.
9516
9517         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
9518
9519         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
9520
9521         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
9522
9523         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
9524         normal_bracket label.
9525
9526         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
9527
9528         [BZ #361]
9529         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
9530         to normal_bracket after fetching the next character.
9531
9532 2007-01-22  Bruno Haible  <bruno@clisp.org>
9533
9534         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
9535         argument.
9536         * lib/striconveh.c (iconv_carefully_1): New function.
9537         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
9538         argument.
9539         (str_cd_iconveh): Update.
9540         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
9541         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
9542         * tests/test-striconveh.c (MAGIC): New macro.
9543         (new_offsets): New function.
9544         (main): Test call with and without offsets.
9545
9546 2007-01-22  Bruno Haible  <bruno@clisp.org>
9547
9548         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
9549         * modules/sys_select (Makefile.am): Likewise.
9550         * modules/sys_socket (Makefile.am): Likewise.
9551         * modules/sys_time (Makefile.am): Likewise.
9552
9553 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9554
9555         * modules/gettimeofday (License): Change from GPL to LGPL, since
9556         gettimeofday is a library function.
9557
9558 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9559
9560         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
9561
9562 2007-01-21  Bruno Haible  <bruno@clisp.org>
9563
9564         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
9565
9566 2007-01-21  Bruno Haible  <bruno@clisp.org>
9567
9568         * modules/striconveha: New file.
9569         * lib/striconveha.h: New file.
9570         * lib/striconveha.c: New file.
9571         * MODULES.html.sh (Internationalization functions): Add striconveha.
9572         * lib/striconv.c (str_iconv): Optimize the case of an empty input
9573         string.
9574         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
9575
9576 2007-01-21  Bruno Haible  <bruno@clisp.org>
9577
9578         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
9579         * lib/striconveh.c (str_iconveh): Likewise.
9580
9581 2007-01-21  Bruno Haible  <bruno@clisp.org>
9582
9583         * lib/striconveh.h (mem_iconveh): New declaration.
9584         * lib/striconveh.c (mem_iconveh): New function.
9585         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
9586
9587 2007-01-21  Bruno Haible  <bruno@clisp.org>
9588
9589         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
9590
9591         * lib/striconveh.h (mem_cd_iconveh): Change specification.
9592         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
9593         original result buffer.
9594         (str_cd_iconveh): Update.
9595         * tests/test-striconveh.c (main): Update.
9596
9597         * lib/striconv.h (mem_cd_iconv): Change specification.
9598         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
9599         result buffer.
9600         (str_cd_iconv): Update.
9601         * tests/test-striconv.c (main): Update.
9602
9603 2007-01-21  Bruno Haible  <bruno@clisp.org>
9604
9605         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
9606
9607 2007-01-20  Jim Meyering  <jim@meyering.net>
9608
9609         * lib/userspec.c (parse_with_separator): If a user or group string
9610         starts with "+", skip the corresponding name-to-ID look-up, since
9611         such a look-up must fail: user and group names may not include "+".
9612
9613 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9614
9615         * lib/poll.c: Include sys/time.h and time.h unconditionally,
9616         since we now assume the sys_time module.
9617         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
9618         check for sys/time.h; no longer needed.
9619         * modules/poll (Depends-on): Depend on sys_time.
9620
9621 2007-01-18  Bruno Haible  <bruno@clisp.org>
9622
9623         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
9624         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
9625
9626         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
9627         gettimeofday.
9628
9629         * tests/test-gettimeofday.c: Include <time.h>.
9630         (dummy): Remove variable.
9631
9632         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
9633         gl_HEADER_SYS_TIME_H.
9634         (gl_HEADER_SYS_TIME_H): New macro.
9635
9636         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
9637         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9638         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
9639         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
9640         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9641         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
9642         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
9643         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9644         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
9645         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
9646         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9647
9648         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
9649         last change; it caused a compilation error when cross-compiling to
9650         Cygwin.
9651
9652 2007-01-18  Jim Meyering  <jim@meyering.net>
9653
9654         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
9655         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
9656         than the race-prone "test -d sys || mkdir sys".
9657         (configure.ac): Use AC_PROG_MKDIR_P.
9658         * modules/sys_select: Likewise.
9659         * modules/sys_socket: Likewise.
9660         * modules/sys_time: Likewise.
9661
9662 2007-01-18  Eric Blake  <ebb9@byu.net>
9663
9664         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
9665         replace gettimeofday.
9666         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
9667         name, to avoid infinite recursion.
9668
9669 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
9670
9671         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
9672         module sys_time.
9673         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
9674         assume timespec.h defines struct timeval.
9675         * lib/settime.c: Likewise.
9676         * lib/utimens.c: Likewise.
9677         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
9678         since we now assume the gettimeofday module.
9679         * lib/tempname.c (__gen_tempname): Likewise.
9680         * lib/gettimeofday.h: Remove.
9681         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
9682         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
9683         Include <time.h>, for 'time()'.
9684         (localtime_buffer_addr): Also use this workaround if
9685         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
9686         to simplify the uses.  All uses changed.
9687         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
9688         that #undef is inside {}, and 'const' follows type name consistently.
9689         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
9690         (gettimeofday): Do not use the maximum possible value for
9691         tv->tv_usec, since that might break usages other than ls.c.
9692         Instead, we'll leave ls.c alone.  This undoes today's patch
9693         by Bruno.  Add a compile-time warning for 1s-clock resolution;
9694         we've never observed the problem but might as well keep the
9695         canary.
9696         * lib/nanosleep.c: Include timespec.h first, for interface check.
9697         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
9698         now assume the sys_time module.
9699         * lib/tempname.c: Likewise.
9700         * lib/timespec.h: Likewise.
9701         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
9702         needed.
9703         * lib/strftime.c: Likewise.
9704         * lib/timespec.h: Likewise.
9705         * lib/posixtm.c: Include posixtm.h first, for interface check.
9706         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
9707         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
9708         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
9709         * lib/sys_time_.h: New file.
9710         * lib/timespec.h (struct timespec): Use long int, not long.
9711         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
9712         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
9713         Remove obsolescent call to AC_HEADER_TIME.
9714         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
9715         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
9716         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
9717         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
9718         Likewise.
9719         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
9720         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
9721         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
9722         into the sys_time module.  Check for gettimeofday just once.
9723         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
9724         for gettimeofday signature to just check the signature.  Merely
9725         compile it, since linking doesn't test signature.  Improve test for
9726         whether gettimeofday.o is actually needed.
9727         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
9728         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
9729         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
9730         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9731         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
9732         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
9733         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
9734         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
9735         than worrying about sys/time.h.
9736         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
9737         Don't bother worrying about TIME_WITH_SYS_TIME.
9738         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
9739         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
9740         * m4/sys_time_h.m4: New file.
9741         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
9742         Don't include sys/time.h.  Return from main rather than exiting.
9743         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
9744         all uses changed.
9745         * modules/gethrxtime (Depends-on): Add sys_time.
9746         * modules/gettime (Depends-on): Likewise.
9747         * modules/gettimeofday (Depends-on): Likewise.
9748         * modules/nanosleep (Depends-on): Likewise.
9749         * modules/settime (Depends-on): Likewise.
9750         * modules/tempname (Depends-on): Likewise.
9751         * modules/utimens (Depends-on): Likewise.
9752         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
9753         (Include:) Change back to <sys/time.h>.
9754         (Maintainer:) Add self.
9755         * modules/sys_time: New file.
9756         * modules/tempname (Depends-on): Add gettimeofday.
9757         * tests/test-gettimeofday.c: Include <sys/time.h>
9758         rather than gettimeofday.h.
9759
9760 2007-01-17  Bruno Haible  <bruno@clisp.org>
9761
9762         * gnulib-tool (func_get_license): Revert last patch. Instead, let
9763         the license default to GPL.
9764         (func_create_testdir): Don't complain if a module is LGPL and its
9765         tests module depends on GPLed modules.
9766
9767 2007-01-17  Bruno Haible  <bruno@clisp.org>
9768
9769         * lib/gettimeofday.c (gettimeofday): Add code for the case
9770         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
9771         maximum possible value for tv->tv_usec, rather than the minimum one.
9772
9773 2005-10-08  Martin Lambers  <marlam@marlam.de>
9774 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
9775 2007-01-16  Bruno Haible  <bruno@clisp.org>
9776
9777         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
9778         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
9779         gl_FUNC_GETTIMEOFDAY.
9780         (Include): Add gettimeofday.h.
9781         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
9782         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
9783         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
9784         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
9785         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
9786         * lib/gettimeofday.h: New file.
9787         * lib/gettimeofday.c: Include <sys/timeb.h>.
9788         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
9789         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
9790         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
9791         fall back on time().
9792
9793         * tests/test-gettimeofday.c: New file.
9794         * modules/gettimeofday-tests: New file.
9795
9796 2007-01-16  Eric Blake  <ebb9@byu.net>
9797
9798         * modules/fnmatch (Depends-on): Depend on wchar.
9799         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
9800         * m4/fnmatch.m4: Likewise.
9801         * modules/mbchar (Makefile.am): Assume <wchar.h>.
9802         * m4/mbchar.m4: Likewise.
9803         * modules/mbswidth (Depends-on): Depend on wchar.
9804         * lib/mbswidth.c: Assume <wchar.h>.
9805         * m4/mbswidth.m4: Likewise.
9806         * modules/quotearg (Depends-on): Depend on wchar.
9807         * lib/quotearg.c: Assume <wchar.h>.
9808         * m4/quotearg.m4: Likewise.
9809         * modules/regex (Depends-on): Depend on wchar.
9810         * lib/regex_internal.h: Assume <wchar.h>.
9811         * m4/regex.m4: Likewise.
9812         * modules/stdint (Depends-on): Depend on wchar.
9813         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
9814         * m4/stdint.m4: Likewise.
9815         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
9816         * modules/strftime (Depends-on): Depend on wchar.
9817         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
9818         * modules/strtol (Depends-on): Depend on wchar.
9819         * lib/strtol.c: Assume <wchar.h>.
9820         * modules/wcwidth (Depends-on): Depend on wchar.
9821         * lib/wcwidth.h: Assume <wchar.h>.
9822         * m4/wcwidth.m4: Likewise.
9823
9824 2007-01-16  Bruno Haible  <bruno@clisp.org>
9825
9826         * modules/csharpexec-script: New, created from...
9827         * modules/csharpexec: ... this.
9828
9829 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
9830
9831         * modules/javaexec-script: New, created from...
9832         * modules/javaexec: ... this.
9833
9834 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9835
9836         * modules/poll (Dependencies): Add sys_select.
9837
9838 2007-01-15  Jim Meyering  <jim@meyering.net>
9839
9840         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
9841         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
9842         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
9843         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
9844
9845 2007-01-15  Bruno Haible  <bruno@clisp.org>
9846
9847         * modules/striconveh: New file.
9848         * lib/striconveh.h: New file.
9849         * lib/striconveh.c: New file.
9850         * MODULES.html.sh (Internationalization functions): Add striconveh.
9851
9852         * modules/striconveh-tests: New file.
9853         * tests/test-striconveh.c: New file.
9854
9855 2007-01-15  Bruno Haible  <bruno@clisp.org>
9856
9857         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
9858         not from GNU libiconv or GNU libc.
9859
9860 2007-01-15  Bruno Haible  <bruno@clisp.org>
9861
9862         * doc/gnulib-intro.texi (Copyright): Explain the different license
9863         terms for module descriptions, autoconf macros, tests, documentation.
9864
9865 2007-01-14  Bruno Haible  <bruno@clisp.org>
9866
9867         * modules/striconv-tests: New file.
9868         * tests/test-striconv.c: New file.
9869
9870 2007-01-14  Bruno Haible  <bruno@clisp.org>
9871
9872         * modules/iconv-tests: New file.
9873         * tests/test-iconv.c: New file.
9874
9875 2007-01-14  Bruno Haible  <bruno@clisp.org>
9876
9877         * gnulib-tool (func_get_license): For test modules, use the license of
9878         the main module.
9879
9880 2007-01-14  Bruno Haible  <bruno@clisp.org>
9881
9882         * modules/iconv (Include): Clarify that <iconv.h> can only be included
9883         if iconv is found to exist.
9884
9885 2007-01-14  Bruno Haible  <bruno@clisp.org>
9886
9887         * modules/c-ctype-tests: New file.
9888         * tests/test-c-ctype.c: New file.
9889
9890 2007-01-14  Bruno Haible  <bruno@clisp.org>
9891
9892         * modules/binary-io-tests: New file.
9893         * tests/test-binary-io.sh: New file.
9894         * tests/test-binary-io.c: New file.
9895
9896 2007-01-14  Bruno Haible  <bruno@clisp.org>
9897
9898         * modules/array-oset-tests: New file.
9899         * tests/test-array_oset.c: New file.
9900
9901 2007-01-14  Bruno Haible  <bruno@clisp.org>
9902
9903         * modules/array-list-tests: New file.
9904         * tests/test-array_list.c: New file.
9905
9906 2007-01-14  Bruno Haible  <bruno@clisp.org>
9907
9908         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
9909         and make.
9910         Reported by Simon Josefsson in
9911         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
9912
9913 2007-01-14  Bruno Haible  <bruno@clisp.org>
9914
9915         * modules/allocsa-tests: New file.
9916         * tests/test-allocsa.c: New file.
9917
9918 2007-01-14  Bruno Haible  <bruno@clisp.org>
9919
9920         * modules/fchdir (Depends-on): Add absolute-header.
9921         * modules/unistd (Depends-on): Likewise.
9922
9923 2006-12-30  Bruno Haible  <bruno@clisp.org>
9924
9925         * modules/fchdir: New file.
9926         * modules/unistd (Files): Add lib/unistd_.h.
9927         (Makefile.am): Generate unistd.h from unistd_.h.
9928         * lib/fchdir.c: New file.
9929         * lib/dirent_.h: New file.
9930         * lib/unistd_.h: New file.
9931         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
9932         * m4/fchdir.m4: New file.
9933         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
9934         (gl_HEADER_UNISTD): Invoke it.
9935         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
9936         function.
9937         * lib/backupfile.c (opendir, closedir): Undefine.
9938         * lib/chown.c (open, close): Undefine.
9939         * lib/clean-temp.c (open, close): Undefine.
9940         * lib/copy-file.c (open, close): Undefine.
9941         * lib/execute.c (open, close): Undefine.
9942         * lib/fsusage.c (open, close): Undefine.
9943         * lib/gc-gnulib.c (open, close): Undefine.
9944         * lib/getcwd.c (opendir, closedir): Undefine.
9945         * lib/glob.c (opendir, closedir): Undefine.
9946         * lib/javacomp.c (open, close): Undefine.
9947         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
9948         * lib/openat-proc.c (open, close): Undefine.
9949         * lib/pagealign_alloc.c (open, close): Undefine.
9950         * lib/pipe.c (open, close): Undefine.
9951         * lib/progreloc.c (open, close): Undefine.
9952         * lib/savedir.c (opendir, closedir): Undefine.
9953         * lib/utime.c (open, close): Undefine.
9954         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
9955
9956 2007-01-10  Bruno Haible  <bruno@clisp.org>
9957
9958         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
9959
9960 2007-01-12  Eric Blake  <ebb9@byu.net>
9961
9962         Provide a robust <wchar.h>.  Further simplifications are now
9963         possible in other modules, but not included here.
9964         * modules/wchar: New module.
9965         * m4/wchar.m4: New file.
9966         * lib/wchar_.h: Likewise.
9967         * modules/mbchar (Depends-on): Depend on wchar, as the first use
9968         of the new module.
9969         * MODULES.html.sh (Extended multibyte and wide character utilities):
9970         New section.
9971
9972 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
9973
9974         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
9975         to a reasonable default for memory allocation.
9976         (xreadlink): Don't allocate a huge buffer, to work around a buggy
9977         file system that reports garbage st_size values for symlinks.
9978         Problem reported by Liyang Hu.
9979
9980 2007-01-11  Simon Josefsson  <simon@josefsson.org>
9981
9982         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
9983         Emacs .#* auto-save files).
9984
9985 2007-01-11  Bruno Haible  <bruno@clisp.org>
9986
9987         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
9988         directory.
9989
9990 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
9991
9992         Use @...@ consistently in lib/wctype_.h.
9993         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
9994         on it being set to 1 or 0.
9995         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
9996         go back to AC_SUBSTing it.
9997         * modules/wctype (Makefile.am): Undo previous change.
9998
9999 2007-01-10  Eric Blake  <ebb9@byu.net>
10000
10001         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
10002         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
10003         * modules/wctype (Makefile.am): Likewise.
10004         Reported by Chris McGuire.
10005
10006 2007-01-10  Jim Meyering  <jim@meyering.net>
10007
10008         fts.c: a small readability/maintainability improvement
10009         * lib/fts.c (fts_read): Make this code slightly more readable and
10010         maintainable by hoisting the "sp->fts_cur = p" assignments to
10011         immediately follow the statements that set P.  Derived from
10012         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
10013
10014 2007-01-10  Eric Blake  <ebb9@byu.net>
10015
10016         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
10017         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
10018         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10019         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
10020         Reported by Chris McGuire.
10021
10022 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10023
10024         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
10025         in sed script.
10026
10027 2007-01-09  Bruno Haible  <bruno@clisp.org>
10028
10029         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
10030         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
10031         variables.
10032         (func_module): Use them.
10033
10034 2007-01-09  Bruno Haible  <bruno@clisp.org>
10035
10036         * modules/unistr/base: New file.
10037         * lib/unistr.h: New file.
10038
10039         * modules/unistr/u8-to-u16: New file.
10040         * lib/unistr/u8-to-u16.c: New file.
10041
10042         * modules/unistr/u8-to-u32: New file.
10043         * lib/unistr/u8-to-u32.c: New file.
10044
10045         * modules/unistr/u16-to-u8: New file.
10046         * lib/unistr/u16-to-u8.c: New file.
10047
10048         * modules/unistr/u16-to-u32: New file.
10049         * lib/unistr/u16-to-u32.c: New file.
10050
10051         * modules/unistr/u32-to-u8: New file.
10052         * lib/unistr/u32-to-u8.c: New file.
10053
10054         * modules/unistr/u32-to-u16: New file.
10055         * lib/unistr/u32-to-u16.c: New file.
10056
10057         * modules/unistr/u8-check: New file.
10058         * modules/unistr/u16-check: New file.
10059         * modules/unistr/u32-check: New file.
10060         * lib/unistr/u8-check.c: New file.
10061         * lib/unistr/u16-check.c: New file.
10062         * lib/unistr/u32-check.c: New file.
10063
10064         * modules/unistr/u8-chr: New file.
10065         * modules/unistr/u16-chr: New file.
10066         * modules/unistr/u32-chr: New file.
10067         * lib/unistr/u8-chr.c: New file.
10068         * lib/unistr/u16-chr.c: New file.
10069         * lib/unistr/u32-chr.c: New file.
10070
10071         * modules/unistr/u8-cmp: New file.
10072         * modules/unistr/u16-cmp: New file.
10073         * modules/unistr/u32-cmp: New file.
10074         * lib/unistr/u8-cmp.c: New file.
10075         * lib/unistr/u16-cmp.c: New file.
10076         * lib/unistr/u32-cmp.c: New file.
10077
10078         * modules/unistr/u8-cpy: New file.
10079         * modules/unistr/u16-cpy: New file.
10080         * modules/unistr/u32-cpy: New file.
10081         * lib/unistr/u8-cpy.c: New file.
10082         * lib/unistr/u16-cpy.c: New file.
10083         * lib/unistr/u32-cpy.c: New file.
10084         * lib/unistr/u-cpy.h: New file.
10085
10086         * modules/unistr/u8-cpy-alloc: New file.
10087         * modules/unistr/u16-cpy-alloc: New file.
10088         * modules/unistr/u32-cpy-alloc: New file.
10089         * lib/unistr/u8-cpy-alloc.c: New file.
10090         * lib/unistr/u16-cpy-alloc.c: New file.
10091         * lib/unistr/u32-cpy-alloc.c: New file.
10092         * lib/unistr/u-cpy-alloc.h: New file.
10093
10094         * modules/unistr/u8-endswith: New file.
10095         * modules/unistr/u16-endswith: New file.
10096         * modules/unistr/u32-endswith: New file.
10097         * lib/unistr/u8-endswith.c: New file.
10098         * lib/unistr/u16-endswith.c: New file.
10099         * lib/unistr/u32-endswith.c: New file.
10100         * lib/unistr/u-endswith.h: New file.
10101
10102         * modules/unistr/u8-mblen: New file.
10103         * modules/unistr/u16-mblen: New file.
10104         * modules/unistr/u32-mblen: New file.
10105         * lib/unistr/u8-mblen.c: New file.
10106         * lib/unistr/u16-mblen.c: New file.
10107         * lib/unistr/u32-mblen.c: New file.
10108
10109         * modules/unistr/u8-mbtouc: New file.
10110         * modules/unistr/u16-mbtouc: New file.
10111         * modules/unistr/u32-mbtouc: New file.
10112         * lib/unistr/u8-mbtouc.c: New file.
10113         * lib/unistr/u16-mbtouc.c: New file.
10114         * lib/unistr/u32-mbtouc.c: New file.
10115
10116         * modules/unistr/u8-mbtouc-safe: New file.
10117         * modules/unistr/u16-mbtouc-safe: New file.
10118         * modules/unistr/u32-mbtouc-safe: New file.
10119         * lib/unistr/u8-mbtouc-safe.c: New file.
10120         * lib/unistr/u16-mbtouc-safe.c: New file.
10121         * lib/unistr/u32-mbtouc-safe.c: New file.
10122
10123         * modules/unistr/u8-move: New file.
10124         * modules/unistr/u16-move: New file.
10125         * modules/unistr/u32-move: New file.
10126         * lib/unistr/u8-move.c: New file.
10127         * lib/unistr/u16-move.c: New file.
10128         * lib/unistr/u32-move.c: New file.
10129         * lib/unistr/u-move.h: New file.
10130
10131         * modules/unistr/u8-next: New file.
10132         * modules/unistr/u16-next: New file.
10133         * modules/unistr/u32-next: New file.
10134         * lib/unistr/u8-next.c: New file.
10135         * lib/unistr/u16-next.c: New file.
10136         * lib/unistr/u32-next.c: New file.
10137
10138         * modules/unistr/u8-prev: New file.
10139         * modules/unistr/u16-prev: New file.
10140         * modules/unistr/u32-prev: New file.
10141         * lib/unistr/u8-prev.c: New file.
10142         * lib/unistr/u16-prev.c: New file.
10143         * lib/unistr/u32-prev.c: New file.
10144
10145         * modules/unistr/u8-set: New file.
10146         * modules/unistr/u16-set: New file.
10147         * modules/unistr/u32-set: New file.
10148         * lib/unistr/u8-set.c: New file.
10149         * lib/unistr/u16-set.c: New file.
10150         * lib/unistr/u32-set.c: New file.
10151         * lib/unistr/u-set.h: New file.
10152
10153         * modules/unistr/u8-startswith: New file.
10154         * modules/unistr/u16-startswith: New file.
10155         * modules/unistr/u32-startswith: New file.
10156         * lib/unistr/u8-startswith.c: New file.
10157         * lib/unistr/u16-startswith.c: New file.
10158         * lib/unistr/u32-startswith.c: New file.
10159         * lib/unistr/u-startswith.h: New file.
10160
10161         * modules/unistr/u8-stpcpy: New file.
10162         * modules/unistr/u16-stpcpy: New file.
10163         * modules/unistr/u32-stpcpy: New file.
10164         * lib/unistr/u8-stpcpy.c: New file.
10165         * lib/unistr/u16-stpcpy.c: New file.
10166         * lib/unistr/u32-stpcpy.c: New file.
10167         * lib/unistr/u-stpcpy.h: New file.
10168
10169         * modules/unistr/u8-stpncpy: New file.
10170         * modules/unistr/u16-stpncpy: New file.
10171         * modules/unistr/u32-stpncpy: New file.
10172         * lib/unistr/u8-stpncpy.c: New file.
10173         * lib/unistr/u16-stpncpy.c: New file.
10174         * lib/unistr/u32-stpncpy.c: New file.
10175         * lib/unistr/u-stpncpy.h: New file.
10176
10177         * modules/unistr/u8-strcat: New file.
10178         * modules/unistr/u16-strcat: New file.
10179         * modules/unistr/u32-strcat: New file.
10180         * lib/unistr/u8-strcat.c: New file.
10181         * lib/unistr/u16-strcat.c: New file.
10182         * lib/unistr/u32-strcat.c: New file.
10183         * lib/unistr/u-strcat.h: New file.
10184
10185         * modules/unistr/u8-strchr: New file.
10186         * modules/unistr/u16-strchr: New file.
10187         * modules/unistr/u32-strchr: New file.
10188         * lib/unistr/u8-strchr.c: New file.
10189         * lib/unistr/u16-strchr.c: New file.
10190         * lib/unistr/u32-strchr.c: New file.
10191
10192         * modules/unistr/u8-strcmp: New file.
10193         * modules/unistr/u16-strcmp: New file.
10194         * modules/unistr/u32-strcmp: New file.
10195         * lib/unistr/u8-strcmp.c: New file.
10196         * lib/unistr/u16-strcmp.c: New file.
10197         * lib/unistr/u32-strcmp.c: New file.
10198
10199         * modules/unistr/u8-strcpy: New file.
10200         * modules/unistr/u16-strcpy: New file.
10201         * modules/unistr/u32-strcpy: New file.
10202         * lib/unistr/u8-strcpy.c: New file.
10203         * lib/unistr/u16-strcpy.c: New file.
10204         * lib/unistr/u32-strcpy.c: New file.
10205         * lib/unistr/u-strcpy.h: New file.
10206
10207         * modules/unistr/u8-strcspn: New file.
10208         * modules/unistr/u16-strcspn: New file.
10209         * modules/unistr/u32-strcspn: New file.
10210         * lib/unistr/u8-strcspn.c: New file.
10211         * lib/unistr/u16-strcspn.c: New file.
10212         * lib/unistr/u32-strcspn.c: New file.
10213         * lib/unistr/u-strcspn.h: New file.
10214
10215         * modules/unistr/u8-strdup: New file.
10216         * modules/unistr/u16-strdup: New file.
10217         * modules/unistr/u32-strdup: New file.
10218         * lib/unistr/u8-strdup.c: New file.
10219         * lib/unistr/u16-strdup.c: New file.
10220         * lib/unistr/u32-strdup.c: New file.
10221         * lib/unistr/u-strdup.h: New file.
10222
10223         * modules/unistr/u8-strlen: New file.
10224         * modules/unistr/u16-strlen: New file.
10225         * modules/unistr/u32-strlen: New file.
10226         * lib/unistr/u8-strlen.c: New file.
10227         * lib/unistr/u16-strlen.c: New file.
10228         * lib/unistr/u32-strlen.c: New file.
10229         * lib/unistr/u-strlen.h: New file.
10230
10231         * modules/unistr/u8-strmblen: New file.
10232         * modules/unistr/u16-strmblen: New file.
10233         * modules/unistr/u32-strmblen: New file.
10234         * lib/unistr/u8-strmblen.c: New file.
10235         * lib/unistr/u16-strmblen.c: New file.
10236         * lib/unistr/u32-strmblen.c: New file.
10237
10238         * modules/unistr/u8-strmbtouc: New file.
10239         * modules/unistr/u16-strmbtouc: New file.
10240         * modules/unistr/u32-strmbtouc: New file.
10241         * lib/unistr/u8-strmbtouc.c: New file.
10242         * lib/unistr/u16-strmbtouc.c: New file.
10243         * lib/unistr/u32-strmbtouc.c: New file.
10244
10245         * modules/unistr/u8-strncat: New file.
10246         * modules/unistr/u16-strncat: New file.
10247         * modules/unistr/u32-strncat: New file.
10248         * lib/unistr/u8-strncat.c: New file.
10249         * lib/unistr/u16-strncat.c: New file.
10250         * lib/unistr/u32-strncat.c: New file.
10251         * lib/unistr/u-strncat.h: New file.
10252
10253         * modules/unistr/u8-strncmp: New file.
10254         * modules/unistr/u16-strncmp: New file.
10255         * modules/unistr/u32-strncmp: New file.
10256         * lib/unistr/u8-strncmp.c: New file.
10257         * lib/unistr/u16-strncmp.c: New file.
10258         * lib/unistr/u32-strncmp.c: New file.
10259
10260         * modules/unistr/u8-strncpy: New file.
10261         * modules/unistr/u16-strncpy: New file.
10262         * modules/unistr/u32-strncpy: New file.
10263         * lib/unistr/u8-strncpy.c: New file.
10264         * lib/unistr/u16-strncpy.c: New file.
10265         * lib/unistr/u32-strncpy.c: New file.
10266         * lib/unistr/u-strncpy.h: New file.
10267
10268         * modules/unistr/u8-strnlen: New file.
10269         * modules/unistr/u16-strnlen: New file.
10270         * modules/unistr/u32-strnlen: New file.
10271         * lib/unistr/u8-strnlen.c: New file.
10272         * lib/unistr/u16-strnlen.c: New file.
10273         * lib/unistr/u32-strnlen.c: New file.
10274         * lib/unistr/u-strnlen.h: New file.
10275
10276         * modules/unistr/u8-strpbrk: New file.
10277         * modules/unistr/u16-strpbrk: New file.
10278         * modules/unistr/u32-strpbrk: New file.
10279         * lib/unistr/u8-strpbrk.c: New file.
10280         * lib/unistr/u16-strpbrk.c: New file.
10281         * lib/unistr/u32-strpbrk.c: New file.
10282         * lib/unistr/u-strpbrk.h: New file.
10283
10284         * modules/unistr/u8-strrchr: New file.
10285         * modules/unistr/u16-strrchr: New file.
10286         * modules/unistr/u32-strrchr: New file.
10287         * lib/unistr/u8-strrchr.c: New file.
10288         * lib/unistr/u16-strrchr.c: New file.
10289         * lib/unistr/u32-strrchr.c: New file.
10290
10291         * modules/unistr/u8-strspn: New file.
10292         * modules/unistr/u16-strspn: New file.
10293         * modules/unistr/u32-strspn: New file.
10294         * lib/unistr/u8-strspn.c: New file.
10295         * lib/unistr/u16-strspn.c: New file.
10296         * lib/unistr/u32-strspn.c: New file.
10297         * lib/unistr/u-strspn.h: New file.
10298
10299         * modules/unistr/u8-strstr: New file.
10300         * modules/unistr/u16-strstr: New file.
10301         * modules/unistr/u32-strstr: New file.
10302         * lib/unistr/u8-strstr.c: New file.
10303         * lib/unistr/u16-strstr.c: New file.
10304         * lib/unistr/u32-strstr.c: New file.
10305         * lib/unistr/u-strstr.h: New file.
10306
10307         * modules/unistr/u8-strtok: New file.
10308         * modules/unistr/u16-strtok: New file.
10309         * modules/unistr/u32-strtok: New file.
10310         * lib/unistr/u8-strtok.c: New file.
10311         * lib/unistr/u16-strtok.c: New file.
10312         * lib/unistr/u32-strtok.c: New file.
10313         * lib/unistr/u-strtok.h: New file.
10314
10315         * modules/unistr/u8-uctomb: New file.
10316         * modules/unistr/u16-uctomb: New file.
10317         * modules/unistr/u32-uctomb: New file.
10318         * lib/unistr/u8-uctomb.c: New file.
10319         * lib/unistr/u16-uctomb.c: New file.
10320         * lib/unistr/u32-uctomb.c: New file.
10321
10322         * MODULES.html.sh (Unicode string functions): Add the new modules.
10323
10324 2007-01-08  Bruno Haible  <bruno@clisp.org>
10325
10326         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
10327         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
10328         subdirectories.
10329
10330 2007-01-08  Karl Berry  <karl@gnu.org>
10331
10332         * doc/error.texi: mention that main() fns must set program_name
10333         when progname is used.
10334
10335 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
10336
10337         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
10338         WCTYPE_H is empty, for the benefit of builds from non-distclean
10339         directories.  Problem reported by Eric Blake in
10340         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
10341
10342 2007-01-08  Bruno Haible  <bruno@clisp.org>
10343
10344         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
10345         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
10346         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
10347         PROVIDE_CANONICALIZE_FILENAME_MODE.
10348         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
10349
10350 2007-01-08  Bruno Haible  <bruno@clisp.org>
10351
10352         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
10353         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
10354         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
10355         * lib/fts.c: Likewise.
10356         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
10357
10358 2006-12-25  Bruno Haible  <bruno@clisp.org>
10359
10360         * modules/utf8-ucs4-safe: New file.
10361         * lib/utf8-ucs4-safe.h: New file.
10362         * lib/unistr/utf8-ucs4-safe.c: New file.
10363
10364         * modules/utf16-ucs4-safe: New file.
10365         * lib/utf16-ucs4-safe.h: New file.
10366         * lib/unistr/utf16-ucs4-safe.c: New file.
10367
10368         * MODULES.html.sh (Unicode string functions): Add the new modules.
10369
10370 2007-01-08  Bruno Haible  <bruno@clisp.org>
10371
10372         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
10373         (Depends-on): Add unitypes.
10374         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
10375         (u8_mbtouc_aux): Move out to separate file.
10376         (u8_mbtouc): Use ucs4_t, uint8_t types.
10377         * lib/unistr/utf8-ucs4.c: New file.
10378
10379         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
10380         (Depends-on): Add unitypes.
10381         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
10382         (u16_mbtouc_aux): Move out to separate file.
10383         (u16_mbtouc): Use ucs4_t, uint16_t types.
10384         * lib/unistr/utf16-ucs4.c: New file.
10385
10386         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
10387         (Depends-on): Add unitypes.
10388         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
10389         (u8_uctomb_aux): Move out to separate file.
10390         (u8_uctomb): Use ucs4_t, uint8_t types.
10391         * lib/unistr/ucs4-utf8.c: New file.
10392
10393         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
10394         (Depends-on): Add unitypes.
10395         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
10396         (u16_uctomb_aux): Move out to separate file.
10397         (u16_uctomb): Use ucs4_t, uint16_t types.
10398         * lib/unistr/ucs4-utf16.c: New file.
10399
10400 2006-12-25  Bruno Haible  <bruno@clisp.org>
10401
10402         * modules/unitypes: New file.
10403         * lib/unitypes.h: New file.
10404         * MODULES.html.sh (func_all_modules): New section "Unicode string
10405         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
10406         this section. Add unitypes.
10407
10408 2007-01-08  Bruno Haible  <bruno@clisp.org>
10409
10410         Avoid variable names that conflict with those from libtool.
10411         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
10412         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
10413         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
10414         library_names_spec to acl_library_names_spec, hardcode_* to
10415         acl_hardcode_*.
10416         Reported by Ralf Wildenhues.
10417
10418 2007-01-08  Bruno Haible  <bruno@clisp.org>
10419
10420         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
10421         definition.
10422         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
10423         definition.
10424         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
10425         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
10426         definition.
10427         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
10428         definition.
10429         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
10430         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
10431         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
10432         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
10433         definition.
10434         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
10435         definition.
10436         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
10437         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
10438         GC_USE_<algorithm>.
10439         * lib/gc-libgcrypt.c: Likewise.
10440         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
10441         * modules/gc-arctwo (configure.ac): Likewise.
10442         * modules/gc-des (configure.ac): Likewise.
10443         * modules/gc-hmac-md5 (configure.ac): Likewise.
10444         * modules/gc-hmac-sha1 (configure.ac): Likewise.
10445         * modules/gc-md2 (configure.ac): Likewise.
10446         * modules/gc-md4 (configure.ac): Likewise.
10447         * modules/gc-md5 (configure.ac): Likewise.
10448         * modules/gc-random (configure.ac): Likewise.
10449         * modules/gc-rijndael (configure.ac): Likewise.
10450         * modules/gc-sha1 (configure.ac): Likewise.
10451
10452 2007-01-08  Bruno Haible  <bruno@clisp.org>
10453
10454         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
10455         macro definition.
10456         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
10457         definition.
10458         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
10459         definition.
10460         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
10461         * modules/fcntl-safer (configure.ac): Likewise.
10462         * modules/fopen-safer (configure.ac): Likewise.
10463         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
10464         GNULIB_FWRITEERROR macro definition.
10465
10466 2007-01-08  Bruno Haible  <bruno@clisp.org>
10467
10468         * m4/gnulib-common.m4: New file.
10469         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
10470         (func_get_filelist): Add m4/gnulib-common.m4.
10471
10472 2007-01-08  Bruno Haible  <bruno@clisp.org>
10473
10474         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
10475         command.
10476
10477 2007-01-08  Jim Meyering  <jim@meyering.net>
10478
10479         Use a more robust test for a "can't happen" condition.
10480         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
10481         narrowed the st_size value.  Presuming the "can't happen" condition
10482         is true, that narrowing could conceivably convert an invalid st_size
10483         value into a valid one.  Instead, use a change based on Matthew
10484         Woehlke's original patch.
10485
10486         Slight readability improvement: use an assert-like macro
10487         in place of literal "abort ()" uses.
10488         * lib/fts.c (fts_assert): Define.
10489         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
10490         Use this macro instead of a bare 'abort'.
10491
10492 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
10493
10494         Don't worry about using IRIX 5.3's wctype.h broken definitions;
10495         simply work around them.
10496         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
10497         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
10498         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
10499         declaring.
10500         Don't bother to define as macros, since the standard doesn't require it.
10501         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
10502         longer worry about IRIX 5.3.
10503         (HAVE_WCTYPE_CTMP_BUG): Remove.
10504
10505 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
10506
10507         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
10508         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
10509         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
10510         Problems reported by Georg Schwarz for IRIX 5.3.
10511
10512         * gnulib-tool (autoconf_minversion): Take the maximum version number
10513         found, not the minimum.  Problem reported by James Youngman.
10514
10515 2007-01-03  Karl Berry  <karl@gnu.org>
10516
10517         * doc/error.texi: new file, explaining interaction with progname.
10518         * doc/gnulib.texi: include it.  Update copyright.
10519
10520 2007-01-03  Simon Josefsson  <simon@josefsson.org>
10521
10522         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
10523         AC_CANONICAL_HOST, to improve autobuild outputs.
10524
10525 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
10526             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
10527
10528         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
10529         sockets, server sockets, and other file descriptors.  Count errors
10530         to compute the return value.  Reorder the code a bit to be easier
10531         to follow.  Don't set event bits that were not requested (except
10532         POLLERR and POLLHUP).
10533
10534 2007-01-01  Bruno Haible  <bruno@clisp.org>
10535
10536         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
10537
10538 2007-01-03  Jim Meyering  <jim@meyering.net>
10539
10540         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
10541
10542 2007-01-02  Bruno Haible  <bruno@clisp.org>
10543
10544         * modules/settime (Include): Require timespec.h.
10545         * modules/nanosleep (Include): Likewise.
10546
10547 2007-01-01  Bruno Haible  <bruno@clisp.org>
10548
10549         * gnulib-tool (func_emit_copyright_notice): Bump year.
10550         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
10551
10552 2007-01-01  Bruno Haible  <bruno@clisp.org>
10553
10554         Improve support for OpenBSD.
10555         * build-aux/config.rpath (libname_spec): Export.
10556         (library_names_spec): New variable. Export.
10557         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
10558         library_names_spec from the config.rpath output. Locate shared library
10559         through the name pattern in library_names_spec.
10560
10561 2007-01-01  Eric Blake  <ebb9@byu.net>
10562
10563         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
10564
10565 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
10566
10567         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
10568         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
10569         assume the C locale, and avoid an "eval" that could cause trouble.
10570         Problem with SORT reported by Bob Proulx.
10571
10572         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
10573         Define.  Trivial patch from Henning Nielsen Lund, originally
10574         sent to bug-grep@gnu.org today.
10575
10576 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
10577
10578         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
10579         struct stat.  Problem reported by Henning Nielsen Lund.
10580         * lib/acl.c: Include acl.h first, to check interface.  Don't
10581         bother to include sys/types.h and sys/stat.h again.
10582
10583 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
10584
10585         Import the following change from libc; problem reported by
10586         Sven Verdoolaege.
10587
10588         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
10589
10590         [BZ #1373]
10591         * lib/argp.h: Remove __NTH for __argp_usage inline function.
10592
10593 2006-12-28  Jim Meyering  <jim@meyering.net>
10594
10595         * build-aux/announce-gen: Do not assume that the package
10596         builds any of tar.gz, tar.bz2, and .xdelta files.
10597         Suggestion from Simon Josefsson.
10598
10599 2006-12-28  Simon Josefsson  <simon@josefsson.org>
10600
10601         * modules/announce-gen: New file.
10602
10603 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
10604
10605         * lib/mbchar.h: Just include <wctype.h>; the wctype module
10606         handles its gotchas now.
10607         * lib/mbswidth.c: Likewise.
10608         * lib/wcwidth.h: Likewise.
10609         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
10610         and iswcntrl; the wctype module does this stuff now.
10611         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
10612         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
10613         * modules/mbchar (Depends-on): Add wctype.
10614         * modules/mbswidth (Depends-on): Likewise.
10615         * modules/wcwidth (Depends-on): Likewise.
10616
10617 2006-12-27  Eric Blake  <ebb9@byu.net>
10618
10619         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
10620         module uses more than what <wctype.h> is required to provide.
10621
10622 2006-12-26  Eric Blake  <ebb9@byu.net>
10623
10624         * gnulib-tool (sed_extract_prog): Avoid space-tab.
10625
10626 2006-12-26  Eric Blake  <ebb9@byu.net>
10627
10628         * modules/absolute-header: New module.
10629         * modules/fcntl (Depends-on): Depend on it.
10630         * modules/inttypes (Depends-on): Likewise.
10631         * modules/stdint (Depends-on): Likewise.
10632         * modules/sys_stat (Depends-on): Likewise.
10633         * modules/wctype (Depends-on): Likewise.
10634         * MODULES.html.sh (Support for building libraries and
10635         executables): Document it.
10636
10637 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
10638
10639         * gnulib-tool (SED): Remove, undoing previous change.
10640         The problem was that it broke coreutils on Solaris, because
10641         "sed --posix" leaked into a makefile.
10642         (sed): New alias, if 'alias' and GNU sed.
10643
10644 2006-12-24  Jim Meyering  <jim@meyering.net>
10645
10646         Work around an fchownat bug in glibc-2.4:
10647         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
10648         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
10649         in spite of the -P option.
10650         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
10651         New macros.
10652         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
10653         * modules/openat (Files): Add lib/fchownat.c.
10654         * lib/openat.c (fchownat): Don't define here.  Move to...
10655         * lib/fchownat.c: ...this new file.
10656
10657 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
10658
10659         Fix bug reported by Bruno Haible in
10660         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
10661         where quotearg.c didn't compile on Mac OS X 10.2 because it
10662         lacks <wchar.h> and wint_t.
10663         * lib/wctype_.h (__wctype_wint_t): New type.
10664         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
10665         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
10666         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
10667         Arg is now of type __wctype_wint_t, not wint_t.
10668         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
10669         substitute HAVE_WINT_T.
10670         * modules/wctype (Files): Add m4/wint_t.m4.
10671         (wctype.h): Substitute HAVE_WINT_T.
10672
10673 2006-12-23  Bruno Haible  <bruno@clisp.org>
10674
10675         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
10676
10677 2006-12-23  Bruno Haible  <bruno@clisp.org>
10678
10679         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
10680         S_ISLNK.
10681         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
10682         mingw.
10683
10684 2006-12-22  Bruno Haible  <bruno@clisp.org>
10685
10686         * lib/copy-file.c: Include acl.h.
10687         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
10688         Close the file descriptors only after being done with copy_acl.
10689         * modules/copy-file (Depends-on): Add acl.
10690
10691 2006-12-22  Bruno Haible  <bruno@clisp.org>
10692
10693         * gnulib-tool (SED): New variable.
10694         Use $SED instead of sed everywhere.
10695
10696 2006-12-22  Bruno Haible  <bruno@clisp.org>
10697
10698         * modules/no-c++: New file.
10699         * m4/no-c++.m4: New file.
10700         * MODULES.html.sh (Support for building libraries and executables):
10701         Add no-c++.
10702
10703 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
10704
10705         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
10706         Include <limits.h>, and use its INT_MAX to rewrite the
10707         j loop so that it does not overflow 'int'.  Problem reported by
10708         Ralf Wildenhues in
10709         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
10710         Play it safe by shifting left by 1 rather than multiplying by 2,
10711         as GCC is less likely to optimize this away when the value
10712         is signed (when it assumes overflow leads to undefined behavior).
10713         Also, don't assume time_t uses two's complement.
10714
10715 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
10716
10717         * MODULES.html.sh: New module wctype.
10718         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
10719         * lib/fnmatch.c: Don't bother to include <wchar.h> before
10720         <wctype.h>, since the new wctype module should fix this.
10721         * lib/quotearg.c: Include <wctype.h> unconditionally, since
10722         the wctype module should arrange for it.
10723         * lib/regex_internal.h: Likewise.
10724         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
10725         since the wctype module should handle this now.
10726         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
10727         * modules/fnmatch (Depends-on): Add wctype.
10728         * modules/quotearg (Depends-on): Likewise.
10729         * modules/regex (Depends-on): Likewise.
10730
10731 2006-12-19  Bruno Haible  <bruno@clisp.org>
10732
10733         * lib/strdup.h [C++]: Wrap definitions in extern "C".
10734         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
10735
10736 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10737
10738         * modules/savewd (Depends-on): Fix dependency on fcntl.
10739
10740 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10741
10742         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
10743         conforms to C99, rather than relying on the user's environment
10744         setting of STDINT_H.
10745
10746 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10747         and Eric Blake  <ebb9@byu.net>
10748
10749         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
10750         This is more consistent with the other defines here.
10751         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
10752         Port to z/OS.  Problem reported by Paul Gilmartin.
10753         Change local vars to use gl_ prefix rather than ac_.
10754         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
10755         with other defines.
10756         * modules/double-slash-root: New module.
10757         * modules/dirname (Files): Remove m4/double-slash-root.m4.
10758         (Depends-on): Add double-slash-root.
10759         * MODULES.html.sh (File system functions): Mention new module.
10760
10761 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
10762
10763         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
10764         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
10765         This is for the benefit of gzip, which doesn't do i18n.
10766
10767 2006-12-12  Jim Meyering  <jim@meyering.net>
10768
10769         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
10770         Reported by Andreas Schwab <schwab@suse.de>.
10771
10772 2006-12-12  Bruno Haible  <bruno@clisp.org>
10773
10774         Merge these changes.
10775         2006-09-05  Bruno Haible  <bruno@clisp.org>
10776         * lib/iconvme.c (iconv_string): No need to save and restore errno when
10777         iconv_alloc succeeded.
10778         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
10779         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
10780         test for " && dest " at the end - dest is always != NULL there. Call
10781         iconv with 4xNULL arguments initially, to reset the state. Call iconv
10782         with 2xNULL arguments, also to flush the state storage. Handle the
10783         IRIX iconv behaviour. Realloc the final result, to throw away unused
10784         memory.
10785
10786 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
10787
10788         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
10789         and fchmodat unconditionally, since glibc 2.4 has them.
10790         Problem reported by Arkadiusz Miskiewicz.
10791
10792 2006-12-10  Bruno Haible  <bruno@clisp.org>
10793
10794         * gnulib-tool (func_import): Show the include files only for those
10795         modules that are copied and specified.
10796         Reported by Karl Berry.
10797
10798 2006-12-08  Jim Meyering  <jim@meyering.net>
10799
10800         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
10801         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
10802
10803         * build-aux/announce-gen: Add two new options, both optional:
10804         --bootstrap-tools=TOOL_LIST
10805               a comma-separated list of tools, e.g.,
10806               autoconf,automake,bison,gnulib
10807         --gnulib-snapshot-date=DATE
10808               if gnulib is in the bootstrap tool list,
10809               then report this as the snapshot date.
10810               If not specified, use the current date/time.
10811               If you specify a date here, be sure it's UTC.
10812
10813 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10814
10815         * tests/test-argp-2.sh: Fix test to match actual output.
10816         (func_compare): Fix sed script to be portable.
10817
10818 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
10819
10820         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
10821         workaround for this case.  It is not autoconfigured now; offhand
10822         it's hard to see how to autoconfigure it.
10823
10824 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
10825
10826         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
10827         a directory that is about to be chowned.  Such a directory's
10828         initial file permissions should permit the owner only and this
10829         should not be changed until after the chown, since the group and
10830         other bits would be incorrect if they granted permission before
10831         the chown.
10832
10833         Fix porting problem for iswctype reported by Georg Schwarz in:
10834         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
10835         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
10836         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
10837         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
10838         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10839
10840 2006-12-03  Jim Meyering  <jim@meyering.net>
10841
10842         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
10843         p->fts_statp may not yet be defined.
10844         (fts_read): Instead, set it in the caller, once p->fts_statp is
10845         sure to be defined, and corresponds to a top-level directory.
10846         This bug made du -x fail.  Here's the coreutils test case:
10847         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
10848         Reported by Mike Frysinger.
10849
10850 2006-12-01  Jim Meyering  <jim@meyering.net>
10851
10852         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
10853         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
10854         Reported by Simon Josefsson.
10855
10856 2006-11-30  Jim Meyering  <jim@meyering.net>
10857
10858         * m4/warning.m4: Use the all-permissive copyright notice
10859         recommended by RMS (rather than LGPL).
10860         * m4/vararrays.m4: Likewise.
10861         * m4/flexmember.m4: Likewise.
10862
10863 2006-11-29  Bruno Haible  <bruno@clisp.org>
10864
10865         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
10866         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
10867         using +=.
10868         Reported by Simon Josefsson <simon@josefsson.org>.
10869
10870 2006-11-28  James Youngman <jay@gnu.org>
10871
10872         * README: Advise users that they might find the bug-gnulib@gnu.org
10873         and autotools-announce@gnu.org mailing lists useful.
10874
10875 2006-11-28  Bruno Haible  <bruno@clisp.org>
10876
10877         * m4/ptrdiff_max.m4: Remove file.
10878
10879 2006-11-21  Bruno Haible  <bruno@clisp.org>
10880
10881         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
10882         _AC_COMPUTE_INT.
10883         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10884         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
10885         _AC_COMPUTE_INT.
10886         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10887         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
10888         _AC_COMPUTE_INT.
10889         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10890
10891 2006-11-28  Jim Meyering  <jim@meyering.net>
10892
10893         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
10894         warning from "gcc -Wshadow" about shadowing the builtin.
10895
10896 2006-11-27  Bruno Haible  <bruno@clisp.org>
10897
10898         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
10899         _AC_COMPUTE_INT.
10900         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
10901
10902 2006-11-27  Bruno Haible  <bruno@clisp.org>
10903             Paul Eggert  <eggert@cs.ucla.edu>
10904
10905         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
10906
10907 2006-11-26  Bruno Haible  <bruno@clisp.org>
10908
10909         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
10910         noinst_LTLIBRARIES.
10911
10912 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
10913             Bruno Haible  <bruno@clisp.org>
10914
10915         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
10916         if compiling with "gcc -ansi".
10917
10918 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
10919
10920         Fix some incompatibilities with gcc -ansi -pedantic.
10921         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
10922         if compiling pedantically with GCC, unless it's C99 or later.
10923         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
10924         it mishandles gcc -ansi -pedantic as well.
10925         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
10926         if gcc -pedantic.
10927         * lib/regexec.c (check_node_accept_bytes): Don't use auto
10928         initializers for struct if -pedantic, unless it's C99 or later.
10929
10930 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
10931
10932         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
10933         Don't close an fd more than once. Identical atimes indicate
10934         success, not failure.
10935
10936 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
10937
10938         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
10939
10940 2006-11-23  Jim Meyering  <jim@meyering.net>
10941
10942         * build-aux/announce-gen: New file.  From coreutils.
10943
10944 2006-11-22  Jim Meyering  <jim@meyering.net>
10945
10946         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
10947         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
10948         (fts_read): Use a temporary to narrow the overused st_size member
10949         before using it in a switch statement.  Reported by Matthew Woehlke.
10950
10951         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
10952         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
10953
10954 2006-11-20  Bruno Haible  <bruno@clisp.org>
10955
10956         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
10957         changequote instead of pairs of brackets.
10958         Reported by Andreas Schwab <schwab@suse.de>.
10959
10960 2006-11-21  Jim Meyering  <jim@meyering.net>
10961
10962         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
10963         so as to remain compatible with older compilers.
10964         Patch from Michael Deutschmann.
10965
10966 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
10967
10968         * MODULES.html.sh (File system functions): Add openat.
10969
10970         * lib/openat.h (rpl_fstatat): New macro, if
10971         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
10972         (fstatat): Define to rpl_fstatat under the same conditions,
10973         unless COMPILING_FSTATAT.
10974         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
10975         seems to have the bug.
10976         * lib/fstatat.c: New file.
10977         * modules/openat (Files): Add it.
10978
10979 2006-11-20  Bruno Haible  <bruno@clisp.org>
10980
10981         * Makefile: New file.
10982
10983 2006-11-20  Jim Meyering  <jim@meyering.net>
10984
10985         The beginnings of syntax-related checks for gnulib.
10986         * lib/Makefile: New file.
10987         * lib/t-idcache: New script.  Ensure that the two halves of
10988         idcache.c stay in sync.
10989
10990         * lib/idcache.c: Adjust comments in user- and group- portions to
10991         be more accurate, and to be consistent with one another.
10992
10993 2006-11-20  Jim Meyering  <jim@meyering.net>
10994
10995         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
10996         continue using the flexible array member (thus, this module performs
10997         half as many malloc calls), with the addition that...
10998         (getgroup, getuser): Consistently record a non-match via an empty
10999         "name" string, and map an empty string match to a NULL return value.
11000         * modules/idcache (Depends-on): Re-add flexmember.
11001
11002         * lib/idcache.c (getuser): Remove all uses of the register keyword.
11003         (getuidbyname, getgroup, getgidbyname): Likewise.
11004
11005         Use cleaner syntax: NULL rather than 0.
11006         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
11007
11008 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
11009
11010         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
11011         It mishandled the case where the group was missing.
11012         Problem reported by Greg Schafer.
11013         * modules/idcache: Likewise.
11014
11015 2006-11-18  Jim Meyering  <jim@meyering.net>
11016
11017         * check-module (%exempt_header): Add exception for some
11018         conditionally-included headers.
11019
11020         * modules/i-ring (Depends-on): Add verify.
11021         (License): Change to LGPL.
11022
11023 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
11024
11025         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
11026         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
11027         and inttostr.h.  Use snprintf rather than uinttostr, so that
11028         LGPLed code doesn't depend on GPLed.
11029
11030 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
11031
11032         * modules/inline (License): Change from GPL to LGPL.
11033
11034 2006-11-17  Jim Meyering  <jim@meyering.net>
11035
11036         * modules/d-type (License): Switch to LGPL.
11037
11038 2006-11-15  Bruno Haible  <bruno@clisp.org>
11039
11040         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
11041
11042 2006-11-15  Eric Blake  <ebb9@byu.net>
11043
11044         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
11045         the module dependency.
11046
11047 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11048             Bruno Haible  <bruno@clisp.org>
11049
11050         * gnulib-tool (func_create_testdir): Add license consistency check.
11051
11052 2006-11-15  Eric Blake  <ebb9@byu.net>
11053
11054         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
11055         random "(cached)" in configure output.
11056
11057 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11058
11059         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
11060         test for conforming inttypes.h is both announced and cached.
11061
11062         * MODULES.html.sh (seen_modules, seen_files): New variables.
11063         (func_module): Rewrite to use a few less gnulib-tool and sed
11064         invocations.  Avoid a couple of quadratic algorithms for ...
11065         (missed_modules, missed_files): ... these, with ...
11066         (func_append, func_tmpdir): ... these new functions, from
11067         gnulib-tool.  Analogously, install traps for cleanup.
11068
11069         * tests/test-gc.c (main): Remove unused variables.
11070         * tests/test-read-file.c: Include stdlib.h, for 'free'.
11071
11072 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
11073
11074         * modules/inttostr (License): Change to LGPL.
11075
11076 2006-11-14  Eric Blake  <ebb9@byu.net>
11077
11078         * modules/tempname (License): Change to LGPL.
11079
11080 2006-11-14  Eric Blake  <ebb9@byu.net>
11081
11082         * doc/functions.texi (Function Portability): *printf functions on
11083         Cygwin now understand all POSIX size specifiers.
11084
11085 2006-11-14  Bruno Haible  <bruno@clisp.org>
11086
11087         * modules/c-ctype (License): Change to LGPL.
11088
11089 2006-11-12  Bruno Haible  <bruno@clisp.org>
11090
11091         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
11092         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
11093         for GNOME libraries, for which the include files are installed in
11094         subdirectories of $prefix/include.
11095
11096 2006-11-12  Bruno Haible  <bruno@clisp.org>
11097
11098         * m4/lib-link.m4: Require at least autoconf-2.54.
11099         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
11100         name to underscores for the --with option.
11101
11102 2006-11-13  Bruno Haible  <bruno@clisp.org>
11103
11104         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
11105         the tests directory.
11106         Reported by Ralf Wildenhues.
11107
11108 2006-11-13  Bruno Haible  <bruno@clisp.org>
11109
11110         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
11111         (func_emit_initmacro_end): Undo the override here.
11112         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
11113         Works around the famous automake error in coreutils.
11114
11115 2006-11-13  Eric Blake  <ebb9@byu.net>
11116
11117         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
11118         element, not its node.
11119
11120 2006-11-12  Bruno Haible  <bruno@clisp.org>
11121
11122         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
11123         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
11124
11125 2006-11-12  Bruno Haible  <bruno@clisp.org>
11126
11127         * gnulib-tool: New option --local-symlink.
11128         (func_usage): Document it.
11129         (lsymbolic): New variable.
11130         (func_import, func_create_testdir): If --symlink was not specified,
11131         test whether --local-symlink was specified and the file comes from
11132         the local_gnulib_dir.
11133
11134 2006-11-12  Bruno Haible  <bruno@clisp.org>
11135
11136         * gnulib-tool (func_ln): New function.
11137         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
11138
11139 2006-11-12  Bruno Haible  <bruno@clisp.org>
11140
11141         Finish support for source files in subdirectories.
11142         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
11143         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
11144         AUTOMAKE_OPTIONS.
11145         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
11146
11147 2006-11-12  Bruno Haible  <bruno@clisp.org>
11148
11149         * gnulib-tool (func_get_automake_snippet): Synthesize also an
11150         EXTRA_lib_SOURCES augmentation.
11151         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
11152
11153 2006-11-12  Jim Meyering  <jim@meyering.net>
11154
11155         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
11156         file descriptors.  This also averts a failure on systems with
11157         native openat support when a traversed directory lacks "x" access.
11158         * lib/fts_.h: Include "i-ring.h"
11159         (struct FTS) [fts_fd_ring]: New member.
11160         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
11161         (FCHDIR): Add parentheses.
11162         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
11163         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
11164         When descending, rather than simply closing the previous
11165         fts_cwd_fd value, push that file descriptor onto the ring.
11166         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
11167         (fts_open): Initialize the new fd_ring member.
11168         (fts_close): Clear the ring.
11169         (fts_safe_changedir): When possible, use our new fd_ring to skip
11170         the diropen and fstat and dev/ino comparison that would normally
11171         accompany a virtual `chdir ("..")'.
11172
11173         * modules/fts (Depends-on): Add i-ring.
11174         * modules/i-ring: New module.
11175         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
11176         * m4/i-ring.m4: New file.
11177
11178 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11179
11180         * gnulib-tool (func_create_testdir): Fix replacement of
11181         `build-aux' in configure.ac.  Run autotools in gltests
11182         subdirectory.
11183         (func_create_testdir, func_create_megatestdir, test): There is
11184         no need for '--force' in most autotool invocations in a new
11185         tree.  Actually fail the whole test if any of the tools, or the
11186         configure or make stages fail.
11187
11188         Sync from Automake.
11189         * build-aux/gnupload: Revert last change.  Add pointer to upload
11190         instructions of the GNU Maintenance Instructions.
11191         Suggestion by Karl Berry.
11192
11193 2006-11-10  Jim Meyering  <jim@meyering.net>
11194
11195         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
11196
11197 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11198
11199         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
11200         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
11201         (bind_textdomain_codeset) [! ENABLE_NLS]:
11202         Evaluate all the arguments.  That way, callers get compatible behavior
11203         if the arguments have side effects.  Also, it avoids some GCC
11204         diagnostics in some cases; Joel E. Denny reported problems when Bison
11205         was configured with --enable-gcc-warnigs.
11206
11207 2006-11-10  Jim Meyering  <jim@meyering.net>
11208
11209         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
11210         relevant options in CFLAGS (like -O, -fno-inline) are taken into
11211         account.
11212
11213 2006-11-10  Jim Meyering  <jim@meyering.net>
11214
11215         * modules/inline: New file/module.
11216         * modules/xalloc (Files): Remove m4/inline.m4.
11217         (Depends-on): Add inline, instead.
11218         * modules/oset: Likewise.
11219         * modules/list: Likewise.
11220
11221 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
11222
11223         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
11224         Problem reported by Matthew Woehlke.
11225
11226 2006-11-09  Bruno Haible  <bruno@clisp.org>
11227
11228         * lib/tempname.c (gen_tempname): Remove variant that invokes
11229         __gen_tempname.
11230         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
11231         __gen_tempname.
11232
11233 2006-11-08  Bruno Haible  <bruno@clisp.org>
11234
11235         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
11236         to 'yes' instead of 'cross-compiling'.
11237
11238 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
11239
11240         * lib/quotearg.h (quotearg_free): New decl.
11241         * lib/quotearg.c (quotearg_free): New function.
11242         (slot0, nslots, slotvec0, slotvec):
11243         Now file-scope so that quotearg_free can get at them.
11244
11245 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11246
11247         Sync from Automake.
11248         * build-aux/gnupload: Add missing 'gnu' to example URL.
11249         Report by Karl Berry.
11250
11251 2006-11-08  Bruno Haible  <bruno@clisp.org>
11252
11253         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
11254         Suggested by Paul Eggert.
11255
11256 2006-11-08  Jim Meyering  <jim@meyering.net>
11257
11258         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
11259         It's already included if !_LIBC.
11260         (fts_safe_changedir): Add a comment.
11261
11262 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
11263
11264         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
11265         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
11266         Matthew Woehlke.
11267
11268         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
11269         definitions up, to avoid colliding with change below.
11270         (static_inline) [HAVE_INLINE]: New macro.
11271         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
11272         Provide extern decls when !HAVE_INLINE.  Do not define unless
11273         static_inline is defined, either by us or by xmalloc.c.  Use
11274         static_inline rather than static inline.
11275         (XCALLOC): Optimize sizeof(T) = 1 case.
11276         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
11277
11278 2006-11-07  Bruno Haible  <bruno@clisp.org>
11279
11280         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
11281         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
11282         AC_C_INLINE.
11283         * modules/xalloc (Files): Add m4/inline.m4.
11284
11285 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11286
11287         * README: Fix typo.
11288         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
11289         (Miscellanous Notes): ...from this.
11290
11291 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
11292
11293         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
11294         Mention that offsetof should be used instead of sizeof.
11295         From Bruno Haible.
11296
11297 2006-11-07  Bruno Haible  <bruno@clisp.org>
11298
11299         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
11300
11301 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
11302
11303         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
11304         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
11305         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
11306         (gl_tree_add_before, gl_tree_add_after):
11307         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
11308         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
11309         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
11310         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
11311         (gl_linked_add_after, gl_linked_add_at): Likewise.
11312         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
11313         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
11314         (gl_tree_add_before, gl_tree_add_after): Likewise.
11315         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
11316         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
11317         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
11318
11319 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11320
11321         * lib/gl_oset.h: Use C comment style, not C++ comment style.
11322
11323 2006-11-06  Bruno Haible  <bruno@clisp.org>
11324
11325         * m4/inline.m4: New file.
11326         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
11327         * modules/list (Files): Add m4/inline.m4.
11328         * modules/oset (Files): Likewise.
11329
11330 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
11331
11332         * lib/idcache.c: Include <stddef.h>, for offsetof.
11333         (struct userid.name): Change from char * to a flexible array member.
11334         All uses changed.
11335         * modules/idcache (Depends-on): Add flexmember.
11336
11337         * MODULES.html.sh (Core language properties): New module flexmember.
11338         * modules/flexmember, m4/flexmember.m4: New files.
11339
11340         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
11341         inline functions that are identical with the old xnmalloc_inline,
11342         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
11343         that we can avoid some unnecessary integer multiplications and
11344         divisions in the common case where the element size is known at
11345         compile time.
11346         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
11347         needed.
11348         (xnboundedmalloc): Remove.
11349         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
11350         arguments, for consistency with rest of this header.
11351         (xcharalloc): Rewrite using XNMALLOC.
11352         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
11353         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
11354         versions have been moved to lib/xalloc.h and renamed to be the
11355         non-*_inline versions.
11356         (xmalloc, xrealloc): Implement without reference to the xnmalloc
11357         and xnrealloc functions, since those functions are now inline and
11358         now call us.
11359         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
11360         renaming described above.
11361         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
11362         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
11363         captures the dependency in AC_C_INLINE.
11364
11365         New module canonicalize-lgpl, proposed by Charles Wilson in
11366         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
11367         with a few small changes afterwards.
11368         * MODULES.html.sh (File system functions): New module
11369         canonicalize-lgpl.
11370         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
11371         and canonicalize_file_name.
11372         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
11373         * modules/canonicalize-lgpl: New files.
11374
11375 2006-11-05  Bruno Haible  <bruno@clisp.org>
11376
11377         * gnulib-tool (func_import, func_create_testdir): Create directories
11378         also for files in subdirectories of lib/.
11379
11380 2006-11-05  Bruno Haible  <bruno@clisp.org>
11381
11382         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
11383         ANSI C compliant.
11384
11385 2006-11-03  Bruno Haible  <bruno@clisp.org>
11386
11387         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
11388         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
11389         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
11390         (xnboundedmalloc): New inline function.
11391         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
11392         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
11393         xmalloc.
11394         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
11395         xmalloc.
11396         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
11397         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
11398         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
11399         xmalloc.
11400         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11401         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
11402         xmalloc.
11403         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
11404         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11405         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
11406         xmalloc.
11407         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
11408         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
11409         gl_tree_add_after): Use XMALLOC instead of xmalloc.
11410         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
11411         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
11412         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
11413         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
11414
11415 2006-11-03  Bruno Haible  <bruno@clisp.org>
11416
11417         * lib/c-ctype.h [C++]: Define functions without name mangling.
11418         * lib/fwriteerror.h [C++]: Likewise.
11419         * lib/gcd.h [C++]: Likewise.
11420         * lib/linebreak.h [C++]: Likewise.
11421
11422 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
11423
11424         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
11425         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
11426         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
11427         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
11428         Check for functions and headers just once.
11429         Check for declaration of canonicalize_file_name.
11430         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
11431
11432 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11433
11434         * gnulib-tool (func_import): Fix typo in actioncmd.
11435
11436 2006-11-02  Bruno Haible  <bruno@clisp.org>
11437
11438         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
11439         newline sequence in the Makefile.am snippet as a space, like "make"
11440         does.
11441         Reported by Roger Persson <perrog@gmail.com>.
11442
11443 2006-11-01  Bruno Haible  <bruno@clisp.org>
11444
11445         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
11446         already declared in <string.h>.
11447         * lib/strcase.h (strncasecmp): Don't declare it if yes.
11448
11449 2006-11-01  Bruno Haible  <bruno@clisp.org>
11450
11451         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
11452         * lib/strcase.h: Include <string.h>.
11453         (strcasecmp): Define to rpl_strcasecmp here.
11454
11455 2006-11-01  Bruno Haible  <bruno@clisp.org>
11456
11457         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
11458
11459 2006-11-01  Eric Blake  <ebb9@byu.net>
11460
11461         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
11462
11463         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
11464
11465 2006-10-29  Bruno Haible  <bruno@clisp.org>
11466
11467         Make it compile in C++ mode.
11468         * lib/full-write.c (full_rw): Add a cast.
11469
11470 2006-11-01  Bruno Haible  <bruno@clisp.org>
11471
11472         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
11473         be POSIX compliant.
11474         Reported by Roger Persson <perrog@gmail.com>.
11475
11476 2006-11-01  Eric Blake  <ebb9@byu.net>
11477
11478         * lib/getopt_.h: Fix comments.
11479
11480 2006-10-31  Eric Blake  <ebb9@byu.net>
11481
11482         * modules/tmpdir (Depends-on): Add sys_stat.
11483         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
11484         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
11485         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
11486         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
11487         tempname.
11488
11489 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
11490
11491         Avoid some C++ diagnostics reported by Bruno Haible.
11492         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
11493         xmalloc.
11494         (quotearg_alloc): Use xcharalloc rather than xmalloc.
11495         (struct slotvec): Move to top level.
11496         (quotearg_n_options): Rewrite to avoid xmalloc.
11497         * lib/xalloc.h (xcharalloc): New function.
11498         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
11499         [defined __cplusplus]: Add function template that provides result
11500         type propagation.  This part of the change is from Bruno Haible.
11501
11502 2006-10-29  Bruno Haible  <bruno@clisp.org>
11503
11504         Make it compile in C++ mode.
11505         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
11506         * lib/strnlen1.c (strnlen1): Cast memchr result.
11507         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
11508         * lib/clean-temp.c (string_equals, string_hash): Add casts.
11509         (create_temp_dir): Rename local variable 'template'.
11510         (compile_csharp_using_sscli): Add cast.
11511         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
11512         * lib/findprog.c (find_in_path): Likewise.
11513         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
11514         * lib/wait-process.c (register_slave_subprocess): Likewise.
11515
11516 2006-10-22  Bruno Haible  <bruno@clisp.org>
11517
11518         * modules/tsearch: New file.
11519         * lib/tsearch.h: New file.
11520         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
11521         * m4/tsearch.m4: New file.
11522         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
11523
11524 2006-10-29  Eric Blake  <ebb9@byu.net>
11525
11526         * lib/arcfour.c: Assume config.h.
11527         * lib/arctwo.c: Likewise.
11528         * lib/base64.c: Likewise.
11529         * lib/check-version.c: Likewise.
11530         * lib/crc.c: Likewise.
11531         * lib/des.c: Likewise.
11532         * lib/gc-gnulib.c: Likewise.
11533         * lib/gc-libgcrypt.c: Likewise.
11534         * lib/gc-pbkdf2-sha1.c: Likewise.
11535         * lib/getaddrinfo.c: Likewise.
11536         * lib/getdelim.c: Likewise.
11537         * lib/getline.c: Likewise.
11538         * lib/hmac-md5.c: Likewise.
11539         * lib/hmac-sha1.c: Likewise.
11540         * lib/iconvme.c: Likewise.
11541         * lib/md2.c: Likewise.
11542         * lib/md4.c: Likewise.
11543         * lib/memxor.c: Likewise.
11544         * lib/read-file.c: Likewise.
11545         * lib/readline.c: Likewise.
11546         * lib/rijndael-alg-fst.c: Likewise.
11547         * lib/rijndael-api-fst.c: Likewise.
11548         * lib/xgetdomainname.c: Likewise.
11549
11550 2006-10-28  Eric Blake  <ebb9@byu.net>
11551
11552         * lib/xstrndup.c: Assume config.h.
11553
11554 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
11555
11556         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
11557         stat-macros.h is now for our own macros, whereas stat_h is for
11558         macros in the <sys/stat.h> name space.
11559         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
11560         (STAT_MACROS_H): Remove.
11561         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
11562         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
11563         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
11564         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
11565         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
11566         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
11567         Move these macros to ...
11568         * lib/stat_.h: here.  Don't include stat-macros.h.
11569         * lib/canonicalize.c: Don't include stat-macros.h.
11570         * lib/chown.c: Likewise.
11571         * lib/euidaccess.c: Likewise.
11572         * lib/file-type.c: Likewise.
11573         * lib/filemode.c: Likewise.
11574         * lib/glob.c: Likewise.
11575         * lib/isapipe.c: Likewise.
11576         * lib/lchown.c: Likewise.
11577         * lib/lstat.c: Likewise.
11578         * lib/mkdir-p.c: Likewise.
11579         * lib/rmdir.c: Likewise.
11580         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
11581         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
11582         unless mkdir isn't declared, to speed up 'configure'.
11583         Always create sys/stat.h, since it's unlikely any real sys/stat.h
11584         would define all the S_* symbols.
11585         * modules/canonicalize (Depends-on):
11586         Depend on sys_stat, not stat-macros.
11587         * modules/chown: Likewise.
11588         * modules/euidaccess: Likewise.
11589         * modules/filemode: Likewise.
11590         * modules/file-type: Likewise.
11591         * modules/glob: Likewise.
11592         * modules/isapipe: Likewise.
11593         * modules/lchown: Likewise.
11594         * modules/lstat: Likewise.
11595         * modules/mkancesdirs: Likewise.
11596         * modules/rmdir: Likewise.
11597         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
11598         * modules/modechange: Likewise.
11599         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
11600         (configure.ac): Remove gl_STAT_MACROS.
11601         * modules/sys_stat (Depends-on): Remove stat-macros.
11602
11603 2006-10-27  Bruno Haible  <bruno@clisp.org>
11604
11605         * m4/signed.m4: Remove file.
11606         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
11607         invocation.
11608         * modules/vasnprintf (Files): Remove m4/signed.m4.
11609
11610 2006-10-27  Bruno Haible  <bruno@clisp.org>
11611
11612         Update to GNU gettext 0.16.
11613         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
11614         m4/inttypes-h.m4, m4/signed.m4.
11615         * m4/gettext.m4: Update to GNU gettext 0.16.
11616         * m4/intl.m4: New file, from GNU gettext.
11617         * m4/intldir.m4: New file, from GNU gettext.
11618         * config/srclist.txt: Update
11619
11620 2006-10-27  Eric Blake  <ebb9@byu.net>
11621
11622         * MODULES.html.sh: Document tempname.
11623         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
11624         dependencies.
11625         (Files): Move lib/tempname.c...
11626         * modules/tempname: ...to this new module.
11627         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
11628         (gl_PREREQ_TEMPNAME): Move...
11629         * m4/tempname.m4: ...to this new file.
11630         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
11631         * modules/sys_stat (Depends-on): Add stat-macros.
11632         * lib/stat_.h (includes): Pick up stat macros.
11633         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
11634         if stat macros are broken.
11635         * lib/tempname.c (includes): No need to include "stat-macros.h".
11636         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
11637         (direxists, __path_search) [!_LIBC]: Don't compile these in
11638         gnulib; the tmpdir module covers that.
11639         * lib/tempname.h: New file.
11640
11641 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
11642
11643         * COPYING: Explain how gnulib-tool converts licence headers.
11644         Almost all wording by Eric Blake.
11645
11646 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
11647
11648         * lib/mbchar.h (is_basic_table): Make read-only.
11649         * lib/mbchar.c (is_basic_table): Likewise.
11650         Reported by John Darrington.
11651
11652 2006-10-25  Bruno Haible  <bruno@clisp.org>
11653
11654         * lib/progname.h (set_program_name): Undefine before defining.
11655
11656 2006-10-25  Bruno Haible  <bruno@clisp.org>
11657
11658         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
11659         false for non-gcc C++ compilers.
11660         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
11661
11662 2006-10-24  Bruno Haible  <bruno@clisp.org>
11663
11664         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
11665         iconv implementations like Irix iconv.
11666
11667 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11668
11669         * modules/vararrays: New file.
11670         * m4/vararrays.m4: New file, taken from diffutils.
11671         * MODULES.html.sh: New module vararrays.
11672
11673 2006-10-24  Karl Berry  <karl@gnu.org>
11674
11675         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
11676         Don't call GNU Unix.
11677
11678 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11679
11680         * users.txt: Add Libtool.
11681
11682         Sync from Libtool:
11683
11684         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11685
11686         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
11687         to gnulib's policy of including config.h unconditionally.
11688
11689 2006-10-24  Bruno Haible  <bruno@clisp.org>
11690
11691         * modules/wcwidth (Files): Add m4/wint_t.m4.
11692         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
11693         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
11694
11695 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11696
11697         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
11698         to pacify GCC with some -W flags enabled.  Problem reported by
11699         Bruno Haible.
11700
11701 2006-10-24  Jim Meyering  <jim@meyering.net>
11702
11703         * MODULES.html.sh: Remove uinttostr.  It's not a module.
11704         Reported by Karl Berry.
11705
11706 2006-10-23  Bruno Haible  <bruno@clisp.org>
11707
11708         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
11709
11710 2006-10-24  Bruno Haible  <bruno@clisp.org>
11711
11712         * lib/gl_list.h: Use C comment style, not C++ comment style.
11713
11714 2006-10-23  Eric Blake  <ebb9@byu.net>
11715
11716         * lib/getaddrinfo.c (includes): Add missing include.
11717
11718 2006-10-23  Bruno Haible  <bruno@clisp.org>
11719             Paul Eggert  <eggert@cs.ucla.edu>
11720
11721         Ability to rename obstack_free.
11722         * lib/obstack.h (__obstack_free): New macro. Declare instead of
11723         obstack_free.
11724         (obstack_free): Invoke the __obstack_free macro.
11725         * lib/obstack.c (obstack_free): Use __obstack_free macro.
11726
11727 2006-10-23  Bruno Haible  <bruno@clisp.org>
11728             Paul Eggert  <eggert@cs.ucla.edu>
11729
11730         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
11731         __argc, __argv from the declaration. (They are defined as macros on
11732         mingw.)
11733
11734 2006-10-22  Bruno Haible  <bruno@clisp.org>
11735
11736         * doc/gnulib-intro.texi: New file.
11737         * doc/gnulib.texi: Include it.
11738
11739 2006-10-21  Bruno Haible  <bruno@clisp.org>
11740
11741         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
11742         "Introduction", "Miscellanous Notes", "Particular Modules".
11743
11744 2006-10-21  Bruno Haible  <bruno@clisp.org>
11745
11746         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
11747         Change mostlyclean-local rule to avoid sh syntax error from bash
11748         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
11749
11750 2006-10-23  Jim Meyering  <jim@meyering.net>
11751
11752         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
11753         in place of snprintf.
11754
11755         * modules/inttostr (Files): Add lib/uinttostr.c.
11756         * lib/uinttostr.c (inttostr): New file/function.
11757         * lib/inttostr.h (uinttostr): Declare.
11758         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
11759         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
11760         Add uinttostr.
11761         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
11762
11763 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11764
11765         * lib/canonicalize.c (ELOOP): Define if not already defined.
11766         Problem reported by Bruno Haible in
11767         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
11768
11769 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
11770
11771         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
11772         Problem reported by Perry Smith and Ville Laurikari.
11773
11774         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
11775         uses.
11776
11777 2006-10-19  Bruno Haible  <bruno@clisp.org>
11778
11779         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
11780         for mingw.
11781
11782 2006-10-19  Bruno Haible  <bruno@clisp.org>
11783
11784         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
11785         Needed for mingw.
11786
11787 2006-10-19  Bruno Haible  <bruno@clisp.org>
11788
11789         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
11790
11791 2006-10-19  Bruno Haible  <bruno@clisp.org>
11792
11793         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
11794         it.
11795
11796 2006-10-19  Bruno Haible  <bruno@clisp.org>
11797
11798         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
11799         invocation.
11800
11801 2006-10-19  Bruno Haible  <bruno@clisp.org>
11802
11803         * gnulib-tool (func_create_testdir): Don't include ftruncate and
11804         mountlist by default.
11805
11806 2006-10-16  Bruno Haible  <bruno@clisp.org>
11807
11808         * lib/c-strstr.c: Include c-strstr.h.
11809
11810 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
11811
11812         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
11813         in a slash.
11814
11815 2006-10-18  Bruno Haible  <bruno@clisp.org>
11816
11817         * lib/lock.h [C++]: Wrap definitions in extern "C".
11818
11819 2006-10-18  Bruno Haible  <bruno@clisp.org>
11820
11821         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
11822         gl_LIBOBJS list.
11823
11824 2006-10-18  Bruno Haible  <bruno@clisp.org>
11825
11826         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
11827
11828 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
11829
11830         * lib/xstrtol.h: Include gettext.h.
11831         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
11832         Problem reported by Eric Blake.
11833         * modules/xstrtol (Depends-on): Add gettext-h.
11834
11835 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
11836
11837         * lib/strftime.c (advance): New macro.
11838         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
11839         incomplete type, so you can't add 0 to it.  Problem and patch
11840         reported by Eelco Dolstra for dietlibc.
11841
11842 2006-10-18  Jim Meyering  <jim@meyering.net>
11843
11844         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
11845         type for a local, and rename it: s/up/user_proc/.
11846
11847 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
11848
11849         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
11850         READ_UTMP_USER_PROCESS.
11851         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
11852
11853 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
11854
11855         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
11856         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
11857
11858 2006-10-17  Eric Blake  <ebb9@byu.net>
11859
11860         * lib/sigprocmask.c (sigprocmask): Fix typo.
11861
11862         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
11863
11864         * modules/clean-temp (Makefile.am): Don't add to make output...
11865         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
11866         config.h.
11867
11868 2006-10-17  Bruno Haible  <bruno@clisp.org>
11869
11870         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
11871         differently if DEFAULT_TEXT_DOMAIN is set.
11872
11873 2006-10-16  Bruno Haible  <bruno@clisp.org>
11874
11875         * lib/clean-temp.c: Include fwriteerror.h.
11876
11877 2006-10-16  Bruno Haible  <bruno@clisp.org>
11878
11879         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
11880
11881 2006-10-16  Bruno Haible  <bruno@clisp.org>
11882
11883         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
11884         * lib/sigprocmask.h: Include <sys/types.h>.
11885         (sigset_t): Use the system's definition if present.
11886
11887 2006-10-17  Eric Blake  <ebb9@byu.net>
11888
11889         * lib/xvasprintf.c (includes): Assume config.h.
11890         * lib/xasprintf.c (includes): Likewise.
11891
11892 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
11893
11894         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
11895         at least as wide as intmax_t.
11896
11897 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
11898
11899         (Imported from Automake.)
11900         * build-aux/gnupload: Update to version 1.1 of directive file.
11901
11902 2006-10-16  Eric Blake  <ebb9@byu.net>
11903
11904         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
11905         match Automake 1.10a.
11906
11907 2006-10-14  Bruno Haible  <bruno@clisp.org>
11908
11909         * modules/sigprocmask: New file.
11910         * lib/sigprocmask.h: New file.
11911         * lib/sigprocmask.c: New file.
11912         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
11913         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
11914         request sigprocmask.o.
11915         (gl_PREREQ_SIGPROCMASK): New macro.
11916         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
11917         (Depends-on): Add sigprocmask.
11918         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
11919         gt_SIGNALBLOCKING. Test for 'raise' only once.
11920         * lib/fatal-signal.c: Include sigprocmask.h.
11921         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
11922         unblock_fatal_signals): Define always.
11923         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11924         sigprocmask.
11925
11926 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
11927
11928         Sync from Automake.
11929         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
11930         which incorrectly sets the mode of an existing destination
11931         directory.  In some cases the unpatched install-sh could do the
11932         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
11933         system.  We hope this is rare in practice, but it's clearly worth
11934         fixing.  Problem reported by Alex Unleashed in
11935         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
11936         Also, don't bother to check for -m bugs unless we're using -m;
11937         suggested by Stepan Kasal.
11938
11939 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11940
11941         Sync from Automake.
11942         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
11943         `-c' flag, so they appear at the same position as in %FASTDEP%
11944         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
11945         which ignores unknown options only after the first non-option.
11946         Bug report against M4 by Nelson H. F. Beebe.
11947
11948 2006-10-13  Jim Meyering  <jim@meyering.net>
11949
11950         Fix a bug in yesterday's change.
11951         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
11952         p->fts_statp->st_dev would be used uninitialized.
11953         Ensures that we always call fts_stat on the very first entry.
11954         Miklos Szeredi reported that find -xdev stopped working.
11955
11956 2006-10-12  Bruno Haible  <bruno@clisp.org>
11957
11958         * gnulib-tool (func_get_automake_snippet): Append an automatically
11959         computed EXTRA_DIST augmentation.
11960         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
11961         * modules/alloca-opt (Makefile.am): Likewise.
11962         * modules/allocsa (Makefile.am): Likewise.
11963         * modules/arcfour (Makefile.am): Likewise.
11964         * modules/arctwo (Makefile.am): Likewise.
11965         * modules/argmatch (Makefile.am): Likewise.
11966         * modules/argz (Makefile.am): Likewise.
11967         * modules/atexit (Makefile.am): Likewise.
11968         * modules/backupfile (Makefile.am): Likewise.
11969         * modules/byteswap (Makefile.am): Likewise.
11970         * modules/c-strtod (Makefile.am): Likewise.
11971         * modules/c-strtold (Makefile.am): Likewise.
11972         * modules/calloc (Makefile.am): Likewise.
11973         * modules/canon-host (Makefile.am): Likewise.
11974         * modules/canonicalize (Makefile.am): Likewise.
11975         * modules/chdir-long (Makefile.am): Likewise.
11976         * modules/chdir-safer (Makefile.am): Likewise.
11977         * modules/check-version (Makefile.am): Likewise.
11978         * modules/chown (Makefile.am): Likewise.
11979         * modules/cloexec (Makefile.am): Likewise.
11980         * modules/close-stream (Makefile.am): Likewise.
11981         * modules/closeout (Makefile.am): Likewise.
11982         * modules/crc (Makefile.am): Likewise.
11983         * modules/csharpexec (Makefile.am): Likewise.
11984         * modules/cycle-check (Makefile.am): Likewise.
11985         * modules/des (Makefile.am): Likewise.
11986         * modules/dev-ino (Makefile.am): Likewise.
11987         * modules/dirfd (Makefile.am): Likewise.
11988         * modules/dirname (Makefile.am): Likewise.
11989         * modules/dup2 (Makefile.am): Likewise.
11990         * modules/eealloc (Makefile.am): Likewise.
11991         * modules/error (Makefile.am): Likewise.
11992         * modules/euidaccess (Makefile.am): Likewise.
11993         * modules/exclude (Makefile.am): Likewise.
11994         * modules/exitfail (Makefile.am): Likewise.
11995         * modules/fcntl-safer (Makefile.am): Likewise.
11996         * modules/fcntl (Makefile.am): Likewise.
11997         * modules/file-type (Makefile.am): Likewise.
11998         * modules/fileblocks (Makefile.am): Likewise.
11999         * modules/filemode (Makefile.am): Likewise.
12000         * modules/filenamecat (Makefile.am): Likewise.
12001         * modules/fnmatch (Makefile.am): Likewise.
12002         * modules/fopen-safer (Makefile.am): Likewise.
12003         * modules/fpending (Makefile.am): Likewise.
12004         * modules/fprintftime (Makefile.am): Likewise.
12005         * modules/free (Makefile.am): Likewise.
12006         * modules/fsusage (Makefile.am): Likewise.
12007         * modules/ftruncate (Makefile.am): Likewise.
12008         * modules/fts (Makefile.am): Likewise.
12009         * modules/gc-arcfour (Makefile.am): Likewise.
12010         * modules/gc-des (Makefile.am): Likewise.
12011         * modules/gc-hmac-md5 (Makefile.am): Likewise.
12012         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
12013         * modules/gc-md4 (Makefile.am): Likewise.
12014         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
12015         * modules/gc-sha1 (Makefile.am): Likewise.
12016         * modules/gc (Makefile.am): Likewise.
12017         * modules/getaddrinfo (Makefile.am): Likewise.
12018         * modules/getcwd (Makefile.am): Likewise.
12019         * modules/getdelim (Makefile.am): Likewise.
12020         * modules/getdomainname (Makefile.am): Likewise.
12021         * modules/getgroups (Makefile.am): Likewise.
12022         * modules/gethostname (Makefile.am): Likewise.
12023         * modules/gethrxtime (Makefile.am): Likewise.
12024         * modules/getline (Makefile.am): Likewise.
12025         * modules/getloadavg (Makefile.am): Likewise.
12026         * modules/getlogin_r (Makefile.am): Likewise.
12027         * modules/getndelim2 (Makefile.am): Likewise.
12028         * modules/getopt (Makefile.am): Likewise.
12029         * modules/getpagesize (Makefile.am): Likewise.
12030         * modules/getpass-gnu (Makefile.am): Likewise.
12031         * modules/getpass (Makefile.am): Likewise.
12032         * modules/getsubopt (Makefile.am): Likewise.
12033         * modules/gettime (Makefile.am): Likewise.
12034         * modules/gettimeofday (Makefile.am): Likewise.
12035         * modules/getugroups (Makefile.am): Likewise.
12036         * modules/getusershell (Makefile.am): Likewise.
12037         * modules/glob (Makefile.am): Likewise.
12038         * modules/group-member (Makefile.am): Likewise.
12039         * modules/hard-locale (Makefile.am): Likewise.
12040         * modules/hash (Makefile.am): Likewise.
12041         * modules/hmac-md5 (Makefile.am): Likewise.
12042         * modules/hmac-sha1 (Makefile.am): Likewise.
12043         * modules/human (Makefile.am): Likewise.
12044         * modules/idcache (Makefile.am): Likewise.
12045         * modules/imaxabs (Makefile.am): Likewise.
12046         * modules/imaxdiv (Makefile.am): Likewise.
12047         * modules/inet_ntop (Makefile.am): Likewise.
12048         * modules/inet_pton (Makefile.am): Likewise.
12049         * modules/intprops (Makefile.am): Likewise.
12050         * modules/inttostr (Makefile.am): Likewise.
12051         * modules/inttypes (Makefile.am): Likewise.
12052         * modules/isapipe (Makefile.am): Likewise.
12053         * modules/javaversion (Makefile.am): Likewise.
12054         * modules/lchmod (Makefile.am): Likewise.
12055         * modules/lchown (Makefile.am): Likewise.
12056         * modules/localcharset (Makefile.am): Likewise.
12057         * modules/long-options (Makefile.am): Likewise.
12058         * modules/lstat (Makefile.am): Likewise.
12059         * modules/malloc (Makefile.am): Likewise.
12060         * modules/mathl (Makefile.am): Likewise.
12061         * modules/mbchar (Makefile.am): Likewise.
12062         * modules/md2 (Makefile.am): Likewise.
12063         * modules/md4 (Makefile.am): Likewise.
12064         * modules/md5 (Makefile.am): Likewise.
12065         * modules/memcasecmp (Makefile.am): Likewise.
12066         * modules/memchr (Makefile.am): Likewise.
12067         * modules/memcmp (Makefile.am): Likewise.
12068         * modules/memcoll (Makefile.am): Likewise.
12069         * modules/memcpy (Makefile.am): Likewise.
12070         * modules/memmem (Makefile.am): Likewise.
12071         * modules/memmove (Makefile.am): Likewise.
12072         * modules/mempcpy (Makefile.am): Likewise.
12073         * modules/memrchr (Makefile.am): Likewise.
12074         * modules/memset (Makefile.am): Likewise.
12075         * modules/memxor (Makefile.am): Likewise.
12076         * modules/mkancesdirs (Makefile.am): Likewise.
12077         * modules/mkdir-p (Makefile.am): Likewise.
12078         * modules/mkdir (Makefile.am): Likewise.
12079         * modules/mkdtemp (Makefile.am): Likewise.
12080         * modules/mkstemp (Makefile.am): Likewise.
12081         * modules/mktime (Makefile.am): Likewise.
12082         * modules/modechange (Makefile.am): Likewise.
12083         * modules/mountlist (Makefile.am): Likewise.
12084         * modules/nanosleep (Makefile.am): Likewise.
12085         * modules/obstack (Makefile.am): Likewise.
12086         * modules/openat (Makefile.am): Likewise.
12087         * modules/pagealign_alloc (Makefile.am): Likewise.
12088         * modules/pathmax (Makefile.am): Likewise.
12089         * modules/physmem (Makefile.am): Likewise.
12090         * modules/poll (Makefile.am): Likewise.
12091         * modules/posixtm (Makefile.am): Likewise.
12092         * modules/posixver (Makefile.am): Likewise.
12093         * modules/putenv (Makefile.am): Likewise.
12094         * modules/quote (Makefile.am): Likewise.
12095         * modules/quotearg (Makefile.am): Likewise.
12096         * modules/raise (Makefile.am): Likewise.
12097         * modules/read-file (Makefile.am): Likewise.
12098         * modules/readline (Makefile.am): Likewise.
12099         * modules/readlink (Makefile.am): Likewise.
12100         * modules/readtokens (Makefile.am): Likewise.
12101         * modules/readutmp (Makefile.am): Likewise.
12102         * modules/realloc (Makefile.am): Likewise.
12103         * modules/regex (Makefile.am): Likewise.
12104         * modules/rename-dest-slash (Makefile.am): Likewise.
12105         * modules/rename (Makefile.am): Likewise.
12106         * modules/rijndael (Makefile.am): Likewise.
12107         * modules/rmdir (Makefile.am): Likewise.
12108         * modules/rpmatch (Makefile.am): Likewise.
12109         * modules/safe-read (Makefile.am): Likewise.
12110         * modules/safe-write (Makefile.am): Likewise.
12111         * modules/same-inode (Makefile.am): Likewise.
12112         * modules/same (Makefile.am): Likewise.
12113         * modules/save-cwd (Makefile.am): Likewise.
12114         * modules/savedir (Makefile.am): Likewise.
12115         * modules/setenv (Makefile.am): Likewise.
12116         * modules/settime (Makefile.am): Likewise.
12117         * modules/sha1 (Makefile.am): Likewise.
12118         * modules/sig2str (Makefile.am): Likewise.
12119         * modules/snprintf (Makefile.am): Likewise.
12120         * modules/stat-macros (Makefile.am): Likewise.
12121         * modules/stat-time (Makefile.am): Likewise.
12122         * modules/stdbool (Makefile.am): Likewise.
12123         * modules/stdint (Makefile.am): Likewise.
12124         * modules/stdlib-safer (Makefile.am): Likewise.
12125         * modules/stpcpy (Makefile.am): Likewise.
12126         * modules/stpncpy (Makefile.am): Likewise.
12127         * modules/strcase (Makefile.am): Likewise.
12128         * modules/strcasestr (Makefile.am): Likewise.
12129         * modules/strchrnul (Makefile.am): Likewise.
12130         * modules/strcspn (Makefile.am): Likewise.
12131         * modules/strdup (Makefile.am): Likewise.
12132         * modules/strerror (Makefile.am): Likewise.
12133         * modules/strftime (Makefile.am): Likewise.
12134         * modules/strndup (Makefile.am): Likewise.
12135         * modules/strnlen (Makefile.am): Likewise.
12136         * modules/strpbrk (Makefile.am): Likewise.
12137         * modules/strsep (Makefile.am): Likewise.
12138         * modules/strstr (Makefile.am): Likewise.
12139         * modules/strtod (Makefile.am): Likewise.
12140         * modules/strtoimax (Makefile.am): Likewise.
12141         * modules/strtok_r (Makefile.am): Likewise.
12142         * modules/strtol (Makefile.am): Likewise.
12143         * modules/strtoll (Makefile.am): Likewise.
12144         * modules/strtoul (Makefile.am): Likewise.
12145         * modules/strtoull (Makefile.am): Likewise.
12146         * modules/strtoumax (Makefile.am): Likewise.
12147         * modules/strverscmp (Makefile.am): Likewise.
12148         * modules/sys_socket (Makefile.am): Likewise.
12149         * modules/sys_stat (Makefile.am): Likewise.
12150         * modules/sysexits (Makefile.am): Likewise.
12151         * modules/time_r (Makefile.am): Likewise.
12152         * modules/timegm (Makefile.am): Likewise.
12153         * modules/timespec (Makefile.am): Likewise.
12154         * modules/tmpfile-safer (Makefile.am): Likewise.
12155         * modules/trim (Makefile.am): Likewise.
12156         * modules/unistd-safer (Makefile.am): Likewise.
12157         * modules/unlinkdir (Makefile.am): Likewise.
12158         * modules/unlocked-io (Makefile.am): Likewise.
12159         * modules/userspec (Makefile.am): Likewise.
12160         * modules/utime (Makefile.am): Likewise.
12161         * modules/utimecmp (Makefile.am): Likewise.
12162         * modules/utimens (Makefile.am): Likewise.
12163         * modules/vasnprintf (Makefile.am): Likewise.
12164         * modules/vasprintf (Makefile.am): Likewise.
12165         * modules/vsnprintf (Makefile.am): Likewise.
12166         * modules/xalloc (Makefile.am): Likewise.
12167         * modules/xgetcwd (Makefile.am): Likewise.
12168         * modules/xnanosleep (Makefile.am): Likewise.
12169         * modules/xreadlink (Makefile.am): Likewise.
12170         * modules/xstrtod (Makefile.am): Likewise.
12171         * modules/xstrtol (Makefile.am): Likewise.
12172         * modules/xstrtold (Makefile.am): Likewise.
12173         * modules/yesno (Makefile.am): Likewise.
12174         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
12175
12176 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12177
12178         * modules/error (Makefile.am): Distribute files through
12179         EXTRA_DIST, not lib_SOURCES.
12180
12181 2006-10-12  Eric Blake  <ebb9@byu.net>
12182
12183         * modules/error (Makefile.am): Distribute files in /lib.
12184         * modules/obstack (Makefile.am): Likewise.
12185
12186 2006-10-12  Bruno Haible  <bruno@clisp.org>
12187
12188         * modules/acl (Makefile.am): Distribute all files in lib/ through
12189         EXTRA_DIST.
12190         * modules/arcfour (Makefile.am): Likewise.
12191         * modules/arctwo (Makefile.am): Likewise.
12192         * modules/argmatch (Makefile.am): Likewise.
12193         * modules/argz (Makefile.am): Likewise.
12194         * modules/atexit (Makefile.am): Likewise.
12195         * modules/backupfile (Makefile.am): Likewise.
12196         * modules/c-strtod (Makefile.am): Likewise.
12197         * modules/c-strtold (Makefile.am): Likewise.
12198         * modules/calloc (Makefile.am): Likewise.
12199         * modules/canon-host (Makefile.am): Likewise.
12200         * modules/canonicalize (Makefile.am): Likewise.
12201         * modules/chdir-long (Makefile.am): Likewise.
12202         * modules/chdir-safer (Makefile.am): Likewise.
12203         * modules/check-version (Makefile.am): Likewise.
12204         * modules/chown (Makefile.am): Likewise.
12205         * modules/cloexec (Makefile.am): Likewise.
12206         * modules/close-stream (Makefile.am): Likewise.
12207         * modules/closeout (Makefile.am): Likewise.
12208         * modules/crc (Makefile.am): Likewise.
12209         * modules/cycle-check (Makefile.am): Likewise.
12210         * modules/des (Makefile.am): Likewise.
12211         * modules/dirfd (Makefile.am): Likewise.
12212         * modules/dirname (Makefile.am): Likewise.
12213         * modules/dup2 (Makefile.am): Likewise.
12214         * modules/euidaccess (Makefile.am): Likewise.
12215         * modules/exclude (Makefile.am): Likewise.
12216         * modules/exitfail (Makefile.am): Likewise.
12217         * modules/fcntl-safer (Makefile.am): Likewise.
12218         * modules/file-type (Makefile.am): Likewise.
12219         * modules/fileblocks (Makefile.am): Likewise.
12220         * modules/filemode (Makefile.am): Likewise.
12221         * modules/filenamecat (Makefile.am): Likewise.
12222         * modules/fnmatch (Makefile.am): Likewise.
12223         * modules/fopen-safer (Makefile.am): Likewise.
12224         * modules/fpending (Makefile.am): Likewise.
12225         * modules/fprintftime (Makefile.am): Likewise.
12226         * modules/free (Makefile.am): Likewise.
12227         * modules/fsusage (Makefile.am): Likewise.
12228         * modules/ftruncate (Makefile.am): Likewise.
12229         * modules/fts (Makefile.am): Likewise.
12230         * modules/gc (Makefile.am): Likewise.
12231         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
12232         * modules/getaddrinfo (Makefile.am): Likewise.
12233         * modules/getcwd (Makefile.am): Likewise.
12234         * modules/getdelim (Makefile.am): Likewise.
12235         * modules/getdomainname (Makefile.am): Likewise.
12236         * modules/getgroups (Makefile.am): Likewise.
12237         * modules/gethostname (Makefile.am): Likewise.
12238         * modules/gethrxtime (Makefile.am): Likewise.
12239         * modules/getline (Makefile.am): Likewise.
12240         * modules/getloadavg (Makefile.am): Likewise.
12241         * modules/getlogin_r (Makefile.am): Likewise.
12242         * modules/getopt (Makefile.am): Likewise.
12243         * modules/getpass (Makefile.am): Likewise.
12244         * modules/getpass-gnu (Makefile.am): Likewise.
12245         * modules/getsubopt (Makefile.am): Likewise.
12246         * modules/gettime (Makefile.am): Likewise.
12247         * modules/gettimeofday (Makefile.am): Likewise.
12248         * modules/getugroups (Makefile.am): Likewise.
12249         * modules/getusershell (Makefile.am): Likewise.
12250         * modules/glob (Makefile.am): Likewise.
12251         * modules/group-member (Makefile.am): Likewise.
12252         * modules/hard-locale (Makefile.am): Likewise.
12253         * modules/hash (Makefile.am): Likewise.
12254         * modules/hmac-md5 (Makefile.am): Likewise.
12255         * modules/hmac-sha1 (Makefile.am): Likewise.
12256         * modules/human (Makefile.am): Likewise.
12257         * modules/idcache (Makefile.am): Likewise.
12258         * modules/imaxabs (Makefile.am): Likewise.
12259         * modules/imaxdiv (Makefile.am): Likewise.
12260         * modules/inet_ntop (Makefile.am): Likewise.
12261         * modules/inet_pton (Makefile.am): Likewise.
12262         * modules/inttostr (Makefile.am): Likewise.
12263         * modules/isapipe (Makefile.am): Likewise.
12264         * modules/lchown (Makefile.am): Likewise.
12265         * modules/long-options (Makefile.am): Likewise.
12266         * modules/lstat (Makefile.am): Likewise.
12267         * modules/malloc (Makefile.am): Likewise.
12268         * modules/mathl (Makefile.am): Likewise.
12269         * modules/mbchar (Makefile.am): Likewise.
12270         * modules/md2 (Makefile.am): Likewise.
12271         * modules/md4 (Makefile.am): Likewise.
12272         * modules/md5 (Makefile.am): Likewise.
12273         * modules/memcasecmp (Makefile.am): Likewise.
12274         * modules/memchr (Makefile.am): Likewise.
12275         * modules/memcmp (Makefile.am): Likewise.
12276         * modules/memcoll (Makefile.am): Likewise.
12277         * modules/memcpy (Makefile.am): Likewise.
12278         * modules/memmem (Makefile.am): Likewise.
12279         * modules/memmove (Makefile.am): Likewise.
12280         * modules/mempcpy (Makefile.am): Likewise.
12281         * modules/memrchr (Makefile.am): Likewise.
12282         * modules/memset (Makefile.am): Likewise.
12283         * modules/memxor (Makefile.am): Likewise.
12284         * modules/mkancesdirs (Makefile.am): Likewise.
12285         * modules/mkdir (Makefile.am): Likewise.
12286         * modules/mkdir-p (Makefile.am): Likewise.
12287         * modules/mkdtemp (Makefile.am): Likewise.
12288         * modules/mkstemp (Makefile.am): Likewise.
12289         * modules/mktime (Makefile.am): Likewise.
12290         * modules/modechange (Makefile.am): Likewise.
12291         * modules/mountlist (Makefile.am): Likewise.
12292         * modules/nanosleep (Makefile.am): Likewise.
12293         * modules/openat (Makefile.am): Likewise.
12294         * modules/pagealign_alloc (Makefile.am): Likewise.
12295         * modules/physmem (Makefile.am): Likewise.
12296         * modules/poll (Makefile.am): Likewise.
12297         * modules/posixtm (Makefile.am): Likewise.
12298         * modules/posixver (Makefile.am): Likewise.
12299         * modules/putenv (Makefile.am): Likewise.
12300         * modules/quote (Makefile.am): Likewise.
12301         * modules/quotearg (Makefile.am): Likewise.
12302         * modules/raise (Makefile.am): Likewise.
12303         * modules/read-file (Makefile.am): Likewise.
12304         * modules/readline (Makefile.am): Likewise.
12305         * modules/readlink (Makefile.am): Likewise.
12306         * modules/readtokens (Makefile.am): Likewise.
12307         * modules/readutmp (Makefile.am): Likewise.
12308         * modules/realloc (Makefile.am): Likewise.
12309         * modules/regex (Makefile.am): Likewise.
12310         * modules/rename (Makefile.am): Likewise.
12311         * modules/rename-dest-slash (Makefile.am): Likewise.
12312         * modules/rijndael (Makefile.am): Likewise.
12313         * modules/rmdir (Makefile.am): Likewise.
12314         * modules/rpmatch (Makefile.am): Likewise.
12315         * modules/safe-read (Makefile.am): Likewise.
12316         * modules/safe-write (Makefile.am): Likewise.
12317         * modules/same (Makefile.am): Likewise.
12318         * modules/save-cwd (Makefile.am): Likewise.
12319         * modules/savedir (Makefile.am): Likewise.
12320         * modules/setenv (Makefile.am): Likewise.
12321         * modules/settime (Makefile.am): Likewise.
12322         * modules/sha1 (Makefile.am): Likewise.
12323         * modules/sig2str (Makefile.am): Likewise.
12324         * modules/snprintf (Makefile.am): Likewise.
12325         * modules/stdlib-safer (Makefile.am): Likewise.
12326         * modules/stpcpy (Makefile.am): Likewise.
12327         * modules/stpncpy (Makefile.am): Likewise.
12328         * modules/strcase (Makefile.am): Likewise.
12329         * modules/strcasestr (Makefile.am): Likewise.
12330         * modules/strchrnul (Makefile.am): Likewise.
12331         * modules/strcspn (Makefile.am): Likewise.
12332         * modules/strdup (Makefile.am): Likewise.
12333         * modules/strerror (Makefile.am): Likewise.
12334         * modules/strftime (Makefile.am): Likewise.
12335         * modules/strndup (Makefile.am): Likewise.
12336         * modules/strnlen (Makefile.am): Likewise.
12337         * modules/strpbrk (Makefile.am): Likewise.
12338         * modules/strsep (Makefile.am): Likewise.
12339         * modules/strstr (Makefile.am): Likewise.
12340         * modules/strtod (Makefile.am): Likewise.
12341         * modules/strtoimax (Makefile.am): Likewise.
12342         * modules/strtok_r (Makefile.am): Likewise.
12343         * modules/strtol (Makefile.am): Likewise.
12344         * modules/strtoll (Makefile.am): Likewise.
12345         * modules/strtoul (Makefile.am): Likewise.
12346         * modules/strtoull (Makefile.am): Likewise.
12347         * modules/strtoumax (Makefile.am): Likewise.
12348         * modules/strverscmp (Makefile.am): Likewise.
12349         * modules/time_r (Makefile.am): Likewise.
12350         * modules/timegm (Makefile.am): Likewise.
12351         * modules/tmpfile-safer (Makefile.am): Likewise.
12352         * modules/unistd-safer (Makefile.am): Likewise.
12353         * modules/unlinkdir (Makefile.am): Likewise.
12354         * modules/userspec (Makefile.am): Likewise.
12355         * modules/utime (Makefile.am): Likewise.
12356         * modules/utimecmp (Makefile.am): Likewise.
12357         * modules/utimens (Makefile.am): Likewise.
12358         * modules/vasnprintf (Makefile.am): Likewise.
12359         * modules/vasprintf (Makefile.am): Likewise.
12360         * modules/vsnprintf (Makefile.am): Likewise.
12361         * modules/xalloc (Makefile.am): Likewise.
12362         * modules/xgetcwd (Makefile.am): Likewise.
12363         * modules/xnanosleep (Makefile.am): Likewise.
12364         * modules/xreadlink (Makefile.am): Likewise.
12365         * modules/xstrtod (Makefile.am): Likewise.
12366         * modules/xstrtol (Makefile.am): Likewise.
12367         * modules/xstrtold (Makefile.am): Likewise.
12368         * modules/yesno (Makefile.am): Likewise.
12369
12370 2006-10-12  Jim Meyering  <jim@meyering.net>
12371
12372         * m4/getloadavg.m4: Revert the change below.
12373
12374         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
12375         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
12376         fail with a symlink, which is what coreutils' ./bootstrap now
12377         creates by default.
12378
12379 2006-10-12  Bruno Haible  <bruno@clisp.org>
12380
12381         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
12382         mingw.
12383         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
12384         MSVC and mingw explicitly.
12385
12386 2006-10-11  Simon Josefsson  <jas@extundo.com>
12387             Bruno Haible  <bruno@clisp.org>
12388
12389         Add support for multiple gnulib-tool invocations in the scope of a
12390         single configure.ac file.
12391         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
12392         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
12393         with the same contents as the _LIBADD variable.
12394         (func_emit_initmacro_start, func_emit_initmacro_end,
12395         func_emit_initmacro_done): New functions.
12396         (func_import, func_create_testdir): Invoke them. Allow the identifiers
12397         gl_LIBOBJS and gl_LTLIBOBJS.
12398
12399 2006-10-11  Bruno Haible  <bruno@clisp.org>
12400
12401         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
12402         (func_create_testdir): Don't create po/Makefile.am, don't invoke
12403         autoreconf. Instead, invoke autopoint explicitly but move back the
12404         *.m4 files from gnulib.
12405
12406 2006-10-11  Bruno Haible  <bruno@clisp.org>
12407
12408         * gnulib-tool (func_usage): Make module names after --create-testdir
12409         optional.
12410         (func_create_testdir): If no module was specified, use nearly all
12411         modules.
12412
12413 2006-10-12  Jim Meyering  <jim@meyering.net>
12414
12415         Big performance improvement for fts-based tools that use FTS_NOSTAT.
12416         Avoid spurious inode-mismatch problems on non-POSIX file systems.
12417         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
12418         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
12419         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
12420         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
12421         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
12422         (fts_set_stat_required): New function.
12423         (fts_open): Defer the calls to fts_stat, if possible or requested.
12424         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
12425         into fts_stat itself.
12426         (fts_read): Perform any required (deferred) fts_stat call.
12427         (fts_build): Likewise, for the directory we're about to open and read.
12428         In the readdir loop, carefully decide whether each entry will require
12429         an eventual call to fts_stat, using dirent.d_type info if available.
12430         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
12431         a command line argument into this function.  Update all callers.
12432         Map a return value of FTS_DOT to FTS_D for a command line argument.
12433         * modules/fts (Depends-on): Add d-type.  Alphabetize.
12434         Thanks to Miklos Szeredi for his tenacity and for the initial
12435         bug report about "find" failing on a FUSE-based file system.
12436
12437         * lib/fts.c (fts_open): Use consistent indentation.
12438
12439 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12440
12441         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
12442         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
12443         reported by Jim Meyering.  All uses of cache variables renamed
12444         to match Autoconf's.
12445         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
12446         the other one.
12447
12448         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
12449         Fix misspelling in diagnostic.
12450
12451 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12452
12453         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
12454         defined.  Problem reported by Matthew Woehlke.
12455
12456         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
12457         Add support for Tandem NonStop R series.
12458         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
12459         Use new macro.
12460
12461         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
12462         (has_trailing_slash): Omit size arg; all callers changed.
12463         Omit 'inline', since it doesn't help performance and we'd
12464         need to configure it.
12465         Don't count //, ///, etc. as having a trailing slash.
12466         As a side effect, this removes a C99ism reported by Matthew Woehlke.
12467         (rpl_rename_dest_slash): On failure, use rename's errno rather
12468         than (in some cases) an incorrect or junk errno.
12469         Simplify code by removing need to compute length; this does
12470         cause it to make two passes instead of one over the file name,
12471         but it's worth it.
12472
12473         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
12474         change, since Autoconf's version may no longer be appropriate now
12475         that we are using CVS Autoconf's version.  Add support for Tandem.
12476
12477 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12478             Bruno Haible  <bruno@clisp.org>
12479
12480         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
12481         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
12482         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
12483         gl_AC_TYPE_LONG_LONG.
12484
12485         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
12486         instead of HAVE_LONG_LONG.
12487         * lib/printf-args.c (printf_fetchargs): Likewise.
12488         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
12489         * lib/vasnprintf.c (VASNPRINTF): Likewise.
12490         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
12491         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
12492         gl_AC_TYPE_LONG_LONG.
12493
12494 2006-10-11  Bruno Haible  <bruno@clisp.org>
12495
12496         * m4/longlong.m4: Add comments.
12497         * m4/ulonglong.m4: Likewise.
12498
12499 2006-10-10  Bruno Haible  <bruno@clisp.org>
12500
12501         Make it possible to #define stpcpy, strdup to aliases.
12502         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
12503         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
12504
12505 2006-10-10  Bruno Haible  <bruno@clisp.org>
12506
12507         Make it possible to #define gcd to an alias.
12508         * lib/gcd.c: Include config.h.
12509
12510 2006-10-10  Bruno Haible  <bruno@clisp.org>
12511
12512         Make it possible to #define c_isascii to an alias.
12513         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
12514         defined. Undefine the macros before defining them, to avoid gcc
12515         warnings.
12516         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
12517         define NO_C_CTYPE_MACROS early.
12518
12519 2006-10-10  Bruno Haible  <bruno@clisp.org>
12520
12521         Make it possible to #define set_program_name to an alias.
12522         * lib/progname.c: Don't undefine set_program_name; instead, undefine
12523         ENABLE_RELOCATABLE early.
12524
12525 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
12526
12527         Port to Tandem NSK OSS, which has 64-bit signed int but at most
12528         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
12529         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
12530         More generally, don't assume that 64-bit signed int is available
12531         if unsigned int is, and vice versa.
12532         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
12533         unsigned symbols, not on their signed counterparts.
12534         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
12535         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
12536         (UINT64_C, UINTMAX_C):
12537         Likewise.
12538         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
12539         unsigned counterparts.
12540         (Have_long_long, Unsigned): New macros.
12541         (Int): Renamed from INT.
12542         (strtoimax): Use the new macros.
12543         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
12544         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
12545         * modules/inttypes (inttypes.h): Substitute
12546         HAVE_UNSIGNED_LONG_LONG_INT.
12547         * modules/stdint (stdint.h): Likewise.
12548         (Files): Add m4/ulonglong.m4.
12549
12550 2006-10-10  Bruno Haible  <bruno@clisp.org>
12551
12552         Fix a gcc -Wshadow warning.
12553         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
12554         to 'bucket'.
12555         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
12556         gl_linked_indexof_from_to): Likewise.
12557         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
12558         Likewise.
12559         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
12560         Likewise.
12561         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
12562         Reported by Eric Blake.
12563
12564 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
12565
12566         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
12567         for NetBSD.  Problem reported by Bruno Haible.
12568
12569 2006-10-09  Jim Meyering  <jim@meyering.net>
12570
12571         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
12572         Patch from Bruno Haible.
12573
12574 2006-10-09  Jim Meyering  <jim@meyering.net>
12575
12576         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
12577         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
12578         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
12579
12580 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
12581
12582         Don't include <config.h> twice; this doesn't work in some cases,
12583         e.g., when config.h has "#define intmax_t long long int" and
12584         we include <config.h>, <inttypes.h>, <config.h> in that order.
12585         Problem reported by Matthew Woehlke in:
12586         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
12587         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
12588         * lib/fts-cycle.c: Don't include config.h.
12589         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
12590         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
12591         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
12592         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
12593         inttypes.h.
12594         * lib/xstrtoumax.c: Likewise.
12595         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
12596         __strtol and the like, so that this module is more like its siblings.
12597         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
12598         Remove; no longer needed now that we assume gnulib inttypes.h.
12599
12600 2006-10-08  Bruno Haible  <bruno@clisp.org>
12601
12602         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
12603         option.
12604
12605 2006-10-07  Jim Meyering  <jim@meyering.net>
12606
12607         * modules/inttypes (inttypes.h): Revert what seems to have been
12608         an inadvertent part of today's change: use "|", not "/" in the
12609         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
12610
12611 2006-10-07  Bruno Haible  <bruno@clisp.org>
12612
12613         * modules/sublist: New file.
12614
12615 2006-10-07  Bruno Haible  <bruno@clisp.org>
12616
12617         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
12618         * modules/argz (argz.h): Likewise.
12619         * modules/arpa_inet (arpa/inet.h): Likewise.
12620         * modules/byteswap (byteswap.h): Likewise.
12621         * modules/configmake (configmake.h): Likewise.
12622         * modules/fcntl (fcntl.h): Likewise.
12623         * modules/fnmatch (fnmatch.h): Likewise.
12624         * modules/getopt (getopt.h): Likewise.
12625         * modules/glob (glob.h): Likewise.
12626         * modules/inttypes (inttypes.h): Likewise.
12627         * modules/netinet_in (netinet/in.h): Likewise.
12628         * modules/poll (poll.h): Likewise.
12629         * modules/stdbool (stdbool.h): Likewise.
12630         * modules/stdint (stdint.h): Likewise.
12631         * modules/sys_select (sys/select.h): Likewise.
12632         * modules/sys_socket (sys/socket.h): Likewise.
12633         * modules/sys_stat (sys/stat.h): Likewise.
12634         * modules/sysexits (sysexits.h): Likewise.
12635         * modules/unistd (unistd.h): Likewise.
12636         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
12637         Add a "DO NOT EDIT" comment to the generated file.
12638         (func_import): Likewise for gnulib-comp.m4.
12639
12640 2006-10-07  Bruno Haible  <bruno@clisp.org>
12641
12642         * lib/gl_sublist.h: New file.
12643         * lib/gl_sublist.c: New file.
12644
12645 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
12646
12647         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
12648         name (relative to the original working directory) and the file
12649         name component (relative to the temporary working directory).  All
12650         callers changed.
12651         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
12652         * lib/mkdir-p.c (make_dir_parents): Likewise.
12653         * lib/mkdir-p.h (make_dir_parents): Likewise.
12654
12655 2006-10-06  Eric Blake  <ebb9@byu.net>
12656
12657         Define several macros for use by the clean-temp module.
12658         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
12659         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
12660         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
12661
12662         * lib/clean-temp.h (close_stream_temp): New declaration.
12663         * lib/clean-temp.c (includes): Pull in headers according to what
12664         other modules are in use.
12665         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
12666
12667 2006-10-06  Bruno Haible  <bruno@clisp.org>
12668
12669         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
12670         instead of fopen, fwriteerror.
12671
12672 2006-10-06  Bruno Haible  <bruno@clisp.org>
12673
12674         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
12675         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
12676         int.
12677         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
12678         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
12679         Return an error indicator.
12680         Suggested by Eric Blake.
12681
12682 2006-10-06  Bruno Haible  <bruno@clisp.org>
12683
12684         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
12685         Reported by Eric Blake.
12686
12687 2006-10-06  Bruno Haible  <bruno@clisp.org>
12688
12689         * modules/closeout (Description): Mention stderr too.
12690
12691 2006-10-06  Bruno Haible  <bruno@clisp.org>
12692         and Paul Eggert  <eggert@cs.ucla.edu>
12693
12694         * lib/closeout.c (close_stdout): Also close stderr.
12695         * lib/closeout.h: Update comment.
12696
12697 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
12698
12699         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
12700         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
12701         * lib/dirchownmod.c: Include lchown.h.
12702         * lib/lchown.c: Don't include files that lchown.h now includes.
12703         Don't declare chown, since lchown.h now does that.
12704         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
12705         (lchown): Define to rpl_chown if lchown is declared but
12706         does not exist.  Declare using a prototype if lchown is not
12707         declared.  Add a copyright notice.
12708         * lib/mkstemp.h: Include <unistd.h>.
12709         * lib/openat.c: Include lchown.h.
12710
12711         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
12712         we now test for that separately.
12713         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
12714         rather than O_NOFOLLOW, when testing whether it's possible to
12715         avoid a race condition reliably.
12716         * lib/savewd.c (savewd_chdir): Likewise.
12717
12718         Remove macros that are no longer needed now that stdint.h is
12719         reliable.
12720         * lib/fsusage.c (UINTMAX_MAX): Remove.
12721         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
12722         * lib/utimecmp.c (SIZE_MAX): Remove.
12723
12724         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
12725
12726         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
12727         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
12728         O_NOATIME works.
12729
12730 2006-10-05  Bruno Haible  <bruno@clisp.org>
12731
12732         * lib/gl_list.h (gl_sortedlist_search_from_to,
12733         gl_sortedlist_indexof_from_to): New declarations.
12734         (gl_list_implementation): New fields sortedlist_search_from_to,
12735         sortedlist_indexof_from_to.
12736         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
12737         inline functions.
12738         * lib/gl_list.c (gl_sortedlist_search_from_to,
12739         gl_sortedlist_indexof_from_to): New functions.
12740         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
12741         function.
12742         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
12743         (gl_array_sortedlist_search_from_to): New function.
12744         (gl_array_list_implementation): Update.
12745         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
12746         function.
12747         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
12748         (gl_carray_sortedlist_search_from_to): New function.
12749         (gl_carray_list_implementation): Update.
12750         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
12751         gl_linked_sortedlist_indexof_from_to): New functions.
12752         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
12753         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
12754         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
12755         gl_tree_sortedlist_indexof_from_to): New functions.
12756         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
12757         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
12758         Update.
12759         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
12760         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
12761         Update.
12762
12763 2006-10-05  Bruno Haible  <bruno@clisp.org>
12764
12765         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
12766         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
12767         (struct gl_list_implementation): Add fields search_from_to,
12768         indexof_from_to. Remove fields search, indexof.
12769         (gl_list_search): Use the search_from_to method.
12770         (gl_list_search_from, gl_list_search_from_to): New functions.
12771         (gl_list_indexof): Use the indexof_from_to method.
12772         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
12773         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
12774         (gl_list_search_from, gl_list_search_from_to): New functions.
12775         (gl_list_indexof): Use the indexof_from_to method.
12776         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
12777         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
12778         gl_array_indexof. Add start_index, end_index arguments.
12779         (gl_array_search_from_to): Renamed from gl_array_search. Add
12780         start_index, end_index arguments.
12781         (gl_array_remove, gl_array_list_implementation): Update.
12782         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
12783         gl_carray_indexof. Add start_index, end_index arguments.
12784         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
12785         start_index, end_index arguments.
12786         (gl_carray_remove, gl_carray_list_implementation): Update.
12787         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
12788         gl_linked_search. Add start_index, end_index arguments.
12789         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
12790         start_index, end_index arguments.
12791         (gl_linked_remove): Update.
12792         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
12793         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
12794         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
12795         field to 'size_t'.
12796         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
12797         gl_tree_search. Add start_index, end_index arguments.
12798         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
12799         start_index, end_index arguments.
12800         (gl_tree_remove): Update.
12801         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
12802         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
12803         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
12804         function.
12805         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
12806         gl_tree_search. Add start_index, end_index arguments.
12807         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
12808         start_index, end_index arguments.
12809         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
12810         Update.
12811         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
12812
12813 2006-10-05  Bruno Haible  <bruno@clisp.org>
12814
12815         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
12816
12817         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
12818         fwriteerror_temp): New declarations.
12819         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
12820         (descriptors): New variable.
12821         (cleanup): First, close the descriptors.
12822         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
12823         fclose_temp, fwriteerror_temp): New functions.
12824
12825 2006-10-04  Jim Meyering  <jim@meyering.net>
12826
12827         * lib/fts.c (fts_open): Tiny comment change.
12828
12829 2006-10-04  Bruno Haible  <bruno@clisp.org>
12830
12831         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
12832         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
12833         gl_LOCK_BODY.
12834         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
12835         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
12836         gl_LOCK_EARLY_BODY.
12837         (gl_LOCK): Require gl_LOCK_BODY.
12838
12839 2006-10-04  Bruno Haible  <bruno@clisp.org>
12840
12841         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
12842         (gl_oset_search_atleast): New declaration.
12843         (struct gl_oset_implementation): Add field 'search_atleast'.
12844         (gl_oset_search_atleast): New inline function.
12845         * lib/gl_oset.c (gl_oset_search_atleast): New function.
12846         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
12847         (gl_array_oset_implementation): Update.
12848         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
12849         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
12850         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
12851
12852 2006-10-04  Bruno Haible  <bruno@clisp.org>
12853
12854         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
12855
12856 2006-10-03  Bruno Haible  <bruno@clisp.org>
12857
12858         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
12859         from gl_avltreehash_list_implementation.
12860
12861 2006-10-03  Bruno Haible  <bruno@clisp.org>
12862
12863         * lib/gl_oset.c (gl_oset_add): Fix return type.
12864
12865 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
12866
12867         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
12868
12869 2006-10-02  Eric Blake  <ebb9@byu.net>
12870
12871         * modules/strnlen (Depends-on): Add extensions.
12872
12873 2006-10-02  Eric Blake  <ebb9@byu.net>
12874
12875         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
12876         definition in 2.60+.
12877
12878 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
12879
12880         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
12881         checks.
12882
12883 2006-10-02  Bruno Haible  <bruno@clisp.org>
12884
12885         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
12886         to the AUTOMAKE_OPTIONS.
12887         Reported by Jim Meyering.
12888
12889 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
12890
12891         Work around bug in Solaris 10 /proc file system:
12892         /proc/self/fd/NNN/.. isn't the parent directory of
12893         the directory whose file descriptor is NNN.  This needs to
12894         be worked around at run time, not compile time, since a
12895         program might be built on Solaris 8, where things work, and
12896         run on Solaris 10.
12897         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
12898         to use the following interface instead:
12899         (OPENAT_BUFFER_SIZE): New macro.
12900         (openat_proc_name): New function.
12901         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
12902         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
12903         Likewise.
12904         * lib/openat-proc.c: New file.
12905         * modules/openat (Files): Add lib/openat-proc.c.
12906         (Depends-on): Add same-inode, stdbool.
12907         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
12908
12909 2006-09-29  Bruno Haible  <bruno@clisp.org>
12910
12911         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
12912         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
12913         argument. Set stdout_closed before testing for ferror, not after.
12914         (fwriteerror, fwriteerror_no_ebadf): New functions.
12915
12916 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12917
12918         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
12919
12920 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
12921
12922         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
12923         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
12924
12925 2006-09-28  Jim Meyering  <jim@meyering.net>
12926
12927         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
12928         Include <unistd.h>.
12929
12930 2006-09-28  Bruno Haible  <bruno@clisp.org>
12931
12932         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
12933         * modules/linkedhash-list (Depends-on): Likewise.
12934         * modules/rbtreehash-list (Depends-on): Likewise.
12935
12936 2006-09-28  Bruno Haible  <bruno@clisp.org>
12937
12938         * lib/strndup.h: Simplify the redefinition of strndup.
12939         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
12940         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
12941
12942 2006-09-28  Bruno Haible  <bruno@clisp.org>
12943
12944         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
12945         * lib/gl_linkedhash_list.c: Likewise.
12946         * lib/gl_rbtreehash_list.c: Likewise.
12947
12948 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
12949
12950         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
12951         getaddrinfo.
12952
12953         * lib/__fpending.h: Don't include <stdio_ext.h> unless
12954         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
12955         it causes <stdio_ext.h> to cause a compile-time error.
12956         Problem reported by Nelson H. F. Beebe.
12957         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
12958         of HAVE_DECL___PENDING.
12959
12960         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
12961         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
12962         declaration.
12963
12964 2006-09-27  Jim Meyering  <jim@meyering.net>
12965
12966         This file could end up with a definition for a function
12967         named __strndup, rather than rpl_strndup on a system with
12968         incomplete weak_alias support.
12969         * lib/strndup.c (strndup): Rename from __strndup.
12970         Remove #defines that used to map __strndup to strndup.
12971         Don't use K&R prototypes.
12972         Remove LIBC-related code, since this file is not sync'd with glibc.
12973         * lib/strndup.h: Revamp, accordingly.
12974         * m4/strndup.m4: Modernize.
12975
12976 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
12977
12978         * modules/savewd (Depends-on): Add 'raise'.
12979         * lib/savewd.c: Include <signal.h>, for 'raise'.
12980
12981 2006-09-26  Jim Meyering  <jim@meyering.net>
12982
12983         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
12984         when we detect Darwin 8.7.0's acl_get_file bug.
12985         Rearrange to perform the new (below) run-test while $LIBS
12986         contains any acl-related library.  Set USE_ACL at the end.
12987         (gl_ACL_GET_FILE): New function.
12988
12989 2006-09-26  Eric Blake  <ebb9@byu.net>
12990
12991         * lib/verror.c: Include <config.h> unconditionally.
12992
12993 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
12994
12995         * modules/clock-time (Maintainer): Add self.
12996         * modules/getlogin_r (Depends-on): Add extensions.
12997
12998 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12999
13000         * modules/clock-time: New module.
13001         * modules/nanosleep (Depends-on): Add clock-time.
13002         * modules/gethrxtime (Depends-on): Likewise.
13003         * modules/gettime (Depends-on): Likewise.
13004         * modules/settime (Depends-on): Likewise.
13005
13006         * modules/fts-lgpl: Depend on openat.
13007         * modules/mkancesdirs: Depend on savewd.
13008         * modules/mkdir-p: Likewise.
13009
13010 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13011
13012         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
13013
13014         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
13015         `gl_have_arbitrary_file_name_length_limit' to
13016         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
13017         actually works between configure runs.
13018
13019 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13020             Bruno Haible  <bruno@clisp.org>
13021
13022         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
13023
13024 2006-09-25  Jim Meyering  <jim@meyering.net>
13025
13026         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
13027         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
13028
13029 2006-09-25  Eric Blake  <ebb9@byu.net>
13030
13031         * gnulib-tool (func_import, func_create_testdir): Fix typos in
13032         exec's in 2006-09-18 patch when shuffling fds.
13033
13034 2006-09-25  Bruno Haible  <bruno@clisp.org>
13035
13036         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
13037         Reported by Jim Meyering.
13038
13039 2006-09-24  Jim Meyering  <jim@meyering.net>
13040
13041         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
13042         compare a pointer against a literal "0".  That caused failures with
13043         at least HP-UX's hpcc.
13044
13045 2006-09-22  Simon Josefsson  <jas@extundo.com>
13046
13047         * modules/gc-sha1:
13048         * modules/gc-md4:
13049         * modules/gc-hmac-sha1:
13050         * modules/gc-hmac-md5:
13051         * modules/gc-des:
13052         * modules/gc-arcfour: Distribute more files.
13053
13054 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13055
13056         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
13057         (gl_linked_iterator_from_to): Initialize struct completely.
13058         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
13059         (gl_tree_iterator_from_to): Likewise
13060         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
13061         * lib/gl_array_list.c [lint] (gl_array_iterator)
13062         (gl_array_iterator_from_to): Likewise.
13063         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
13064         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
13065         (gl_carray_iterator_from_to): Likewise.
13066
13067         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
13068         * lib/md4.c (md4_process_block): Remove unused variable.
13069         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
13070         parentheses for clarity.
13071
13072 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13073
13074         * modules/bison-i18n (Depends-on): Add gettext.
13075
13076 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13077
13078         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
13079         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
13080         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
13081         also add missing comma that caused broken test.
13082         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
13083         stdlib.h, for `abort'.
13084         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
13085         variables.
13086         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
13087         include unistd.h if present, for `rmdir'.
13088         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
13089         variables.
13090         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
13091         in the process include standard headers for prototypes.
13092         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
13093         gets declared on GNU/Linux.
13094         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
13095         unistd.h, for `rmdir'.
13096         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
13097
13098         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
13099         always true.
13100         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
13101
13102         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
13103
13104 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13105
13106         * gnulib-tool (func_version): Create output all at once.  This
13107         may help avoid triggering unnecessary SIGPIPEs, and at any
13108         rate it doesn't hurt.
13109
13110 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13111             Bruno Haible  <bruno@clisp.org>
13112
13113         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
13114         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
13115         * m4/signed.m4 (bh_C_SIGNED): Likewise.
13116
13117         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
13118         (gl_FUNC_VASPRINTF): Invoke it.
13119
13120 2006-09-22  Bruno Haible  <bruno@clisp.org>
13121
13122         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
13123         getloadavg.c as first argument.
13124
13125 2006-09-22  Bruno Haible  <bruno@clisp.org>
13126
13127         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
13128         at the beginning of the gl_INIT macro.
13129         * modules/getloadavg (configure.ac): Pass $gl_source_base to
13130         gl_GETLOADAVG.
13131
13132 2006-09-22  Bruno Haible  <bruno@clisp.org>
13133
13134         * gnulib-tool (func_create_megatestdir): Don't include the config-h
13135         module.
13136         Suggested by Ralf Wildenhues.
13137
13138 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
13139
13140         Import this patch from libc:
13141
13142         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
13143
13144         * lib/regex_internal.c (re_string_reconstruct): Handle
13145         offset < pstr->valid_raw_len && pstr->offsets_needed case.
13146         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
13147         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
13148         re_string_context_at.
13149
13150         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
13151         now requires it.
13152         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
13153         gl_REGEX now does it for us.
13154         (gl_REGEX): Add test taken from
13155         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
13156
13157         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
13158         Check that large offsets work.  Modernize Autoconf usages.
13159         Prefer "yes" to mean a good thing rather than a bad.
13160         Don't put "#define mkstemp" in config.h, as this might interfere
13161         with standard system headers that "#define mkstemp mkstemp64".
13162
13163         * modules/mkstemp (Depends-on): Add extensions, so that
13164         mkstemp is visible on some platforms.
13165         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
13166         (Include): Change to "mkstemp.h" from <stdlib.h>.
13167         (Files): Add mkstemp.h.
13168
13169         * lib/mkstemp.h: New file, since some standard headers
13170         #define mkstemp.
13171         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
13172         Include "mkstemp.h".
13173         Make the _LIBC code resemble glibc original more,
13174         e.g., use K&R style.
13175         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
13176         (mkstemp): Remove, since mkstemp.h does this for us.
13177         * lib/stdlib--.h: Include mkstemp.h.
13178
13179         Import this patch from libc:
13180
13181         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
13182
13183         * lib/tempname.c (__gen_tempname): Change attempts_min
13184         into a macro.  Use preprocessor to decide how to initialize
13185         attempts [Coverity CID 67].
13186
13187 2006-09-20  Bruno Haible  <bruno@clisp.org>
13188
13189         * lib/mkdtemp.c: Import from libc.
13190         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
13191                 * sysdeps/posix/tempname.c (__gen_tempname): Change
13192                 attempts_min into a macro.  Use preprocessor to decide how to
13193                 initialize attempts [Coverity CID 67].
13194         2001-11-27  Paul Eggert  <eggert@twinsun.com>
13195                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
13196                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
13197
13198 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13199
13200         * gnulib-tool (func_exit): New function, to allow to pass the
13201         exit status portably through the trap.  Use everywhere.
13202         (--help, --version): Signal a write error.
13203         (trap): catch SIGPIPE, for write errors.
13204         Exit at the end of the trap, with the correct exit status.
13205
13206 2006-09-19  Karl Berry  <karl@gnu.org>
13207
13208         * doc/gnulib.texi: note about the license texinfo files.
13209
13210 2006-09-19  Eric Blake  <ebb9@byu.net>
13211
13212         * gnulib-tool: Avoid space-tab.
13213
13214 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
13215
13216         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
13217         that prevented coreutils 6.1 from building.  Problem reported
13218         by Petter Reinholdtsen.
13219
13220 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
13221
13222         * gnulib-tool (avoidlist): Fix typo that broke options like
13223         --avoid=lock that are used by coreutils bootstrap.
13224
13225 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
13226
13227         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
13228         more systematically.
13229
13230 2006-09-18  Jim Meyering  <jim@meyering.net>
13231
13232         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
13233
13234 2006-09-18  Bruno Haible  <bruno@clisp.org>
13235
13236         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
13237
13238 2006-09-18  Bruno Haible  <bruno@clisp.org>
13239
13240         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
13241         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
13242         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
13243         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
13244         * m4/gettext.m4: Require autoconf >= 2.52.
13245         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
13246         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
13247         of gl_cv_header_inttypes_h.
13248
13249 2006-09-18  Bruno Haible  <bruno@clisp.org>
13250
13251         * lib/javaversion.c: Include configmake.h.
13252
13253 2006-09-18  Bruno Haible  <bruno@clisp.org>
13254
13255         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
13256         avoid that the while loops be executed in a subshell.
13257
13258 2006-09-18  Bruno Haible  <bruno@clisp.org>
13259
13260         * MODULES.html.sh (func_module): Break long lines.
13261         Suggested by Bruce Korb <bkorb@gnu.org>.
13262
13263 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13264
13265         Speed up by a factor of 1.12.
13266         * gnulib-tool (nl): New variable.
13267         (func_import): Rewrite include directive extraction to only read each
13268         directive once.
13269
13270 2006-09-17  Bruno Haible  <bruno@clisp.org>
13271
13272         * modules/javaversion (Makefile.am): Remove DEFS setting.
13273         (Depends-on): Add configmake, for PKGDATADIR definition.
13274
13275 2006-09-17  Bruno Haible  <bruno@clisp.org>
13276
13277         * gnulib-tool (func_create_testdir): Rewrite all files at once.
13278
13279 2006-09-17  Bruno Haible  <bruno@clisp.org>
13280
13281         * gnulib-tool (func_append): New function, stolen from libtool.m4.
13282         (func_modules_transitive_closure, func_modules_add_dummy,
13283         func_modules_to_filelist, func_import, func_create_testdir,
13284         func_create_megatestdir, ...): Use it wherever possible.
13285         Suggested by Ralf Wildenhues.
13286
13287 2006-09-16  Karl Berry  <karl@gnu.org>
13288
13289         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
13290         to avoid sectioning errors.
13291         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
13292         [ifinfo]: blank line after @center-ed titles.
13293         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
13294         Spell FSF address consistently with others.
13295         (These changes approved by rms.)
13296
13297 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13298
13299         Speed up by a factor of 1.61.
13300         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
13301         already checked module names again.
13302
13303 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13304
13305         Speed up by a factor of 1.13.
13306         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
13307         for new_files, and the input to func_add_or_update.
13308
13309 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13310
13311         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
13312         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
13313
13314 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13315
13316         * modules/mkancesdirs (Depends-on): Add fcntl.
13317         * modules/savewd: New file.
13318         * MODULES.html.sh (File system functions): Add savewd.
13319
13320         * modules/configmake (Makefile.am): Add support for the
13321         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
13322
13323 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13324
13325         * m4/savewd.m4: New file.
13326
13327 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
13328
13329         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
13330         (dirchownmod): New arg FD.  All callers changed.
13331         Use FD rather than opening the directory ourself, as opening is
13332         now the caller's responsibility.
13333         * lib/dirchownmod.h: Likewise.
13334         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
13335         hosts that require <sys/types.h> before <sys/stat.h>.  Include
13336         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
13337         (test_dir): Remove.
13338         (mkancesdirs): Return length of prefix of FILE that has already
13339         been made, or -2 if there is a child doing the work.  Redo
13340         algorithm so that it is O(N) rather than O(N**2).  Optimize away
13341         ".", and treat ".." specially since it might stray back into
13342         already-created areas.  Use a subprocess if necessary.  New arg
13343         WD; all users changed.  MAKE_DIR function should now return 1
13344         if it creates a directory that is not readable.  Return -2 if
13345         a child process is spun off.
13346         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
13347         Adjust signature to match code.
13348         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
13349         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
13350         all users changed.
13351         * lib/savewd.c, lib/savewd.h: New files.
13352
13353 2006-09-15  Jim Meyering  <jim@meyering.net>
13354
13355         * modules/rename-dest-slash: New module.
13356         * MODULES.html.sh (posix_compat): Add it here.
13357
13358         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
13359
13360 2006-09-15  Jim Meyering  <jim@meyering.net>
13361
13362         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
13363         file.
13364
13365         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
13366
13367 2006-09-15  Jim Meyering  <jim@meyering.net>
13368
13369         * lib/rename-dest-slash.c (has_trailing_slash): Use
13370         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
13371         (rpl_rename_dest_slash): Perform the cheaper trailing slash
13372         test before testing whether SRC is a directory.
13373         Suggestions from Bruno Haible.
13374
13375         Avoid a warning about an unused variable.
13376         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
13377         into the #ifdef block where it's used.
13378
13379         * lib/rename-dest-slash.c: New file.
13380
13381 2006-09-14  Bruno Haible  <bruno@clisp.org>
13382
13383         * lib/allocsa.c: Include <config.h> unconditionally.
13384         * lib/asnprintf.c: Likewise.
13385         * lib/asprintf.c: Likewise.
13386         * lib/c-strcasecmp.c: Likewise.
13387         * lib/c-strcasestr.c: Likewise.
13388         * lib/c-strncasecmp.c: Likewise.
13389         * lib/c-strstr.c: Likewise.
13390         * lib/classpath.c: Likewise.
13391         * lib/clean-temp.c: Likewise.
13392         * lib/concatpath.c: Likewise.
13393         * lib/copy-file.c: Likewise.
13394         * lib/csharpcomp.c: Likewise.
13395         * lib/csharpexec.c: Likewise.
13396         * lib/execute.c: Likewise.
13397         * lib/fatal-signal.c: Likewise.
13398         * lib/findprog.c: Likewise.
13399         * lib/fwriteerror.c: Likewise.
13400         * lib/gl_array_list.c: Likewise.
13401         * lib/gl_array_oset.c: Likewise.
13402         * lib/gl_avltree_list.c: Likewise.
13403         * lib/gl_avltree_oset.c: Likewise.
13404         * lib/gl_avltreehash_list.c: Likewise.
13405         * lib/gl_carray_list.c: Likewise.
13406         * lib/gl_linked_list.c: Likewise.
13407         * lib/gl_linkedhash_list.c: Likewise.
13408         * lib/gl_list.c: Likewise.
13409         * lib/gl_oset.c: Likewise.
13410         * lib/gl_rbtree_list.c: Likewise.
13411         * lib/gl_rbtree_oset.c: Likewise.
13412         * lib/gl_rbtreehash_list.c: Likewise.
13413         * lib/imaxabs.c: Likewise.
13414         * lib/imaxdiv.c: Likewise.
13415         * lib/javacomp.c: Likewise.
13416         * lib/javaexec.c: Likewise.
13417         * lib/javaversion.c: Likewise.
13418         * lib/linebreak.c: Likewise.
13419         * lib/localcharset.c: Likewise.
13420         * lib/lock.c: Likewise.
13421         * lib/mbchar.c: Likewise.
13422         * lib/mbswidth.c: Likewise.
13423         * lib/mkdtemp.c: Likewise.
13424         * lib/pipe.c: Likewise.
13425         * lib/printf-args.c: Likewise.
13426         * lib/printf-parse.c: Likewise.
13427         * lib/progname.c: Likewise.
13428         * lib/progreloc.c: Likewise.
13429         * lib/readlink.c: Likewise.
13430         * lib/sh-quote.c: Likewise.
13431         * lib/stpcpy.c: Likewise.
13432         * lib/stpncpy.c: Likewise.
13433         * lib/strcasecmp.c: Likewise.
13434         * lib/strcasestr.c: Likewise.
13435         * lib/strcspn.c: Likewise.
13436         * lib/striconv.c: Likewise.
13437         * lib/strncasecmp.c: Likewise.
13438         * lib/strnlen1.c: Likewise.
13439         * lib/strstr.c: Likewise.
13440         * lib/strtok_r.c: Likewise.
13441         * lib/tls.c: Likewise.
13442         * lib/tmpdir.c: Likewise.
13443         * lib/unicodeio.c: Likewise.
13444         * lib/unsetenv.c: Likewise.
13445         * lib/vasnprintf.c: Likewise.
13446         * lib/vasprintf.c: Likewise.
13447         * lib/wait-process.c: Likewise.
13448         * lib/xallocsa.c: Likewise.
13449         * lib/xsetenv.c: Likewise.
13450         * lib/xstriconv.c: Likewise.
13451
13452 2006-09-13  Simon Josefsson  <jas@extundo.com>
13453
13454         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
13455         that internally, suggested by Ralf Wildenhues
13456         <Ralf.Wildenhues@gmx.de>.
13457
13458 2006-09-13  Simon Josefsson  <jas@extundo.com>
13459
13460         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
13461         @LIBOBJS@.
13462         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13463
13464 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
13465
13466         * lib/_fpending.c: Include <config.h> unconditionally, since we no
13467         longer worry about uses that don't define HAVE_CONFIG_H.
13468         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
13469         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
13470         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
13471         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
13472         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
13473         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
13474         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
13475         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
13476         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
13477         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
13478         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
13479         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
13480         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
13481         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
13482         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
13483         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
13484         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
13485         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
13486         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
13487         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
13488         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
13489         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
13490         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
13491         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
13492         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
13493         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
13494         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
13495         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
13496         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
13497         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
13498         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
13499         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
13500         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
13501         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
13502         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
13503         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
13504         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
13505         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
13506         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
13507         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
13508         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
13509         Likewise.
13510
13511 2006-09-13  Eric Blake  <ebb9@byu.net>
13512
13513         * lib/getopt.c: Fix typo in last commit.
13514
13515 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
13516
13517         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
13518         dgettext.
13519
13520 2006-09-12  Jim Meyering  <jim@meyering.net>
13521
13522         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
13523         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
13524         Reported by Nelson H. F. Beebe.
13525
13526 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
13527
13528         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
13529         program_invocation_name and program_invocation_short_name are
13530         initialized.
13531         * lib/argp-namefrob.h: Move declarations of program_invocation_name
13532         and program_invocation_short_name to argp.h, so they are visible
13533         to user programs.
13534         * lib/argp.h: Likewise
13535
13536 2006-09-10  Bruno Haible  <bruno@clisp.org>
13537
13538         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
13539         m4/inttypes_h.m4, m4/uintmax_t.m4.
13540
13541 2006-09-10  Bruno Haible  <bruno@clisp.org>
13542
13543         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
13544         gl_AC_TYPE_UINTMAX_T.
13545
13546 2006-09-10  Bruno Haible  <bruno@clisp.org>
13547
13548         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
13549
13550 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
13551
13552         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
13553         convention.  Text proposed by Bruno Haible.
13554         (struct argp_option): Document the use of N_() wrappers.
13555
13556         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
13557         '\v', and translate the two parts separately, instead of feeding
13558         the whole string to gettext.  This allows to exclude
13559         '\v' from the strings visible to the translator by writing doc
13560         strings as N_("..") "\v" N_("..").
13561
13562 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
13563
13564         * config/srclist.txt: Undo latest change; the bug was fixed.
13565
13566 2006-09-09  Bruno Haible  <bruno@clisp.org>
13567
13568         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
13569         assignments if building a library without libtool.
13570         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
13571         in func_emit_lib_Makefile_am.
13572         (func_import): When building a static library libfoo.a, arrange to
13573         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
13574         (func_create_testdir): Likewise.
13575         * modules/gc (configure.ac, Makefile.am): If building statically,
13576         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
13577         * modules/iconvme (configure.ac, Makefile.am): Likewise.
13578         * modules/striconv (configure.ac, Makefile.am): Likewise.
13579         Based on a suggestion by Ralf Wildenhues.
13580
13581 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13582
13583         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
13584         Check for unistd.h too, since Autoconf doesn't assume POSIX.
13585         Also:
13586
13587         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13588         Add year_2050_test to catch glibc bug 2821
13589         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
13590
13591         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
13592         Prefer #ifdef to #if.
13593
13594         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
13595         Return from 'main' instead of calling 'exit'.
13596
13597 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13598
13599         * lib/mktime.c (guess_time_tm): Fix bug where mktime
13600         returned the maximum time_t value rather than (time_t) -1.
13601         Problem originally reported by William Bardwell
13602         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
13603
13604         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
13605         Moved to here ...
13606         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
13607         ... from here.
13608
13609 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
13610
13611         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
13612         2821 is fixed.
13613
13614 2006-09-08  Jim Meyering  <jim@meyering.net>
13615
13616         Don't make generated files read-only.  That would bother too many
13617         people.  However, do retain the ability to work when targets are
13618         read-only: remove the destination and temporary files before writing
13619         them (when generated via sed or echo), or by using the -f option for
13620         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
13621         * modules/alloca-opt, modules/argz, modules/arpa_inet:
13622         * modules/byteswap, modules/configmake, modules/fcntl:
13623         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
13624         * modules/localcharset, modules/netinet_in, modules/poll:
13625         * modules/stdbool, modules/stdint, modules/sys_select:
13626         * modules/sys_socket, modules/sys_stat, modules/sysexits:
13627
13628 2006-09-08  Jim Meyering  <jim@meyering.net>
13629
13630         Avoid new build failure on FreeBSD 6.0.
13631         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
13632         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
13633         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
13634
13635 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13636
13637         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
13638
13639 2006-09-07  Jim Meyering  <jim@meyering.net>
13640
13641         Fix global typo in last change: use chmod u-w, not chmod u-x.
13642         Spotted by Paul Eggert and Bruce Korb.
13643         * modules/alloca-opt, modules/argz, modules/arpa_inet:
13644         * modules/byteswap, modules/configmake, modules/fcntl:
13645         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
13646         * modules/localcharset, modules/netinet_in, modules/poll:
13647         * modules/stdbool, modules/stdint, modules/sys_select:
13648         * modules/sys_socket, modules/sys_stat, modules/sysexits:
13649
13650 2006-09-06  Jim Meyering  <jim@meyering.net>
13651
13652         Make generated files be read-only.
13653         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
13654         Ensure that each generated file is now read-only.
13655         * modules/argz: Likewise.
13656         * modules/arpa_inet: Likewise.
13657         * modules/byteswap: Likewise.
13658         * modules/configmake: Likewise.
13659         * modules/fcntl: Likewise.
13660         * modules/fnmatch: Likewise.
13661         * modules/getopt: Likewise.
13662         * modules/glob: Likewise.
13663         * modules/inttypes: Likewise.
13664         * modules/netinet_in: Likewise.
13665         * modules/poll: Likewise.
13666         * modules/stdbool: Likewise.
13667         * modules/stdint: Likewise.
13668         * modules/sys_select: Likewise.
13669         * modules/sys_socket: Likewise.
13670         * modules/sys_stat: Likewise.
13671         * modules/sysexits: Likewise.
13672         * modules/localcharset: Same as above, but continue using temporary
13673         file named "t-$@" (why different?) rather than the "$@-t" used
13674         everywhere else.
13675
13676         * modules/sysexits (Makefile.am): Replace literal occurrences
13677         of "sysexit.h" more readable, and more consistent, "$@".
13678
13679 2006-09-06  Bruno Haible  <bruno@clisp.org>
13680
13681         * modules/striconv: New file.
13682         * modules/xstriconv: New file.
13683         * MODULES.html.sh (Internationalization functions): Add striconv,
13684         xstriconv.
13685
13686 2006-09-06  Bruno Haible  <bruno@clisp.org>
13687
13688         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
13689         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
13690         not using libtool correctly.
13691
13692 2006-09-06  Bruno Haible  <bruno@clisp.org>
13693
13694         * lib/striconv.h: New file.
13695         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
13696         iconvstring.c.
13697         * lib/xstriconv.h: New file.
13698         * lib/xstriconv.c: New file.
13699
13700 2006-09-06  Bruno Haible  <bruno@clisp.org>
13701
13702         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
13703         lib_..._LDFLAGS.
13704
13705 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13706
13707         * lib/argz_.h: Sync from Libtool.
13708
13709         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
13710                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13711
13712         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
13713
13714 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
13715
13716         * modules/trim: New file.
13717
13718 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
13719
13720         * lib/trim.h: New file.
13721         * lib/trim.c: New file.
13722
13723 2006-09-05  Bruno Haible  <bruno@clisp.org>
13724
13725         * MODULES.html.sh (String handling): Add trim.
13726
13727 2006-09-04  Karl Berry  <karl@gnu.org>
13728
13729         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
13730         until next release.
13731
13732 2006-09-03  Bruno Haible  <bruno@clisp.org>
13733
13734         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
13735         correctly.
13736
13737 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13738
13739         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
13740         not gl_GETLOADAVG.  Omit unneeded semicolons.
13741         Problems reported by Ralf Wildenhues in
13742         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
13743         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
13744         at the end, which is the usual gnulib style.
13745
13746         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
13747         of doing all the work ourselves.
13748         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
13749         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
13750
13751 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13752
13753         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
13754         Problem reported by Ralf Wildenhues in
13755         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
13756
13757         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
13758         HAVE_STRUCT_STATFS_F_FSTYPENAME.
13759
13760 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
13761
13762         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
13763         yesterday's patch by changing test -n to test -z.
13764
13765 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13766
13767         * modules/getloadavg (Files): Add m4/getloadavg.m4.
13768         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
13769         the former is now obsolescent.
13770
13771         * modules/chdir-long (Depends-on): Add fcntl.
13772
13773 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13774
13775         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
13776         obsolescent, and programs should use gnulib instead.
13777         * m4/getloadavg.m4: New file, with contents taken from Autoconf
13778         but with prefixes changed.
13779
13780 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
13781
13782         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
13783         or stdbool.h, because they might not exist while configuring.
13784
13785         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
13786         Don't include unistd.h or limits.h; not needed, since chdir-long.h
13787         does that for us.
13788         (O_DIRECTORY): Remove.
13789
13790 2006-08-31  Eric Blake  <ebb9@byu.net>
13791
13792         * gnulib-tool: Don't let emacs change spaces to TAB.
13793
13794 2006-08-31  Bruno Haible  <bruno@clisp.org>
13795
13796         * gnulib-tool: When calling func_import more than once, do it in a
13797         subshell.
13798         Reported by Eric Blake <ebb9@byu.net>.
13799
13800 2006-08-31  Bruno Haible  <bruno@clisp.org>
13801
13802         * gnulib-tool (nl): Remove variable.
13803         (sed_transform_lib_file): Use more robust test for config-h module.
13804         (func_import): Fix typo in 2006-08-25 patch.
13805
13806 2006-08-31  Bruno Haible  <bruno@clisp.org>
13807
13808         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
13809         specified, augment Makefile.am variables instead of assigning them.
13810
13811 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13812
13813         Work around a bug in both the Linux and SunOS 64-bit kernels:
13814         nanosleep mishandles sleeps for longer than 2**31 seconds.
13815         Problem reported by Frank v Waveren in
13816         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
13817         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
13818         Check for nanosleep bug.
13819         (LIB_NANOSLEEP): Append clock_gettime library if needed.
13820
13821 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13822
13823         Work around a bug in both the Linux and SunOS 64-bit kernels:
13824         nanosleep mishandles sleeps for longer than 2**31 seconds.
13825         Problem reported by Frank v Waveren in
13826         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
13827         * lib/nanosleep.c (BILLION): New constant.
13828         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
13829         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
13830         implementation.
13831
13832 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13833
13834         * modules/nanosleep (Depends-on): Add gettime.
13835
13836 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
13837         and Simon Josefsson  <jas@extundo.com>
13838         and Oskar Liljeblad  <oskar@osk.mine.nu>
13839
13840         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
13841         * gnulib-tool (func_import): New license type 'unmodifiable license
13842         text'.
13843         * modules/fdl: Use it.  Longer description.
13844         * module/gpl, module/lgpl: New files.
13845
13846 2006-08-30  Jim Meyering  <jim@meyering.net>
13847
13848         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
13849         shadowing the parameter.
13850
13851 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13852
13853         Sync from Libtool:
13854
13855         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13856
13857         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
13858         sharing with gnulib.  Report by Eric Blake.
13859
13860 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13861
13862         * modules/isapipe: New file.
13863         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
13864
13865 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13866
13867         * modules/configmake (Makefile.am): Add a comment, and omit
13868         the CONFIGMAKE_ prefix from generated macro names.  Suggested
13869         by Bruno Haible.
13870
13871 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13872
13873         * m4/isapipe.m4: New file.
13874
13875 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
13876
13877         * lib/isapipe.c, lib/isapipe.h: New files.
13878
13879 2006-08-29  Jim Meyering  <jim@meyering.net>
13880
13881         * modules/configmake (Makefile.am): Make configmake.h depend on
13882         Makefile.  Otherwise, a stale configmake.h could hang around.
13883
13884 2006-08-29  Eric Blake  <ebb9@byu.net>
13885
13886         * lib/error.c (error_at_line, print_errno_message): Match libc, after
13887         resolution of upstream bug 3044.
13888
13889 2006-08-29  Bruno Haible  <bruno@clisp.org>
13890
13891         * modules/localcharset (Depends-on): Add configmake.
13892         (Makefile.am): Remove setting of LIBDIR through DEFS.
13893
13894 2006-08-29  Bruno Haible  <bruno@clisp.org>
13895
13896         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
13897         defined.
13898
13899 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13900
13901         * modules/fcntl: New file.
13902         * modules/chdir-safer (Depends-on): Add fcntl.
13903         * modules/fts: Likewise.
13904         * modules/mkdir-p: Likewise.
13905
13906         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
13907         This undoes the most recent change, since we're now addressing the
13908         problem in a different way.
13909
13910         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
13911         into output, since the output might be called Makefile.am even
13912         if $makefile_name is something different.
13913         (func_import): Use $makefile_am rather than
13914         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
13915         empty.
13916
13917         * modules/inttypes (Files): Add m4/inttypes-h.m4.
13918
13919 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13920
13921         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
13922         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
13923         recent change to stdint.m4, since we're now addressing the problem in a
13924         different way.
13925
13926 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13927
13928         * m4/fcntl_h.m4: New file.
13929
13930 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
13931
13932         * lib/fcntl_.h: New file.
13933         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
13934         the fcntl module.
13935         * lib/dirchownmod.c: Likewise.
13936         * lib/fts.c: Likewise.
13937
13938         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
13939         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
13940         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
13941         just before including <inttypes.h>, to avoid circular inclusion.
13942
13943 2006-08-28  Jim Meyering  <jim@meyering.net>
13944
13945         * doc/visibility.texi: Actually read and correct the grammar of the
13946         sentence affected by yesterday's change.
13947
13948 2006-08-28  Eric Blake  <ebb9@byu.net>
13949
13950         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
13951         needs wrapper.
13952
13953 2006-08-28  Eric Blake  <ebb9@byu.net>
13954
13955         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
13956
13957 2006-08-28  Eric Blake  <ebb9@byu.net>
13958
13959         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
13960
13961 2006-08-28  Bruno Haible  <bruno@clisp.org>
13962
13963         * modules/c-strstr: New file, from GNU gettext.
13964         * MODULES.html.sh (String handling): Add c-strstr.
13965
13966 2006-08-28  Bruno Haible  <bruno@clisp.org>
13967
13968         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
13969         macros.
13970         Reported by Eric Blake.
13971
13972 2006-08-28  Bruno Haible  <bruno@clisp.org>
13973
13974         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
13975         (VASNPRINTF): Return a string of length > INT_MAX without failing.
13976         * lib/vasprintf.c: Include errno.h, limits.h.
13977         (EOVERFLOW): New fallback definition.
13978         (vasprintf): Test here whether the string length is > INT_MAX.
13979         * lib/vsnprintf.c: Include errno.h, limits.h.
13980         (EOVERFLOW): New fallback definition.
13981         (vsnprintf): Fix bug when generated string was too long for the buffer.
13982         Test here whether the string length is > INT_MAX.
13983
13984 2006-08-28  Bruno Haible  <bruno@clisp.org>
13985
13986         * lib/inttypes_.h (SCNX*): Remove definitions.
13987         Reported by Eric Blake.
13988
13989 2006-08-28  Bruno Haible  <bruno@clisp.org>
13990
13991         * lib/c-strstr.h: New file, from GNU gettext.
13992         * lib/c-strstr.c: New file, from GNU gettext.
13993
13994 2006-08-28  Bruno Haible  <bruno@clisp.org>
13995
13996         * gnulib-tool: Reorder some statements.
13997
13998 2006-08-28  Bruno Haible  <bruno@clisp.org>
13999
14000         * gnulib-tool: New option --makefile-name.
14001         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
14002         $makefile_name.
14003         (func_import): Write $makefile_name to the cache file, and read it from
14004         there unless explicitly specified. Use $makefile_name as file name
14005         instead of Makefile.am. Adjust the recommendations accordingly.
14006
14007 2006-08-28  Bruno Haible  <bruno@clisp.org>
14008
14009         * gnulib-tool (func_verify_module): Check against misapplying patch.
14010
14011 2006-08-28  Bruno Haible  <bruno@clisp.org>
14012
14013         * gnulib-tool (func_relativize, func_relconcat): New functions.
14014         Give an error if --local-dir is given with --update.
14015         Remove trailing slashes from $local_gnulib_dir.
14016         (func_import): Store the relativized $local_gnulib_dir in
14017         gnulib-cache.m4, and read it from there if not specified explicitly.
14018
14019 2006-08-28  Bruno Haible  <bruno@clisp.org>
14020
14021         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
14022         is the current directory. Respect also $local_gnulib_dir.
14023
14024 2006-08-28  Bruno Haible  <bruno@clisp.org>
14025             Simon Josefsson  <jas@extundo.com>
14026
14027         BeOS portability.
14028         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
14029
14030 2006-08-27  Jim Meyering  <jim@meyering.net>
14031
14032         * doc/visibility.texi: Remove duplicate word: "pointer".
14033
14034 2006-08-26  Bruno Haible  <bruno@clisp.org>
14035
14036         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
14037         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
14038         (Makefile.am): Create inttypes.h from inttypes_.h.
14039         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
14040
14041         * modules/imaxabs: New file.
14042
14043         * modules/imaxdiv: New file.
14044
14045 2006-08-26  Bruno Haible  <bruno@clisp.org>
14046
14047         * m4/inttypes.m4: New file.
14048         * m4/_inttypes_h.m4: Remove file.
14049         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
14050         PRI_MACROS_BROKEN.
14051         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
14052
14053         * m4/imaxabs.m4: New file.
14054
14055         * m4/imaxdiv.m4: New file.
14056
14057 2006-08-26  Bruno Haible  <bruno@clisp.org>
14058
14059         * lib/inttypes_.h: New file.
14060         * lib/inttypes.h: Remove file.
14061         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
14062
14063         * lib/imaxabs.c: New file.
14064
14065         * lib/imaxdiv.c: New file.
14066
14067 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
14068
14069         New config-h module, so that "make" output needn't be cluttered
14070         by -DHAVE_CONFIG_H.
14071         * MODULES.html.sh (Support for building libraries and executables):
14072         Add config-h.
14073         * modules/config-h: New file.
14074         * gnulib-tool (nl, sed_transform_lib_file): New vars.
14075         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
14076         the config-h module is used.
14077
14078         New configmake module, so that "make" output needn't be cluttered
14079         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
14080         * MODULES.html.sh (Support for building libraries and executables):
14081         Add configmake.
14082         * modules/configmake: New file.
14083
14084 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
14085
14086         * m4/config-h.m4: New file.
14087
14088 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
14089
14090         * config/srclist.txt: Add elisp-comp.
14091
14092 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
14093
14094         * MODULES.html.sh (Support for building libraries and executables):
14095         Add elisp-comp.
14096         * build-aux/elisp-comp: New file.
14097         * modules/elisp-comp: New file.
14098
14099 2006-08-24  Bruno Haible  <bruno@clisp.org>
14100
14101         * gnulib-tool (func_create_testdir): Use non-default values of
14102         sourcebase and m4base.
14103
14104 2006-08-24  Bruno Haible  <bruno@clisp.org>
14105
14106         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
14107         HTML structure.
14108
14109 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
14110
14111         * modules/openat (Depends-on): Add lchown.
14112
14113 2006-08-23  Bruno Haible  <bruno@clisp.org>
14114
14115         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
14116         of gl_LOCK_EARLY instead of gl_LOCK.
14117
14118 2006-08-23  Bruno Haible  <bruno@clisp.org>
14119
14120         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
14121         on OSF/1 to no.
14122         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
14123
14124 2006-08-23  Bruno Haible  <bruno@clisp.org>
14125
14126         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
14127         as unusable.
14128
14129         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
14130         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
14131         (gl_LOCK): New macro.
14132
14133 2006-08-22  Simon Josefsson  <jas@extundo.com>
14134
14135         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
14136         to md5 module.
14137
14138 2006-08-22  Simon Josefsson  <jas@extundo.com>
14139
14140         * MODULES.html.sh: Add "Support for maintaining and release
14141         projects".
14142
14143         * build-aux/gnupload: New file, from coreutils.
14144
14145 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14146
14147         Avoid the need for AC_LIBSOURCES in m4 macros.
14148         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
14149         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
14150         * modules/check-version (EXTRA_DIST): Add check-version.h.
14151         * modules/crc (EXTRA_DIST): Add crc.h.
14152         * modules/des (EXTRA_DIST): Add des.h.
14153         * modules/gc (EXTRA_DIST): Add gc.h.
14154         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
14155         * modules/getline (EXTRA_DIST): Add getline.h.
14156         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
14157         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
14158         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
14159         * modules/md2 (EXTRA_DIST): Add md2.h.
14160         * modules/md4 (EXTRA_DIST): Add md4.h.
14161         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
14162         * modules/read-file (EXTRA_DIST): Add read-file.h.
14163         * modules/readline (EXTRA_DIST): Add readline.h.
14164         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
14165         rijndael-api-fst.h.
14166
14167 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14168
14169         * m4/rijndael.m4 (gl_ARCFOUR):
14170         * m4/arctwo.m4 (gl_ARCTWO):
14171         * m4/check-version.m4 (gl_CHECK_VERSION):
14172         * m4/crc.m4 (gl_CRC):
14173         * m4/des.m4 (gl_DES):
14174         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
14175         * m4/gc.m4 (gl_GC):
14176         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
14177         * m4/getline.m4 (gl_FUNC_GETLINE):
14178         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
14179         * m4/hmac-md5.m4 (gl_HMAC_MD5):
14180         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
14181         * m4/md2.m4 (gl_MD2):
14182         * m4/md4.m4 (gl_MD4):
14183         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
14184         * m4/read-file.m4 (gl_FUNC_READ_FILE):
14185         * m4/readline.m4 (gl_FUNC_READLINE):
14186         * m4/rijndael.m4 (gl_RIJNDAEL):
14187         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14188         to get the necessary .h files and whatnot.
14189
14190 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
14191
14192         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
14193         gnulib rather than the other way around.
14194         * config/srclistvars.sh (COREUTILS): Remove.
14195
14196 2006-08-22  Jim Meyering  <jim@meyering.net>
14197
14198         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
14199
14200         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
14201
14202 2006-08-22  Eric Blake  <ebb9@byu.net>
14203
14204         * modules/regexprops-generic: New file.
14205         * MODULES.html.sh (Support for building documentation): List it.
14206
14207 2006-08-22  Eric Blake  <ebb9@byu.net>
14208
14209         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
14210         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
14211         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
14212         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
14213
14214 2006-08-22  Bruno Haible  <bruno@clisp.org>
14215
14216         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
14217         and lib_LTLIBRARIES like the other lib_* variables.
14218
14219 2006-08-22  Bruno Haible  <bruno@clisp.org>
14220
14221         * build-aux/x-to-1.in: New file, from GNU gettext.
14222
14223 2006-08-22  Bruno Haible  <bruno@clisp.org>
14224
14225         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
14226         <utmpx.h> exists.
14227
14228 2006-08-22  Bruno Haible  <bruno@clisp.org>
14229
14230         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
14231         <utmpx.h> exists.
14232
14233 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14234
14235         BeOS portability.
14236         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
14237         exist.
14238         Problem reported by Bruno Haible.
14239
14240 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14241
14242         Avoid the need for AC_LIBSOURCES in m4 macros.
14243         * modules/acl (EXTRA_DIST): Add acl.h.
14244         * modules/argmatch (Files): Add m4/argmatch.m4.
14245         (configure.ac): Add gl_ARGMATCH.
14246         (EXTRA_DIST): Renamed from lib_SOURCES, for
14247         consistency with the other modules.  Remove argmatch.c.
14248         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
14249         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
14250         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
14251         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
14252         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
14253         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
14254         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
14255         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
14256         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
14257         * modules/closeout (EXTRA_DIST): Add closeout.h.
14258         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
14259         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
14260         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
14261         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
14262         dirname.h; remove basename.c and stripslash.c.
14263         * modules/exclude (EXTRA_DIST): Add exclude.h.
14264         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
14265         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
14266         * modules/file-type (EXTRA_DIST): Add file-type.h.
14267         * modules/filemode (EXTRA_DIST): Add filemode.h.
14268         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
14269         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
14270         * modules/fpending (EXTRA_DIST): Add __fpending.h.
14271         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
14272         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
14273         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
14274         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
14275         * modules/getdate (EXTRA_DIST): Add getdate.c.
14276         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
14277         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
14278         * modules/getpass (EXTRA_DIST): Add getpass.h.
14279         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
14280         * modules/group-member (EXTRA_DIST): Add group-member.h.
14281         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
14282         * modules/hash (EXTRA_DIST): Add hash.h.
14283         * modules/human (EXTRA_DIST): Add human.h.
14284         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
14285         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
14286         * modules/lchown (EXTRA_DIST): Add lchown.h.
14287         * modules/long-options (EXTRA_DIST): Add long-options.h.
14288         * modules/lstat (EXTRA_DIST): Add lstat.h.
14289         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
14290         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
14291         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
14292         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
14293         * modules/memxor (EXTRA_DIST): Add memxor.h.
14294         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
14295         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
14296         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
14297         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
14298         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
14299         * modules/physmem (EXTRA_DIST): Add physmem.h.
14300         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
14301         * modules/posixver (EXTRA_DIST): Add posixver.h.
14302         * modules/quote (EXTRA_DIST): Add quote.h.
14303         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
14304         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
14305         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
14306         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
14307         regex_internal.h regexec.c.
14308         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
14309         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
14310         * modules/same (EXTRA_DIST): Add same.h.
14311         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
14312         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
14313         * modules/savedir (EXTRA_DIST): Add savedir.h.
14314         * modules/sha1 (EXTRA_DIST): Add sha1.h.
14315         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
14316         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
14317         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
14318         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
14319         * modules/strdup (EXTRA_DIST): Add strdup.h.
14320         * modules/strftime (EXTRA_DIST): Add strftime.h.
14321         * modules/strndup (EXTRA_DIST): Add strndup.h.
14322         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
14323         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
14324         * modules/time_r (EXTRA_DIST): Add time_r.h.
14325         * modules/timespec (EXTRA_DIST): Add timespec.h.
14326         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
14327         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
14328         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
14329         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
14330         * modules/userspec (EXTRA_DIST): Add userspec.h.
14331         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
14332         * modules/utimens (EXTRA_DIST): Add utimens.h.
14333         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
14334         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
14335         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
14336         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
14337         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
14338         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
14339         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
14340         * modules/yesno (EXTRA_DIST): Add yesno.h.
14341
14342 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
14343
14344         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
14345
14346         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
14347         * m4/dev-ino.m4, same-inode.m4: Remove.
14348
14349         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
14350         * m4/acl.m4 (AC_FUNC_ACL):
14351         * m4/backupfile.m4 (gl_BACKUPFILE):
14352         * m4/c-strtod.m4 (gl_C99_STRTOLD):
14353         * m4/canon-host.m4 (gl_CANON_HOST):
14354         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
14355         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
14356         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
14357         * m4/cloexec.m4 (gl_CLOEXEC):
14358         * m4/close-stream.m4 (gl_CLOSE_STREAM):
14359         * m4/closeout.m4 (gl_CLOSEOUT):
14360         * m4/dirfd.m4 (gl_FUNC_DIRFD):
14361         * m4/dirname.m4 (gl_DIRNAME):
14362         * m4/exclude.m4 (gl_EXCLUDE):
14363         * m4/exitfail.m4 (gl_EXITFAIL):
14364         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
14365         * m4/file-type.m4 (gl_FILE_TYPE):
14366         * m4/filemode.m4 (gl_FILEMODE):
14367         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
14368         * m4/fpending.m4 (gl_FUNC_FPENDING):
14369         * m4/fprintftime.m4 (gl_FPRINTFTIME):
14370         * m4/fts.m4 (gl_FUNC_FTS):
14371         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
14372         * m4/getdate.m4 (gl_GETDATE):
14373         * m4/gethrxtime.m4 (gl_GETHRXTIME):
14374         * m4/getpagesize.m4 (gl_GETPAGESIZE):
14375         * m4/getpass.m4 (gl_FUNC_GETPASS):
14376         * m4/gettime.m4 (gl_GETTIME):
14377         * m4/getugroups.m4 (gl_GETUGROUPS):
14378         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
14379         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
14380         * m4/hard-locale.m4 (gl_HARD_LOCALE):
14381         * m4/hash.m4 (gl_HASH):
14382         * m4/idcache.m4 (gl_IDCACHE):
14383         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
14384         * m4/lchown.m4 (gl_FUNC_LCHOWN):
14385         * m4/long-options.m4 (gl_LONG_OPTIONS):
14386         * m4/lstat.m4 (gl_FUNC_LSTAT):
14387         * m4/md5.m4 (gl_MD5):
14388         * m4/memcasecmp.m4 (gl_MEMCASECMP):
14389         * m4/memcoll.m4 (gl_MEMCOLL):
14390         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
14391         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
14392         * m4/memxor.m4 (gl_MEMXOR):
14393         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
14394         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
14395         * m4/modechange.m4 (gl_MODECHANGE):
14396         * m4/mountlist.m4 (gl_MOUNTLIST):
14397         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
14398         * m4/openat.m4 (gl_FUNC_OPENAT):
14399         * m4/pathmax.m4 (gl_PATHMAX):
14400         * m4/physmem.m4 (gl_PHYSMEM):
14401         * m4/posixtm.m4 (gl_POSIXTM):
14402         * m4/posixver.m4 (gl_POSIXVER):
14403         * m4/quote.m4 (gl_QUOTE):
14404         * m4/quotearg.m4 (gl_QUOTEARG):
14405         * m4/readtokens.m4 (gl_READTOKENS):
14406         * m4/readutmp.m4 (gl_READUTMP):
14407         * m4/regex.m4 (gl_REGEX):
14408         * m4/safe-read.m4 (gl_SAFE_READ):
14409         * m4/safe-write.m4 (gl_SAFE_WRITE):
14410         * m4/same.m4 (gl_SAME):
14411         * m4/save-cwd.m4 (gl_SAVE_CWD):
14412         * m4/savedir.m4 (gl_SAVEDIR):
14413         * m4/settime.m4 (gl_SETTIME):
14414         * m4/sha1.m4 (gl_SHA1):
14415         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
14416         * m4/stat-macros.m4 (gl_STAT_MACROS):
14417         * m4/stat-time.m4 (gl_STAT_TIME):
14418         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
14419         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
14420         * m4/strdup.m4 (gl_FUNC_STRDUP):
14421         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
14422         * m4/strndup.m4 (gl_FUNC_STRNDUP):
14423         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
14424         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
14425         * m4/time_r.m4 (gl_TIME_R):
14426         * m4/timespec.m4 (gl_TIMESPEC):
14427         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
14428         * m4/unlinkdir.m4 (gl_UNLINKDIR):
14429         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
14430         * m4/userspec.m4 (gl_USERSPEC):
14431         * m4/utimecmp.m4 (gl_UTIMECMP):
14432         * m4/utimens.m4 (gl_UTIMENS):
14433         * m4/xalloc.m4 (gl_XALLOC):
14434         * m4/xgetcwd.m4 (gl_XGETCWD):
14435         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
14436         * m4/xreadlink.m4 (gl_XREADLINK):
14437         * m4/xstrtod.m4 (gl_XSTRTOD):
14438         * m4/yesno.m4 (gl_YESNO):
14439         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
14440         to get the necessary .h files and whatnot.
14441
14442 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
14443             Bruno Haible  <bruno@clisp.org>
14444
14445         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
14446         /bin/sh understanding of '!' conditional negation.
14447
14448 2006-08-21  Jim Meyering  <jim@meyering.net>
14449
14450         * modules/openat (Depends-on): Really alphabetize.
14451
14452         * modules/acl (Depends-on): Add error and quote.
14453
14454         * check-module (find_included_lib_files): Add at-func.c to the
14455         ok-to-include-more-than-once white list.
14456
14457         * modules/openat (Depends-on): Add lstat.  Alphabetize.
14458
14459 2006-08-21  Bruno Haible  <bruno@clisp.org>
14460
14461         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
14462         Emit a pkgdata_DATA variable only if some snippets add contents to it.
14463         Reported by Martin Lambers <marlam@marlam.de>.
14464
14465 2006-08-21  Bruno Haible  <bruno@clisp.org>
14466
14467         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
14468         specify an installation location, don't emit a noinst_LIBRARIES or
14469         noinst_LTLIBRARIES assignment.
14470
14471 2006-08-21  Bruno Haible  <bruno@clisp.org>
14472
14473         BeOS portability.
14474         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
14475         BeOS has mbrtowc() but no <wctype.h>.
14476
14477 2006-08-21  Bruno Haible  <bruno@clisp.org>
14478
14479         BeOS portability.
14480         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
14481         exist.
14482
14483 2006-08-21  Bruno Haible  <bruno@clisp.org>
14484
14485         BeOS portability.
14486         * lib/mbchar.h: Include <wctype.h> only if it exists.
14487
14488 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14489
14490         Remove files that are no longer needed by their respective modules.
14491         * m4/obstack.m4: Remove.
14492         * m4/strerror_r.m4: Remove.
14493         * m4/uint32_t.m4: Remove.
14494         * m4/uintptr_t.m4: Remove.
14495         * m4/ullong_max.m4: Remove.
14496         * m4/xstrtoimax.m4: Remove.
14497         * m4/xstrtoumax.m4: Remove.
14498
14499         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
14500         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
14501         dependencies now capture this.
14502
14503         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
14504         Do not use AC_LIBSOURCES, since gnulib modules now do this.
14505         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
14506         * m4/human.m4 (gl_HUMAN): Likewise.
14507         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
14508         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
14509
14510         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
14511
14512         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
14513         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
14514         stdint.
14515         * m4/human.m4 (gl_HUMAN): Likewise.
14516         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
14517         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
14518         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14519         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14520         * m4/xstrtol (gl_XSTRTOL): Likewise.
14521
14522         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
14523         AC_TYPE_LONG_LONG_INT.
14524         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
14525         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
14526         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
14527         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
14528
14529         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
14530         on stdbool.
14531
14532         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
14533         (gl_PREREQ_XSTRTOUL): Remove.
14534
14535         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
14536
14537         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
14538         mode.
14539
14540 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14541
14542         Add and change modules to make it easier for coreutils to use
14543         gnulib-tool.
14544         * modules/backupfile (Files): Remove m4/d-ino.m4.
14545         (Depends-on): Add d-ino.
14546         * modules/cycle-check (Depends-on): Add stdint.
14547         (lib_SOURCES): Add cycle-check.h.
14548         * modules/d-ino: New module.
14549         * modules/d-type: New module.
14550         * modules/error (Files): Remove m4/strerror_r.m4.
14551         * modules/filemode (Files): Add m4/st_dm_mode.m4.
14552         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
14553         m4/inttypes_h.m4, m4/uintmax_t.m4.
14554         (Depends-on): Add stdint.
14555         (lib_SOURCES): Add fsusage.h.
14556         * modules/getcwd (Files): Remove d-ino.m4.
14557         (Depends-on): Add d-ino.
14558         * modules/getndelim2 (Depends-on): Add stdint.
14559         * modules/glob (Files): Remove m4/d-type.m4.
14560         (Depends-on): Add d-type.
14561         * modules/host-os: New module.
14562         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
14563         m4/inttypes_h.m4, m4/uintmax_t.m4.
14564         * Depends-on: Add stdint.
14565         (lib_SOURCES): Add human.h.
14566         * modules/inttostr (Files): Remove m4/intmax_t.m4,
14567         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
14568         m4/uintmax_t.m4, m4/ulonglong.m4.
14569         (Depends-on): Add stdint.
14570         (EXTRA_DIST): Add inttostr.h.
14571         * modules/lchmod: New module.
14572         * modules/link-follow: New module.
14573         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
14574         (Depends-on): Add lchmod.
14575         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
14576         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
14577         (Depends-on): Add stdint.
14578         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
14579         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
14580         (Depends-on): Add stdint.
14581         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
14582         * modules/perl: New module.
14583         * modules/regex (Depends-on): Add stdint.
14584         * modules/rmdir-errno: New module.
14585         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
14586         m4/intmax_t.m4.
14587         (Depends-on): Add stdint.
14588         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
14589         m4/uintmax_t.m4.
14590         (Depends-on): Add stdint.
14591         * modules/unlink-busy: New module.
14592         * modules/utimecmp (Depends-on): Add stdint.
14593         * modules/uptime: New module.
14594         * modules/winsz-ioctl: New module.
14595         * modules/winsz-termios: New module.
14596         * modules/xnanosleep (Depends-on): Add nanosleep.
14597         * modules/ullong_max: Remove.
14598         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
14599         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
14600         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
14601         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
14602         (Depends-on): Add inttypes.
14603         (lib_SOURCES): Add xstrtol.h.
14604         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
14605         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
14606         * MODULES.html.sh: Move 'assert' into the assert section.
14607         Move 'dummy' into the linking section.
14608         Remove ullong_max.
14609         Add section for compatibility checks for POSIX:2001 functions,
14610         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
14611         winsz-ioctl, and winsz-termios into it.
14612         Add lchmod.
14613         Add top-level Misc section and put host-os, perl, and uptime
14614         into it.
14615
14616 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
14617
14618         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
14619         now assume the stdint module.  Do not include inttypes.h.
14620         * lib/fsusage.h: Likewise.
14621         * lib/getndelim2.c: Likewise.
14622         * lib/human.h: Likewise.
14623         * lib/inttostr.h: Likewise.
14624         * lib/obstack.c: Likewise.
14625         * lib/regex_internal.h: Likewise.
14626         * lib/tempname.c: Likewise.
14627         * lib/utimecmp.c: Likewise.
14628         * lib/xstrtol.h: Likewise.
14629
14630         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
14631
14632         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
14633         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
14634         * lib/xtime.h: Likewise.
14635
14636 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
14637
14638         * modules/openat (Files): Add lib/fchmodat.c.
14639         Fixes problem reported by Jay Youngman.
14640
14641 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
14642
14643         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
14644         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
14645
14646 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
14647             Bruno Haible  <bruno@clisp.org>
14648
14649         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
14650         and is a script that invokes bison. Tighten the code. Add comments.
14651
14652 2006-08-18  Jim Meyering  <jim@meyering.net>
14653
14654         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
14655         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
14656         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
14657         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
14658
14659 2006-08-18  Bruno Haible  <bruno@clisp.org>
14660
14661         * modules/bison-i18n: New file.
14662         * MODULES.html.sh (Internationalization functions): Add it.
14663
14664 2006-08-18  Bruno Haible  <bruno@clisp.org>
14665
14666         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
14667         sys/statvfs.h. When getmntinfo was found, check its declaration and
14668         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
14669
14670 2006-08-18  Bruno Haible  <bruno@clisp.org>
14671
14672         * m4/bison-i18n.m4: New file, from bison.
14673
14674 2006-08-18  Bruno Haible  <bruno@clisp.org>
14675
14676         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
14677         (ME_DUMMY): Treat "kernfs" as a dummy.
14678         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
14679
14680 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
14681
14682         Update from coreutils.
14683
14684         2006-08-15  Jim Meyering  <jim@meyering.net>
14685
14686         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
14687
14688         2006-01-17  Jim Meyering  <jim@meyering.net>
14689
14690         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
14691
14692         2006-01-11  Jim Meyering  <jim@meyering.net>
14693
14694         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
14695         Check for the lchmod function.
14696
14697 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
14698
14699         Update from coreutils.
14700
14701         * lib/__fpending.h: Add copyright notice.
14702         * lib/fprintftime.h: Likewise.
14703         * lib/savedir.c: Use (C) in copyright notice.
14704         * lib/savedir.h: Likewise.
14705
14706         2006-08-15  Jim Meyering  <jim@meyering.net>
14707
14708         * lib/at-func.c: New file, with the logic of all emulated at-functions.
14709         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
14710         in support of the EXPECTED_ERRNO macro.
14711         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
14712         definitions.  Instead, define the appropriate symbols and include
14713         "at-func.c".
14714         * lib/mkdirat.c (mkdirat): Likewise.
14715         * lib/fchmodat.c (fchmodat): Likewise.
14716         (ENOSYS): Remove definition.
14717         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
14718         it.  Don't include "unistd--.h" -- it wasn't ever used.
14719
14720         2006-01-17  Jim Meyering  <jim@meyering.net>
14721
14722         Rewrite fts.c not to change the current working directory,
14723         by using openat, fstatat, fdopendir, etc..
14724
14725         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
14726         (HAVE_OPENAT_SUPPORT): Define.
14727         [_LIBC] (fchdir): Don't undef or define; no longer used.
14728         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
14729         Now, this `function' always succeeds, and consumes its file descriptor
14730         parameter -- so callers must not close such FDs.  Update callers.
14731         (diropen_fd, opendirat, cwd_advance_fd): New functions.
14732         (diropen): Add parameter, SP.  Adjust all callers.
14733         Implement using diropen_fd, rather than open.
14734         (fts_open): Initialize new member, fts_cwd_fd.
14735         Remove fts_rft-setting code.
14736         (fts_close): Close fts_cwd_fd, if necessary.
14737         (__opendir2): Define in terms of opendir or opendirat,
14738         depending on whether the FST_NOCHDIR flag is set.
14739         (fts_build): Since fts_safe_changedir consumes its FD, and since
14740         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
14741         and close the dup'd file descriptor upon failure.
14742         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
14743         (fts_safe_changedir): Tweak semantics to reflect that this function
14744         now calls cwd_advance_fd and hence consumes its FD argument.
14745         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
14746         [struct FTS] (fts_rft): Remove now-unused member.
14747         [struct FTS] (fts_cycle.state): Improve comment.
14748
14749         * lib/openat.c (openat_needs_fchdir): New function.
14750         * lib/openat.h (openat_needs_fchdir): Declare it.
14751
14752 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
14753
14754         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
14755         Problem and fix reported by Pádraig Brady in
14756         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
14757
14758 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14759
14760         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
14761
14762 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14763
14764         * lib/memcoll.c (memcoll): Optimize for the common case where the
14765         arguments are bytewise equal.
14766
14767 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14768
14769         * doc/regexprops-generic.texi: Add a copyright notice.
14770
14771 2006-08-15  Bruno Haible  <bruno@clisp.org>
14772
14773         * modules/tmpdir (License): Change to LGPL.
14774
14775 2006-08-15  Bruno Haible  <bruno@clisp.org>
14776
14777         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
14778         module.
14779
14780 2006-08-14  Simon Josefsson  <jas@extundo.com>
14781
14782         * config/srclist.txt: Add gnupload.
14783
14784 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14785
14786         Change copyright notice from LGPL 2 to GPL 2, since that's the
14787         standard form used in the gnulib repository.
14788         * tests/test-lock.c: Likewise.
14789         * tests/test-stdint.c: Likewise.
14790         * tests/test-tls.c: Likewise.
14791
14792         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
14793         prelude-manager.  User shorter URLs for GNU projects, without '?'.
14794         Add copyright notice.
14795
14796         * check-module: Add copyright notice.  Output a copyright
14797         notice if "--version" is specified.
14798         * modules/COPYING: New file.
14799         * tests/test-getaddrinfo.c: Add copyright notice.
14800         * tests/test-verify.c: Likewise.
14801
14802 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14803
14804         Change copyright notice from LGPL 2 to GPL 2, since that's the
14805         standard form used in the gnulib repository.
14806         * lib/lock.c: LGPL -> GPL.
14807         * lib/lock.h: Likewise.
14808         * lib/strnlen1.c: Likewise.
14809         * lib/strnlen1.h: Likewise.
14810         * lib/tls.c: Likewise.
14811         * lib/tls.h: Likewise.
14812         * lib/tmpdir.c: Likewise.
14813
14814         * lib/TODO: Remove; this belongs only in coreutils.
14815
14816 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14817
14818         Add copyright notices to long-enough files that lack them, since
14819         otherwise the files aren't clearly free.  Use the same notice that
14820         getdate.texi already uses.
14821         * doc/alloca-opt.texi: Add copyright notice.
14822         * doc/alloca.texi: Likewise.
14823         * doc/ctime.texi: Likewise.
14824         * doc/functions.texi: Likewise.
14825         * doc/gcd.texi: Likewise.
14826         * doc/gnulib-tool.texi: Likewise.
14827         * doc/inet_ntoa.texi: Likewise.
14828         * doc/visibility.texi: Likewise.
14829
14830         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
14831         * doc/quote.texi: Add copyright notice.
14832
14833         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
14834         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
14835         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
14836         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
14837         is now obsolete, and give a pointer to the Sun list.
14838         Add copyright notice.
14839
14840 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14841
14842         * config/srclistvars.sh: Add copyright notice.
14843
14844 2006-08-14  Eric Blake  <ebb9@byu.net>
14845
14846         Import the following change from libc:
14847
14848         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
14849
14850         Upstream bug 2997.
14851         * lib/misc/error.c: Add space between program name and message if file
14852         name is missing.
14853
14854 2006-08-12  Karl Berry  <karl@gnu.org>
14855
14856         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
14857         remove, these originate in gnulib now.
14858
14859 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14860
14861         * doc/Makefile (standards.info standards.html standards.dvi):
14862         Also depend on make-stds.texi.
14863
14864 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
14865
14866         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
14867         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
14868
14869         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
14870         in wchar_t.  Problem reported by Eric Blake.
14871
14872         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
14873         LEN is smaller than SIZE.  Suggested by Bruno Haible.
14874         Also, help the compiler to keep LEN in a register.
14875
14876 2006-08-11  Eric Blake  <ebb9@byu.net>
14877
14878         * users.txt: Sort.  Add tar.
14879
14880 2006-08-11  Bruno Haible  <bruno@clisp.org>
14881
14882         * users.txt: New file.
14883
14884 2006-08-11  Bruno Haible  <bruno@clisp.org>
14885
14886         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
14887         before <wchar.h>. Needed for OSF/1 and BSD/OS.
14888
14889 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14890
14891         * modules/snprintf (Depends-on): Remove minmax.
14892         (Maintainer): Add self and Bruno.
14893
14894 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14895
14896         * lib/.cppi-disable: Add snprintf.h, socket_.h.
14897         * lib/snprintf.c: Include <errno.h> and <limits.h>.
14898         (EOVERFLOW): Define if the system does not.
14899         Do not include "minmax.h"; it wasn't used.
14900         (snprintf): Don't assume size_t promotes to an unsigned type.
14901         Fix bug when generated string was too long for the buffer: the
14902         buffer's contents are supposed to be the initial prefix of the
14903         output.  Don't assume vasnprintf returns EOVERFLOW if the size
14904         exceeds INT_MAX; do the check ourselves.
14905
14906         Import the following changes from libc:
14907
14908         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
14909
14910         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
14911         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
14912         set wc to the byte which couldn't be converted.
14913         (re_string_reconstruct): Don't clear valid_raw_len before calling
14914         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
14915         tip_context using re_string_context_at.
14916
14917         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
14918
14919         * lib/posix/regex.h: g++ still cannot handled [restrict].
14920
14921         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
14922
14923         * lib/posix/regex.h: Remove special handling for VMS.
14924
14925 2006-08-10  Jim Meyering  <jim@meyering.net>
14926
14927         * modules/same-inode: New module.
14928         * modules/dev-ino: New module.
14929         * modules/cycle-check: Depend on these modules, rather than simply
14930         including their .h files.
14931         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
14932         required via m4/cycle-check.m4.
14933         * modules/same: Depend on new same-inode module, rather than
14934         including same-inode.h.
14935         * modules/chdir-safer: New file.
14936
14937         * modules/chown (Depends-on): Add stat-macros.
14938
14939 2006-08-10  Jim Meyering  <jim@meyering.net>
14940
14941         * m4/cycle-check.m4: New file.
14942         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
14943         * m4/dev-ino.m4, m4/same-inode.m4: New files.
14944
14945 2006-08-10  Eric Blake  <ebb9@byu.net>
14946
14947         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
14948         in from original proposal.
14949
14950 2006-08-10  Eric Blake  <ebb9@byu.net>
14951         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
14952
14953         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
14954         namespace.
14955
14956 2006-08-10  Bruno Haible  <bruno@clisp.org>
14957
14958         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
14959         as well.
14960
14961 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14962
14963         Sync from coreutils.
14964
14965         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
14966
14967         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
14968         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
14969
14970 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14971
14972         * modules/restrict: Remove; no longer needed now that we assume
14973         Autoconf 2.59 or later.
14974         * MODULES.html.sh: Remove 'restrict'.
14975         * modules/argp (Depends-on): Remove 'restrict'.
14976         * modules/base64 (Depends-on): Likewise.
14977         * modules/gc (Depends-on): Likewise.
14978         * modules/getaddrinfo (Depends-on): Likewise.
14979         * modules/glob (Depends-on): Likewise.
14980         * modules/inet_ntop (Depends-on): Likewise.
14981         * modules/inet_pton (Depends-on): Likewise.
14982         * modules/memxor (Depends-on): Likewise.
14983         * modules/regex (Depends-on): Likewise.
14984         * modules/strtok_r (Depends-on): Likewise.
14985         * modules/time_r (Depends-on): Likewise.
14986
14987 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
14988
14989         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
14990         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
14991         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
14992         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
14993         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
14994         * m4/memxor.m4 (gl_MEMXOR): Likewise.
14995         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
14996         gl_C_RESTRICT replaced by AC_C_RESTRICT.
14997
14998         Merge from coreutils.
14999         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
15000         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
15001         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
15002         * m4/time_r.m4 (gl_TIME_R): Likewise.
15003
15004 2006-08-09  Karl Berry  <karl@gnu.org>
15005
15006         * config/srclist.txt: no more gettext-tools, per Bruno.
15007
15008 2006-08-08  Eric Blake  <ebb9@byu.net>
15009
15010         * modules/verror: New module.
15011         * MODULES.html.sh: Document it.
15012
15013 2006-08-08  Eric Blake  <ebb9@byu.net>
15014
15015         * lib/verror.h, lib/verror.c: New files.
15016
15017 2006-08-08  Eric Blake  <ebb9@byu.net>
15018
15019         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
15020         verror_at_line output complies with GNU Coding Standards even when
15021         file is NULL.
15022
15023 2006-08-07  Bruno Haible  <bruno@clisp.org>
15024
15025         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
15026         versions of AIX.
15027         Reported by Ralf Wildenhues.
15028
15029 2006-08-07  Bruno Haible  <bruno@clisp.org>
15030
15031         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
15032         in an AC_DEFUN. Needed so that the autoconf snippets can use
15033         AC_REQUIRE.
15034
15035 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15036
15037         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15038         Initialize pkgdata_DATA.
15039         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
15040         overriding it.
15041
15042 2006-08-06  Eric Blake  <ebb9@byu.net>
15043
15044         * lib/error.h: Fold in some upstream changes from glibc.
15045         * lib/error.c: Likewise.
15046
15047 2006-08-04  Bruno Haible  <bruno@clisp.org>
15048
15049         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15050         Make the mostlyclean-local rule depend on mostlyclean-generic.
15051         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
15052
15053 2006-07-31  Bruno Haible  <bruno@clisp.org>
15054
15055         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
15056         <stdlib.h>, <string.h>.
15057
15058 2006-07-30  Bruno Haible  <bruno@clisp.org>
15059
15060         * modules/readlink (License): Change to LGPL.
15061
15062 2006-07-30  Bruno Haible  <bruno@clisp.org>
15063
15064         * modules/javaversion (Makefile.am): Distribute javaversion.java and
15065         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
15066         set PKGDATADIR to point to it.
15067
15068 2006-07-30  Bruno Haible  <bruno@clisp.org>
15069
15070         * modules/csharpexec (configure.ac): Comment out macro invocation.
15071         * modules/javaexec (configure.ac): Likewise.
15072         * modules/javacomp-script (configure.ac): Likewise.
15073
15074         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
15075
15076 2006-07-30  Bruno Haible  <bruno@clisp.org>
15077
15078         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
15079         linked-list.
15080
15081 2006-07-30  Bruno Haible  <bruno@clisp.org>
15082
15083         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
15084
15085 2006-07-30  Bruno Haible  <bruno@clisp.org>
15086
15087         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15088         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
15089         get removed.
15090
15091 2006-07-29  Bruno Haible  <bruno@clisp.org>
15092
15093         Make it possible for gnulib-tool to work with locally modified or
15094         augmented gnulib repositories.
15095         * gnulib-tool (func_usage): Document --local-dir option.
15096         (local_gnulib_dir): New variable.
15097         Handle --local-dir option.
15098         (func_lookup_file): New function.
15099         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
15100         (func_get_description, func_get_filelist, func_get_description,
15101         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
15102         func_get_automake_snippet, func_get_include_directive,
15103         func_get_license, func_get_maintainer): Use func_lookup_file.
15104         (func_import, func_create_testdir): Use func_lookup_file.
15105
15106 2006-07-29  Bruno Haible  <bruno@clisp.org>
15107
15108         * modules/setenv (Depends-on): Add unistd.
15109
15110 2006-07-29  Bruno Haible  <bruno@clisp.org>
15111
15112         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
15113
15114 2006-07-29  Bruno Haible  <bruno@clisp.org>
15115
15116         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
15117
15118 2006-07-29  Bruno Haible  <bruno@clisp.org>
15119
15120         * gnulib-tool (import, update): If there is no Makefile.am, look at
15121         aclocal.m4, instead of bailing out.
15122
15123 2006-07-29  Bruno Haible  <bruno@clisp.org>
15124
15125         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
15126         Categorize the options by when they are useful.
15127
15128 2006-07-29  Bruno Haible  <bruno@clisp.org>
15129
15130         * gnulib-tool (func_usage): Document option --no-libtool.
15131         Handle option --no-libtool.
15132         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
15133         for changed semantics of $libtool variable.
15134         (func_import): Likewise. If libtool is not used, show this through
15135         an option --no-libtool.
15136         (func_create_testdir): Update.
15137
15138 2006-07-29  Bruno Haible  <bruno@clisp.org>
15139
15140         * gnulib-tool (func_import): Extend error message about missing
15141         --doc-base.
15142
15143 2006-07-29  Bruno Haible  <bruno@clisp.org>
15144
15145         * gnulib-tool (func_import): Don't create the $docbase directory if
15146         there is no file to store there.
15147
15148 2006-07-29  Bruno Haible  <bruno@clisp.org>
15149
15150         * gnulib-tool (autoconf_minversion): If a --dir option is given and
15151         relevant, look for configure.ac there, not in the current directory.
15152         Also use a simple search for AC_PREREQ, not "autoconf --trace".
15153
15154 2006-07-29  Bruno Haible  <bruno@clisp.org>
15155
15156         * gnulib-tool (SORT): New variable.
15157         (func_usage): Undocument --assume-autoconf option.
15158         Remove --assume-autoconf option handling.
15159         (autoconf_minversion): Determine from the contents of configure.ac.
15160         (func_import): Remove autoconf_minversion handling.
15161         Suggested by Eric Blake.
15162
15163 2006-07-29  Bruno Haible  <bruno@clisp.org>
15164
15165         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
15166
15167 2006-07-29  Bruno Haible  <bruno@clisp.org>
15168
15169         * config/srclist.txt (*setenv.[ch]): Remove rules.
15170
15171 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15172
15173         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
15174
15175 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15176
15177         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
15178         arpa/inet.h.
15179
15180 2006-07-28  Simon Josefsson  <jas@extundo.com>
15181
15182         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
15183         * modules/inet_pton (Depends-on): Likewise.
15184
15185 2006-07-28  Simon Josefsson  <jas@extundo.com>
15186
15187         * m4/netinet_in_h.m4: New file.
15188
15189 2006-07-28  Simon Josefsson  <jas@extundo.com>
15190
15191         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
15192         #include's.
15193
15194 2006-07-28  Simon Josefsson  <jas@extundo.com>
15195
15196         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
15197         #include's.
15198
15199 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
15200
15201         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
15202         setgid on directories only if they set these bits.
15203         * lib/modechange.h: Remove obsolete comment about masks.
15204
15205 2006-07-28  Eric Blake  <ebb9@byu.net>
15206
15207         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
15208         macro expansion.
15209
15210 2006-07-28  Bruno Haible  <bruno@clisp.org>
15211
15212         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
15213
15214 2006-07-28  Bruno Haible  <bruno@clisp.org>
15215
15216         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
15217
15218 2006-07-28  Bruno Haible  <bruno@clisp.org>
15219
15220         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
15221         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
15222         Define fallbacks.
15223         Avoids link error on FreeBSD 4.x.
15224         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
15225
15226         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
15227         encoding.
15228         * lib/mbswidth.c (iswcntrl): Likewise.
15229
15230 2006-07-27  Bruno Haible  <bruno@clisp.org>
15231
15232         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
15233         test.
15234
15235 2006-07-27  Bruno Haible  <bruno@clisp.org>
15236
15237         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
15238         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
15239         defined.
15240
15241 2006-07-26  Eric Blake  <ebb9@byu.net>
15242
15243         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
15244
15245 2006-07-26  Eric Blake  <ebb9@byu.net>
15246
15247         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
15248         like mingw that lack mkstemp.
15249         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
15250         avoid compilation warning on mingw.
15251
15252 2006-07-26  Bruno Haible  <bruno@clisp.org>
15253
15254         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
15255         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
15256         INT_FAST*_MIN, INTPTR_MIN.
15257
15258 2006-07-25  Bruno Haible  <bruno@clisp.org>
15259
15260         * modules/version-etc (Depends-on): Add stdarg.
15261
15262 2006-07-25  Bruno Haible  <bruno@clisp.org>
15263
15264         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
15265         complex commands.
15266
15267 2006-07-25  Bruno Haible  <bruno@clisp.org>
15268
15269         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
15270         defined in <stdarg.h> or config.h.
15271
15272 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
15273
15274         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
15275         (gl_STDIO_SAFER): Remove.
15276
15277 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
15278
15279         * MODULES.html.sh (File stream based Input/Output):
15280         Add fopen-safer, tmpfile-safer; remove stdio-safer.
15281         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
15282         * modules/fopen-safer, modules/tmpfile-safer: New files.
15283         * modules/stdio-safer: Remove.
15284
15285 2006-07-24  Bruno Haible  <bruno@clisp.org>
15286
15287         * modules/tmpdir: New file.
15288         * MODULES.html.sh (File system functions): Add it.
15289
15290 2006-07-24  Bruno Haible  <bruno@clisp.org>
15291
15292         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
15293         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
15294
15295 2006-07-24  Bruno Haible  <bruno@clisp.org>
15296
15297         * modules/clean-temp: New file.
15298
15299 2006-07-24  Bruno Haible  <bruno@clisp.org>
15300
15301         * m4/tmpdir.m4: New file, from GNU gettext.
15302
15303 2006-07-24  Bruno Haible  <bruno@clisp.org>
15304
15305         * lib/tmpdir.h: New file, from GNU gettext.
15306         * lib/tmpdir.c: New file, from GNU gettext.
15307
15308 2006-07-24  Bruno Haible  <bruno@clisp.org>
15309
15310         * lib/clean-temp.h: New file, from GNU gettext.
15311         * lib/clean-temp.c: New file, from GNU gettext.
15312
15313 2006-07-23  Eric Blake  <ebb9@byu.net>
15314
15315         * modules/stdio-safer (Files): Add tmpfile-safer.c.
15316         (Depends-on): Add binary-io.
15317
15318 2006-07-23  Eric Blake  <ebb9@byu.net>
15319
15320         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
15321
15322 2006-07-23  Eric Blake  <ebb9@byu.net>
15323
15324         * lib/tmpfile-safer.c: New file.
15325         * lib/stdio-safer.h (fopen_safer): Add prototype.
15326         * lib/stdio--.h (tmpfile): Make safer.
15327
15328 2006-07-23  Bruno Haible  <bruno@clisp.org>
15329
15330         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
15331         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
15332         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
15333         gl_linked_remove_at): Use it.
15334
15335 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
15336         and Simon Josefsson <jas@extundo.com>
15337
15338         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
15339
15340         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
15341
15342 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15343
15344         * modules/close-stream: New file.
15345         * modules/closeout (Description): Make it clear that it exits
15346         with a diagnostic on error.
15347         (Depends-on): Add close-stream.  Remove fpending, stdbool.
15348         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
15349
15350 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15351
15352         * m4/close-stream.m4: New file.
15353
15354 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
15355
15356         * lib/close-stream.c, lib/close-stream.h: New files.
15357
15358 2006-07-22  Bruno Haible  <bruno@clisp.org>
15359
15360         Merge from GNU gettext 0.15.
15361
15362         2006-05-01  Bruno Haible  <bruno@clisp.org>
15363
15364                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
15365
15366         2006-07-22  Bruno Haible  <bruno@clisp.org>
15367
15368                 * modules/javaversion: New file.
15369                 * MODULES.html.sh (Java): Add javaversion.
15370
15371         2006-03-12  Bruno Haible  <bruno@clisp.org>
15372
15373                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
15374
15375         2005-12-04  Bruno Haible  <bruno@clisp.org>
15376
15377                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
15378                 (untested).
15379
15380         2006-06-21  Bruno Haible  <bruno@clisp.org>
15381
15382                 Avoid warnings from recent versions of mcs.
15383                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
15384                 -o, -L, -r any more. Use options documented since mcs-1.0
15385                 instead. Similarly for -g.
15386
15387         2005-12-04  Bruno Haible  <bruno@clisp.org>
15388
15389                 * build-aux/csharpcomp.sh.in: Suffix for resources is
15390                 .resources, not .resource.
15391
15392         2005-07-09  Bruno Haible  <bruno@clisp.org>
15393
15394                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
15395                 add a .dll suffix.
15396                 Reported by Mark Junker <mjscod@gmx.de>.
15397
15398         2006-07-22  Bruno Haible  <bruno@clisp.org>
15399
15400                 * modules/gettext: Upgrade to gettext-0.15.
15401                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
15402                 m4/visibility.m4.
15403                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
15404
15405 2006-07-22  Bruno Haible  <bruno@clisp.org>
15406
15407         Merge from GNU gettext 0.15.
15408
15409         2006-03-25  Bruno Haible  <bruno@clisp.org>
15410
15411                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
15412
15413         2006-07-21  Bruno Haible  <bruno@clisp.org>
15414
15415                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
15416                 "1.1".
15417
15418         2006-05-09  Bruno Haible  <bruno@clisp.org>
15419
15420                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
15421                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
15422                 for the conftestver execution.
15423
15424         2006-05-01  Bruno Haible  <bruno@clisp.org>
15425
15426                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
15427                 optional target-version argument. Verify that the compiler
15428                 groks source of the specified source-version, or add -source
15429                 option as necessary. Verify that the compiler produces
15430                 bytecode in the specified target-version, or add -target and
15431                 -source options as necessary. Make the result of the test
15432                 available as variable CONF_JAVAC. Also log error output in
15433                 config.log.
15434
15435         2006-03-11  Bruno Haible  <bruno@clisp.org>
15436
15437                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
15438
15439         2006-05-09  Bruno Haible  <bruno@clisp.org>
15440
15441                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
15442                 CLASSPATH_SEPARATOR to a semicolon.
15443
15444         2006-03-12  Bruno Haible  <bruno@clisp.org>
15445
15446                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
15447                 available as variable CONF_JAVA, for subsequent autoconf
15448                 tests. Also log error output in config.log.
15449
15450         2006-07-19  Bruno Haible  <bruno@clisp.org>
15451
15452                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
15453                 that getline works on glibc2 systems. Needed to avoid trouble
15454                 in relocatable.c.
15455                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
15456
15457         2005-12-04  Bruno Haible  <bruno@clisp.org>
15458
15459                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
15460                 launcher (untested).
15461
15462         2005-12-04  Bruno Haible  <bruno@clisp.org>
15463
15464                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
15465
15466         2006-07-22  Bruno Haible  <bruno@clisp.org>
15467
15468                 * gettext.m4: Update from GNU gettext-0.15.
15469                 * nls.m4: Likewise.
15470                 * po.m4: Likewise.
15471                 * inttypes-pri.m4: Likewise.
15472                 * inttypes-h.m4: Renamed from inttypes.m4.
15473                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
15474
15475 2006-07-22  Bruno Haible  <bruno@clisp.org>
15476
15477         Merge from GNU gettext 0.15.
15478
15479         2005-07-05  Bruno Haible  <bruno@clisp.org>
15480
15481                 * printf-args.c (printf_fetchargs): Work around broken
15482                 definition of wint_t on mingw.
15483
15484         2005-02-12  Bruno Haible  <bruno@clisp.org>
15485
15486                 * xallocsa.h: Add extern "C" for C++.
15487
15488         2006-05-17  Bruno Haible  <bruno@clisp.org>
15489
15490                 Cygwin portability.
15491                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
15492
15493         2006-04-30  Bruno Haible  <bruno@clisp.org>
15494
15495                 * progreloc.c: Include <mach-o/dyld.h> if available.
15496                 (find_executable): Use _NSGetExecutablePath when possible.
15497
15498         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
15499
15500                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
15501                 function.
15502
15503         2005-12-29  Bruno Haible  <bruno@clisp.org>
15504
15505                 * progreloc.c (set_program_name_and_installdir): Fix
15506                 compilation error.
15507
15508         2005-12-04  Bruno Haible  <bruno@clisp.org>
15509
15510                 Cygwin portability.
15511                 * progreloc.c: Include <windows.h> also on Cygwin.
15512                 (find_executable): Add support for Cygwin.
15513                 (set_program_name_and_installdir): Handle also platforms with
15514                 nonempty EXEEXT.
15515
15516         2006-07-11  Bruno Haible  <bruno@clisp.org>
15517
15518                 * javacomp.c: Fix a comment.
15519                 Reported by Jim Meyering.
15520
15521         2006-04-30  Bruno Haible  <bruno@clisp.org>
15522
15523                 * javacomp.h (compile_java_class): Add source_version,
15524                 target_version arguments.
15525                 * javacomp.c: Rewritten to choose only a compiler that
15526                 respects the specified source_version and target_version.
15527
15528         2006-06-27  Bruno Haible  <bruno@clisp.org>
15529
15530                 Assume correct S_ISDIR macro.
15531                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
15532
15533         2006-07-22  Bruno Haible  <bruno@clisp.org>
15534
15535                 * javaversion.h: New file, from GNU gettext.
15536                 * javaversion.c: New file, from GNU gettext.
15537                 * javaversion.java: New file, from GNU gettext.
15538                 * javaversion.class: New file, from GNU gettext.
15539
15540         2006-05-17  Bruno Haible  <bruno@clisp.org>
15541
15542                 Cygwin portability.
15543                 * javaexec.c (execute_java_class): Test for jview program
15544                 also on Cygwin.
15545
15546         2006-04-09  Bruno Haible  <bruno@clisp.org>
15547
15548                 * fatal-signal.c: Don't include string.h.
15549                 (at_fatal_signal): Use a copying loop instead of memcpy.
15550
15551         2005-12-04  Bruno Haible  <bruno@clisp.org>
15552
15553                 * csharpexec.c: Add support for 'clix' launcher (untested).
15554                 (execute_csharp_using_sscli): New function.
15555                 (execute_csharp_program): Call it.
15556
15557         2006-06-21  Bruno Haible  <bruno@clisp.org>
15558
15559                 Avoid warnings from recent versions of mcs.
15560                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
15561                 -o, -L, -r any more. Use options documented since mcs-1.0
15562                 instead. Similarly for -g.
15563
15564         2005-07-09  Bruno Haible  <bruno@clisp.org>
15565
15566                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
15567                 add a .dll suffix.
15568                 Reported by Mark Junker <mjscod@gmx.de>.
15569
15570         2006-06-17  Bruno Haible  <bruno@clisp.org>
15571
15572                 * config.charset: Update for NetBSD 3.0.
15573
15574         2006-05-17  Bruno Haible  <bruno@clisp.org>
15575
15576                 Cygwin portability.
15577                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
15578
15579         2006-05-16  Bruno Haible  <bruno@clisp.org>
15580
15581                 * localcharset.c [CYGWIN]: Include <windows.h>.
15582                 (get_charset_aliases): For Cygwin, return the same CPxxx
15583                 aliases list as under WIN32.
15584                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
15585                 the environment variables. Fall back to GetACP().
15586
15587         2006-04-05  Bruno Haible  <bruno@clisp.org>
15588
15589                 * config.charset: Update Juan Manuel Guerrero's address.
15590
15591         2005-02-12  Bruno Haible  <bruno@clisp.org>
15592
15593                 * allocsa.h: Add extern "C" for C++.
15594
15595         2005-02-10  Bruno Haible  <bruno@clisp.org>
15596
15597                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
15598                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
15599
15600         2006-07-22  Bruno Haible  <bruno@clisp.org>
15601
15602                 * gettext.h: Update to GNU gettext-0.15.
15603
15604 2006-07-22  Bruno Haible  <bruno@clisp.org>
15605
15606         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
15607         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
15608         lib-prefix.m4, longdouble.m4, ssize_t.m4.
15609
15610 2006-07-21  Eric Blake  <ebb9@byu.net>
15611
15612         * modules/stdlib-safer: New file.
15613         * MODULES.html.sh (File stream based Input/Output): Add
15614         stdlib-safer.
15615
15616 2006-07-21  Eric Blake  <ebb9@byu.net>
15617
15618         * lib/stdlib-safer.h: New file from coreutils, required by
15619         stdlib--.h.
15620
15621 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
15622
15623         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
15624
15625 2006-07-20  Bruno Haible  <bruno@clisp.org>
15626
15627         * gnulib-tool: Recognize new option --assume-autoconf.
15628         (autoconf_minversion): New variable.
15629         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
15630
15631 2006-07-20  Bruno Haible  <bruno@clisp.org>
15632
15633         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
15634
15635 2006-07-19  Derek R. Price  <derek@ximbiot.com>
15636
15637         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
15638         Reindent and repaginate.
15639
15640 2006-07-19  Derek Price  <derek@ximbiot.com>
15641
15642         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
15643         Correct grammar.
15644
15645 2006-07-17  Bruno Haible  <bruno@clisp.org>
15646
15647         * modules/list: New file.
15648         * modules/array-list: New file.
15649         * modules/carray-list, modules/carray-list-tests: New files.
15650         * modules/linked-list, modules/linked-list-tests: New files.
15651         * modules/avltree-list, modules/avltree-list-tests: New files.
15652         * modules/rbtree-list, modules/rbtree-list-tests: New files.
15653         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
15654         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
15655         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
15656         * modules/oset: New file.
15657         * modules/array-oset: New file.
15658         * modules/avltree-oset, modules/avltree-oset-tests: New files.
15659         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
15660         * tests/test-carray_list.c: New file.
15661         * tests/test-linked_list.c: New file.
15662         * tests/test-avltree_list.c: New file.
15663         * tests/test-rbtree_list.c: New file.
15664         * tests/test-linkedhash_list.c: New file.
15665         * tests/test-avltreehash_list.c: New file.
15666         * tests/test-rbtreehash_list.c: New file.
15667         * tests/test-avltree_oset.c: New file.
15668         * tests/test-rbtree_oset.c: New file.
15669         * MODULES.html.sh (Container data structures): New section.
15670
15671 2006-07-17  Bruno Haible  <bruno@clisp.org>
15672
15673         * m4/gl_list.m4: New file.
15674
15675 2006-07-17  Bruno Haible  <bruno@clisp.org>
15676
15677         * lib/gl_list.h: New file.
15678         * lib/gl_list.c: New file.
15679         * lib/gl_array_list.h: New file.
15680         * lib/gl_array_list.c: New file.
15681         * lib/gl_carray_list.h: New file.
15682         * lib/gl_carray_list.c: New file.
15683         * lib/gl_linked_list.h: New file.
15684         * lib/gl_linked_list.c: New file.
15685         * lib/gl_anylinked_list1.h: New file.
15686         * lib/gl_anylinked_list2.h: New file.
15687         * lib/gl_avltree_list.h: New file.
15688         * lib/gl_avltree_list.c: New file.
15689         * lib/gl_anyavltree_list1.h: New file.
15690         * lib/gl_anyavltree_list2.h: New file.
15691         * lib/gl_rbtree_list.h: New file.
15692         * lib/gl_rbtree_list.c: New file.
15693         * lib/gl_anyrbtree_list1.h: New file.
15694         * lib/gl_anyrbtree_list2.h: New file.
15695         * lib/gl_anytree_list1.h: New file.
15696         * lib/gl_anytree_list2.h: New file.
15697         * lib/gl_linkedhash_list.h: New file.
15698         * lib/gl_linkedhash_list.c: New file.
15699         * lib/gl_anyhash_list1.h: New file.
15700         * lib/gl_anyhash_list2.h: New file.
15701         * lib/gl_avltreehash_list.h: New file.
15702         * lib/gl_avltreehash_list.c: New file.
15703         * lib/gl_rbtreehash_list.h: New file.
15704         * lib/gl_rbtreehash_list.c: New file.
15705         * lib/gl_anytreehash_list1.h: New file.
15706         * lib/gl_anytreehash_list2.h: New file.
15707
15708         * lib/gl_oset.h: New file.
15709         * lib/gl_oset.c: New file.
15710         * lib/gl_array_oset.h: New file.
15711         * lib/gl_array_oset.c: New file.
15712         * lib/gl_avltree_oset.h: New file.
15713         * lib/gl_avltree_oset.c: New file.
15714         * lib/gl_rbtree_oset.h: New file.
15715         * lib/gl_rbtree_oset.c: New file.
15716         * lib/gl_anytree_oset.h: New file.
15717
15718 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15719
15720         * m4/mkancesdirs.m4: New file.
15721         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
15722         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
15723         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
15724         it.
15725
15726 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15727
15728         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
15729         * lib/mkancesdirs.h: New files.
15730         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
15731         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
15732         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
15733         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
15734         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
15735         callers changed.  Revamp internals significantly, by not
15736         attempting to create directories that are temporarily more
15737         permissive than the final results.  Do not attempt to use
15738         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
15739         This removes some race conditions, fixes some bugs, and simplifies
15740         things.  Use new dirchownmod function to do owner and mode changes.
15741         * lib/mkdir-p.h: Likewise.
15742         * lib/modechange.c (octal_to_mode): New function.
15743         (struct mode_change): New member mentioned.
15744         (make_node_op_equals): New arg mentioned.  All callers changed.
15745         (mode_compile): Keep track of which mode bits the user has explicitly
15746         mentioned.
15747         (mode_adjust): New arg DIR, so that we implement the X op correctly.
15748         New arg PMODE_BITS, to keep track of which mode bits the user
15749         mentioned; it treats S_ISUID and S_ISGID speciall.
15750         All callers changed.
15751         * lib/modechange.h: Likewise.
15752
15753 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
15754
15755         * MODULES.html.sh: Add mkancestors.
15756         * modules/mkancesdirs: New module.
15757         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
15758         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
15759         The chdir-safer and afs files are now orphans; I'll remove them
15760         unless someone speaks up.
15761         Add lib/dirchownmod.c, lib/dirchownmod.h.
15762         (Depends-on): Remove alloca, chown, save-cwd, dirname.
15763         Add lchown, mkancesdirs.
15764         (Maintainer): Add self.
15765
15766 2006-07-15  Karl Berry  <karl@gnu.org>
15767
15768         * gnulib-tool: help message wording/arrangement.
15769
15770 2006-07-14  Simon Josefsson  <jas@extundo.com>
15771
15772         * doc/gnulib.texi (Libtool and Windows): New section.
15773
15774 2006-07-12  Simon Josefsson  <jas@extundo.com>
15775
15776         * modules/gendocs (License): Fix license, approved by Karl.
15777
15778 2006-07-12  Eric Blake  <ebb9@byu.net>
15779
15780         * MODULES.html.sh: Add gendocs.
15781
15782 2006-07-11  Eric Blake  <ebb9@byu.net>
15783
15784         * modules/fdl: New module, to install doc/fdl.texi.
15785         * MODULES.html.sh: Add new section for documentation modules.
15786         * gnulib-tool: Avoid space-tab.
15787         (--doc-base): New option, to manage files from doc.
15788
15789 2006-07-11  Eric Blake  <ebb9@byu.net>
15790
15791         * m4/absolute-header.m4: Fix comments to match recent change.
15792
15793 2006-07-11  Eric Blake  <ebb9@byu.net>
15794
15795         * gnulib-tool: List --doc-base before --tests-base.
15796
15797 2006-07-11  Derek R. Price  <derek@ximbiot.com>
15798
15799         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
15800
15801 2006-07-11  Bruno Haible  <bruno@clisp.org>
15802
15803         * README: Mention where to put documentation.
15804
15805 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15806
15807         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
15808
15809 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
15810
15811         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
15812         to stdint.m4.
15813
15814 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
15815
15816         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
15817         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
15818         "no/such/file/stdint.h" when there is no such file, so that
15819         the resulting C code can be parsed by dodgy compilers.
15820         Problems reported by Bob Proulx.
15821
15822 2006-07-10  Derek R. Price  <derek@ximbiot.com>
15823
15824         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
15825         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
15826         macros into the GNU _D_EXACT_NAMLEN.
15827         * lib/savedir.c:  Likewise.
15828         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
15829
15830 2006-07-10  Derek R. Price  <derek@ximbiot.com>
15831         and Paul Eggert  <eggert@cs.ucla.edu>
15832
15833         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
15834         * m4/savedir.m4:
15835         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
15836         macros into the GNU _D_EXACT_NAMLEN.
15837
15838 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15839
15840         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
15841         around the absolute name, to work around a problem with the HP-UX
15842         11.23 native C compiler, reported by Bob Proulx.
15843
15844 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15845
15846         * doc/maintain.texi, make-stds.texi: Sync from
15847         <http://savannah.gnu.org/projects/gnustandards>.
15848
15849 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
15850
15851         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
15852
15853 2006-07-09  Jim Meyering  <jim@meyering.net>
15854
15855         * m4/glob.m4: Remove a doubled word in a comment.
15856
15857 2006-07-09  Jim Meyering  <jim@meyering.net>
15858
15859         * lib/argp-pv.c: Remove a doubled word in a comment.
15860         * lib/check-version.c (check_version): Likewise.
15861         * lib/javacomp.c (compile_java_class): Likewise.
15862
15863 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
15864
15865         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
15866         for the benefit of people using Autoconf 2.60.  If you want to
15867         support older Autoconf versions you can copy m4/onceonly_2_57.m4
15868         (or m4/onceonly.m4, if pre-2.57) manually.
15869
15870 2006-07-08  Jim Meyering  <jim@meyering.net>
15871
15872         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
15873         comment.
15874         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
15875         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
15876         comment.
15877
15878 2006-07-08  Jim Meyering  <jim@meyering.net>
15879
15880         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
15881
15882 2006-07-07  Simon Josefsson  <jas@extundo.com>
15883
15884         * tests/test-crc.c: Change expected crc value, the test vector
15885         were probably computed using the old broken crc.c?
15886
15887 2006-07-06  Simon Josefsson  <jas@extundo.com>
15888
15889         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
15890         now the canonical place for the M4 file).
15891
15892         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
15893         from the sys_socket dependency now.
15894
15895         * modules/inet_pton (Files): Ditto.
15896
15897         * modules/inet_ntop (Files): Ditto.
15898
15899 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
15900
15901         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
15902         not gl_PREREQ_GETUSERSHELL.
15903
15904 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15905
15906         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
15907         with only one argument, for Autoconf 2.60.
15908         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
15909         expand to nothing, so add a shell command to avoid syntax error.
15910         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
15911
15912 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15913
15914         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
15915
15916 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15917
15918         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
15919         no longer needed.  Check for isblank decl.
15920         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
15921         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
15922         of existence.
15923
15924 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15925
15926         * lib/getloadavg.c: Use __VMS, not VMS.
15927         * lib/getopt.c: Likewise.
15928         * lib/getpagesize.h: Likewise.
15929         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
15930         and probably does not work.
15931
15932 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
15933
15934         * lib/.cppi-disable: Add wcwidth.
15935         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
15936         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
15937         (ISGRAPH): Remove.  All uses changed to isgraph.
15938         (FOLD) [!defined _LIBC]: Remove special case.
15939         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
15940         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
15941         HAVE_ISBLANK.
15942         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
15943         case.
15944
15945 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
15946
15947         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
15948         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
15949         brackets.  Other minor changes to suppress some compiler
15950         warnings.
15951
15952 2006-07-06  Derek R. Price  <derek@ximbiot.com>
15953         and Paul Eggert  <eggert@cs.ucla.edu>
15954
15955         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
15956         of invoking obsolescent AC_HEADER_DIRENT macro.
15957         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
15958         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
15959         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
15960         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
15961         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
15962         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
15963         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
15964         * m4/readdir.m4: Remove; no longer needed.
15965
15966 2006-07-06  Derek R. Price  <derek@ximbiot.com>
15967         and Paul Eggert  <eggert@cs.ucla.edu>
15968
15969         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
15970         Don't worry about this obsolete case any more.
15971         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
15972         directories.
15973         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
15974         worry about this obsolete case any more.
15975         * lib/fts.c: Likewise.
15976         * lib/getcwd.c: Likewise.
15977         * lib/glob.h: Likewise.
15978         * lib/savedir.c: Likewise.
15979
15980 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
15981
15982         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
15983         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
15984         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
15985         needed.
15986         All uses removed.
15987         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15988         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
15989         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
15990         needed.
15991         * m4/getdate.m4 (gl_GETDATE): Likewise.
15992         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
15993         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
15994         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
15995         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
15996         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
15997         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
15998         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
15999         needed.
16000
16001 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
16002
16003         * lib/memcasecmp.c: Include <limits.h>.
16004         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
16005         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
16006         Don't assume isdigit succeeds only on '0' through '9'.
16007
16008 2006-07-05  Eric Blake  <ebb9@byu.net>
16009
16010         * modules/getaddrinfo (Depends-on): Add snprintf.
16011
16012 2006-07-05  Eric Blake  <ebb9@byu.net>
16013
16014         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
16015         to avoid 'header present but could not be compiled' on cygwin.
16016
16017 2006-07-05  Eric Blake  <ebb9@byu.net>
16018
16019         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
16020         missing from netdb.h.
16021         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
16022
16023 2006-07-05  Derek R. Price  <derek@ximbiot.com>
16024
16025         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
16026         no longer needed.
16027         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
16028         * m4/getdate.m4 (gl_GETDATE): Likewise.
16029         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
16030         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
16031         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
16032         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
16033         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
16034
16035 2006-07-05  Derek R. Price  <derek@ximbiot.com>
16036
16037         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
16038         All uses of is_space replaced by isspace.
16039         * lib/exit.h: Don't talk about STDC_HEADERS.
16040         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
16041         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
16042         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
16043         replaced by isprint etc.
16044         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
16045         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
16046         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
16047         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
16048         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
16049         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
16050
16051 2006-07-05  Bruno Haible  <bruno@clisp.org>
16052
16053         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
16054         the function exists, before testing against AIX.
16055         Reported by Martin Lambers <marlam@marlam.de>.
16056
16057 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
16058
16059         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
16060         From Mark D. Baushke.
16061
16062 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
16063
16064         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
16065         to the absolute name, not just one, to bypass Sun C 5.8's
16066         "warning: #include of /usr/include/... may be non-portable".
16067
16068 2006-07-04  Eric Blake  <ebb9@byu.net>
16069
16070         * modules/dirname-tests: New test module.
16071         * tests/test-dirname.c: New file, replacing dirname.c
16072         TEST_DIRNAME section that was recently deleted.
16073
16074 2006-07-04  Bruno Haible  <bruno@clisp.org>
16075
16076         Assume ANSI C header files and <ctype.h> functions.
16077         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
16078         (mbsnwidth): Use isprint, iscntrl instead.
16079
16080 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16081
16082         Merge from coreutils.
16083         * MODULES.html.sh: Add xstrtold.
16084         * modules/xstrtold: New file.
16085         * modules/cycle-check (Files): Add lib/same-inode.h.
16086         * modules/dirname (Files): Add m4/double-slash-root.m4.
16087         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
16088         * modules/mkdir-p (Files): Add lib/same-inode.h.
16089         * modules/same (Files): Add lib/same-inode.h.
16090
16091 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16092
16093         * m4/absolute-header.m4: Renamed from full-header-path.m4.
16094         This is to keep the terminology clean; POSIX talks about
16095         "absolute pathnames", not "full pathnames", but the GNU
16096         Coding Standards say to use "path" for something else;
16097         so use "absolute" to keep both sides happy.
16098         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
16099         Set gl_absolute_header, not gl_full_header_path.
16100         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
16101         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
16102         All uses changed.
16103
16104         Merge from coreutils.
16105
16106         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
16107
16108         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
16109         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
16110         want to require the building of c-strtod.o.
16111         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
16112         needs -lm directly.
16113         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
16114
16115         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
16116
16117         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
16118         --as-needed option if available.  Problem reported by Albert Chin in
16119         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
16120         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
16121         cc merely issues a bunch of annoying warnings for --as-needed
16122         (this problem was reported by Bob Proulx).  Also, try linking with
16123         -lm to detect a bug in binutils 2.16 (this problem was reported
16124         by Ralf Wildenhues).
16125
16126         2006-06-18  Jim Meyering  <jim@meyering.net>
16127
16128         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
16129         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
16130         macro.
16131         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
16132         also check for glibc-2.4's abort-inducing bug.
16133
16134         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
16135         Low-probability clean-up should be to use rmdir to get rid of
16136         the just-created directory, not unlink.
16137
16138         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
16139         configure fail, and request a bug report to inform us about it.
16140         Add a comment that, barring reports to the contrary, in 2007 we'll
16141         assume ftruncate is universally available.
16142
16143         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
16144
16145         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
16146
16147         2006-03-12  Jim Meyering  <jim@meyering.net>
16148
16149         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
16150         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
16151         * m4/same.m4 (gl_SAME): Likewise.
16152         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
16153
16154         2006-03-11  Eric Blake  <ebb9@byu.net>
16155
16156         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
16157         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
16158         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
16159         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
16160
16161 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
16162
16163         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
16164         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
16165         reported by Mark D. Baushke, one in
16166         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
16167
16168         Merge from coreutils.
16169
16170         * lib/.cppi-disable: Add stdint_.h.
16171         * lib/.cvsignore: Add stdint.h.
16172
16173         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
16174
16175         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
16176         both double and long double versions.
16177         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
16178         * lib/xstrtold.c: New file.
16179         * lib/xstrtod.h (xstrtold): New decl.
16180
16181         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
16182
16183         * lib/filemode.c (setst): Remove.
16184         (strmode): Rewrite to avoid setst.  This makes the code shorter,
16185         (arguably) clearer, and the generated code is a bit smaller on my
16186         Debian GNU/Linux stable x86 host.
16187
16188         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
16189
16190         * lib/filemode.c: Include "filemode.h" first, to test the interface.
16191         Assume that filemode.h includes sys/types.h and sys/stat.h.
16192         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
16193         (ftypelet): Reorder to put common cases first, for efficiency.
16194         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
16195         to do 'M'.
16196         (strmode): Renamed from mode_string, and now stores 12 bytes instead
16197         of 10, for compatibility with FreeBSD.  All callers changed.
16198         (filemodestring): Now stores 12 bytes instead of 10, and sets file
16199         types that can't be deduced solely from st_mode.  First arg is now a
16200         const pointer.
16201         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
16202         (strmode): Renamed from mode_string.
16203         (filemodestring): New decl.
16204         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
16205         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
16206         needed.
16207         (S_ISPORT, S_ISWHT): New macros, if not already defined.
16208
16209         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
16210
16211         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
16212         fsusage.h now does that.  Include fsusage.h first, to test interface.
16213         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
16214         at most one method (the old code could have generated decls that
16215         didn't conform to C89, not that this was ever exercised).
16216         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
16217
16218         2006-03-19  Jim Meyering  <jim@meyering.net>
16219
16220         Work even in a chroot where d_ino values for entries in "/"
16221         don't match the stat.st_ino values for the same names.
16222         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
16223         number, iterate through all entries again, using lstat instead.
16224         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
16225         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
16226
16227         * lib/getcwd.c (__getcwd): Clarify a comment.
16228         Use memcpy in place of a call to strcpy.
16229
16230         2006-03-12  Jim Meyering  <jim@meyering.net>
16231
16232         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
16233         matches that of the current directory (which we're about to chdir ".."
16234         out of), then save the dev-ino of the parent, instead.
16235
16236         * lib/same-inode.h (SAME_INODE): New file/macro.
16237         * lib/chdir-safer.c (SAME_INODE): Remove definition.
16238         Include "same-inode.h", instead.
16239         * lib/same.c: Likewise.
16240         * lib/cycle-check.h: Include "same-inode.h".
16241         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
16242         * lib/cycle-check.c (SAME_INODE): Remove definition.
16243         * lib/root-dev-ino.h: Include "same-inode.h".
16244
16245         2006-03-11  Eric Blake  <ebb9@byu.net>
16246
16247         * lib/same.c (same_name): s/base_name/last_component/
16248         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
16249         * lib/filenamecat.c (file_name_concat): Likewise.
16250
16251         2006-03-11  Eric Blake  <ebb9@byu.net>,
16252                     Paul Eggert  <eggert@cs.ucla.edu>
16253
16254         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
16255         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
16256         drive prefix.
16257         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
16258         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
16259         (last_component): New method.
16260         * lib/dirname.c (dir_len): Determine when drive letters need a
16261         subsequent slash.  Preserve // when it is special.
16262         (dir_name): Don't append dot when drive letter is absolute.
16263         [TEST_DIRNAME]: Move into a full-blown gnulib test.
16264         * lib/basename.c (base_name): New semantics - malloc the result.
16265         Preserve // when it is special.  Preserve relative files that look
16266         like drive letters.
16267         (base_len): Preserve // when it is special.
16268         (last_component): New method, similar to old base_name semantics.
16269         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
16270         base_name.  Strip redundant slashes from ///.
16271
16272 2006-07-03  Jim Meyering  <jim@meyering.net>
16273
16274         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
16275         macro is used before the first cycle_check call.
16276
16277 2006-07-03  Eric Blake  <ebb9@byu.net>
16278
16279         * modules/dirname (Depends-on): Add xstrndup.
16280
16281 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
16282
16283         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
16284         test cases, so that config.log is a bit easier to follow.
16285
16286 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
16287
16288         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
16289         both are 64 bits, since this seems to be the tradition, and this
16290         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
16291         we ever run into a host that prefers long long to long in this
16292         case, we'll need another configure-time test.  Problem reported by
16293         Jim Meyering.
16294
16295 2006-07-02  Eric Blake  <ebb9@byu.net>
16296
16297         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
16298
16299 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16300
16301         * modules/inttypes (Depends-on): No longer depends on stdint.
16302         * modules/stdint (Description): Say more about assumptions.
16303         Say that the fast types might differ.  Say macros are used.
16304         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
16305         (Makefile.am): Revise list of substituted symbols to match
16306         new stdint.m4.
16307         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
16308         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
16309         * tests/test-stdint.c (verify_same_types)
16310         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
16311         the code conforms to C99/C89.
16312         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
16313         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
16314
16315 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16316
16317         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
16318         but fix a bug, by requiring at least 64 bits.
16319         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
16320         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
16321         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
16322         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
16323
16324         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
16325         changes.  Make 2.59 a prerequisite.  Check and substitute for
16326         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
16327         inttypes.h.  Do not use special include files; just use the
16328         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
16329         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
16330         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
16331         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
16332         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
16333         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
16334         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
16335         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
16336         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
16337         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
16338         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
16339         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
16340         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
16341         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
16342         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
16343         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
16344         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
16345         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
16346         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
16347         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
16348         WINT_MAX.  Check for C99 conformance more strictly, by detecting
16349         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
16350         not check for things that C99 does not require, e.g., int8_t.  If
16351         a test isn't needed unless <stdint.h> isn't working, and is
16352         unlikely to be needed for any other reason, then don't do it
16353         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
16354         size_t, since we assume C89 freestanding at least.  Do not check
16355         for sig_atomic_t, wchar_t, or wint_t, since the code now does
16356         the right thing even if the types are not defined.  Instead use:
16357         (gl_STDINT_TYPE_PROPERTIES): New macro.
16358         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
16359         testing whether <sys/types.h> clashes, as Autoconf does this for
16360         us now.  All uses removed.
16361         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
16362         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
16363         (gl_CHECK_TYPE_SAME):
16364         Remove; no longer needed.
16365         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
16366         exists, since we'll return 0 anyway in that case.
16367         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
16368
16369 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
16370
16371         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
16372         possible collision with system files.
16373         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
16374         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
16375         WCHAR_MIN and WCHAR_MAX in this case.
16376         (<stddef.h>): Do not include; no longer needed.
16377         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
16378         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
16379         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
16380         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
16381         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
16382         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
16383         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
16384         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
16385         !defined(__c99))]: Include in this case too, since it's harmless
16386         now.
16387         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
16388         dangerous to do so.
16389         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
16390         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
16391         (_STDINT_MIN, _STDINT_MAX): New macros.
16392         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
16393         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
16394         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
16395         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
16396         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
16397         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
16398         macros, not typedefs; this simplifies things quite a bit.
16399         Use long int for all types narrower than int64_t.
16400         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
16401         Define in terms of long long int or int64_t or long int,
16402         not int64_t or int32_t.  This saves some compile-time testing.
16403         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
16404         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
16405         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
16406         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
16407         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
16408         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
16409         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
16410         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
16411         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
16412         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
16413         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16414         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16415         undef any previous version and define our own version, for
16416         simplicity and consistency with the new macros for types.
16417         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
16418         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
16419         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
16420         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
16421         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
16422         @WINT_T_SUFFIX@ to keep things simple here.
16423         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
16424         Simplify by assuming typical 8/16/32/64 host, since we're
16425         already doing that elsewhere anyway.
16426         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
16427         and assume long long int is 64 bits if available.  This
16428         speeds up 'configure'.
16429
16430 2006-07-01  Eric Blake  <ebb9@byu.net>
16431
16432         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
16433         Reported by Andreas Buening.
16434
16435 2006-07-01  Eric Blake  <ebb9@byu.net>
16436
16437         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
16438
16439 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
16440
16441         * lib/getaddrinfo.c: fixed typo
16442
16443 2006-06-29  Jim Meyering  <jim@meyering.net>
16444
16445         * modules/strftime (Maintainer): Add my name, since with the
16446         FPRINTFTIME changes strftime.c has forked from glibc.
16447
16448 2006-06-29  Eric Blake  <ebb9@byu.net>
16449
16450         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
16451
16452 2006-06-29  Eric Blake  <ebb9@byu.net>
16453
16454         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
16455
16456 2006-06-29  Eric Blake  <ebb9@byu.net>
16457
16458         * lib/stat_.h: New file.
16459
16460 2006-06-29  Eric Blake  <ebb9@byu.net>
16461
16462         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
16463         unused static function.
16464
16465 2006-06-29  Eric Blake  <ebb9@byu.net>
16466
16467         * doc/functions.texi (Function Portability): Document missing lstat
16468         on mingw.
16469
16470 2006-06-29  Eric Blake  <ebb9@byu.net>
16471
16472         * MODULES.html.sh: Add sys_stat.
16473         * modules/sys_stat: New module.
16474         * modules/mkstemp (Depends-on): Add sys_stat.
16475
16476 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16477
16478         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
16479
16480 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16481
16482         * m4/c-bs-a.m4: Removed.
16483
16484 2006-06-29  Derek R. Price  <derek@ximbiot.com>
16485
16486         * lib/strftime.c: Assume strftime() exists.
16487
16488 2006-06-29  Derek Price  <derek@ximbiot.com>
16489
16490         * modules/c-bs-a: Removed - \a is C89.
16491         * MODULES.html.sh: Remove c-bs-a.
16492
16493 2006-06-29  Bruno Haible  <bruno@clisp.org>
16494
16495         * modules/wcwidth (License): Change to LGPL.
16496
16497 2006-06-28  Simon Josefsson  <jas@extundo.com>
16498
16499         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
16500         on _WIN32.
16501
16502         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
16503         getnameinfo.
16504
16505 2006-06-28  Simon Josefsson  <jas@extundo.com>
16506
16507         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
16508
16509 2006-06-28  Simon Josefsson  <jas@extundo.com>
16510
16511         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
16512         functions there.  It will succeed on Windows XP, but on Windows
16513         2000 and (presumably) earlier, it will fail, and use the internal
16514         re-implementation.
16515         (use_win32_p): New function.
16516         (getaddrinfo): Use strtoul on servname, to support numeric ports.
16517         Support AI_NUMERICSERV to disable getservbyname.
16518         (getnameinfo): New function, only supports
16519         NI_NUMERICHOST|NI_NUMERICSERV for now.
16520
16521         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
16522         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
16523         getnameinfo.
16524
16525 2006-06-28  Eric Blake  <ebb9@byu.net>
16526
16527         * modules/wcwidth: New file.
16528         * modules/mbchar (Depends-on): Add wcwidth.
16529         * modules/mbswidth (Depends-on): Add wcwidth.
16530         * MODULES.html.sh: Add wcwidth.
16531
16532 2006-06-28  Eric Blake  <ebb9@byu.net>
16533
16534         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
16535         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
16536
16537 2006-06-28  Eric Blake  <ebb9@byu.net>
16538
16539         * lib/xvasprintf.h: Fix comments.
16540
16541 2006-06-28  Eric Blake  <ebb9@byu.net>
16542
16543         * lib/mbchar.h (wcwidth): Include wcwidth.h.
16544         * lib/mbswidth.c (wcwidth): Move from here...
16545         * lib/wcwidth.h: ...to this new file.
16546
16547 2006-06-28  Derek R. Price  <derek@ximbiot.com>
16548
16549         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
16550
16551         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
16552         it's obsolete.
16553         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
16554
16555 2006-06-28  Derek R. Price  <derek@ximbiot.com>
16556
16557         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
16558         Autoconf 2.60 says this stuff was obsolete.
16559
16560 2006-06-28  Bruno Haible  <bruno@clisp.org>
16561
16562         * modules/wcwidth (Files): Add m4/wchar_t.m4.
16563
16564 2006-06-28  Bruno Haible  <bruno@clisp.org>
16565
16566         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
16567         gt_TYPE_WCHAR_T.
16568
16569 2006-06-28  Bruno Haible  <bruno@clisp.org>
16570
16571         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
16572         declaration for wcwidth.
16573         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
16574
16575 2006-06-28  Bruno Haible  <bruno@clisp.org>
16576
16577         * lib/mkdtemp.c [MINGW]: Include <io.h>.
16578         (mkdir): Define using _mkdir.
16579
16580 2006-06-28  Bruno Haible  <bruno@clisp.org>
16581
16582         * lib/getaddrinfo.h: Fix POSIX URL.
16583         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
16584         _WIN32.
16585         (use_win32_p): Make static.
16586         (getaddrinfo): Reject service name if it is empty or does not consist
16587         solely of decimal digits, or if its value is > 65535.
16588         (getnameinfo): Remove useless casts.
16589
16590 2006-06-27  Simon Josefsson  <jas@extundo.com>
16591
16592         * modules/sys_select: New file, suggested by Bruno Haible, Paul
16593         Eggert and Martin Lambers.
16594
16595 2006-06-27  Simon Josefsson  <jas@extundo.com>
16596
16597         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
16598         Eggert and Martin Lambers.
16599
16600 2006-06-27  Bruno Haible  <bruno@clisp.org>
16601
16602         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
16603         result to 0, not to empty.
16604         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
16605
16606 2006-06-27  Bruno Haible  <bruno@clisp.org>
16607
16608         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
16609
16610 2006-06-26  Simon Josefsson  <jas@extundo.com>
16611
16612         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
16613         present.
16614
16615 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
16616
16617         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
16618         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
16619         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
16620
16621 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
16622
16623         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
16624
16625 2006-06-26  Bruno Haible  <bruno@clisp.org>
16626
16627         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
16628
16629 2006-06-26  Bruno Haible  <bruno@clisp.org>
16630
16631         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
16632
16633 2006-06-26  Bruno Haible  <bruno@clisp.org>
16634
16635         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
16636         SGI C compiler in pre-C99 mode.
16637         Suggested by Mark D. Baushke and Larry Jones.
16638
16639 2006-06-26  Bruno Haible  <bruno@clisp.org>
16640
16641         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
16642         WCHAR_MAX.
16643         Reported by Mark D. Baushke and Larry Jones.
16644
16645 2006-06-26  Bruno Haible  <bruno@clisp.org>
16646
16647         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
16648         in pre-C99 mode.
16649         Suggested by Mark D. Baushke and Larry Jones.
16650
16651 2006-06-23  Simon Josefsson  <jas@extundo.com>
16652             Bruno Haible  <bruno@clisp.org>
16653
16654         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
16655         Emit mostlyclean-local rule.
16656         (func_emit_tests_Makefile_am): Likewise.
16657         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
16658
16659 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
16660
16661         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
16662
16663 2006-06-23  Bruno Haible  <bruno@clisp.org>
16664
16665         * tests/test-stdint.c: Update to match ISO C 99 Technical
16666         Corrigendum 1.
16667
16668 2006-06-23  Bruno Haible  <bruno@clisp.org>
16669
16670         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
16671
16672 2006-06-23  Bruno Haible  <bruno@clisp.org>
16673
16674         * lib/stdint_.h: Treat IRIX like OpenBSD.
16675
16676 2006-06-23  Bruno Haible  <bruno@clisp.org>
16677
16678         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
16679         ISO C 99 Technical Corrigendum 1.
16680
16681 2006-06-22  Simon Josefsson  <jas@extundo.com>
16682
16683         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
16684         MinGW.
16685
16686 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
16687
16688         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
16689         needed.  Some compiler complained about some of them.  Problem reported
16690         by Larry Jones in
16691         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
16692
16693 2006-06-21  Simon Josefsson  <jas@extundo.com>
16694
16695         * tests/test-getaddrinfo.c: New file.
16696
16697         * modules/getaddrinfo-tests: New file.
16698
16699         * MODULES.html.sh: Add inet_pton.
16700
16701         * modules/inet_pton: New file.
16702
16703 2006-06-21  Simon Josefsson  <jas@extundo.com>
16704
16705         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
16706         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
16707         of using the (limited) gnulib implementation on Windows XP.
16708
16709         * m4/inet_pton.m4: New file.
16710
16711 2006-06-21  Simon Josefsson  <jas@extundo.com>
16712
16713         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
16714         variable.
16715
16716         * lib/socket_.h: Don't define WINVER.
16717
16718         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
16719         slightly modified to work in gnulib.
16720
16721 2006-06-21  Simon Josefsson  <jas@extundo.com>
16722
16723         * doc/gnulib.texi (Windows sockets): Add.
16724
16725 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
16726
16727         * lib/read-file.c (fread_file): Start with buffer allocation of
16728         0 bytes rather than 1 byte; this simplifies the code.
16729         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
16730         code to free buffer and save/restore errno.
16731         (internal_read_file): Remove unused local.
16732
16733 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
16734
16735         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
16736         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
16737         Problem reported by Denis Excoffier in
16738         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
16739
16740 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16741
16742         * modules/sys_socket, modules/socklen: Include sys/types since
16743         FreeBSD 4.x's sys/socket.h needs it.
16744
16745 2006-06-19  Simon Josefsson  <jas@extundo.com>
16746
16747         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
16748
16749 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
16750
16751         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
16752
16753 2006-06-19  Bruno Haible  <bruno@clisp.org>
16754
16755         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
16756         and FULL_PATH_INTTYPES_H in angle brackets.
16757         Reported by Mark D. Baushke <mdb@gnu.org>.
16758
16759 2006-06-17  Eric Blake  <ebb9@byu.net>
16760
16761         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
16762         errno.
16763
16764 2006-06-17  Bruno Haible  <bruno@clisp.org>
16765
16766         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
16767         <sys/inttypes.h>.
16768
16769 2006-06-17  Bruno Haible  <bruno@clisp.org>
16770
16771         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
16772         whether errno is declared. Assume <errno.h> declares errno.
16773
16774 2006-06-17  Bruno Haible  <bruno@clisp.org>
16775
16776         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
16777
16778 2006-06-17  Bruno Haible  <bruno@clisp.org>
16779
16780         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
16781         problem on Solaris 2.5.1.
16782
16783 2006-06-16  Eric Blake  <ebb9@byu.net>
16784
16785         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
16786         * lib/unicodeio.c [!defined errno]: Likewise.
16787         * lib/strtol.c [!defined errno]: Likewise.
16788         * lib/strtod.c [!defined errno]: Likewise.
16789
16790 2006-06-15  Eric Blake  <ebb9@byu.net>
16791
16792         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
16793
16794 2006-06-15  Eric Blake  <ebb9@byu.net>
16795
16796         * config/srclist.txt (ssize_t.m4): Lose sync.
16797
16798 2006-06-15  Bruno Haible  <bruno@clisp.org>
16799
16800         * modules/stdint (Files): Include m4/full-header-path.m4,
16801         m4/size_max.m4, m4/wchar_t.m4.
16802         (Makefile.am): Many more substitutions.
16803         * modules/stdint-tests: New file.
16804         * tests/test-stdint.c: New file.
16805
16806 2006-06-15  Bruno Haible  <bruno@clisp.org>
16807
16808         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
16809         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
16810         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
16811         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
16812         gl_CHECK_TYPE_SAME): New macros.
16813
16814 2006-06-15  Bruno Haible  <bruno@clisp.org>
16815
16816         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
16817
16818 2006-06-15  Bruno Haible  <bruno@clisp.org>
16819
16820         * lib/stdint_.h: Rewritten to be fully auto-configured.
16821         Fixes bug on HP-UX/IA64.
16822
16823 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
16824
16825         * lib/getdate.y (__attribute__): Don't define if already defined.
16826         Problem reported by Larry Jones.
16827         * lib/utimens.c (__attribute__): Likewise.
16828
16829 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
16830
16831         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
16832         reported by Andreas Schwab.
16833
16834 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16835             Bruno Haible  <bruno@clisp.org>
16836
16837         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
16838         check for the declaration of strnlen and a run test that exposes the
16839         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
16840         rpl_strndup.
16841
16842 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16843             Bruno Haible  <bruno@clisp.org>
16844
16845         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
16846
16847 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16848
16849         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
16850         compile test, for Tru64 4.0D.
16851
16852 2006-05-28  Karl Berry  <karl@gnu.org>
16853
16854         * config/srclist.txt (printf-args.c): lose sync.
16855
16856 2006-05-26  Martin Lambers  <marlam@marlam.de>
16857
16858         * lib/getpass.c: Updates the test for the native W32 API, and adds
16859         missing includes, thus fixing compilation warnings.
16860
16861 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
16862
16863         * lib/exclude.c (exclude_fnmatch): New function.
16864         (excluded_file_name): Call exclude_fnmatch.
16865         * lib/exclude.h (excluded_file_name): New prototype
16866
16867 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
16868
16869         * lib/tempname.c (small_open, large_open): New macros.
16870         (__open, __open64) [!_LIBC]: Remove.
16871         (__gen_tempname): Use small_open and large_open instead of __open
16872         and __open64.  This fixes a portability bug on HP-UX 11.11i
16873         reported by Simon Wing-Tang in
16874         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
16875
16876 2006-05-24  Bruno Haible  <bruno@clisp.org>
16877
16878         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
16879         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
16880         Reported by Thorsten Maerz <torte@netztorte.de> via
16881         Aaron Stone <aaron@serendipity.cx>.
16882
16883 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16884
16885         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
16886         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
16887         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
16888         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
16889         not really conditional on the cache.
16890         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
16891
16892 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16893
16894         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
16895         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
16896         (my_usleep): Don't mishandle maximum value.
16897
16898 2006-05-19  Jim Meyering  <jim@meyering.net>
16899
16900         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
16901
16902 2006-05-17  Bruno Haible  <bruno@clisp.org>
16903
16904         Cygwin portability.
16905         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
16906
16907 2006-05-17  Bruno Haible  <bruno@clisp.org>
16908
16909         * lib/stdint_.h: Fix recognition of Cygwin.
16910
16911 2006-05-15  Bruno Haible  <bruno@clisp.org>
16912
16913         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
16914         on libtool patch by Ralf Wildenhues.
16915
16916 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
16917
16918         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
16919         test for C99 conformance; (bool) 0.5 is an integer constant
16920         expression, but (bool) -0.5 is not.  Problem reported by Fedor
16921         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
16922
16923 2006-05-11  Simon Josefsson  <jas@extundo.com>
16924
16925         * m4/xvasprintf.m4: Fix obvious typo.
16926
16927 2006-05-11  Jim Meyering  <jim@meyering.net>
16928
16929         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
16930         James Lemley.
16931
16932 2006-05-10  Simon Josefsson  <jas@extundo.com>
16933
16934         * lib/md4.c: Typo fix, update copyright years.
16935         (K1, K2): Don't use L because it turn computations into 64-bit on
16936         64-bit platforms.
16937
16938 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
16939
16940         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
16941         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
16942         unwanted sign propagation, e.g., on hosts with 64-bit int.
16943         There still are some problems with reeelly weird theoretical hosts
16944         (e.g., 33-bit int) but it's not worth worrying about now.
16945         * lib/sha1.c (rol): Likewise.
16946         (K1, K2, K3, K4): Remove unnecessary L suffix.
16947
16948 2006-05-10  Bruno Haible  <bruno@clisp.org>
16949
16950         * lib/des.c: Cast to avoid warnings.
16951
16952 2006-05-09  Bruno Haible  <bruno@clisp.org>
16953
16954         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
16955         (Depends-on): Depend also on xsize, stdarg.
16956         (configure.ac): Add gl_XVASPRINTF.
16957
16958 2006-05-09  Bruno Haible  <bruno@clisp.org>
16959
16960         * m4/xvasprintf.m4: New file.
16961
16962 2006-05-09  Bruno Haible  <bruno@clisp.org>
16963
16964         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
16965         (EOVERFLOW): Define fallback value.
16966         (xstrcat): New function.
16967         (xvasprintf): Recognize the special case of a string concatenation.
16968
16969 2006-05-08  Eric Blake  <ebb9@byu.net>
16970
16971         * gnulib-tool (func_version): Base copyright year on CVS date.
16972         (func_emit_copyright_notice): New function.
16973         (func_emit_lib_Makefile_am): Use it.
16974         (func_emit_tests_Makefile_am): Likewise.
16975         (func_import): Likewise.
16976
16977 2006-05-08  Bruno Haible  <bruno@clisp.org>
16978
16979         * modules/stdarg: New file.
16980         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
16981
16982 2006-05-08  Bruno Haible  <bruno@clisp.org>
16983
16984         * m4/stdarg.m4: New file, from GNU gettext.
16985
16986 2006-05-08  Bruno Haible  <bruno@clisp.org>
16987
16988         * config/srclist.txt (build-aux/config.rpath): different from latest
16989         release.
16990
16991 2006-05-08  Bruno Haible  <bruno@clisp.org>
16992
16993         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
16994
16995 2006-05-05  Jim Meyering  <jim@meyering.net>
16996
16997         * m4/warning.m4: New file, derived from bison's file by the same name.
16998
16999 2006-05-03  Bruno Haible  <bruno@clisp.org>
17000
17001         * lib/stdint_.h: Shorter URL.
17002         * lib/inttypes.h: Likewise.
17003
17004 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17005
17006         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
17007
17008 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17009
17010         * lib/verify.h: Document the internals better.  Most of this change
17011         was written by Bruno Haible.
17012
17013 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
17014
17015         * doc/verify.texi: New file, partly based on a proposal by
17016         Bruno Haible.
17017
17018 2006-05-02  Bruno Haible  <bruno@clisp.org>
17019
17020         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
17021         test from here...
17022         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
17023
17024 2006-04-29  Bruno Haible  <bruno@clisp.org>
17025
17026         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
17027         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
17028
17029 2006-04-29  Bruno Haible  <bruno@clisp.org>
17030
17031         * gnulib-tool: Make --update option actually work.
17032
17033 2006-04-29  Bruno Haible  <bruno@clisp.org>
17034
17035         * doc/gcd.texi: New file.
17036         * doc/gnulib.texi: Include it.
17037
17038 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
17039
17040         * lib/getdate.y (get_date): When adding relative date, start with the
17041         initial time, not with the result of the first mktime call.
17042
17043 2006-04-25  Bruno Haible  <bruno@clisp.org>
17044
17045         * gnulib-tool (func_import): Output the include directives in three
17046         blocks, sorted separately.
17047         Reported by Ben Pfaff <blp@cs.stanford.edu>.
17048
17049 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
17050
17051         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
17052         to define main with arguments, for C++.  Reported by Eric Blake.
17053         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
17054         Prefer 'int main ()' to 'int main (void)', for C++.
17055         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
17056         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
17057         for 'main', for C99 and C++.
17058
17059 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
17060
17061         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
17062         Don't assume that exit status -1 is valid.
17063         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17064         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
17065         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
17066         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
17067         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
17068         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
17069         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
17070         functions can be used without declaring them, or that you can
17071         exit with status -1.
17072         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
17073
17074 2006-04-24  Karl Berry  <karl@gnu.org>
17075
17076         * config/srclist.txt (longdouble.m4): sync lost.
17077
17078 2006-04-24  Eric Blake  <ebb9@byu.net>
17079
17080         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
17081
17082 2006-04-24  Bruno Haible  <bruno@clisp.org>
17083
17084         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
17085         poll() implementation in AIX.
17086         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17087
17088 2006-04-24  Bruno Haible  <bruno@clisp.org>
17089
17090         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
17091         assigned exactly once.
17092
17093 2006-04-23  Claudio Fontana  <claudio@gnu.org>
17094             Bruno Haible  <bruno@clisp.org>
17095
17096         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
17097         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
17098         for AM_CPPFLAGS.
17099
17100 2006-04-23  Bruno Haible  <bruno@clisp.org>
17101
17102         * modules/copy-file: Depend on unistd.
17103         * modules/execute: Likewise.
17104         * modules/fatal-signal: Likewise.
17105         * modules/findprog: Likewise.
17106         * modules/mkdtemp : Likewise.
17107         * modules/pipe: Likewise.
17108         * modules/wait-process: Likewise.
17109
17110 2006-04-23  Bruno Haible  <bruno@clisp.org>
17111
17112         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
17113         condition was already detected.
17114         Reported by Ben Pfaff <blp@cs.stanford.edu>.
17115
17116 2006-04-23  Bruno Haible  <bruno@clisp.org>
17117
17118         * lib/copy-file.c: Include <unistd.h> unconditionally.
17119         * lib/execute.c: Likewise.
17120         * lib/fatal-signal.c: Likewise.
17121         * lib/findprog.c: Likewise.
17122         * lib/mkdtemp.c: Likewise.
17123         * lib/pipe.h: Likewise.
17124         * lib/pipe.c: Likewise.
17125         * lib/wait-process.h: Likewise.
17126
17127 2006-04-23  Bruno Haible  <bruno@clisp.org>
17128
17129         * gnulib-tool (func_usage): Fix --import description. Document
17130         --update.
17131         (func_import): Create temporary file in a temporary directory, if
17132         --dry-run is specified. Silence errors from 'grep' when there are no
17133         m4 files in $m4dir.
17134         (func_create_testdir): Silence errors from 'grep' when there are no
17135         m4 files in $m4dir.
17136         Reported by Karl Berry <karl@freefriends.org>.
17137
17138 2006-04-20  Bruno Haible  <bruno@clisp.org>
17139
17140         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
17141         one argument, so that the code will be portable to Autoconf 2.60.
17142         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
17143         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
17144         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
17145
17146 2006-04-19  Derek Price  <derek@ximbiot.com>
17147             Eric Blake  <ebb9@byu.net>
17148
17149         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
17150         rather than "/full/path.h".  Update comment to match.  Shorten &
17151         generalize m4_translit call via AS_TR_CPP.
17152
17153 2006-04-19  Derek Price  <derek@ximbiot.com>
17154             Eric Blake  <ebb9@byu.net>
17155
17156         * lib/inttypes.h: Correct grammar in comment.
17157
17158 2006-04-18  Derek Price  <derek@ximbiot.com>
17159             Paul Eggert  <eggert@cs.ucla.edu>
17160
17161         * modules/inttypes: New file.
17162         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
17163
17164 2006-04-18  Derek Price  <derek@ximbiot.com>
17165             Paul Eggert  <eggert@cs.ucla.edu>
17166
17167         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
17168         New files.
17169
17170 2006-04-18  Derek Price  <derek@ximbiot.com>
17171             Paul Eggert  <eggert@cs.ucla.edu>
17172
17173         * lib/inttypes.h: New file.
17174         * lib/strtoimax.c: Assume <inttypes.h>.
17175
17176 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
17177
17178         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
17179         isn't mounted.  Problem reported by Kir Kolyshkin.
17180
17181 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
17182
17183         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
17184         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
17185         Derek R. Price.
17186         * lib/regex.h (RE_DUP_MAX): Update comment to match current
17187         implementation.
17188
17189 2006-04-12  Eric Blake  <ebb9@byu.net>
17190
17191         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
17192         is now done automatically by the corresponding Autoconf macro.
17193
17194 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
17195
17196         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
17197         time_r.h.
17198
17199 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17200
17201         Merge regex changes from libc, removing some of our
17202         POSIX-conformance changes that were rejected and redoing them in a
17203         less-intrusive way.
17204
17205         * lib/regcomp.c (re_compile_internal, init_dfa):
17206         Length arg is now size_t, not Idx.  All uses changed.
17207         (peek_token): Forward decl now says internal_function.
17208         (__re_error_msgid, __re_error_msgid_idx):
17209         Now static rather than extern with attribute_hidden.
17210         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
17211         For some reason libc prefers K&R style defns for external functions.
17212         (regerror) [!defined _LIBC]: Likewise.
17213         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
17214         (seek_collating_symbol_entry, lookup_collation_sequence_value):
17215         (build_range_exp, build_collating_symbol):
17216         Use K&R-style defn.
17217         (re_compile_fastmap): Use '\0' to memset, not 0.
17218         (utf8_sb_map): Make the calculations more obvious.
17219         (init_dfa, parse_bracket_exp, build_charclass_op):
17220         Call calloc and cast result, as glibc does.
17221         (init_word_char, fetch_token, peek_token, peek_token_bracket):
17222         (build_range_exp, build_collating_symbol):
17223         Now internal functions.
17224
17225         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
17226
17227         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
17228         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
17229         Don't depend on VMS; depend on __VMS instead, for POSIX
17230         namespace cleanness.
17231         (regoff_t): Define to ssize_t, not long int.
17232
17233         Remove the REG_ macros named below.  Instead, make the old names
17234         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
17235         __USE_GNU_REGEX.
17236         (REG_BACKSLASH_ESCAPE_IN_LISTS):
17237         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
17238         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
17239         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
17240         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
17241         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
17242         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
17243         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
17244         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
17245         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
17246         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
17247         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
17248         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
17249         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
17250         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
17251         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
17252         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
17253         (REG_NREGS):
17254         Remove.  All uses replaced by the old RE_* names.
17255         (RE_BACKSLASH_ESCAPE_IN_LISTS):
17256         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
17257         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
17258         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
17259         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
17260         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
17261         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
17262         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
17263         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
17264         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
17265         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
17266         Don't bother having these macros be independent of each others'
17267         values, since they no longer exist in the POSIX name space.
17268
17269         Rename the following member names back to their old names,
17270         unless !__USE_GNU_REGEX.  All uses changed back.
17271         (buffer): Renamed from re_buffer.
17272         (allocated): Renamed from re_allocated.
17273         (used): Renamed from re_used.
17274         (syntax): Renamed from re_syntax.
17275         (fastmap): Renamed from re_fastmap.
17276         (translate): Renamed from re_translate.
17277         (can_be_null): Renamed from re_can_be_null.
17278         (regs_allocated): Renamed from re_regs_allocated.
17279         (fastmap_accurate): Renamed from re_fastmap_accurate.
17280         (no_sub): Renamed from re_no_sub.
17281         (not_bol): Renamed from re_not_bol.
17282         (not_eol): Renamed from re_not_eol.
17283         (newline_anchor): Renamed from re_newline_anchor.
17284         (num_regs): Renamed from rm_num_regs.
17285         (start): Renamed from rm_start.
17286         (end): Renamed from rm_end.
17287
17288         (free_state): Move up a bit.
17289
17290         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
17291         #define to be empty.
17292         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
17293         when that is what is intended.
17294         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
17295         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
17296         (MAX): New macro.
17297         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
17298         All uses changed back to re_malloc, etc.  It's now the caller's
17299         responsibility to check for overflow; all callers changed.
17300         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
17301         (re_x2nrealloc): Remove.
17302         (free_state): Remove decl.
17303
17304         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
17305         (re_set_registers, re_exec):
17306         Use K&R-style defn.
17307
17308         2006-01-31  Roland McGrath  <roland@redhat.com>
17309
17310         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
17311         Reported by Mike Frysinger <vapier@gentoo.org>.
17312
17313         2006-01-15  Andreas Jaeger  <aj@suse.de>
17314
17315         [BZ #1950]
17316         * lib/regex_internal.c (re_string_reconstruct): Adjust for
17317         build_wcs_upper_buffer change.
17318         (build_wcs_upper_buffer): Change return type.
17319
17320         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
17321
17322         * lib/regex_internal.h: Include <stdint.h> if available.
17323
17324         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
17325
17326         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
17327
17328         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
17329
17330         * lib/regcomp.c: Adjust for changed secondary hash function.
17331
17332         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
17333
17334         * lib/regex.h: Pretty printing.
17335         Clean up namespace a bit.
17336
17337         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
17338
17339         * lib/regexec.c (update_cur_sifted_state, check_arrival,
17340         check_arrival_add_next_nodes): Avoid using uninitialized variable.
17341
17342         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
17343                     Ulrich Drepper  <drepper@redhat.com>
17344
17345         [BZ #1302]
17346         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
17347         changed.
17348         (bitset_word_t): Renamed from bitset_word.  All uses changed.
17349
17350         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
17351
17352         [BZ #281]
17353         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
17354         * lib/regcomp.c: Remove unnecessary uses of
17355         unsigned RE_TRANSLATE_TYPE.
17356         * lib/regex_internal.h: Likewise.
17357         * lib/regex_internal.c: Likewise.
17358         * lib/regexec.c: Likewise.
17359         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
17360
17361         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
17362
17363         * lib/regexec.c (find_recover_state): Remove unnecessary
17364         initialization.
17365         (transit_state_bkref): Make DFA a const pointer.
17366         (get_subexp): Likewise.
17367         (check_arrival): Likewise.
17368         (update_cur_sifted_state): Likewise.
17369         (re_search_internal): Likewise.
17370         (prune_impossible_nodes): Likewise.
17371         (acquire_init_state_context): Likewise.
17372         (proceed_next_node): Likewise.
17373         (set_regs): Likewise.
17374         (free_fail_stack_return): Likewise.
17375         (check_arrival_expand_ecl): Mark DFA parameter as const.
17376         (check_arrival_expand_ecl_sub): Likewise.
17377         (check_subexp_limits): Likewise.
17378         (sub_epsilon_src_nodes):  Likewise.
17379         (add_epsilon_src_nodes):  Likewise.
17380         (merge_state_array): Likewise.
17381         (update_regs): Likewise.
17382         (build_trtable): Likewise.
17383         (sift_states_backward): Mark MCTX parameter as const.
17384         (build_sifted_states): Likewise.
17385         (update_cur_sifted_state): Likewise.
17386         (sift_states_mkref): Likewise.
17387         (check_arrival_expand_ecl): Mark eclosure as const.
17388         (check_dst_limits_calc_pos_1): Likewise.
17389         * lib/regex_internal.h (re_match_context_t): Make dfa a const
17390         pointer.
17391
17392         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
17393
17394         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
17395         (transit_state_sb): Likewise.
17396         (transit_state_mb): Likewise.
17397         (sift_states_iter_mb): Likewise.
17398         (check_arrival_add_next_nodes): Likewise.
17399         (check_node_accept_bytes): Change first parameter to pointer-to-const.
17400         [_LIBC] (re_search_2_stub): Use mempcpy.
17401
17402         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
17403         mbrtowc for very simple UTF-8 case.
17404
17405         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
17406         a pointer-to-const.
17407         (re_acquire_state_context): Likewise.
17408         * lib/regex_internal.h: Adjust prototypes.
17409
17410         * lib/regex.c: Prevent using C++ compilers.
17411
17412         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
17413         (re_acquire_state_context): Likewise.
17414
17415 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17416
17417         * modules/regex (Depends-on): Add ssize_t.
17418
17419 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17420
17421         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
17422         translation table.
17423
17424 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
17425
17426         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
17427
17428 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
17429             Bruno Haible  <bruno@clisp.org>
17430
17431         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
17432         <sys/types.h> and <inttypes.h>.
17433
17434 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17435
17436         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
17437         `__error_t_defined', so argp.h will not typedef the former.
17438
17439 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
17440
17441         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
17442         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
17443         glibc names.  Even if glibc is changed to conform to POSIX, the
17444         traditional names will be available anyway, since regex depends on
17445         the extensions module.  Also, fix a longstanding typo in the
17446         implementation of Spencer ERE test #75 from grep 2.3.  Problems
17447         reported by Emanuele Giaquinta.  Also, change sense of cached
17448         variable, so that the message makes sense.
17449
17450 2006-03-24  Simon Josefsson  <jas@extundo.com>
17451
17452         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
17453         including some doc fixes.
17454         (base64_encode_alloc): Fix +1 bug on allocation failures.
17455
17456 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17457
17458         * lib/base64.c (base64_encode): Do not read past end of array with
17459         unsanitized input on systems with CHAR_BIT > 8.
17460
17461 2006-03-24  Eric Blake  <ebb9@byu.net>
17462
17463         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
17464
17465 2006-03-22  Karl Berry  <karl@gnu.org>
17466
17467         * config/srclist.txt (*setenv.[ch]): get from coreutils.
17468         * config/srclistvars.sh (COREUTILS): new var.
17469
17470 2006-03-17  Jim Meyering  <jim@meyering.net>
17471
17472         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
17473         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
17474
17475 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17476
17477         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
17478         no longer needs it.  Instead, check that regoff_t is as least
17479         as wide as ptrdiff_t.
17480
17481         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
17482         so that our regex.h stays compatible with the installed regex.
17483         This is helpful for installers who configure --without-included-regex.
17484         Problem reported by Emanuele Giaquinta.
17485
17486 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
17487
17488         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
17489         Typedef to long int, not to off_, as POSIX will likely change
17490         in that direction.
17491
17492 2006-03-15  Eric Blake  <ebb9@byu.net>
17493
17494         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
17495
17496 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17497
17498         * lib/argp-help.c (validate_uparams): Fix typo
17499         * lib/argp-parse.c (argp_default_options): Consistently begin help
17500         messages with a lowercase letter.
17501
17502 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
17503
17504         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
17505         overrun buffers and shouldn't be used (much as gets shouldn't be
17506         used).
17507         * lib/time_r.c (asctime_r, ctime_r): Likewise.
17508
17509 2006-03-08  Simon Josefsson  <jas@extundo.com>
17510
17511         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
17512         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17513
17514 2006-03-08  Simon Josefsson  <jas@extundo.com>
17515
17516         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
17517         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17518
17519 2006-03-08  Simon Josefsson  <jas@extundo.com>
17520
17521         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
17522         signal that configure disabled the device.
17523
17524 2006-03-08  Simon Josefsson  <jas@extundo.com>
17525
17526         * build-aux/maint.mk: Fix refresh-po, to handle no translated
17527         languages.
17528
17529 2006-03-07  Simon Josefsson  <jas@extundo.com>
17530
17531         * modules/getopt (Depends-on): Add unistd.
17532
17533         * modules/unistd: New file.
17534
17535 2006-03-07  Simon Josefsson  <jas@extundo.com>
17536
17537         * modules/gc-random: New file.
17538
17539 2006-03-07  Simon Josefsson  <jas@extundo.com>
17540
17541         * m4/unistd_h.m4: New file.
17542
17543 2006-03-07  Simon Josefsson  <jas@extundo.com>
17544
17545         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
17546         test to be side-effect free by storing the result in the cache
17547         variable gl_cv_lib_readline, and moving the assignment of
17548         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
17549         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17550
17551 2006-03-07  Simon Josefsson  <jas@extundo.com>
17552
17553         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
17554         error on missing devices (the functions will return an error).
17555
17556         * m4/gc.m4: Move random stuff to gc-random.m4
17557
17558 2006-03-07  Simon Josefsson  <jas@extundo.com>
17559
17560         * lib/unistd_.h: New file.
17561
17562 2006-03-07  Simon Josefsson  <jas@extundo.com>
17563
17564         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
17565
17566 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17567
17568         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
17569         Problem reported by Juan Manuel Guerrero.
17570
17571 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17572
17573         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
17574         the unistd module.
17575         * lib/getlogin_r.c: Likewise.
17576         * lib/getlogin_r.h: Likewise.
17577         * lib/glob.c: Likewise.
17578         * lib/pagealign_alloc.c: Likewise.
17579         * lib/unistd_.h: Remove; no longer needed.
17580
17581 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
17582
17583         * MODULES.html.sh (Support for systems lacking POSIX:2001):
17584         Add unistd.
17585         * modules/c-stack (Depends-on): Add unistd.
17586         * modules/getlogin_r: Likewise.
17587         * modules/glob: Likewise.
17588         * modules/pagealign_alloc: Likewise.
17589         * modules/unistd (Files): Remove lib/unistd_.h.
17590         (EXTRA_DIST): Remove.
17591         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
17592         need unistd_.h.
17593         (MOSTLYCLEANFILES): Remove unistd.h-t.
17594
17595 2006-03-03  Simon Josefsson  <jas@extundo.com>
17596
17597         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
17598
17599 2006-03-03  Simon Josefsson  <jas@extundo.com>
17600
17601         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
17602         libidn and bison.
17603
17604 2006-03-03  Simon Josefsson  <jas@extundo.com>
17605
17606         * build-aux/maint.mk: Add indent target.
17607
17608 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
17609
17610         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
17611         our replacement poll.h in any case, to avoid a differing
17612         declaration from a system header.  Seen on AIX.
17613
17614 2006-03-01  Simon Josefsson  <jas@extundo.com>
17615
17616         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
17617         <kasal@ucw.cz>.
17618
17619 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17620
17621         * modules/gettime (Depends-on): Add extensions module.
17622         * modules/nanosleep (Depends-on): Likewise.
17623         * modules/settime (Depends-on): Likewise.
17624
17625 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
17626
17627         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
17628         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
17629         pedantically.
17630         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
17631         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
17632
17633         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
17634         not "==".  Reported by Ralf Wildenhues.
17635
17636 2006-03-01  Karl Berry  <karl@gnu.org>
17637
17638         * doc/Copyright/request-*: new files, synced from gnuorg.
17639
17640 2006-03-01  Karl Berry  <karl@gnu.org>
17641
17642         * config/srclist.txt (Copyright/*): new entries.
17643
17644 2006-02-28  Simon Josefsson  <jas@extundo.com>
17645
17646         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
17647
17648 2006-02-27  Simon Josefsson  <jas@extundo.com>
17649
17650         * lib/base64.h: Indent #define's.  From Jim Meyering
17651         <jim@meyering.net>.
17652
17653 2006-02-27  Jim Meyering  <jim@meyering.net>
17654
17655         Revert the change of 2006-02-24, so these files can continue
17656         to be sync'd from gettext.
17657         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
17658         of `config.h'.
17659
17660 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
17661
17662         * modules/intprops: New file.
17663         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
17664         Add intprops.
17665         * modules/getloadavg (Files): Remove lib/intprops.h.
17666         (Depends-on): Add intprops.
17667         * modules/human: Likewise.
17668         * modules/inttostr: Likewise.
17669         * modules/openat: Likewise.
17670         * modules/sig2str: Likewise.
17671         * modules/userspec: Likewise.
17672         * modules/utimecmp: Likewise.
17673         * modules/xnanosleep: Likewise.
17674         * modules/xstrtol: Likewise.
17675
17676 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
17677
17678         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
17679         * modules/lock-tests (TESTS): Use $(EXEEXT).
17680         * modules/tls-tests: Likewise.
17681         * modules/argp-tests: Likewise.
17682         (check_PROGRAMS): New var, replacing...
17683         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
17684
17685 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17686
17687         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
17688         `config.h'.
17689
17690 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
17691
17692         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
17693
17694 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17695
17696         Sync from coreutils.
17697         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
17698         gl_CHDIR_SAFER.
17699
17700 2006-02-22  Jim Meyering  <jim@meyering.net>
17701
17702         Sync from coreutils.
17703         * m4/chdir-safer.m4: New file.
17704
17705 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
17706
17707         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
17708         AT_FDCWD exceeds INT_MAX.
17709         * lib/openat.h (AT_FDCWD): Likewise.
17710
17711 2006-02-17  Eric Blake  <address@hidden>
17712
17713         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
17714
17715 2006-02-16  Simon Josefsson  <jas@extundo.com>
17716
17717         * modules/getaddrinfo (Depends-on): Add sys_socket.
17718
17719 2006-02-15  Simon Josefsson  <jas@extundo.com>
17720
17721         * build-aux/maint.mk: Add dsyntax-check rule.
17722
17723 2006-02-15  Eric Blake  <ebb9@byu.net>
17724
17725         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
17726         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
17727         'present but cannot compile' warnings on cygwin.
17728         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
17729         use ws2tcpip.h if sys/socket.h works.
17730         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
17731         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
17732
17733 2006-02-14  Simon Josefsson  <jas@extundo.com>
17734
17735         * modules/maintainer-makefile (Files): Rename.
17736
17737         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
17738         and (the local) Makefile.cfg to maint-cfg.mk.
17739
17740         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
17741         to the latter.
17742
17743         * modules/maintainer-makefile: New module.
17744
17745         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
17746         severaly stripped to make it possible to build it up from scratch
17747         with reliable tests.
17748
17749         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
17750         fixes to permit overriding the default actions when configure and
17751         makefile are not available.
17752
17753 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
17754
17755         Sync from coreutils.
17756         * modules/lstat (Depends-on): Don't depend on xalloc.
17757         (License): Change from GPL to LGPL, since this is now simply a
17758         replacement for a libc function.
17759
17760 2006-02-14  Jim Meyering  <jim@meyering.net>
17761
17762         Sync from coreutils.
17763
17764         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
17765         failure on deficient systems, and simplify gnulib lgpl dependencies.
17766         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
17767         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
17768
17769         * lib/xalloc-die.c: Remove unused definition of N_.
17770
17771 2006-02-14  Jim Meyering  <jim@meyering.net>
17772
17773         Sync from coreutils.
17774         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
17775         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
17776         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
17777         double-quote uses of that variable, to accommodate the rare case in
17778         which getmntent is available in none of the libraries checked.  This
17779         happens at least on FreeBSD 5.0.
17780
17781 2006-02-13  Simon Josefsson  <jas@extundo.com>
17782
17783         * gnulib-tool (Usage): Fix --import, from
17784         karl@freefriends.org (Karl Berry).
17785
17786 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
17787
17788         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
17789
17790 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
17791
17792         * lib/argp-namefrob.h: Restore changes accidentally lost during the
17793         "autoupdate" on 2005-12-12.
17794
17795 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
17796
17797         * modules/closeout (Depends-on): Remove atexit.
17798
17799 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
17800
17801         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
17802         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
17803
17804 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
17805
17806         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
17807         __EXTENSIONS__ if this causes compilation to fail.  Problem
17808         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
17809         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
17810
17811 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
17812
17813         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
17814         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
17815         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
17816         All uses changed.
17817
17818 2006-01-26  Simon Josefsson  <jas@extundo.com>
17819
17820         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
17821         prototype is visible on mingw32.
17822
17823         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
17824         for mingw32.
17825
17826         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
17827         mingw32).
17828
17829 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
17830
17831         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
17832         attempt to open for write; this always fails, at least on POSIX
17833         hosts.  This reinstates the 2006-01-09 change, which was
17834         inadvertently removed.
17835
17836 2006-01-26  Bruno Haible  <bruno@clisp.org>
17837
17838         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
17839         Reported by Paul Eggert.
17840
17841 2006-01-26  Bruno Haible  <bruno@clisp.org>
17842             Paul Eggert  <eggert@cs.ucla.edu>
17843
17844         * lib/stdbool_.h (_Bool)
17845         [(! (defined __cplusplus || defined __BEOS__)
17846           && !defined __GNUC__
17847           && !(defined __HP_cc || defined __xlc__
17848                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
17849                || defined __sgi))]:
17850         #define to signed char in these cases too; this simplifies
17851         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
17852         etc., separately) and makes it more conservative.
17853
17854 2006-01-25  Simon Josefsson  <jas@extundo.com>
17855
17856         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
17857         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
17858         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
17859
17860 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
17861
17862         * lib/argp-namefrob.h: Bugfix. Remove stray #
17863
17864 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
17865
17866         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
17867         so that we test the test.
17868         Check for yet another HP-UX cc bug involving *bool |= bool.
17869
17870 2006-01-25  Karl Berry  <karl@gnu.org>
17871
17872         * config/srclist.txt (vasnprintf.c): sync lost.
17873
17874 2006-01-25  Jim Meyering  <jim@meyering.net>
17875
17876         Sync from the stable (b5) branch of coreutils:
17877
17878         * lib/fts.c (fts_children): Don't let close() clobber errno from
17879         failed fchdir().
17880
17881         * lib/fts.c (fts_stat): When following a symlink-to-directory,
17882         don't necessarily interpret stat-fails+lstat-succeeds as indicating
17883         a dangling symlink.  That can also happen at least for ELOOP.
17884         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
17885         FYI, this bug predates the inclusion of fts.c in coreutils.
17886
17887         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
17888         in their own block, so pre-c99 compilers don't object.
17889
17890         Avoid the double-free (first in fts_read, second in fts_close) that
17891         would occur when an `active' directory is made inaccessible (e.g.,
17892         via chmod a-x) during a traversal.
17893         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
17894         before returning.  Reproduce this failure by
17895         mkdir -p a/b; cd a; chmod a-x . b
17896         Reported by Stavros Passas.
17897
17898 2006-01-25  Jim Meyering  <jim@meyering.net>
17899
17900         * lib/fileblocks.c: Remove more useless parentheses.
17901         * lib/readutmp.h: Likewise.
17902
17903 2006-01-25  Bruno Haible  <bruno@clisp.org>
17904
17905         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
17906         warnings.
17907         Reported by Paul Eggert.
17908
17909 2006-01-25  Bruno Haible  <bruno@clisp.org>
17910
17911         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
17912         rid of a trap command. For Solaris sh.
17913         Reported by Mark D. Baushke <mdb@gnu.org>.
17914
17915 2006-01-24  Simon Josefsson  <jas@extundo.com>
17916
17917         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
17918         Bruno.
17919
17920 2006-01-24  Karl Berry  <karl@gnu.org>
17921
17922         * config/srclist.txt (argp-namefrob.h): sync lost.
17923
17924 2006-01-24  Jim Meyering  <jim@meyering.net>
17925
17926         * modules/openat (Files): Add lib/intprops.h.
17927         From Mark D. Baushke.
17928
17929 2006-01-24  Jim Meyering  <jim@meyering.net>
17930
17931         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
17932         Reported by Mark D. Baushke.
17933
17934 2006-01-24  Jim Meyering  <jim@meyering.net>
17935
17936         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
17937
17938 2006-01-24  Bruno Haible  <bruno@clisp.org>
17939
17940         * modules/strnlen (Maintainer): Change from glibc to all.
17941
17942 2006-01-24  Bruno Haible  <bruno@clisp.org>
17943
17944         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
17945         Patch by Paul Eggert.
17946
17947 2006-01-24  Bruno Haible  <bruno@clisp.org>
17948
17949         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
17950         already has it.
17951         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
17952         2005-11-26.
17953
17954         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
17955         'signed char' to avoid problems with the built-in _Bool type.
17956         Reported by Paul Eggert on 2005-11-26.
17957
17958 2006-01-24  Bruno Haible  <bruno@clisp.org>
17959
17960         * gnulib-tool (func_import): Avoid constructing complicated sed
17961         expressions inside backquote.
17962         Report and solution by Mark D. Baushke <mdb@gnu.org>.
17963
17964 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
17965
17966         These changes imported from libc.
17967         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
17968         test and two separate function calls.
17969         * lib/strndup.c (__strndup): Add libc_hidden_def.
17970
17971 2006-01-23  Simon Josefsson  <jas@extundo.com>
17972
17973         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
17974         Remove the test_*_SOURCES variable: automake infers it by default.
17975         * modules/tls-tests: Likewise.
17976
17977 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17978
17979         Work around porting bugs reported by Dieter in
17980         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
17981         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
17982         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
17983         Include "getopt.h" first, to check interface.
17984         (getenv): Declare only if defined HAVE_DECL_GETENV &&
17985         !HAVE_DECL_GETENV.
17986         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
17987         (__strndup): Revert to K&R-style function dfns, the glibc style.
17988         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
17989         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
17990         Include strnlen.h first, to get prototype properly.
17991         (strnlen): Renamed from __strnlen.
17992         Remove weak alias.
17993
17994 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17995
17996         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
17997
17998 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
17999
18000         * config/srclist.txt: Adjust to reflect glibc reorganization.
18001         This affects only comments.
18002
18003 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
18004
18005          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
18006          Reported by Bruce Korb <bkorb@gnu.org>.
18007
18008 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
18009
18010         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
18011         to pacify gcc -Wswitch-default.
18012
18013 2006-01-22  Bruno Haible  <bruno@clisp.org>
18014
18015         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
18016         temporary buffer for sprintf, take into account the precision also
18017         for 'd', 'i', 'u', 'o', 'x', 'X'.
18018
18019 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
18020
18021         * modules/argp-tests: New module
18022         * tests/test-argp.c: New file
18023         * tests/test-argp-2.sh: New file
18024
18025 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
18026
18027         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
18028         (__argp_base_name): Removed
18029         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
18030         typo.
18031         (__argp_base_name): Provide macro definition or extern declaration
18032         depending on the configuration
18033
18034 2006-01-20  Simon Josefsson  <jas@extundo.com>
18035
18036         * modules/inet_ntop (Depends-on): Depend on sys_socket.
18037
18038 2006-01-20  Simon Josefsson  <jas@extundo.com>
18039
18040         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
18041
18042 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
18043
18044         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
18045         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
18046         Suggested by Bruno Haible.
18047
18048 2006-01-20  Karl Berry  <karl@gnu.org>
18049
18050         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
18051         until changes propagate, I guess.
18052
18053 2006-01-19  Simon Josefsson  <jas@extundo.com>
18054
18055         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
18056
18057 2006-01-19  Simon Josefsson  <jas@extundo.com>
18058
18059         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
18060
18061 2006-01-19  Simon Josefsson  <jas@extundo.com>
18062
18063         * gnulib-tool: Set check_PROGRAMS.
18064
18065         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
18066         modules/des-tests, modules/gc-arcfour-tests,
18067         modules/gc-arctwo-tests, modules/gc-des-tests,
18068         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
18069         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
18070         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
18071         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
18072         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
18073         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
18074         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
18075         test_*_SOURCES.
18076
18077 2006-01-18  Simon Josefsson  <jas@extundo.com>
18078
18079         * modules/socklen (Depends-on): Depend on sys_socket.
18080
18081 2006-01-18  Simon Josefsson  <jas@extundo.com>
18082
18083         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
18084         modules/des-tests, modules/gc-arcfour-tests,
18085         modules/gc-arctwo-tests, modules/gc-des-tests,
18086         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
18087         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
18088         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
18089         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
18090         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
18091         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
18092         $(EXEEXT) to automake TESTS variable, for mingw32.
18093
18094 2006-01-17  Simon Josefsson  <jas@extundo.com>
18095
18096         * modules/socklen (Include): Need sys/socket.h.
18097
18098 2006-01-17  Bruno Haible  <bruno@clisp.org>
18099
18100         * modules/ssize_t (Include): Add <sys/types.h>.
18101
18102 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
18103
18104         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
18105         it's not portable and it doesn't work with cross-compiles.
18106         Problem reported by Bruno Haible.  Fix missing-$ typo in
18107         'test "gl_cv_ignore_unused_libraries" ...' that prevented
18108         -zignore from being used with Sun's C compiler.
18109
18110 2006-01-12  Simon Josefsson  <jas@extundo.com>
18111
18112         * lib/base64.c: Fix warning, reported by Bruno Haible
18113         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
18114
18115 2006-01-12  Bruno Haible  <bruno@clisp.org>
18116
18117         * modules/ldd: New file.
18118         * build-aux/ldd.sh.in: New file.
18119         * MODULES.html.sh (Support for building libraries and executables): Add
18120         ldd.
18121
18122 2006-01-12  Bruno Haible  <bruno@clisp.org>
18123
18124         * m4/ldd.m4: New file.
18125
18126 2006-01-12  Bruno Haible  <bruno@clisp.org>
18127
18128         * gnulib-tool (func_import, func_create_testdir): Don't go into an
18129         endless loop while replacing $auxdir with build-aux.
18130
18131 2006-01-11  Simon Josefsson  <jas@extundo.com>
18132
18133         * lib/stdint_.h (SIZE_MAX): Add missing (.
18134
18135 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
18136
18137         Sync from coreutils.
18138         * lib/md5.c: Fix commentary typos.
18139         (alignof, UNALIGNED_P): No need for a GCC-specific version.
18140         * lib/md5.h (__attribute__): Remove; unused.
18141         * lib/sha1.c: Fix commentary to match md5 better.
18142         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
18143         so that we don't need to worry about alignment.  All uses changed.
18144         This merges the 2005-10-28 md5 change into sha1.
18145
18146 2006-01-11  Jim Meyering  <jim@meyering.net>
18147
18148         Sync from coreutils.
18149         * lib/md5.c (OP): Fix spacing.
18150
18151 2006-01-11  Bruno Haible  <bruno@clisp.org>
18152
18153         Ensure automatic ordering between gl_LOCK and gl_ARGP.
18154         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
18155         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
18156
18157 2006-01-11  Bruno Haible  <bruno@clisp.org>
18158
18159         Ensure automatic ordering between gl_LOCK and gl_ARGP.
18160         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
18161         the "early" section as well.
18162
18163 2006-01-11  Bruno Haible  <bruno@clisp.org>
18164
18165         Avoid "ar: no archive members specified" error on MacOS X.
18166         * gnulib-tool (func_modules_add_dummy): New function.
18167         (func_import, func_create_testdir): Invoke it.
18168
18169 2006-01-11  Bruno Haible  <bruno@clisp.org>
18170
18171         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
18172         with $auxdir in AC_CONFIG_FILES statements.
18173
18174 2006-01-11  Bruno Haible  <bruno@clisp.org>
18175
18176         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18177         Initialize also noinst_HEADERS to empty.
18178
18179 2006-01-11  Bruno Haible  <bruno@clisp.org>
18180
18181         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
18182         variables.
18183         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
18184         autoreconf.
18185
18186 2006-01-11  Bruno Haible  <bruno@clisp.org>
18187
18188         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
18189         overridable by the user.
18190         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18191
18192 2006-01-10  Simon Josefsson  <jas@extundo.com>
18193
18194         * modules/sys_socket: New file.
18195
18196 2006-01-10  Simon Josefsson  <jas@extundo.com>
18197
18198         * m4/sys_socket_h.m4: New file.
18199
18200 2006-01-10  Simon Josefsson  <jas@extundo.com>
18201
18202         * lib/socket_.h: New file.
18203
18204 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18205
18206         * modules/readutmp (Maintainer): Add myself.
18207
18208 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18209
18210         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
18211         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
18212         People who are still concerned with buggy memcmp implementations
18213         can invoke gl_FUNC_MEMCMP themselves.
18214
18215 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
18216
18217         * lib/regex_internal.h (BITSET_WORD_BITS):
18218         Work around a bug in 64-bit PGC (before version 6.1-2), where the
18219         preprocessor mishandles large unsigned values as if they were signed.
18220         Problem reported by Claudio Fontana in
18221         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
18222
18223 2006-01-10  Jim Meyering  <jim@meyering.net>
18224
18225         Avoid the double-free (first in fts_read, second in fts_close) that
18226         would occur when an `active' directory is made inaccessible (e.g.,
18227         via chmod a-x) during a traversal.
18228         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
18229         before returning.  Reproduce this failure by
18230         mkdir -p a/b; cd a; chmod a-x . b
18231         Reported by Stavros Passas.
18232
18233         Sync from coreutils.
18234         * lib/sha1.c: Tweak grammar in a comment.
18235
18236 2006-01-10  Jim Meyering  <jim@meyering.net>
18237
18238         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
18239         Patch by Joerg Sonnenberger.
18240
18241 2006-01-10  Bruno Haible  <bruno@clisp.org>
18242
18243         * modules/readutmp: Depend on module free.
18244         * modules/strtok_r: Depend on module restrict.
18245
18246 2006-01-10  Bruno Haible  <bruno@clisp.org>
18247
18248         * modules/gettext (configure.ac): Add an invocation of
18249         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
18250
18251 2006-01-10  Bruno Haible  <bruno@clisp.org>
18252
18253         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
18254         Reported by Werner Lemberg <wl@gnu.org>.
18255
18256 2006-01-10  Bruno Haible  <bruno@clisp.org>
18257
18258         * lib/localcharset.c: Update from GNU gettext.
18259
18260 2006-01-10  Bruno Haible  <bruno@clisp.org>
18261
18262         * lib/argp.h (__const): Remove macro. Use const instead.
18263         * lib/argp-fmtstream.h (__const): Likewise.
18264         * lib/glob_.h (__const): Remove macro.
18265         * lib/glob-libc.h: Use const instead of __const.
18266
18267 2006-01-10  Bruno Haible  <bruno@clisp.org>
18268
18269         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
18270         variable.
18271         Needed to avoid an automake error regarding the 'gettext' module.
18272
18273 2006-01-09  Simon Josefsson  <jas@extundo.com>
18274
18275         * modules/inet_ntop (Depends-on): Add restrict.
18276
18277 2006-01-09  Simon Josefsson  <jas@extundo.com>
18278
18279         * modules/gc-rijndael-tests (License): Put under LGPL.
18280
18281         * modules/gc-des-tests (License): Likewise.
18282
18283         * modules/gc-arcfour-tests (License): Likewise.
18284
18285         * modules/gc-arctwo-tests (License): Likewise.
18286
18287         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
18288
18289         * modules/gc-hmac-sha1-tests (Files): Likewise.
18290
18291         * modules/gc-hmac-md5-tests (License): Likewise.
18292
18293         * modules/gc-sha1-tests (License): Likewise.
18294
18295         * modules/gc-md5-tests (License): Likewise.
18296
18297         * modules/gc-md4-tests (License): Likewise.
18298
18299         * modules/gc-md2-tests (License): Likewise.
18300
18301         * modules/gc-tests (License): Likewise.
18302
18303         * modules/des-tests (License): Likewise.
18304
18305         * modules/md4-tests (License): Likewise.
18306
18307         * modules/md2-tests (License): Likewise.
18308
18309 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18310
18311         Sync from coreutils:
18312
18313         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
18314         * modules/lib-ignore: New file.
18315         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
18316         chdir-safer.m4, lchmod.m4.
18317         * modules/openat: Add mkdirat.c, openat-priv.h.
18318
18319 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18320
18321         Sync from coreutils.
18322         * m4/lib-ignore.m4: New file.
18323         * m4/lchmod.m4: New file.
18324
18325 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18326
18327         Sync from coreutils.
18328         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
18329         for write access: POSIX says that must fail.
18330         * lib/fts.c (diropen): Likewise.
18331         * lib/save-cwd.c (save_cwd): Likewise.
18332         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
18333         well, for minor improvements on hosts that lack O_DIRECTORY.
18334         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
18335         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
18336         Fall back on chown if open failed with EACCES.
18337
18338         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
18339         Report an error at compile-time if only a 1-second nominal clock
18340         resolution is found.
18341
18342         * lib/lchmod.h: New file.
18343         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
18344         (make_dir_parents): Use lchown rather than chown, and
18345         lchmod rather than chmod.
18346
18347         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
18348         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
18349         "proc" reported by n0dalus.
18350
18351         * lib/mountlist.c: Include <limits.h>.
18352         (dev_from_mount_options)
18353         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
18354         New function.  It no longer assumes "dev=" has the System V meaning
18355         on Linux (since it doesn't).  It also parses "dev=" more carefully.
18356         (read_file_system_list)
18357         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
18358         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
18359         dev= in that case.
18360
18361         * lib/posixtm.h (PDS_PRE_2000): New macro.
18362         * lib/posixtm.c (year): Arg is now syntax_bits rather than
18363         allow_century.  All usages changed.  Reject dates outside the range
18364         1969-1999 if PDS_PRE_2000 is used.
18365
18366 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
18367
18368         Sync from coreutils.
18369         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
18370         (Time of day items): Mention the possibility of leap seconds.
18371         Problem reported by Dr. David Alan Gilbert.
18372
18373 2006-01-09  Jim Meyering  <jim@meyering.net>
18374
18375         Sync from coreutils.
18376
18377         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
18378
18379         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
18380
18381         * lib/modechange.c (mode_compile): Reject an invalid mode string
18382         that starts with an octal digit.  From Andreas Gruenbacher.
18383
18384         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
18385         and dup to open_safer and dup_safer, respectively.
18386         (openat_permissive): Fix typo in comment.
18387
18388         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
18389         "gettext.h"; either no longer needed or are guaranteed by openat.h.
18390         (_): Remove; no longer needed.
18391         (openat): Renamed from rpl_openat; no need for rpl_openat
18392         since openat.h renames openat for us.
18393         Replace most of the body with a call to openat_permissive,
18394         to avoid duplicate code.
18395         Port to (probably hypothetical) environments were mode_t is
18396         wider than int.
18397         (openat_permissive): Require mode arg, so that we can check
18398         types better.  Put it just after flags.  Change cwd failure
18399         indicator from pointer-to-bool to pointer-to-errno-value.
18400         All callers changed.
18401         Invoke openat_save_fail and/or openat_restore_fail if
18402         cwd_errno is null, so that openat can call us.
18403         (openat_permissive, fdopendir, fstatat, unlinkat):
18404         Simplify errno handling to avoid some duplicate code,
18405         as it's OK to set errno on success.
18406         * lib/openat.h: Revamp code so that function macros depend on
18407         __OPENAT_PREFIX only, not also on AT_FDCWD.
18408         (openat_ro): Remove.  Caller changed to use openat_permissive.
18409         (openat_permissive): Now a macro, if not a function.
18410         (openat_restore_fail, openat_save_fail): Now always functions,
18411         since mkdirat needs them even if __OPENAT_PREFIX is defined.
18412
18413         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
18414         and openat.c.
18415         * lib/mkdirat.c: Include openat-priv.h.
18416         Remove definitions of macros defined therein.
18417         * lib/openat.c: Likewise.
18418
18419         * lib/mkdirat.c (mkdirat): New file and function.
18420         * lib/openat.h (mkdirat): Declare.
18421
18422         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
18423
18424         * lib/openat.h (openat_permissive): Declare.
18425         (openat_ro): Define.
18426
18427         * lib/openat.c (EXPECTED_ERRNO): New macro.
18428         (openat_permissive): New function -- used in remove.c rewrite.
18429         (all functions): Set errno just before returning, only if there
18430         was an actual failure.
18431         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
18432
18433         Emulate openat-family functions using Linux's procfs, if possible.
18434         Idea and some code based on Ulrich Drepper's glibc changes.
18435
18436         * lib/openat.c: (BUILD_PROC_NAME): New macro.
18437         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
18438         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
18439         before falling back on save_cwd and restore_cwd.
18440         (fdopendir, fstatat, unlinkat): Likewise.
18441
18442         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
18443         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
18444
18445         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
18446         as second argument to va_arg.  Otherwise, some versions of gcc
18447         warn that `if this code is reached, the program will abort'.
18448
18449 2006-01-09  Jim Meyering  <jim@meyering.net>
18450
18451         Sync from coreutils.
18452         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
18453         Require openat-priv.h.
18454
18455 2006-01-09  Bruno Haible  <bruno@clisp.org>
18456
18457         * modules/strnlen (Include): Use strnlen.h.
18458
18459 2006-01-09  Bruno Haible  <bruno@clisp.org>
18460
18461         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
18462
18463 2006-01-09  Bruno Haible  <bruno@clisp.org>
18464
18465         * lib/sysexit_.h (EX_OK): New macro.
18466         Suggested by Martin Lambers <marlam@marlam.de>.
18467
18468 2006-01-09  Bruno Haible  <bruno@clisp.org>
18469
18470         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
18471         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
18472
18473 2006-01-09  Bruno Haible  <bruno@clisp.org>
18474
18475         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
18476         numbers.
18477
18478 2006-01-09  Bruno Haible  <bruno@clisp.org>
18479
18480         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
18481         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
18482         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
18483         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
18484
18485 2006-01-09  Bruno Haible  <bruno@clisp.org>
18486
18487         * build-aux/javacomp.sh.in: New file, moved from lib/.
18488         * modules/javacomp-script (Files): Update.
18489         (configure.ac): Add AC_CONFIG_FILES invocation.
18490         (EXTRA_DIST): Remove variable.
18491
18492         * build-aux/javaexec.sh.in: New file, moved from lib/.
18493         * modules/javaexec (Files): Update.
18494         (configure.ac): Add AC_CONFIG_FILES invocation.
18495         (EXTRA_DIST): Remove javaexec.sh.in.
18496
18497         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
18498         * modules/csharpcomp-script (Files): Update.
18499         (configure.ac): Add AC_CONFIG_FILES invocation.
18500         (EXTRA_DIST): Remove variable.
18501
18502         * build-aux/csharpexec.sh.in: New file, moved from lib/.
18503         * modules/csharpexec (Files): Update.
18504         (configure.ac): Add AC_CONFIG_FILES invocation.
18505         (EXTRA_DIST): Remove csharpexec.sh.in.
18506
18507 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18508
18509         Sync from coreutils.
18510
18511         Add POSIX ACL support
18512         * lib/acl.h (copy_acl, set_acl): Add declarations.
18513         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
18514         systems other than Linux.
18515         (chmod_or_fchmod): New function: use fchmod when possible,
18516         and chmod otherwise.
18517         (file_has_acl): Add a POSIX ACL implementation, with a
18518         Linux-specific subcase.
18519         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
18520         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
18521         acls are unsupported.
18522         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
18523         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
18524         are unsupported.
18525
18526 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
18527
18528         Sync from coreutils.
18529         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
18530
18531 2006-01-07  Bruno Haible  <bruno@clisp.org>
18532
18533         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
18534         gl_EARLY.
18535
18536 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18537
18538         * lib/strftime.c (tzname): Don't declare if it is already #defined.
18539         Problem reported for Mingw by Mark Junker.
18540
18541 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
18542
18543         * README: Gnulib normally doesn't generate a tarball.
18544
18545 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
18546
18547         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
18548         long int, not int, for nanosecond counts, so that people who are
18549         used to POSIX struct timespec won't be surprised.  Reported by Jim
18550         Meyering.
18551
18552 2005-12-28  Bruno Haible  <bruno@clisp.org>
18553
18554         * build-aux/config.rpath: Update from GNU gettext.
18555
18556 2005-12-16  Jim Meyering  <jim@meyering.net>
18557
18558         * modules/fprintftime: New module.
18559         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
18560
18561 2005-12-16  Jim Meyering  <jim@meyering.net>
18562
18563         * m4/fprintftime.m4: New file.
18564
18565 2005-12-16  Jim Meyering  <jim@meyering.net>
18566
18567         * lib/fprintftime.c, lib/fprintftime.h: New files.
18568
18569 2005-12-15  Simon Josefsson  <jas@extundo.com>
18570
18571         * modules/socklen (configure.ac): Fix M4 macro name, to align with
18572         new m4/socklen.m4.
18573
18574 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
18575
18576         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
18577         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
18578
18579 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
18580
18581         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
18582         * lib/argp-help.c (fill_in_uparams): Check if the constructed
18583         struct uparams is valid. Fall back to the default values if it is
18584         not.
18585
18586 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18587
18588         * modules/argp (Files): Add argp-pin.c
18589         (Depends-on): dirname
18590         (lib_SOURCES): Add argp-pin.c
18591
18592 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18593
18594         * m4/argp.m4:  Check if program_invocation_name and
18595         program_invocation_short_name are declared and define appropriate
18596         macros if they are not.
18597
18598 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
18599
18600         * lib/argp-help.c (__argp_base_name): New function
18601         (__argp_short_program_name): Rewrite using __argp_base_name
18602         * lib/argp-namefrob.h: Define program_invocation_name and
18603         program_invocation_short_name if requested
18604         (__argp_base_name): Add prototype
18605         * lib/argp-parse.c (argp_def): Use gettext wrappers
18606         (argp_default_parser): Use __argp_base_name
18607         * lib/argp-pin.c: New file. Defines program_invocation_name and
18608         program_invocation_short_name on systems that lack them.
18609
18610 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
18611
18612         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
18613         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
18614         porting problem reported by Georg Schwarz in
18615         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
18616
18617 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
18618
18619         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
18620         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
18621         porting problem reported by Georg Schwarz in
18622         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
18623
18624 2005-12-05  Bruno Haible  <bruno@clisp.org>
18625
18626         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
18627         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
18628         Reported by Mark Junker <mjscod@gmx.de>.
18629
18630 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
18631
18632         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
18633         Use implementation from Albert Chin, with some
18634         comments/corrections by Stepan Kasal and myself.
18635
18636 2005-12-02  Bruno Haible  <bruno@clisp.org>
18637
18638         * gnulib-tool (func_import): Accept GPLed build tool modules when
18639         --lgpl is given.
18640         * modules/csharpcomp-script: New file.
18641         * modules/csharpcomp: Depend on it.
18642         * modules/javacomp-script: New file.
18643         * modules/javacomp: Depend on it.
18644         Suggested by Simon Josefsson.
18645
18646 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
18647
18648         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
18649         statement, to work around an HP-UX 10.20 compiler bug reported by
18650         Peter O'Gorman.
18651
18652 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
18653
18654         * modules/savedir (Depends-on): Add openat.
18655
18656 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
18657
18658         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
18659         (uintmax_t) [defined uintmax_t]: Do not declare.
18660         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
18661         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
18662         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
18663         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
18664         sake of portability to weird hosts that C allows (though we don't
18665         know of any practical examples).
18666
18667         * lib/savedir.h (fdsavedir): New decl.
18668         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
18669         contains most of the former guts of savedir.
18670         (savedir): Use savedirstream.
18671         Include "openat.h".
18672
18673 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
18674
18675         * modules/obstack (Files): Add m4/ulonglong.m4.
18676         Problem reported by Davide Angelocola.
18677
18678 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
18679
18680         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
18681         coreutils no longer futzes with rounding modes.
18682
18683 2005-11-14  Jim Meyering  <jim@meyering.net>
18684
18685         * lib/mkstemp-safer.c: Include <config.h>, required for possible
18686         replacement of mkstemp.
18687
18688 2005-11-10  Simon Josefsson  <jas@extundo.com>
18689
18690         * lib/readline.c: Remove EOL.
18691
18692 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18693
18694         * modules/gethrxtime (Depends-on): Add gettime.
18695
18696 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18697
18698         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
18699         or gettimeofday; no longer needed.
18700
18701 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18702
18703         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
18704         time business.
18705         (gethrxtime) [! (HAVE_NANOUPTIME
18706         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
18707         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
18708         our own approximation.
18709
18710 2005-11-08  Eric Blake  <ebb9@byu.net>
18711
18712         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
18713
18714 2005-11-08  Eric Blake  <ebb9@byu.net>
18715
18716         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
18717
18718 2005-11-04  Bruno Haible  <bruno@clisp.org>
18719
18720         * gnulib-tool: Implement --update mode.
18721
18722 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18723
18724         Fix porting problem reported by Theodoros V. Kalamatianos.
18725         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
18726         Don't assume that futimes failing means we must fail.
18727
18728 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
18729
18730         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
18731         variables to suggest the intended function of the PATH_MAX check.
18732
18733 2005-10-30  Kean Johnston  <jkj@sco.com>
18734
18735         Trivial changes to support SCO systems.
18736         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
18737         as PATH_MAX.
18738         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
18739         where __ptr is null when no I/O is pending.
18740
18741 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
18742
18743         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
18744         leave errno alone.  Problem reported by Dmitry V. Levin.
18745
18746 2005-10-28  Simon Josefsson  <jas@extundo.com>
18747
18748         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
18749         Test more.
18750
18751         * tests/test-gc-md2.c, tests/test-md2.c: New files.
18752
18753         * modules/md2, modules/md2-tests: New files.
18754
18755 2005-10-28  Simon Josefsson  <jas@extundo.com>
18756
18757         * m4/inet_ntop.m4: More tests.
18758
18759         * m4/gc-md2.m4, md2.m4: New file.
18760
18761 2005-10-28  Simon Josefsson  <jas@extundo.com>
18762
18763         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
18764         "restrict" keywords, as per POSIX.  Protect the function
18765         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
18766         Don't use K&R prototypes.  Check the sprintf return values.
18767         Re-define EAFNOSUPPORT if not present.  Indent.
18768
18769         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
18770         suggested by Bruno Haible <bruno@clisp.org>.
18771
18772         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
18773
18774         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
18775
18776         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
18777         libgcrypt).
18778
18779         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
18780
18781         * lib/md2.h, lib/md2.c: New files.
18782
18783 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
18784
18785         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
18786         errno alone.  Problem reported by Frederic Jolliton.
18787
18788 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
18789
18790         * modules/verify (License): Change from GPL to LGPL.  This is a
18791         tiny module and there are apparently near-equivalents that are
18792         under the BSD license.
18793
18794 2005-10-24  Simon Josefsson  <jas@extundo.com>
18795
18796         * modules/sha1: Relicense to LGPL.
18797
18798 2005-10-24  Simon Josefsson  <jas@extundo.com>
18799
18800         * lib/md4.h: Shrink buffer size, now that we changed the type.
18801
18802 2005-10-23  Simon Josefsson  <jas@extundo.com>
18803
18804         * gnulib-tool (func_import): Fix --tests-base.
18805
18806 2005-10-22  Simon Josefsson  <jas@extundo.com>
18807
18808         * modules/arcfour (Depends-on): Need stdint.
18809
18810 2005-10-22  Simon Josefsson  <jas@extundo.com>
18811
18812         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
18813         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
18814
18815 2005-10-22  Simon Josefsson  <jas@extundo.com>
18816
18817         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
18818         suggested by Bruno Haible <bruno@clisp.org>.
18819
18820 2005-10-22  Simon Josefsson  <jas@extundo.com>
18821
18822         * lib/crc.h: Include stddef.h, for size_t.
18823
18824 2005-10-22  Simon Josefsson  <jas@extundo.com>
18825
18826         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
18827         arcfour_context struct (simplify test vector testing in GNU
18828         Shishi).
18829
18830 2005-10-21  Simon Josefsson  <jas@extundo.com>
18831
18832         * modules/des, modules/des-tests: New files.
18833
18834         * modules/gc-des, modules/gc-des-tests: New files.
18835
18836         * tests/test-des.c, tests/test-gc-des.c: New file.
18837
18838 2005-10-21  Simon Josefsson  <jas@extundo.com>
18839
18840         * modules/arctwo, modules/arctwo-tests: New files.
18841
18842         * tests/test-arctwo.c: New file.
18843
18844         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
18845
18846         * tests/test-gc-arctwo.c: New file.
18847
18848 2005-10-21  Simon Josefsson  <jas@extundo.com>
18849
18850         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
18851         Bruno Haible <bruno@clisp.org>.
18852
18853         * m4/gc-des.m4: New file.
18854
18855 2005-10-21  Simon Josefsson  <jas@extundo.com>
18856
18857         * m4/arctwo.m4: New file.
18858
18859         * m4/gc-arctwo.m4: New file.
18860
18861 2005-10-21  Simon Josefsson  <jas@extundo.com>
18862
18863         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
18864         block.
18865
18866 2005-10-21  Simon Josefsson  <jas@extundo.com>
18867
18868         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
18869         <bruno@clisp.org>.
18870
18871         * lib/hmac-sha1.c (hmac_sha1): Likewise.
18872
18873         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
18874         Bruno Haible <bruno@clisp.org>.
18875
18876         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
18877         <bruno@clisp.org>.
18878
18879 2005-10-21  Simon Josefsson  <jas@extundo.com>
18880
18881         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
18882
18883 2005-10-21  Simon Josefsson  <jas@extundo.com>
18884
18885         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
18886
18887 2005-10-21  Simon Josefsson  <jas@extundo.com>
18888
18889         * lib/des.h, lib/des.c: New files.
18890
18891         * lib/gc-gnulib.c: Support DES.c
18892
18893 2005-10-21  Simon Josefsson  <jas@extundo.com>
18894
18895         * lib/arctwo.h, lib/arctwo.c: New files.
18896
18897         * lib/gc-gnulib.c: Support ARCTWO.
18898
18899 2005-10-21  Simon Josefsson  <jas@extundo.com>
18900
18901         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
18902         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18903
18904 2005-10-21  Simon Josefsson  <jas@extundo.com>
18905
18906         * gnulib-tool (func_import, func_create_testdir): Define automake
18907         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
18908         Makefile.am snippet),
18909         suggested by Bruno Haible <bruno@clisp.org>.
18910
18911         * modules/gc (Makefile.am): Use it.
18912
18913 2005-10-21  Bruno Haible  <bruno@clisp.org>
18914
18915         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
18916         patch.
18917
18918 2005-10-19  Simon Josefsson  <jas@extundo.com>
18919
18920         * tests/test-gc-rijndael.c: New file.
18921
18922         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
18923
18924 2005-10-19  Simon Josefsson  <jas@extundo.com>
18925
18926         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
18927         interface too.
18928
18929 2005-10-19  Simon Josefsson  <jas@extundo.com>
18930
18931         * tests/test-gc-arcfour.c: New file.
18932
18933         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
18934
18935 2005-10-19  Simon Josefsson  <jas@extundo.com>
18936
18937         * modules/gc-md4, modules/gc-md4-tests: New file.
18938
18939         * tests/test-gc-md4.c: New file.
18940
18941 2005-10-19  Simon Josefsson  <jas@extundo.com>
18942
18943         * m4/gc-md4.m4: New file.
18944
18945 2005-10-19  Simon Josefsson  <jas@extundo.com>
18946
18947         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
18948         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
18949         <kasal@ucw.cz>.
18950
18951 2005-10-19  Simon Josefsson  <jas@extundo.com>
18952
18953         * m4/gc-arcfour.m4: New file.
18954
18955         * m4/gc-rijndael.m4: New file.
18956
18957 2005-10-19  Simon Josefsson  <jas@extundo.com>
18958
18959         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
18960
18961 2005-10-19  Simon Josefsson  <jas@extundo.com>
18962
18963         * lib/gc-gnulib.c: Support ARCFOUR.
18964
18965 2005-10-19  Simon Josefsson  <jas@extundo.com>
18966
18967         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
18968         support.
18969
18970         * lib/gc.h: Add ECB enum type.
18971
18972         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
18973
18974 2005-10-18  Simon Josefsson  <jas@extundo.com>
18975
18976         * tests/test-md5.c: New file.
18977
18978         * modules/md5-tests: New file.
18979
18980 2005-10-18  Simon Josefsson  <jas@extundo.com>
18981
18982         * tests/test-md4.c: New file.
18983
18984         * modules/md4, modules/md4-tests: New files.
18985
18986 2005-10-18  Simon Josefsson  <jas@extundo.com>
18987
18988         * m4/md4.m4: New file.
18989
18990 2005-10-18  Simon Josefsson  <jas@extundo.com>
18991
18992         * lib/md4.h, lib/md4.c: New files, based on md5.?.
18993
18994 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
18995
18996         * gnulib-tool (func_create_testdir): Omit the second check whether
18997         BUILT_SOURCES in nonempty.
18998
18999 2005-10-17  Simon Josefsson  <jas@extundo.com>
19000
19001         * tests/test-rijndael.c: New file.
19002
19003 2005-10-17  Simon Josefsson  <jas@extundo.com>
19004
19005         * modules/sha1: Depend on stdint instead of md5.
19006
19007         * modules/md5: Depend on stdint, remove uint32_t.
19008
19009 2005-10-17  Simon Josefsson  <jas@extundo.com>
19010
19011         * modules/gc-sha1-tests: New file.
19012
19013         * tests/test-gc-sha1.c: New file.
19014
19015 2005-10-17  Simon Josefsson  <jas@extundo.com>
19016
19017         * m4/md5.m4: Remove call to uint32_t.m4.
19018
19019 2005-10-17  Simon Josefsson  <jas@extundo.com>
19020
19021         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
19022
19023         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
19024         md5.h.
19025
19026         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
19027
19028         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
19029
19030 2005-10-17  Simon Josefsson  <jas@extundo.com>
19031
19032         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
19033
19034 2005-10-17  Simon Josefsson  <jas@extundo.com>
19035
19036         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
19037
19038 2005-10-17  Simon Josefsson  <jas@extundo.com>
19039
19040         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
19041
19042         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
19043
19044 2005-10-17  Bruno Haible  <bruno@clisp.org>
19045
19046         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
19047         that it can also be used in a test.
19048
19049 2005-10-16  Bruno Haible  <bruno@clisp.org>
19050
19051         * gnulib-tool (func_emit_tests_Makefile_am): Also define
19052         TESTS_ENVIRONMENT, so that individual tests can augment it.
19053
19054         * gnulib-tool (func_create_testdir): Use an intermediate target for
19055         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
19056         macros, like $(ALLOCA_H), which cannot be passed through the command
19057         line.
19058
19059 2005-10-15  Simon Josefsson  <jas@extundo.com>
19060
19061         * modules/rijndael-tests: New file.
19062
19063         * modules/rijndael: New file.
19064
19065 2005-10-15  Simon Josefsson  <jas@extundo.com>
19066
19067         * m4/rijndael.m4: New file.
19068
19069 2005-10-15  Simon Josefsson  <jas@extundo.com>
19070
19071         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
19072
19073         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
19074
19075 2005-10-14  Simon Josefsson  <jas@extundo.com>
19076
19077         * tests/test-arcfour.c: New file.
19078
19079         * modules/arcfour, modules/arcfour-tests: New files.
19080
19081 2005-10-14  Simon Josefsson  <jas@extundo.com>
19082
19083         * m4/arcfour.m4: New file.
19084
19085 2005-10-14  Simon Josefsson  <jas@extundo.com>
19086
19087         * lib/arcfour.h, lib/arcfour.c: New files.
19088
19089 2005-10-14  Roland McGrath  <roland@redhat.com>
19090
19091         Import from libc.  [BZ #1331]
19092         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
19093         macro argument.
19094         Reported by Matej Vela <vela@debian.org>.
19095
19096 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19097
19098         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
19099         include <wchar.h>; no longer needed.
19100
19101 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
19102
19103         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
19104
19105 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
19106         and  Ulrich Drepper  <drepper@redhat.com>
19107
19108         Import from libc.
19109         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
19110         instead of inline stream orientation test and two separate
19111         function calls.  Pay no attention to USE_IN_LIBIO.
19112
19113 2005-10-13  Simon Josefsson  <jas@extundo.com>
19114
19115         * modules/gc-hmac-md5-tests: New file.
19116
19117         * tests/test-gc-hmac-sha1.c: New file.
19118
19119         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
19120
19121         * modules/gc-hmac-md5-tests: New file.
19122
19123         * tests/test-gc-md5.c: New file.
19124
19125         * modules/gc-md5-tests: New file.
19126
19127 2005-10-13  Simon Josefsson  <jas@extundo.com>
19128
19129         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
19130         Move memory allocation outside of loop.
19131
19132 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
19133
19134         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
19135         intermediate directory is in a read-only file system.  Problem
19136         reported by Eric Blake.
19137
19138 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
19139
19140         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
19141
19142 2005-10-12  Simon Josefsson  <jas@extundo.com>
19143
19144         * tests/test-hmac-sha1.c: New file.
19145
19146         * modules/hmac-sha1-tests: New file.
19147
19148         * modules/hmac-sha1: New file.
19149
19150 2005-10-12  Simon Josefsson  <jas@extundo.com>
19151
19152         * modules/gc-sha1: New file.
19153
19154 2005-10-12  Simon Josefsson  <jas@extundo.com>
19155
19156         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
19157
19158         * tests/test-gc-pbkdf2-sha1.c: New file.
19159
19160 2005-10-12  Simon Josefsson  <jas@extundo.com>
19161
19162         * modules/gc-md5, modules/gc-hmac-md5: New files.
19163
19164         * modules/gc (Files): Remove md5, memxor and hmac files.
19165
19166 2005-10-12  Simon Josefsson  <jas@extundo.com>
19167
19168         * m4/gc-pbkdf2-sha1.m4: New file.
19169
19170         * m4/gc-hmac-sha1.m4: New file.
19171
19172         * m4/gc-sha1: New file.
19173
19174         * m4/hmac-sha1.m4: New file.
19175
19176 2005-10-12  Simon Josefsson  <jas@extundo.com>
19177
19178         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
19179
19180         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
19181
19182 2005-10-12  Simon Josefsson  <jas@extundo.com>
19183
19184         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
19185         suggested by Bruno Haible <bruno@clisp.org>.
19186
19187 2005-10-12  Simon Josefsson  <jas@extundo.com>
19188
19189         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
19190
19191 2005-10-12  Simon Josefsson  <jas@extundo.com>
19192
19193         * lib/gc-pbkdf2-sha1.c: New file.
19194
19195         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
19196
19197 2005-10-12  Simon Josefsson  <jas@extundo.com>
19198
19199         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
19200
19201         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
19202
19203 2005-10-12  Simon Josefsson  <jas@extundo.com>
19204
19205         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
19206         GC_USE_HMAC_MD5, respectively.
19207
19208         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
19209         (gc_md5): Fix typo.
19210
19211         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
19212
19213         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
19214
19215         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
19216
19217 2005-10-12  Bruno Haible  <bruno@clisp.org>
19218
19219         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
19220         Reported by Stepan Kasal <kasal@ucw.cz>.
19221
19222 2005-10-11  Simon Josefsson  <jas@extundo.com>
19223
19224         * tests/test-crc.c: New file.
19225
19226         * modules/crc, modules/crc-tests: New files.
19227
19228 2005-10-11  Simon Josefsson  <jas@extundo.com>
19229
19230         * m4/crc.m4: New file.
19231
19232 2005-10-11  Simon Josefsson  <jas@extundo.com>
19233
19234         * lib/gc.h: Add gc_hash and gc_hash_buffer.
19235
19236         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
19237
19238         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
19239
19240 2005-10-11  Simon Josefsson  <jas@extundo.com>
19241
19242         * lib/crc.h, lib/crc.c: New files.
19243
19244         * lib/gc.h (gc_hash_buffer): Add doc.
19245
19246 2005-10-11  Bruno Haible  <bruno@clisp.org>
19247
19248         * modules/c-strcasestr: New file.
19249         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
19250
19251 2005-10-11  Bruno Haible  <bruno@clisp.org>
19252
19253         * modules/c-strcase: New file.
19254         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
19255
19256 2005-10-11  Bruno Haible  <bruno@clisp.org>
19257
19258         * lib/strcasecmp.c: Include limits.h.
19259         (strcasecmp): Avoid integer overflow on exotic platforms.
19260         * lib/strncasecmp.c: Include limits.h.
19261         (strncasecmp): Avoid integer overflow on exotic platforms.
19262         Reported by Paul Eggert.
19263
19264 2005-10-11  Bruno Haible  <bruno@clisp.org>
19265
19266         * lib/c-strcasestr.h: New file, from GNU gettext.
19267         * lib/c-strcasestr.c: New file, from GNU gettext.
19268
19269 2005-10-11  Bruno Haible  <bruno@clisp.org>
19270
19271         * lib/c-strcase.h: New file, from GNU gettext.
19272         * lib/c-strcasecmp.c: New file, from GNU gettext.
19273         * lib/c-strncasecmp.c: New file, from GNU gettext.
19274
19275 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
19276
19277         * modules/mempcpy (License): GPL -> LGPL.
19278         * modules/strchrnul (License): Likewise.
19279         * modules/sysexits (License): Likewise.
19280
19281 2005-10-08  Simon Josefsson  <jas@extundo.com>
19282
19283         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
19284
19285 2005-10-07  Simon Josefsson  <jas@extundo.com>
19286
19287         * m4/memxor.m4: Remove gl_C_RESTRICT call.
19288
19289 2005-10-06  Simon Josefsson  <jas@extundo.com>
19290
19291         * tests/test-hmac-md5.c: New file.
19292
19293         * modules/hmac-md5-tests: New file.
19294
19295         * modules/hmac-md5: New file.
19296
19297 2005-10-06  Simon Josefsson  <jas@extundo.com>
19298
19299         * m4/hmac-md5.m4: New file.
19300
19301         * m4/memxor.m4: Require gl_C_RESTRICT.
19302
19303 2005-10-06  Simon Josefsson  <jas@extundo.com>
19304
19305         * lib/memxor.c (memxor): Avoid casts and warnings.
19306
19307 2005-10-06  Simon Josefsson  <jas@extundo.com>
19308
19309         * lib/hmac-md5.c: New file.
19310
19311         * lib/hmac.h: New file.
19312
19313 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
19314
19315         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
19316         promotes to int, not unsigned int, to catch the AIX 5.3
19317         compiler bug.
19318
19319 2005-10-05  Simon Josefsson  <jas@extundo.com>
19320
19321         * modules/memxor: New file.
19322
19323         * modules/iconv (Files): Move config.rpath to havelib, it is used
19324         there.
19325
19326         * modules/havelib (Files): Add config.rpath.
19327
19328 2005-10-05  Simon Josefsson  <jas@extundo.com>
19329
19330         * m4/memxor.m4: New file.
19331
19332 2005-10-05  Simon Josefsson  <jas@extundo.com>
19333
19334         * lib/memxor.c (memxor): Fix compiler error.
19335
19336         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
19337         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
19338
19339         * lib/memxor.h, lib/memxor.c: New files.
19340
19341         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
19342         we assume all systems have it, suggested by Jim Meyering
19343         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
19344         any systems lack sys/socket.h; mingw32 is known to lack it, but we
19345         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
19346         same reasons.
19347
19348 2005-10-05  Simon Josefsson  <jas@extundo.com>
19349
19350         * config/srclist.txt: Add glibc bug 1423 for md5.h.
19351
19352 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
19353
19354         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
19355         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
19356         needed, since the source code now assumes these .h files.
19357
19358 2005-10-05  Derek Price  <derek@ximbiot.com>
19359
19360         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
19361
19362 2005-10-05  Bruno Haible  <bruno@clisp.org>
19363
19364         * modules/stdint (License): Change to LGPL.
19365
19366 2005-10-04  Simon Josefsson  <jas@extundo.com>
19367
19368         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
19369         D. Baushke" <mdb@gnu.org>.
19370
19371 2005-10-04  Bruno Haible  <bruno@clisp.org>
19372
19373         * lib/verify.h (verify_true): Provide alternative definition for C++.
19374
19375 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
19376
19377         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
19378         (SSIZE_MAX): New macro, if not already defined.
19379         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
19380         than 2 GiB.
19381
19382 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19383
19384         Sync from coreutils.
19385         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
19386         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
19387         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
19388         ULLONG_MAX doesn't work with 2.7.2.1.
19389
19390 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19391
19392         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
19393         From Ben Pfaff.
19394
19395         * modules/exclude (Depends-on): Depend on verify.
19396         * modules/strtoimax (Depends-on): Likewise.
19397         * modules/utimecmp (Depends-on): Likewise.
19398
19399 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
19400
19401         * lib/exclude.c: Include verify.h.
19402         (verify): Remove.  All callers changed to use verify.h's version.
19403         * lib/strtoimax.c: Likewise.
19404         * lib/utimecmp.c: Likewis.e
19405
19406         Sync from coreutils.
19407         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
19408         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
19409         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
19410         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
19411         bother returning ENOSYS if settimeofday or stime fails; just let
19412         them return whatever errno they want to return.
19413         * lib/utimens.c: Include unistd.h, for dup2.
19414         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
19415         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
19416
19417 2005-10-02  Jim Meyering  <jim@meyering.net>
19418
19419         Sync from coreutils.
19420         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
19421         from glibc-2.2.5 that fails for read-only files.
19422
19423 2005-10-02  Jim Meyering  <jim@meyering.net>
19424
19425         Sync from coreutils.
19426         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
19427         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
19428         `#if HAVE_CONFIG_H'.
19429         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
19430         Remove AT_FDCWD test.
19431         Do not consume the fd unless successful.
19432         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
19433         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
19434         block, so that we don't even try to compile it if settimeofday is
19435         available.  This works around a compilation failure on OSF1 V5.1,
19436         due to stime requiring a `long int*' while tv_sec is `int'.
19437
19438 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
19439
19440         Sync from coreutils.
19441         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
19442         against `yes', rather than just testing for nonempty.
19443
19444 2005-10-01  Simon Josefsson  <jas@extundo.com>
19445
19446         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
19447         and Darwin.
19448
19449         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
19450         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
19451         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
19452         freeaddrinfo and gai_strerror are declared by the POSIX headers.
19453         Check if struct addrinfo is declared.
19454
19455 2005-10-01  Simon Josefsson  <jas@extundo.com>
19456
19457         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
19458         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
19459         AI_* and EAI_* definitions.  Protect function declarations.
19460
19461 2005-10-01  Jim Meyering  <jim@meyering.net>
19462
19463         Sync from coreutils.
19464
19465         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
19466         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
19467         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
19468         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19469         in the inet and nsl libraries.  Required on Solaris 5.7.
19470
19471 2005-10-01  Jim Meyering  <jim@meyering.net>
19472
19473         Sync from coreutils.
19474         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
19475         in the inet and nsl libraries.  Required on Solaris 5.7.
19476
19477 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
19478
19479         * lib/getdelim.c (getdelim): Remove unused variables.
19480
19481 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
19482
19483         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
19484         so that the code works even with ancient cpp.  Portability problem
19485         with GCC 2.7.2.1 reported by Thomas M.Ott.
19486
19487 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
19488
19489         * modules/regex (Depends-on): Add strcase.
19490
19491         * modules/gethostname (Licence): Change from GPL to LGPL, since
19492         gethostname.c is a trivial implementation of a standard library
19493         function.
19494         * modules/poll (License): Change from GPL to LGPL, since it's
19495         derived from LGPL code.
19496
19497 2005-09-27  Jim Meyering  <jim@meyering.net>
19498
19499         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
19500         HAVE_CONFIG_H.
19501
19502         * lib/intprops.h (signed_type_or_expr__): Define.
19503         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
19504         for unsigned types.
19505
19506 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19507
19508         * lib/verify.h (verify_expr): Remove, replacing with:
19509         (verify_true): New macro that returns true instead of void.
19510         (verify_type__): Remove.
19511         (verify): Use verify_true rather than verify_type__.
19512
19513 2005-09-26  Bruno Haible  <bruno@clisp.org>
19514
19515         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
19516         is necessary.
19517         (lib_SOURCES): Remove mbchar.c.
19518         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
19519         (Files): Add m4/mbrtowc.m4.
19520         * modules/mbiter: Likewise.
19521         * modules/mbuiter: Likewise.
19522
19523 2005-09-26  Bruno Haible  <bruno@clisp.org>
19524
19525         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
19526         compile mbchar.c if they are not both present.
19527         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
19528         * m4/mbiter.m4 (gl_MBITER): Likewise.
19529         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
19530         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
19531         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
19532
19533 2005-09-25  Jim Meyering  <jim@meyering.net>
19534
19535         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
19536         also uses socklen_t.
19537
19538 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
19539
19540         * lib/utimens.c (ENOSYS): Define if not already defined.
19541         (futimens): Support having a null PATH if the file descriptor
19542         is nonnegative.
19543
19544         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
19545         Remove.
19546         (__attribute): Define to empty unless GCC 3.1 or later.
19547         This works around a core dump on OpenBSD 3.4, which has GCC
19548         2.95.3, which dumps core when given __attribute__(()).  It also
19549         simplifies other tests, since we really don't want to bother with
19550         worrying about which ancient version of GCC supported what.
19551         Original problem reported by Yoann Vandoorselaere, with part of
19552         the fix suggested by Derek Price.
19553
19554 2005-09-24  Jim Meyering  <jim@meyering.net>
19555
19556         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
19557         so we can once again use a positive bitfield width of 1 -- now we
19558         don't have to explain why we were using a bitfield width of 2.
19559
19560 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19561
19562         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
19563         and similarly for the other external symbols.  Problem reported
19564         by James Gallager.
19565
19566         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
19567         bug reported by Jim Meyering.
19568
19569         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
19570         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
19571         not needed, since socklen is a prerequisite module.
19572
19573 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
19574
19575         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
19576         Problem reported by Eric Blake.
19577         (getaddrinfo): Initialize se so that it's not garbage.
19578         Redo internal storage allocation so that it doesn't make unportable
19579         assumptions about alignment.
19580         Fix a memory leak.
19581
19582         * lib/utimens.c (futimens): Use futimesat if available.
19583         Prefer it to futimes since it doesn't have the futimes bug.
19584
19585         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
19586         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
19587         Instead, declare a function that returns a pointer to an array,
19588         and use verify_type__ to declare the size of the array.
19589         Problem and germ of a solution reported by Bruno Haible.
19590         (verify_type__): Use 2, not 1, for bitfield size, to avoid
19591         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
19592
19593 2005-09-23  Jim Meyering  <jim@meyering.net>
19594
19595         Sync from coreutils.
19596         Correct build failure (socklen_t not defined) on at least
19597         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
19598         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
19599
19600 2005-09-23  Jim Meyering  <jim@meyering.net>
19601
19602         * modules/getaddrinfo (Depends-on): Add socklen.
19603
19604 2005-09-23  Bruno Haible  <bruno@clisp.org>
19605
19606         * tests/test-verify.c: New file.
19607
19608 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19609
19610         Sync from coreutils.
19611
19612         * modules/argmatch (Depends-on): Add verify.
19613         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
19614         unistd-safer.
19615         * modules/save-cwd (Depends-on): Likewise.
19616
19617         * modules/openat (Files): Add lib/openat-die.c.
19618         (Depends-on): Remove error, exitfail.
19619         Add dirname.
19620
19621         * modules/verify: New file.
19622         * MODULES.html.sh (Diagnostics <assert.h>): New section,
19623         with "verify" module.
19624
19625 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19626
19627         Sync from coreutils.
19628
19629         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
19630         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
19631         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
19632         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
19633         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
19634         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
19635         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
19636         Don't bother checking for string.h, stdlib.h, unistd.h.
19637         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
19638         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
19639         module's job.
19640         * m4/jm-macros.m4 (gl_MACROS): Likewise.
19641         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
19642
19643         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
19644         (gl_GETDATE): Use it.
19645
19646         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
19647
19648 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19649
19650         Sync from coreutils.
19651
19652         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
19653         stat-time.h.
19654         * lib/argmatch.h: Include verify.h
19655         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
19656         (ARGMATCH_ASSERT): Remove; unused.
19657         * lib/canonicalize.c: Assume STDC_HEADERS.
19658         * lib/exclude.c: Include "strcase.h".
19659         * lib/regex_internal.h [!defined _LIBC]: Likewise.
19660         * lib/getusershell.c: Include stdio--.h rather than stdio.h
19661         and stdio-safer.h.
19662         (getusershell): Call fopen, not fopen_safer.
19663         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
19664         Do not include unistd-safer.h.
19665         (save_cwd): Don't call fd_safer; no longer needed
19666         now that we include fcntl--.h.
19667
19668         * lib/getdate.y (relative_time): New type.
19669         (RELATIVE_TIME_0): New constant.
19670         (parser_control): Use relative_time instead of doing it ourselves.
19671         (%union): Add new relative_time rel member.
19672         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
19673         Now typeless.
19674         (relunit, relunit_snumber): Now of type rel.
19675         (zone, rel, relunit, get_date): Adjust to above changes.
19676
19677         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
19678         Do not include unistd-safer.h.
19679         (getloadavg): Don't call fd_safer; no longer needed
19680         now that we include fcntl--.h.
19681
19682         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
19683         (make_dir_parents): Treat ENOSYS like EEXIST.
19684
19685         Improve quality of diagnostics on restore_cwd failure.
19686         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
19687         (make_dir_parents): Last arg is now int * (for errno), not bool *.
19688         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
19689         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
19690         each time through the loop.  Do not diagnose restore_cwd failure;
19691         that is the caller's job (and perhaps the caller does not care).
19692
19693         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
19694         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
19695         If the file already exists but is not a directory, don't bother
19696         to try to make its parents.
19697         Close potential file descriptor leak if we can't chdir("/") (!).
19698         Don't always return true if chdir($PWD) fails; return true only
19699         if the requested action was done successfully (except for the
19700         chdir($PWD)).
19701         Don't log final directory unless we actually made it.
19702         Refactor to avoid duplicate code to fix up permissions.
19703         Don't attempt to fix up parent permissions if chdir($PWD) fails.
19704
19705         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
19706         to make it a bit faster and (I hope) clearer.
19707         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
19708         Fix bug in formats like %2N.
19709
19710         * lib/verify.h: New file.
19711
19712 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
19713
19714         Sync from coreutils.
19715         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
19716
19717 2005-09-22  Jim Meyering  <jim@meyering.net>
19718
19719         Sync from coreutils.
19720
19721         * m4/lstat.m4 (gl_FUNC_LSTAT):
19722         Use AC_LIBSOURCES to require lstat.c and lstat.h.
19723         Remove obsolete comment.
19724         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
19725         * m4/xstrtod.m4: Likewise.
19726
19727         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
19728
19729 2005-09-22  Jim Meyering  <jim@meyering.net>
19730
19731         Sync from coreutils.
19732
19733         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
19734
19735         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
19736         the .tm_year member, since otherwise gcc-4.0 would now warn about
19737         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
19738
19739         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
19740         order to avoid an unsuppressible warning from gcc on 64-bit systems.
19741
19742         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
19743         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
19744         when run in a time zone for which daylight savings time is in effect
19745         for the starting date.
19746
19747         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
19748         stop us from restricting permissions of just-created absolute-named
19749         directories.
19750         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
19751         to restore initial working directory.
19752         * lib/mkdir-p.c (make_dir_parents): New parameter:
19753         different_working_dir, to tell caller if/when we change the working
19754         directory and are unable to return to the initial one.
19755         * lib/mkdir-p.h (make_dir_parents): Update prototype.
19756         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
19757         `return false'.  This fixes a bug introduced on 2004-07-30.
19758
19759         * lib/openat.c (fdopendir): Be sure to close the supplied
19760         file descriptor before returning.  This makes our replacement
19761         implementation a little closer to Solaris's, where fdopendir
19762         ties the file descriptor to the returned DIR* pointer.
19763         * lib/openat.c (unlinkat): New function.
19764         * lib/openat.h (unlinkat): Add prototype.
19765         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
19766         (openat_restore_fail): Rename from openat_restore_die.
19767         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
19768
19769         Provide an alternative to exiting immediately upon save_cwd or
19770         restore_cwd failure.  Now, an application can arrange e.g.,
19771         to perform a longjump in that case.
19772         * lib/openat.c: Include dirname.h.
19773         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
19774         (rpl_openat, fdopendir, fstatat): Call openat_save_die
19775         and openat_restore_die rather than calling error directly.
19776         Don't include "error.h" or "exitfail.h"; they're no longer needed.
19777
19778         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
19779         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
19780         define.
19781
19782         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
19783         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
19784                             int utc, int nanoseconds);
19785         Background:
19786         date should not have to allocate a megabyte of virtual memory to
19787         handle a format argument like +%1048575T.  When implemented with
19788         strftime, it must allocate such a buffer, use strftime to fill it
19789         in, print it, then free it.
19790         With fprintftime, it simply prints everything and exits.
19791         With no need for memory allocation, that's one fewer way to fail.
19792         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
19793         optional field width, not before, so we accept %9:z, not %:9z.
19794         (my_strftime): Be sure to use L_('x') for literals.
19795
19796         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
19797         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
19798         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
19799         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
19800         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
19801         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
19802         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
19803         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
19804         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
19805         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
19806         * lib/xgethostname.c, lib/xreadlink.c:
19807         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
19808
19809         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
19810         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
19811         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
19812         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
19813         and don't include <sys/file.h>).
19814
19815 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
19816
19817         Sync from coreutils.
19818
19819         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
19820         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
19821         [!LDAV_DONE]: Avoid unused variable warning.
19822
19823 2005-09-21  Bruno Haible  <bruno@clisp.org>
19824
19825         * lib/unicodeio.h (unicode_to_mb): New declaration.
19826
19827 2005-09-20  Derek Price  <derek@ximbiot.com>
19828
19829         * lib/getaddrinfo.c: Don't include <netdb.h> included from
19830         getaddrinfo.h.
19831
19832 2005-09-20  Bruno Haible  <bruno@clisp.org>
19833
19834         * gnulib-tool: Remove trailing slashes from the values specified for
19835         --source-base, --m4-base, --tests-base, --aux-dir.
19836         Suggested by Simon Josefsson <jas@extundo.com>.
19837
19838 2005-09-20  Bruno Haible  <bruno@clisp.org>
19839
19840         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
19841         func_modules_to_filelist, func_import, func_create_testdir): Make all
19842         sorting results locale-independent, so that gnulib-cache.m4 doesn't
19843         change when gnulib-tool is invoked in a different locale.
19844
19845 2005-09-19  Simon Josefsson  <jas@extundo.com>
19846
19847         * m4/socklen.m4: Fix typo.
19848
19849 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19850
19851         Use a consistent style for including <config.h>.
19852         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
19853         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
19854         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
19855         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
19856         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
19857         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
19858         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
19859         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
19860         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
19861         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
19862         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
19863         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
19864         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
19865         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
19866         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
19867         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
19868         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
19869         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
19870         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
19871         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
19872         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
19873         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
19874         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
19875         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
19876         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
19877         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
19878         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
19879         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
19880         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
19881         lib/xstrtoumax.c, lib/yesno.c:
19882         Standardize inclusion of config.h.
19883         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
19884         lib/inttostr.h:  Removed inclusion of config.h from header files.
19885         * lib/inttostr.c:  Adjusted in-tree users.
19886         * lib/timespec.h: Remove superfluous warning to include config.h.
19887         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
19888         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
19889         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
19890         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
19891         config.h with HAVE_CONFIG_H.
19892
19893 2005-09-19  Jim Meyering  <jim@meyering.net>
19894
19895         * modules/pathmax (License): Change to LGPL.
19896
19897 2005-09-19  Derek Price  <derek@ximbiot.com>
19898
19899         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
19900
19901 2005-09-19  Bruno Haible  <bruno@clisp.org>
19902
19903         * gnulib-tool (import): Provide default for --tests-base.
19904
19905 2005-09-19  Bruno Haible  <bruno@clisp.org>
19906
19907         * doc/quote.texi: New file, extracted from gnulib.texi.
19908         * doc/ctime.texi: New file, extracted from gnulib.texi.
19909         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
19910         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
19911         * doc/gnulib.texi: Include them.
19912
19913 2005-09-18  Bruno Haible  <bruno@clisp.org>
19914
19915         Portability fix.
19916         * gnulib-tool (func_readlink): New function.
19917         (func_ln_if_changed): Use it.
19918
19919 2005-09-18  Bruno Haible  <bruno@clisp.org>
19920
19921         * gnulib-tool: Support --with-tests also with --import.
19922         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
19923         (func_import): Use variables $testsbase and $inctests. Emit a
19924         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
19925         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
19926         SUBDIRS += $testsdir.
19927         (func_create_testdir): Update.
19928
19929 2005-09-18  Bruno Haible  <bruno@clisp.org>
19930
19931         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
19932         instead of $dry_run.
19933         (func_cp_if_changed, func_mv_if_changed): Remove functions.
19934         (func_ln_if_changed): Don't handle dry-run here.
19935         (func_import): In dry-run mode, detect more precisely which actions
19936         would be performed, and don't use "...ing" verbs.
19937
19938 2005-09-18  Bruno Haible  <bruno@clisp.org>
19939
19940         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
19941         (func_import): Use join on two temporary files instead of three nested
19942         loops, in order to determine which files are new or old.
19943
19944 2005-09-18  Bruno Haible  <bruno@clisp.org>
19945
19946         * gnulib-tool (func_import): Comment out code that spits out the
19947         new files with --dry-run.
19948
19949 2005-09-18  Bruno Haible  <bruno@clisp.org>
19950
19951         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
19952
19953 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19954
19955         * lib/stat-time.h: New file.
19956         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
19957         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
19958         in a different way.
19959         (timespec_cmp): New function.
19960         * lib/utimecmp.c: Include stat-time.h.
19961         (SYSCALL_RESOLUTION): Depend on whether various struct stat
19962         members exist, not on the obsolescent ST_MTIM_NSEC.
19963         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
19964
19965 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19966
19967         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
19968
19969 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19970
19971         * MODULES.html.sh (File system functions): Add stat-time.
19972         * modules/stat-time: New file.
19973         * modules/timespec (Files): Remove m4/st_mtim.m4; this
19974         is now done in a different way, by the stat-time module.
19975         * modules/utimecmp (Depends-on): Add stat-time.
19976
19977 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19978
19979         * m4/st_mtim.m4: Remove.  Superseded by...
19980         * m4/stat-time.m4: New file.
19981         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
19982         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
19983
19984 2005-09-15  Derek Price  <derek@ximbiot.com>
19985
19986         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
19987
19988 2005-09-15  Derek Price  <derek@ximbiot.com>
19989
19990         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
19991         * lib/regex_internal.c: Ditto, using this...
19992         (__GNUC_PREREQ): ...new macro.
19993         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
19994         using...
19995         (__GNUC_PREREQ): ...this new macro.
19996
19997         * lib/strstr.h: Include string.h. Define strstr as a macro here.
19998
19999 2005-09-15  Derek Price  <derek@ximbiot.com>
20000             Paul Eggert  <eggert@cs.ucla.edu>
20001
20002         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
20003         changes, consolidating in...
20004         * lib/regex_internal.h: ...this file.
20005
20006 2005-09-13  Jim Meyering  <jim@meyering.net>
20007
20008         * lib/canon-host.c: Filter through gnu indent and reword comments
20009         slightly.
20010         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
20011
20012 2005-09-13  Derek Price  <derek@ximbiot.com>
20013
20014         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
20015         failure.
20016         Reported by Jim Meyering  <jim@meyering.net>.
20017
20018 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
20019
20020         * lib/base64.c: Typo.
20021         (base64_encode): Put b64str in initialized data section.
20022
20023 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
20024
20025         Merge glibc and coreutils changes into gnulib, plus a few
20026         extra fixes.
20027         * lib/md5.c: Use #error rather than a string.
20028         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
20029         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
20030         (__attribute__): Define to empty for non recent-GCC.
20031         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
20032         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
20033         Renamed from their non-__ counterparts, with new macros replacing
20034         them if not _LIBC.  Add __THROW attribute.
20035         (rol): Remove.
20036         (struct md5_ctx): Align buffer if using GCC.
20037         * lib/sha1.h (struct sha1_ctx): Likewise.
20038         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
20039         The old name was backwards.
20040         (NOTSWAP): Remove; not used.
20041         (rol): New macro, moved here from md5.h.
20042         (sha1_process_block): Remove a FIXME that doesn't make sense.
20043
20044 2005-09-12  Derek Price  <derek@ximbiot.com>
20045
20046         Return usable errors from canon-host.
20047         * lib/canon-host.h: New file.
20048         * lib/canon-host.c (canon_host): Wrap...
20049         (canon_host_r): ...this new function, which now relies exclusively on
20050         getaddrinfo.
20051         (ch_strerror): New function.
20052         (last_cherror): New global.
20053         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
20054         interface.
20055         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
20056         void *.
20057         (freeaddrinfo): Free ai->ai_canonname when set.
20058
20059 2005-09-12  Derek Price  <derek@ximbiot.com>
20060
20061         Make canon-host require getaddrinfo.
20062         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
20063         AC_LIBSOURCE canon-host.h.  Call...
20064         (gl_PREREQ_CANON_HOST): ...this new function, which requires
20065         gl_GETADDRINFO.
20066         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
20067
20068 2005-09-12  Derek Price  <derek@ximbiot.com>
20069
20070         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
20071         LGPL.
20072         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
20073
20074 2005-09-12  Derek Price  <derek@ximbiot.com>
20075
20076         * lib/gai_strerror.c: Include config.h when available.  Include
20077         getaddrinfo.h before other headers to test interface.
20078         Reported by Larry Jones <lawrence.jones@ugs.com>.
20079
20080 2005-09-12  Derek Price  <derek@ximbiot.com>
20081             Paul Eggert  <eggert@cs.ucla.edu>
20082
20083         * modules/glob (Files): Add glob-libc.h.
20084
20085 2005-09-12  Derek Price  <derek@ximbiot.com>
20086             Paul Eggert  <eggert@cs.ucla.edu>
20087
20088         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
20089         glob_.h, glob-libc.h.
20090         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
20091
20092 2005-09-12  Derek Price  <derek@ximbiot.com>
20093             Paul Eggert  <eggert@cs.ucla.edu>
20094
20095         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
20096         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
20097         protecting things that should be done only in gnulib contexts.
20098         * lib/glob_.h: New file, containing only the glob things needed for
20099         gnulib.
20100         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
20101         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
20102         (glob, globfree, glob_pattern_p): Now defined simply in terms of
20103         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
20104         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
20105         and to respect the namespace rules better.
20106
20107 2005-09-08  Simon Josefsson  <jas@extundo.com>
20108
20109         * modules/socklen: New file.
20110
20111 2005-09-08  Simon Josefsson  <jas@extundo.com>
20112
20113         * m4/socklen.m4: New file.
20114
20115 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20116
20117         * modules/utimens (Files): Add m4/utimbuf.m4, since
20118         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
20119         Reported by Sergey Poznyakoff.
20120
20121 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20122
20123         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
20124         definitions, since that's the preferred style in glibc.
20125         Fix a minor spacing issue, and update copyright notice to match
20126         glibc's.
20127
20128 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20129
20130         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
20131
20132 2005-09-06  Simon Josefsson  <jas@extundo.com>
20133
20134         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
20135         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
20136
20137 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
20138
20139         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
20140         warning.
20141
20142 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
20143
20144         * config/srclist.txt: Add glibc bug 1302.
20145
20146 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20147
20148         Change bitset word type from unsigned int to unsigned long int,
20149         as this has better performance on typical 64-bit hosts.
20150         Port bitset code to hosts with unusual word sizes.
20151         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
20152         (build_collating_symbol):
20153         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
20154         argument is a bitset.  This is merely a style issue, but it makes
20155         it clearer that an entire array is expected.
20156         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
20157         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
20158         Port to the case where bitset_word is not the same as unsigned int.
20159         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20160         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
20161         Likewise.
20162         * lib/regexec.c (check_dst_limits_calc_pos_1,
20163         check_subexp_matching_top):
20164         (build_trtable, group_nodes_into_DFAstates):
20165         Likewise.
20166         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
20167         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
20168         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
20169         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
20170         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
20171         * lib/regcomp.c (optimize_subexps, lower_subexp):
20172         Work even if bitset_word has holes in its bitwise representation.
20173         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
20174         * lib/regexec.c (check_dst_limits_calc_pos_1,
20175         check_subexp_matching_top):
20176         Likewise.
20177         * lib/regex_internal.c (re_string_reconstruct):
20178         Don't assume UCHAR_MAX == 255.
20179         * lib/regex_internal.h (bitset_set_all): Likewise.
20180         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
20181         All uses changed.
20182         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
20183         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
20184         All uses changed.
20185         (BITSET_WORD_MAX): New macro.
20186         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
20187         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
20188         (bitset_empty, bitset_copy):
20189         Prefer sizeof (bitset) to multiplying it out ourselves.
20190         (bitset_not_merge): Remove; unused.
20191         (bitset_contain): Return bool, not unsigned int with one bit on.
20192         All callers changed.
20193         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
20194         alignment than re_node_set; do this by defining a new internal
20195         type struct dests_alloc and using it to allocate memory.
20196
20197 2005-09-05  Bruno Haible  <bruno@clisp.org>
20198
20199         * gnulib-tool (func_import): Fix comparison in handling of symbolic
20200         links.
20201
20202 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
20203
20204         * modules/size_max (Makefile.am): Add size_max.h
20205
20206 2005-09-04  Derek Price  <derek@ximbiot.com>
20207
20208         * gnulib-tool (func_import): Fix reversed $symbolic logic.
20209
20210 2005-09-03  Simon Josefsson  <jas@extundo.com>
20211
20212         * gnulib-tool: Fix typo.
20213
20214 2005-09-03  Simon Josefsson  <jas@extundo.com>
20215
20216         * config/srclist.txt: Add glibc bug 1293.
20217
20218 2005-09-03  Derek Price  <derek@ximbiot.com>
20219
20220         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
20221         From Larry Jones <lawrence.jones@ugs.com>.
20222
20223 2005-09-02  Simon Josefsson  <jas@extundo.com>
20224
20225         * modules/socklen: New file.
20226
20227 2005-09-02  Simon Josefsson  <jas@extundo.com>
20228
20229         * modules/havelib: New module.
20230
20231         * modules/gettext, modules/iconv, modules/lock, modules/readline:
20232         Use havelib.
20233
20234 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
20235
20236         Check for arithmetic overflow when calculating sizes, to prevent
20237         some buffer-overflow issues.  These patches are conservative, in the
20238         sense that when I couldn't determine whether an overflow was possible,
20239         I inserted a run-time check.
20240         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
20241         macros.
20242         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
20243         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
20244         (re_xnrealloc, re_x2nrealloc): New inline functions.
20245         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
20246         parse_bracket_exp):
20247         (build_equiv_class, build_charclass): Check for arithmetic overflow
20248         in size expression calculations.
20249         * lib/regex_internal.c (re_string_realloc_buffers):
20250         (build_wcs_upper_buffer, re_node_set_add_intersect):
20251         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
20252         (re_dfa_add_node, register_state): Likewise.
20253         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
20254         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
20255         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
20256         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
20257
20258 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
20259
20260         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
20261         m4/ulonglong.m4.  Problem reported by Martin Lambers.
20262
20263 2005-09-02  Bruno Haible  <bruno@clisp.org>
20264
20265         Support for lib vs. lib64 distinction on biarch platforms.
20266         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
20267         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
20268         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
20269
20270 2005-09-02  Bruno Haible  <bruno@clisp.org>
20271
20272         * gnulib-tool (import): In the other first-use case, provide defaults
20273         as well.
20274
20275 2005-09-02  Bruno Haible  <bruno@clisp.org>
20276
20277         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
20278         patches not yet found in the latest gettext release.
20279
20280 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20281
20282         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
20283         to avoid a collision with bits/local_lim.h in glibc.
20284         All uses changed.  Problem reported by Dmitry V. Levin in
20285         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
20286
20287         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
20288         bugs in int versus size_t comparisons.
20289         (re_string_context_at): Fix bug where the code assumed that
20290         Idx is signed.
20291
20292         Use bool where appropriate.
20293         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
20294         All callers changed.
20295         (calc_eclosure_iter): Likewise, for ROOT arg.
20296         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
20297         (build_charclass_op): Likewise, for NON_MATCH arg.
20298         * lib/regex_internal.c (re_string_allocate, re_string_construct):
20299         (re_string_construct_common): Likewise, for ICASE arg.
20300         * lib/regexec.c (re_search_2_stub, re_search_stub):
20301         Likewise, for RET_LEN arg.
20302         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
20303         (set_regs): Likewise, for FL_BACKTRACK arg.
20304         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
20305         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
20306         (calc_eclosure_iter, parse_bracket_exp):
20307         Use bool for internal variables that are booleans.
20308         * lib/regexec.c (re_search_internal, check_matching,
20309         proceed_next_node):
20310         (set_regs, build_sifted_states, sift_states_bkref):
20311         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
20312         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
20313         (find_collation_sequence_value):
20314         Likewise.
20315         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
20316         (re_node_set_compare):
20317         Return bool, not int. All callers changed.
20318         * lib/regexec.c (check_halt_node_context, check_dst_limits):
20319         (build_trtable, check_node_accept): Likewise.
20320         * lib/regex_internal.h: Include stdbool.h.
20321
20322         Fix bugs uncovered when converting to bool.
20323         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
20324         failure instead of charging ahead blindly.
20325         * lib/regex_internal.c (register_state): Likewise.
20326         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
20327         for freeing internal storage.
20328         (group_nodes_into_DFA_states): Use unsigned int, not int, for
20329         bitset pieces used as boolean, to avoid undefined behavior
20330         on hosts that do int overflow checking.
20331
20332 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20333
20334         * config/srclist.txt: Add glibc bugs 1285-1287.
20335
20336 2005-09-01  Jim Meyering  <jim@meyering.net>
20337
20338         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
20339         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
20340         Require gl_STAT_MACROS, too.
20341
20342 2005-09-01  Bruno Haible  <bruno@clisp.org>
20343
20344         * gnulib-tool (import): In the first-use case, provide defaults.
20345
20346 2005-09-01  Bruno Haible  <bruno@clisp.org>
20347
20348         * gnulib-tool (func_import): Remove the .tmp files.
20349
20350 2005-09-01  Bruno Haible  <bruno@clisp.org>
20351
20352         * gnulib-tool (func_import): Fix handling of symbolic links.
20353
20354 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20355
20356         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
20357         old glibc regex code mishandles strings longer than 2**31 bytes.
20358         This patch fixes this when the regex code is used in gnulib
20359         (i.e., outside glibc).
20360
20361         This patch should not affect the use of the regex code inside
20362         glibc.  No doubt this problem also needs to be handled for glibc
20363         as well, but the result will be an incompatible change to the
20364         glibc ABI, and the old ABI will have to be supported too.  That
20365         can be the the subject for another patch.
20366
20367         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
20368         governing whether the rest of this patch is active.  By default,
20369         the macro is disabled and the patch has no effect.
20370         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
20371         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
20372         (struct re_pattern_buffer, re_search, re_search_2, re_match):
20373         (re_match_2, re_set_registers): Use the new types.
20374         * lib/regex_internal.h (Idx, re_hashval_t): New types.
20375         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
20376         New macros.
20377         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
20378         (re_string_context_at, bin_tree_t, re_dfastate_t):
20379         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
20380         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
20381         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
20382         (re_string_char_size_at, re_string_wchar_at):
20383         (re_string_elem_size_at):
20384         Use the new types and macros to port to 64-bit hosts.
20385         Use unsigned types for internal values, so that the code
20386         mostly works even for arrays larger than SSIZE_MAX.
20387         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
20388         (search_duplicated_node, calc_eclosure_iter, fetch_number):
20389         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
20390         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
20391         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
20392         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
20393         (calc_inveclosure, parse_dup_op, build_range_exp):
20394         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
20395         (fetch_number, create_token_tree, mark_opt_subexp):
20396         Likewise.
20397         * lib/regex_internal.c (re_string_construct_common,
20398         create_ci_newstate):
20399         (create_cd_newstate, re_string_allocate, re_string_construct):
20400         (re_string_realloc_buffers, build_wcs_upper_buffer):
20401         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
20402         (re_string_reconstruct, re_string_peek_byte_case):
20403         (re_string_fetch_byte_case, re_string_context_at):
20404         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
20405         (re_node_set_init_copy, re_node_set_add_intersect):
20406         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20407         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20408         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
20409         (re_acquire_state, re_acquire_state_context, register_state):
20410         Likewise.
20411         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
20412         search_cur_bkref_entry):
20413         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
20414         (re_search_internal, re_search_2_stub, re_search_stub)
20415         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
20416         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
20417         (update_cur_sifted_state, check_dst_limits):
20418         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20419         (check_subexp_limits, sift_states_bkref, merge_state_array):
20420         (check_subexp_matching_top, get_subexp, get_subexp_sub):
20421         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
20422         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
20423         (expand_bkref_cache, check_node_accept_bytes):
20424         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
20425         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
20426         (acquire_init_state_context, check_halt_node_context):
20427         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
20428         (sift_states_backward, clean_state_log_if_needed):
20429         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
20430         (find_recover_state, transit_state_sb, transit_state_mb):
20431         (transit_state_bkref, build_trtable, match_ctx_clean):
20432         Likewise.
20433         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
20434         to work around an assumption that REG_MISSING is negative.
20435
20436         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
20437         (seek_collating_symbol_entry) [defined _LIBC]:
20438         (lookup_collation_sequence_value) [defined _LIBC]:
20439         (build_range_exp, build_collating_symbol) [defined _LIBC]:
20440         Use prototypes rather than old-style function definitions.
20441         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
20442         (transit_state_sb) [0]:
20443         (find_collation_sequence_value) [defined _LIBC]: Likewise.
20444
20445         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
20446         rm_eo.
20447
20448         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
20449         (optimize_subexps, lower_subexp):
20450         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
20451         since the signed shift might overflow.  Use 1u<<31 instead.
20452         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
20453         Likewise.
20454         * lib/regexec.c (check_dst_limits_calc_pos_1,
20455         check_subexp_matching_top): Likewise.
20456
20457         * lib/regcomp.c (optimize_subexps, lower_subexp):
20458         Use CHAR_BIT rather than 8, for clarity.
20459         * lib/regexec.c (check_dst_limits_calc_pos_1):
20460         (check_subexp_matching_top): Likewise.
20461         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
20462         have to worry about portability issues when shifting it left.
20463         Remove no-longer-needed test for table_size > 0.
20464         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
20465         in a word, as the resulting behavior is undefined.
20466         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
20467         in one case, a <= should have been an <, and in another case the
20468         whole test was missing.
20469         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
20470         the standard name CHAR_BIT.
20471         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
20472         this is not true on one's complement and signed-magnitude hosts.
20473
20474         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
20475         next_last_offset.
20476         (struct re_dfa_t): Remove unused member states_alloc.
20477         * lib/regcomp.c (init_dfa): Don't initialize unused members.
20478
20479 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20480
20481         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
20482         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
20483         and large-file glibc and in 32-bit large-file Solaris.
20484
20485 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20486
20487         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
20488         lengths fit in regoff_t; this isn't true if regoff_t is the same
20489         width as size_t.
20490         * lib/regex.c (re_search_internal): 5th arg is LAST_START
20491         (= START + RANGE) instead of RANGE.  This avoids overflow
20492         problems when regoff_t is the same width as size_t.
20493         All callers changed.
20494         (re_search_2_stub): Check for overflow when adding the
20495         sizes of the two strings.
20496         (re_search_stub): Check for overflow when adding START
20497         to RANGE; if it occurs, substitute the extreme value.
20498
20499 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20500
20501         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
20502
20503 2005-08-31  Jim Meyering  <jim@meyering.net>
20504
20505         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
20506         a pointer-to-const.
20507         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
20508         (register_state): Likewise.
20509         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
20510         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
20511         (group_nodes_into_DFAstates): Likewise.
20512
20513 2005-08-31  Jim Meyering  <jim@meyering.net>
20514
20515         * check-module: Add a FIXME comment.
20516
20517 2005-08-31  Eric Blake  <ebb9@byu.net>
20518
20519         * modules/unistd-safer (Files): Add unistd--.h.
20520         * modules/stdio-safer (Files): Add stdio--.h.
20521
20522 2005-08-31  Derek Price  <derek@ximbiot.com>
20523
20524         * lib/getdelim.c (getdelim): Return EOF on EOF.
20525         Reported by Larry Jones <lawrence.jones@ugs.com>.
20526
20527 2005-08-31  Bruno Haible  <bruno@clisp.org>
20528
20529         Avoid unnecessary diffs in the generated lib/Makefile.am.
20530         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
20531         the generated files.
20532         (func_import): Don't set cmd.
20533
20534 2005-08-31  Bruno Haible  <bruno@clisp.org>
20535
20536         * lib/strstr.c: Include <stddef.h>, for NULL.
20537         * lib/strcasestr.c: Likewise.
20538         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
20539
20540 2005-08-31  Bruno Haible  <bruno@clisp.org>
20541
20542         * gnulib-tool: New option --macro-prefix.
20543         (func_import): Use macro_prefix.
20544         (import): Handle option --macro-prefix.
20545
20546 2005-08-31  Bruno Haible  <bruno@clisp.org>
20547
20548         * gnulib-tool (import): Rename most ac_* variables to cached_*.
20549         Also use new variables cached_lgpl, cached_libtool.
20550
20551 2005-08-31  Bruno Haible  <bruno@clisp.org>
20552
20553         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
20554         always instantiating them.
20555
20556 2005-08-31  Bruno Haible  <bruno@clisp.org>
20557
20558         * gnulib-tool (func_import): Read the previous cached settings
20559         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
20560         earlier added by gnulib but are now dropped. Warn when a gnulib file
20561         overwrites a non-gnulib file.
20562
20563 2005-08-31  Bruno Haible  <bruno@clisp.org>
20564
20565         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
20566         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
20567         projects that don't keep autogenerated files in CVS. Put into
20568         actioncmd only the specified modules, not the transitive closure.
20569
20570 2005-08-31  Bruno Haible  <bruno@clisp.org>
20571
20572         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
20573         Create directories that shall be filled.
20574         (import): Don't look for gl_* macros in configure.ac. Recurse across
20575         all directories containing a gnulib-cache.m4 files, if meaningful.
20576
20577 2005-08-31  Bruno Haible  <bruno@clisp.org>
20578
20579         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
20580         (import): Set seen_libtool when we see gl_LIBTOOL.
20581
20582 2005-08-31  Bruno Haible  <bruno@clisp.org>
20583
20584         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
20585         declaration macro definitions from generated gnulib.m4.
20586
20587 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
20588
20589         * lib/iconvme.h: Add prototype for iconv_alloc.
20590
20591 2005-08-29  Simon Josefsson  <jas@extundo.com>
20592
20593         * lib/iconvme.c: Fix errno.
20594
20595 2005-08-29  Bruno Haible  <bruno@clisp.org>
20596
20597         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
20598         that it works when the directory contains spaces.
20599
20600 2005-08-29  Bruno Haible  <bruno@clisp.org>
20601
20602         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
20603
20604 2005-08-29  Bruno Haible  <bruno@clisp.org>
20605
20606         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
20607         Emit more advice.
20608
20609 2005-08-29  Bruno Haible  <bruno@clisp.org>
20610         and Stepan Kasal  <kasal@ucw.cz>
20611
20612         * check-module: If more parameters are given, check each of them
20613         separately; add more exceptions, as noted by Jim Meyering.
20614         (check_module): New procedure.
20615         (%exempt_header): Now contains all exceptions.
20616
20617 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
20618
20619         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
20620
20621 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
20622
20623         * lib/iconvme.c: Split iconv_string into iconv_alloc.
20624
20625 2005-08-28  Bruno Haible  <bruno@clisp.org>
20626
20627         * m4/gnulib-tool.m4: New file.
20628
20629 2005-08-27  Jim Meyering  <jim@meyering.net>
20630
20631         * modules/unistd-safer (Files): Add pipe-safer.c.
20632         * modules/fcntl-safer (Files): Add creat-safer.c.
20633
20634 2005-08-27  Jim Meyering  <jim@meyering.net>
20635
20636         * m4/stdlib-safer.m4: New file.  From coreutils.
20637         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
20638         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
20639         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
20640         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
20641         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
20642
20643 2005-08-27  Jim Meyering  <jim@meyering.net>
20644
20645         * lib/fopen-safer.c: Merge minor changes from coreutils.
20646         * lib/dup-safer.c: Likewise.
20647         * lib/fd-safer.c: Likewise.
20648
20649         Merge from coreutils.
20650         * lib/stdio--.h: New file.
20651         * lib/stdlib--.h: New file.
20652         * lib/mkstemp-safer.c: New file.
20653
20654         GNU tar needs these.
20655         * lib/pipe-safer.c: New file.
20656         * lib/creat-safer.c: New file.
20657         * lib/fcntl--.h (creat): Define to creat_safer.
20658         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
20659         * lib/unistd--.h (pipe): Define to pipe_safer.
20660         * lib/unistd-safer.h: Declare pipe_safer.
20661
20662 2005-08-26  Simon Josefsson  <jas@extundo.com>
20663
20664         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
20665         Haible <bruno@clisp.org>.
20666
20667 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
20668
20669         * lib/regex_internal.h: Remove all references to
20670         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
20671         or better.
20672         (bitset_not, bitset_merge, bitset_not_merge):
20673         (bitset_mask, re_string_allocate, re_string_construct):
20674         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
20675         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
20676         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
20677         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
20678         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
20679         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
20680         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
20681         (re_acquire_state_context):
20682         Remove unnecessary forward decls.
20683         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
20684         Put __attribute at function definition,
20685         now that the function decl has been removed.
20686         * lib/regex_internal.c (re_string_peek_byte_case):
20687         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
20688         Likewise.
20689
20690 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
20691
20692         * m4/regex.m4: Add AC_PREREQ(2.50).
20693         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
20694
20695 2005-08-25  Simon Josefsson  <jas@extundo.com>
20696
20697         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
20698         __fsetlocking.
20699
20700 2005-08-25  Simon Josefsson  <jas@extundo.com>
20701
20702         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
20703         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
20704         GLIBC specific code.
20705
20706 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20707
20708         Make regex safe for g++.  This fixes one real bug (an "err"
20709         that should have been "*err").  g++ problem reported by
20710         Sam Steingold.
20711         * lib/regex_internal.h (re_calloc): New macro, consistent with
20712         re_malloc etc.  All callers of calloc changed to use re_calloc.
20713         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
20714         not int.  All callers changed.
20715         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
20716         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
20717         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
20718         (find_recover_state): Change "err" to "*err"; this fixes what
20719         appears to be a real bug.
20720         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
20721         versus int.
20722
20723 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20724
20725         * modules/regex (Depends-on): Add malloc, since the code
20726         assumes that !malloc(0) means failure.
20727
20728 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20729
20730         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
20731
20732         alloca modernization/simplification for regex.
20733         * lib/regex.c: Remove portability cruft for alloca.  This no longer
20734         needs to be at the start of the file, and can be moved into
20735         regex_internal.h and simplified.
20736         * lib/regex_internal.h: Include <alloca.h>.
20737         (__libc_use_alloca) [!defined _LIBC]: New macro.
20738         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
20739         now works outside glibc.
20740
20741 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
20742
20743         * config/srclist.txt: Add glibc bugs 1241, 1245.
20744
20745 2005-08-25  Jim Meyering  <jim@meyering.net>
20746
20747         * lib/open-safer.c: Include <config.h>.
20748         Otherwise, we'd lose LARGEFILE support in any file using
20749         e.g. "fcntl--.h"
20750
20751 2005-08-25  Bruno Haible  <bruno@clisp.org>
20752
20753         * m4/minmax.m4: Require autoconf 2.52.
20754         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
20755         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
20756         alternatives of translit over the alphabet.
20757         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
20758
20759 2005-08-24  Simon Josefsson  <jas@extundo.com>
20760
20761         * tests/test-getpass.c: New file.
20762
20763 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20764
20765         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
20766         for GNU regex features.
20767
20768 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20769
20770         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
20771         * lib/regex.h (regerror): Likewise.
20772
20773         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
20774         requires this.  (The code never needed it.)
20775
20776         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
20777         All uses of recently-renamed identifiers changed to use the new,
20778         POSIX-compliant names.  The code will build and run just fine
20779         without these changes, but it's better to eat our own dog food
20780         and use the standard-conforming names.
20781
20782         * lib/regex.h: Fix a multitude of POSIX name space violations.
20783         These changes have an effect only for programs that define
20784         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
20785         do not change anything for programs compiled in the normal way.
20786         Also, there is no effect on the ABI.
20787
20788         (_REGEX_SOURCE): New macro.
20789         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
20790         defined and _GNU_SOURCE is not; this fixes a name space violation.
20791
20792         Rename the following macros to obey POSIX requirements.
20793         The old names are still visible as macros if _REGEX_SOURCE is defined.
20794         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
20795         RE_BACKSLASH_ESCAPE_IN_LISTS.
20796         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
20797         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
20798         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
20799         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
20800         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
20801         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
20802         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
20803         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
20804         (REG_INTERVALS): renamed from RE_INTERVALS.
20805         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
20806         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
20807         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
20808         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
20809         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
20810         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
20811         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
20812         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
20813         RE_UNMATCHED_RIGHT_PAREN_ORD.
20814         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
20815         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
20816         (REG_DEBUG): renamed from RE_DEBUG.
20817         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
20818         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
20819         unusual, since we can't clash with the POSIX REG_ICASE.
20820         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
20821         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
20822         (REG_NO_SUB): renamed from RE_NO_SUB.
20823         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
20824         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
20825         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
20826         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
20827         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
20828         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
20829         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
20830         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
20831         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
20832         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
20833         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
20834         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
20835         RE_SYNTAX_POSIX_MINIMAL_BASIC.
20836         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
20837         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
20838         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
20839         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
20840         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
20841         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
20842         (REG_FIXED): Renamed from REGS_FIXED.
20843         (REG_NREGS): Renamed from RE_NREGS.
20844
20845         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
20846         of other REG_* macros, since POSIX says the user is allowed to
20847         #undef these macros selectively.
20848
20849         (reg_errcode_t): Update comment stating what other tables need
20850         to be consistent.
20851
20852         Rename the following enum values to obey POSIX requirements.
20853         The old names are still visible as macros.
20854         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
20855         is not defined, since GNU is supposed to be a superset of POSIX as
20856         much as possible, and since we want reg_errcode_t to be a signed
20857         type for implementation consistency.
20858         (_REG_NOERROR): Renamed from REG_NOERROR.
20859         (_REG_NOMATCH): Renamed from REG_NOMATCH.
20860         (_REG_BADPAT): Renamed from REG_BADPAT.
20861         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
20862         (_REG_ECTYPE): Renamed from REG_ECTYPE.
20863         (_REG_EESCAPE): Renamed from REG_EESCAPE.
20864         (_REG_ESUBREG): Renamed from REG_ESUBREG.
20865         (_REG_EBRACK): Renamed from REG_EBRACK.
20866         (_REG_EPAREN): Renamed from REG_EPAREN.
20867         (_REG_EBRACE): Renamed from REG_EBRACE.
20868         (_REG_BADBR): Renamed from REG_BADBR.
20869         (_REG_ERANGE): Renamed from REG_ERANGE.
20870         (_REG_ESPACE): Renamed from REG_ESPACE.
20871         (_REG_BADRPT): Renamed from REG_BADRPT.
20872         (_REG_EEND): Renamed from REG_EEND.
20873         (_REG_ESIZE): Renamed from REG_ESIZE.
20874         (_REG_ERPAREN): Renamed from REG_ERPAREN.
20875         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
20876         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
20877         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
20878         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
20879
20880         (_REG_RE_NAME, _REG_RM_NAME): New macros.
20881         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
20882         changed.  But support the old name if the new one is not defined
20883         and if _REGEX_SOURCE.
20884
20885         Change the following member names in struct re_pattern_buffer.
20886         The old names are still supported if !_REGEX_SOURCE.
20887         The new names are always supported, regardless of _REGEX_SOURCE.
20888         (re_buffer): Renamed from buffer.
20889         (re_allocated): Renamed from allocated.
20890         (re_used): Renamed from used.
20891         (re_syntax): Renamed from syntax.
20892         (re_fastmap): Renamed from fastmap.
20893         (re_translate): Renamed from translate.
20894         (re_can_be_null): Renamed from can_be_null.
20895         (re_regs_allocated): Renamed from regs_allocated.
20896         (re_fastmap_accurate): Renamed from fastmap_accurate.
20897         (re_no_sub): Renamed from no_sub.
20898         (re_not_bol): Renamed from not_bol.
20899         (re_not_eol): Renamed from not_eol.
20900         (re_newline_anchor): Renamed from newline_anchor.
20901
20902         Change the following member names in struct re_registers.
20903         The old names are still supported if !_REGEX_SOURCE.
20904         The new names are always supported, regardless of _REGEX_SOURCE.
20905         (rm_num_regs): Renamed from num_regs.
20906         (rm_start): Renamed from start.
20907         (rm_end): Renamed from end.
20908
20909         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
20910         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
20911         Prepend __ to parameter names.
20912
20913         Undo yesterday's changes.
20914
20915 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
20916
20917         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
20918         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
20919         lib/regex.c.
20920
20921 2005-08-24  Jim Meyering  <jim@meyering.net>
20922
20923         Sync from coreutils.
20924         * m4/fcntl-safer.m4: New file.
20925
20926         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
20927         and object files for this module.
20928
20929 2005-08-24  Jim Meyering  <jim@meyering.net>
20930
20931         Sync from coreutils.
20932         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
20933
20934 2005-08-24  Jim Meyering  <jim@meyering.net>
20935
20936         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
20937         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
20938
20939 2005-08-24  Jim Meyering  <jim@meyering.net>
20940
20941         * modules/fcntl-safer: New module.
20942         * modules/fts (Depends-on): Add fcntl-safer.
20943         * MODULES.html.sh (File descriptor based Input/Output):
20944         Add fcntl-safer.
20945
20946 2005-08-24  Bruno Haible  <bruno@clisp.org>
20947
20948         Support for unit test modules.
20949         * modules/README: Mention tests modules.
20950         * modules/TEMPLATE-TESTS: New file.
20951         * gnulib-tool: New options --extract-tests-module, --with-tests and
20952         --tests-base (unused for the moment).
20953         (testsbase, inctests): New variables.
20954         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
20955         (func_verify_module): Exclude TEMPLATE-TESTS.
20956         (func_verify_nontests_module, func_verify_tests_module): New functions.
20957         (func_get_dependencies): Add implicit dependency for tests modules.
20958         (func_get_tests_module): New function.
20959         (func_modules_transitive_closure): When --with-tests was specified,
20960         include the unit tests as well, unless explicitly avoided.
20961         (func_emit_lib_Makefile_am): Ignore the tests modules here.
20962         (func_emit_tests_Makefile_am): New function.
20963         (func_create_testdir): When --with-tests was specified, emit a
20964         tests/ directory.
20965         * MODULES.html.sh (Future developments): Update.
20966
20967 2005-08-24  Bruno Haible  <bruno@clisp.org>
20968
20969         * modules/tls-tests: New file.
20970         * tests/test-tls.c: New file, from GNU gettext.
20971
20972 2005-08-24  Bruno Haible  <bruno@clisp.org>
20973
20974         * modules/lock-tests: New file.
20975         * tests/test-lock.c: New file, from GNU gettext.
20976
20977 2005-08-24  Bruno Haible  <bruno@clisp.org>
20978
20979         * lib/lock.h: Add multiple inclusion guard.
20980         * lib/tls.h: Add multiple inclusion guard.
20981
20982 2005-08-24  Bruno Haible  <bruno@clisp.org>
20983
20984         * gnulib-tool: Add support for the --aux-dir option to
20985         --create-testdir, --create-megatestdir, --test, --megatest.
20986         (func_create_testdir, func_create_megatestdir): Optionally emit a
20987         AC_CONFIG_AUX_DIR directive.
20988         (create-testdir, create-megatestdir, test, megatest): Provide a
20989         default value for $auxdir.
20990
20991 2005-08-24  Bruno Haible  <bruno@clisp.org>
20992
20993         * gnulib-tool (import): Use compound statement instead of subshell
20994         where possible.
20995
20996 2005-08-24  Bruno Haible  <bruno@clisp.org>
20997
20998         * gnulib-tool (import): Change --aux-dir default to "build-aux".
20999
21000 2005-08-24  Bruno Haible  <bruno@clisp.org>
21001
21002         * gnulib-tool (func_version): Update.
21003
21004 2005-08-24  Bruno Haible  <bruno@clisp.org>
21005
21006         * gnulib-tool (func_import, func_create_testdir,
21007         func_create_megatestdir): Quote all autoconf macro arguments.
21008
21009 2005-08-24  Bruno Haible  <bruno@clisp.org>
21010
21011         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
21012         option --force, because --force causes the aclocal.m4 of each
21013         subdirectory to be newer than the corresponding config.h.in.
21014
21015 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21016
21017         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
21018         All contents moved to gl_REGEX.
21019         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
21020         assume that it does.
21021
21022 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21023
21024         * lib/regex.h (REG_NOSYS)
21025         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
21026         Define, since POSIX requires it as of 2001.
21027         (_REG_ENOSYS)
21028         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
21029         New private symbol, used to keep the enum signed in all cases.
21030         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
21031         Youngman in
21032         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
21033
21034         * lib/regex_internal.c (re_string_skip_chars, register_state):
21035         (calc_state_hash):
21036         Remove forward decls; no longer needed now that we use prototypes.
21037         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
21038         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
21039         (clean_state_log_if_needed): Likewise.
21040
21041 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21042
21043         * config/srclist.txt: Add glibc bugs 1231-1233.
21044
21045 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21046
21047         Fix problems reported by Sam Steingold in
21048         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
21049         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
21050         assumed that reg_errcode_t is a signed type, which is not
21051         necessarily true if _XOPEN_SOURCE is not defined.
21052         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
21053         since some compilers warn about it otherwise.
21054
21055 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21056
21057         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
21058         (init_word_char, create_initial_state, duplicate_node_closure):
21059         (fetch_token, peek_token_bracket, build_range_exp):
21060         (build_collating_symbol): Remove forward decls; no longer needed
21061         now that we use prototypes.
21062
21063         * lib/regcomp.c:
21064         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
21065         (re_compile_fastmap_iter, regcomp, regerror, regfree):
21066         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
21067         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
21068         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
21069         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
21070         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
21071         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
21072         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
21073         (build_range_exp, build_collating_symbol, parse_bracket_exp):
21074         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
21075         (build_charclass, build_charclass_op, fetch_number, create_tree):
21076         (create_token_tree, mark_opt_subexp, duplicate_tree):
21077         Use prototypes rather than old-style definitions.
21078
21079         * lib/regex_internal.c:
21080         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
21081         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
21082         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
21083         (re_string_reconstruct, re_string_peek_byte_case):
21084         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
21085         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
21086         (re_node_set_init_copy, re_node_set_add_intersect):
21087         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
21088         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
21089         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
21090         (re_acquire_state, re_acquire_state_context, register_state):
21091         (create_ci_newstate, create_cd_newstate, free_state):
21092         Likewise.
21093         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
21094         re_search_2):
21095         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
21096         (re_search_internal, prune_impossible_nodes):
21097         (acquire_init_state_context, check_matching, static):
21098         (check_halt_node_context, check_halt_state_context, proceed_next_node):
21099         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
21100         (update_regs, sift_states_backward, build_sifted_states):
21101         (clean_state_log_if_needed, merge_state_array):
21102         (update_cur_sifted_state, add_epsilon_src_nodes):
21103         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
21104         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
21105         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
21106         (find_recover_state, check_subexp_matching_top, transit_state_mb):
21107         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
21108         (check_arrival, check_arrival_add_next_nodes):
21109         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
21110         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
21111         (check_node_accept_bytes, check_node_accept, extend_buffers):
21112         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
21113         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
21114         (sift_ctx_init):
21115         Likewise.
21116
21117         * lib/regex_internal.h:
21118         (re_string_allocate, re_string_construct, re_string_reconstruct):
21119         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
21120         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
21121         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
21122         (re_string_context_at, re_string_peek_byte_case):
21123         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
21124         is defined, since we now use prototypes always.
21125
21126         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
21127         C89 or better.  All uses removed.
21128
21129 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21130
21131         * config/srclist.txt: Add glibc bugs 1220-1227.
21132
21133 2005-08-20  Jim Meyering  <jim@meyering.net>
21134
21135         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
21136         of unused local, dfa.
21137
21138 2005-08-20  Bruno Haible  <bruno@clisp.org>
21139
21140         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
21141
21142 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21143
21144         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
21145         (re_node_set_insert_last, re_dfa_add_node):
21146         Rename local variables to avoid GCC shadowing warnings.
21147
21148 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21149
21150         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
21151         [defined lint]: Suppress bogus uninitialized-variable warnings.
21152
21153         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
21154         and let the caller return REG_ESPACE if out of space.  This
21155         removes an uninitialied-variable warning with GCC 4.0.1, and also
21156         avoids taking the address of a local variable.  All callers
21157         changed.
21158
21159 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21160
21161         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
21162         $LIBCSRC/posix/regexec.c.
21163         Add glibc bug 1217 for regcomp.c.
21164
21165 2005-08-19  Jim Meyering  <jim@meyering.net>
21166
21167         * lib/regexec.c (proceed_next_node): Redo local variables to
21168         avoid GCC shadowing warnings.
21169
21170 2005-08-18  Bruno Haible  <bruno@clisp.org>
21171
21172         * lib/strstr.c (strstr): Fix return value in multibyte case.
21173         * lib/strcasestr.c (strcasestr): Likewise.
21174
21175 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
21176
21177         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
21178
21179 2005-08-17  Jim Meyering  <jim@meyering.net>
21180
21181         Make the %s format (seconds since the epoch) work for a negative
21182         number and when used with a zero-padded field width, e.g. %015s.
21183
21184         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
21185         label so that it precedes the code to set `digits'.  Otherwise,
21186         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
21187         print `00-22'.  Now, it prints `-0022', as it should.
21188
21189 2005-08-17  Bruno Haible  <bruno@clisp.org>
21190
21191         * modules/strstr (Files): Add m4/mbrtowc.m4.
21192         (Depends-on): Add mbuiter.
21193
21194 2005-08-17  Bruno Haible  <bruno@clisp.org>
21195
21196         * modules/strcasestr: New file.
21197         * MODULES.html.sh (String handling, based on ANSI C 89): Add
21198         strcasestr.
21199
21200 2005-08-17  Bruno Haible  <bruno@clisp.org>
21201
21202         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
21203
21204 2005-08-17  Bruno Haible  <bruno@clisp.org>
21205
21206         * modules/mbuiter: New file.
21207         * MODULES.html.sh (Extended multibyte and wide character utilities):
21208         Add mbuiter.
21209
21210 2005-08-17  Bruno Haible  <bruno@clisp.org>
21211
21212         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
21213         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
21214
21215 2005-08-17  Bruno Haible  <bruno@clisp.org>
21216
21217         * m4/strcasestr.m4: New file.
21218
21219 2005-08-17  Bruno Haible  <bruno@clisp.org>
21220
21221         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
21222         * lib/strstr.c: Completely rewritten, with multibyte locale support.
21223
21224 2005-08-17  Bruno Haible  <bruno@clisp.org>
21225
21226         * lib/strcasestr.h: New file.
21227         * lib/strcasestr.c: New file.
21228
21229 2005-08-17  Bruno Haible  <bruno@clisp.org>
21230
21231         * lib/strcasecmp.c: Use mbuiter.h.
21232
21233 2005-08-17  Bruno Haible  <bruno@clisp.org>
21234
21235         * lib/mbuiter.h: New file.
21236
21237 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
21238
21239         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
21240         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
21241         and gl_GETOPT are both invoked via different paths (as happens
21242         with GNU tar CVS because it uses both argp and getopt), the former
21243         wins.
21244
21245 2005-08-16  Bruno Haible  <bruno@clisp.org>
21246
21247         * modules/tls: New file.
21248         * MODULES.html.sh (Multithreading): Add tls.
21249
21250 2005-08-16  Bruno Haible  <bruno@clisp.org>
21251
21252         * modules/strnlen1: New file.
21253         * MODULES.html.sh (String handling): Add strnlen1.
21254
21255 2005-08-16  Bruno Haible  <bruno@clisp.org>
21256
21257         * modules/strcase (Files): Add m4/mbrtowc.m4.
21258         (Depends-on): Add strnlen1, mbchar.
21259
21260 2005-08-16  Bruno Haible  <bruno@clisp.org>
21261
21262         * modules/mbiter: New file.
21263         * MODULES.html.sh (Extended multibyte and wide character utilities):
21264         Add mbiter.
21265
21266 2005-08-16  Bruno Haible  <bruno@clisp.org>
21267
21268         * modules/mbfile: New file.
21269         * MODULES.html.sh (Extended multibyte and wide character utilities):
21270         Add mbfile.
21271
21272 2005-08-16  Bruno Haible  <bruno@clisp.org>
21273
21274         * modules/mbchar: New file.
21275         * MODULES.html.sh (Extended multibyte and wide character utilities):
21276         New section.
21277
21278 2005-08-16  Bruno Haible  <bruno@clisp.org>
21279
21280         * m4/tls.m4: New file, from GNU gettext.
21281
21282 2005-08-16  Bruno Haible  <bruno@clisp.org>
21283
21284         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
21285         always.
21286         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
21287
21288 2005-08-16  Bruno Haible  <bruno@clisp.org>
21289
21290         * m4/mbiter.m4: New file.
21291
21292 2005-08-16  Bruno Haible  <bruno@clisp.org>
21293
21294         * m4/mbfile.m4: New file.
21295
21296 2005-08-16  Bruno Haible  <bruno@clisp.org>
21297
21298         * m4/mbchar.m4: New file.
21299
21300 2005-08-16  Bruno Haible  <bruno@clisp.org>
21301
21302         * lib/tls.h: New file, from GNU gettext.
21303         * lib/tls.c: New file, from GNU gettext.
21304
21305 2005-08-16  Bruno Haible  <bruno@clisp.org>
21306
21307         * lib/strnlen1.h: New file.
21308         * lib/strnlen1.c: New file.
21309
21310 2005-08-16  Bruno Haible  <bruno@clisp.org>
21311
21312         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
21313         (mbi_init): Update.
21314         (mbi_avail, mbi_advance): Let the iteration end before the terminating
21315         NUL byte, not after it.
21316
21317 2005-08-16  Bruno Haible  <bruno@clisp.org>
21318
21319         * lib/strcase.h (strcasecmp): Add note in comments.
21320         * lib/strncasecmp.c: Use code from strcasecmp.c.
21321         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
21322         (strcasecmp): Work correctly in multibyte locales.
21323
21324 2005-08-16  Bruno Haible  <bruno@clisp.org>
21325
21326         * lib/mbiter.h: New file.
21327
21328 2005-08-16  Bruno Haible  <bruno@clisp.org>
21329
21330         * lib/mbfile.h: New file.
21331
21332 2005-08-16  Bruno Haible  <bruno@clisp.org>
21333
21334         * lib/mbchar.h: New file.
21335         * lib/mbchar.c: New file.
21336
21337 2005-08-16  Bruno Haible  <bruno@clisp.org>
21338
21339         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
21340         the valid ones. Makes the comparison operations transitive:
21341         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
21342         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
21343
21344 2005-08-15  Simon Josefsson  <jas@extundo.com>
21345
21346         * modules/ssize_t (License): Change to 'unlimited'.
21347
21348         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
21349
21350 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21351
21352         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
21353         Add comments for each pending glibc patch.
21354
21355 2005-08-15  Bruno Haible  <bruno@clisp.org>
21356
21357         * lib/regex.h (__restrict_arr): Don't define to __restrict if
21358         __cplusplus is defined.
21359
21360 2005-08-14  Jim Meyering  <jim@meyering.net>
21361
21362         Sync from coreutils.
21363
21364         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
21365         Use the hash-table-based cycle-detection code not just when
21366         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
21367         Reported by James Youngman in
21368         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
21369         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
21370         FTS_TIGHT_CYCLE_CHECK.
21371         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
21372         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
21373         once again.
21374         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
21375         * lib/fts.c (fd_safer): Remove decl.
21376         Include fcntl--.h rather than unistd-safer.h
21377         (fts_safe_changedir): Don't call fd_safer; no longer needed
21378         now that we include fcntl--.h.
21379
21380 2005-08-12  Simon Josefsson  <jas@extundo.com>
21381
21382         * modules/getndelim2: Use ssize_t module.
21383         * modules/getnline: Likewise.
21384         * modules/safe-read: Likewise.
21385         * modules/xreadlink: Likewise.
21386
21387         * modules/ssize_t: New file.
21388
21389 2005-08-12  Simon Josefsson  <jas@extundo.com>
21390
21391         * m4/readline.m4: Look for termcap, curses or ncurses if required.
21392
21393 2005-08-12  Simon Josefsson  <jas@extundo.com>
21394
21395         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21396         ssize_t.
21397
21398 2005-08-12  Simon Josefsson  <jas@extundo.com>
21399
21400         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
21401         readline, getdelim and check_version.
21402         (Support for systems lacking ISO C 99: Sizes of integer types):
21403         Add size_max.
21404
21405 2005-08-12  Bruno Haible  <bruno@clisp.org>
21406
21407         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
21408
21409 2005-08-11  Simon Josefsson  <jas@extundo.com>
21410
21411         * modules/readline: New file.
21412
21413         * modules/strnlen (Files): Add strnlen.h.
21414
21415 2005-08-11  Simon Josefsson  <jas@extundo.com>
21416
21417         * m4/readline.m4: New file.
21418
21419 2005-08-11  Simon Josefsson  <jas@extundo.com>
21420
21421         * lib/readline.h, readline.c: New file.
21422
21423 2005-08-11  Simon Josefsson  <jas@extundo.com>
21424
21425         * doc/gnulib.texi (Initial import, Finishing touches): Mention
21426         gl_AVOID.
21427
21428 2005-08-11  Bruno Haible  <bruno@clisp.org>
21429
21430         * lib/strnlen.h (strnlen): Change parameter name to match comment.
21431
21432 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
21433
21434         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
21435
21436 2005-08-10  Simon Josefsson  <jas@extundo.com>
21437
21438         * tests/test-iconvme.c: New file.
21439
21440 2005-08-10  Simon Josefsson  <jas@extundo.com>
21441
21442         * m4/strnlen.m4: New file.
21443
21444         * m4/strndup.m4: Don't check for strnlen declaration, done in
21445         strnlen.m4.
21446
21447 2005-08-10  Simon Josefsson  <jas@extundo.com>
21448
21449         * lib/strndup.c: Use strnlen.h.
21450
21451         * lib/strnlen.h: New file.
21452
21453 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
21454
21455         * README: Typos.
21456
21457 2005-08-02  Simon Josefsson  <jas@extundo.com>
21458
21459         * modules/readline: New file.
21460
21461 2005-08-02  Simon Josefsson  <jas@extundo.com>
21462
21463         * modules/getdelim: New file.
21464
21465         * modules/getline: Rewrite, don't use getndelim2.
21466
21467 2005-08-02  Simon Josefsson  <jas@extundo.com>
21468
21469         * m4/getline.m4: Separate out getdelim stuff into separate module.
21470
21471         * m4/getdelim.m4: New file.
21472
21473 2005-08-02  Simon Josefsson  <jas@extundo.com>
21474
21475         * lib/getline.h, getline.c: Rewrite.
21476
21477         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
21478
21479 2005-07-31  Bruno Haible  <bruno@clisp.org>
21480
21481         * lib/lock.h (gl_lock_initializer): New macro.
21482         (gl_lock_define_initialized): Use it.
21483         (gl_rwlock_initializer): New macro.
21484         (gl_rwlock_define_initialized): Use it.
21485         (gl_recursive_lock_initializer): New macro.
21486         (gl_recursive_lock_define_initialized): Use it.
21487
21488 2005-07-30  Karl Berry  <karl@gnu.org>
21489
21490         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
21491         Report from Ben Pfaff, regarding getopt.
21492
21493 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
21494
21495         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
21496         normal way.
21497         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
21498         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
21499         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
21500         (gl_GETOPT): Use the new macros.  Most of the implementation
21501         is moved to the new macros.  This is for programs like Emacs
21502         that don't want all the functionality of gl_GETOPT.
21503
21504 2005-07-26  Bruno Haible  <bruno@clisp.org>
21505
21506         * m4/lock.m4: Update from GNU gettext.
21507
21508 2005-07-26  Bruno Haible  <bruno@clisp.org>
21509
21510         * lib/lock.h: Update from GNU gettext.
21511         * lib/lock.c: Update from GNU gettext.
21512
21513 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
21514
21515         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
21516         obsolescent AC_TRY_RUN.  Include the default includes files, for
21517         'exit'.
21518
21519 2005-07-24  Bruno Haible  <bruno@clisp.org>
21520
21521         * modules/visibility: New file.
21522         * MODULES.html.sh (Misc): Add visibility.
21523
21524 2005-07-24  Bruno Haible  <bruno@clisp.org>
21525
21526         * m4/visibility.m4: New file.
21527
21528 2005-07-24  Bruno Haible  <bruno@clisp.org>
21529
21530         * doc/visibility.texi: New file.
21531
21532 2005-07-22  Bruno Haible  <bruno@clisp.org>
21533
21534         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
21535         $(ALLOCA_H), redundant through BUILT_SOURCES.
21536         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
21537         redundant through BUILT_SOURCES.
21538         * modules/byteswap (Makefile.am): Remove explicit dependency on
21539         $(BYTESWAP_H), redundant through BUILT_SOURCES.
21540         * modules/fnmatch (Makefile.am): Remove explicit dependency on
21541         $(FNMATCH_H), redundant through BUILT_SOURCES.
21542         * modules/getopt (Makefile.am): Remove explicit dependency on
21543         $(GETOPT_H), redundant through BUILT_SOURCES.
21544         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
21545         redundant through BUILT_SOURCES.
21546         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
21547         redundant through BUILT_SOURCES.
21548         * modules/stdbool (Makefile.am): Remove explicit dependency on
21549         $(STDBOOL_H), redundant through BUILT_SOURCES.
21550         * modules/stdint (Makefile.am): Remove explicit dependency on
21551         $(STDINT_H), redundant through BUILT_SOURCES.
21552         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
21553         Remove explicit dependency on $(SYSEXITS_H).
21554         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
21555
21556 2005-07-18  Simon Josefsson  <jas@extundo.com>
21557
21558         * lib/check-version.c (check_version): Accept identical versions too.
21559
21560 2005-07-18  Bruno Haible  <bruno@clisp.org>
21561
21562         * modules/lock: New file.
21563         * MODULES.html.sh (Multithreading): New section.
21564
21565 2005-07-18  Bruno Haible  <bruno@clisp.org>
21566
21567         * m4/lock.m4: New file, from GNU gettext.
21568
21569 2005-07-18  Bruno Haible  <bruno@clisp.org>
21570
21571         * lib/lock.h: New file, from GNU gettext.
21572         * lib/lock.c: New file, from GNU gettext.
21573
21574 2005-07-18  Bruno Haible  <bruno@clisp.org>
21575
21576         * lib/lock.h (gl_once_t): New type.
21577         (gl_once_define, gl_once): New macros.
21578         * lib/lock.c (fresh_once): New variable.
21579         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
21580         functions.
21581
21582 2005-07-16  Simon Josefsson  <jas@extundo.com>
21583
21584         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
21585         workaround, suggested by Bruno.
21586
21587 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
21588
21589         * modules/xalloc (Depends-on): Add xalloc-die.
21590         * modules/xvasprintf (Depends-on): Add xalloc-die.
21591
21592 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
21593
21594         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
21595         with a minor change.
21596
21597 2005-07-15  Bruno Haible  <bruno@clisp.org>
21598
21599         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
21600         When using lib/poll.c, define poll as rpl_poll.
21601
21602 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
21603
21604         * modules/argp (Depends-on): Remove unlocked-io.
21605
21606 2005-07-14  Derek Price  <derek@ximbiot.com>
21607
21608         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
21609         for glob symlink bug.
21610
21611 2005-07-14  Bruno Haible  <bruno@clisp.org>
21612
21613         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
21614         Instead, test for *_unlocked function declarations directly.
21615
21616 2005-07-11  Simon Josefsson  <jas@extundo.com>
21617
21618         * modules/size_max: New file.
21619
21620         * modules/xsize: Depend on size_max module for size_max.m4.
21621
21622 2005-07-11  Simon Josefsson  <jas@extundo.com>
21623
21624         * lib/size_max.h: New file.
21625
21626 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
21627
21628         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
21629         copyright symbol and the year.
21630         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
21631         (version_etc_va): Use parameterized copyright notice.
21632         Reword to conform to the current GNU coding standards.
21633
21634 2005-07-11  Karl Berry  <karl@gnu.org>
21635
21636         * doc/gnulib.texi (Quoting): new node.
21637         (Initial import): more info, from Patrice.
21638
21639 2005-07-11  Bruno Haible  <bruno@clisp.org>
21640
21641         * gnulib-tool (func_usage): Document option --avoid.
21642         (Command line options): Handle --avoid.
21643         (func_acceptable): New function.
21644         (func_modules_transitive_closure): Use it.
21645
21646 2005-07-11  Bruno Haible  <bruno@clisp.org>
21647
21648         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
21649         Reported by Jim Meyering.
21650
21651 2005-07-10  Bruno Haible  <bruno@clisp.org>
21652
21653         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
21654         Needed when size_t is smaller than 'unsigned int'.
21655         Reported by Paul Eggert.
21656
21657 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21658
21659         * modules/argp (Depends-on): Add unlocked-io
21660
21661 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
21662
21663         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
21664         block of defines.
21665
21666 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
21667
21668         * config/srclist.txt: Comment out regcomp.c, since we have a porting
21669         fix now.
21670
21671 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
21672         and Paul Eggert  <eggert@cs.ucla.edu>
21673
21674         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
21675         in wint_t, not wchar_t.  Remove now-unnecessary cast.
21676
21677 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21678
21679         * modules/regex (Files): Add lib/regex_internal.c,
21680         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
21681         (Depends-on): Add extensions.
21682         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
21683
21684 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21685
21686         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
21687         pathconf.
21688         * m4/same.m4 (gl_SAME): Likewise.
21689         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
21690
21691         * m4/regex.m4: Adjust to new libc regex implementation.
21692         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
21693         all the .c and .h parts of (the new) regex.
21694         Quote the m4 stuff better.
21695         Check for RE_ICASE bug of old gnulib.
21696         Check for REG_STARTEND of recent libc.
21697         Rename local variables from jm_* to gl_*.
21698         Quote operand of "test -f".
21699         Say "recent enough" version of libc, not "version 2".
21700         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
21701         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
21702         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
21703         Remove check for btowc, isascii.
21704         Require AM_LANGINFO_CODESET.
21705
21706 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21707
21708         * lib/regex.c, regex.h: Sync from libc.
21709         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
21710         * lib/regexec.c:
21711         New files, synced from libc, except that regex_internal.h
21712         currently has a small porting fix.
21713
21714 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
21715
21716         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
21717         regex_internal.c, regexec.c.
21718         Add regex_internal.h too, but as a comment, since the libc version
21719         is currently broken in gnulib mode.
21720
21721 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
21722
21723         Support programs like Emacs that use gnulib but not gettext.
21724         * MODULES.html.sh (Internationalization functions): Add gettext-h.
21725         * modules/gettext-h: New file.
21726         * modules/gettext (Files): Remove lib/gettext.h.
21727         (Depends-on): Add gettext-h.
21728         (Makefile.am): Remove lib_SOURCES.
21729         * modules/argmatch, modules/c-stack, modules/closeout:
21730         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
21731         * modules/execute, modules/file-type, modules/getaddrinfo:
21732         * modules/getopt, modules/human, modules/javacomp:
21733         * modules/javaexec, modules/mkdir-p, modules/obstack:
21734         * modules/openat, modules/pagealign_alloc, modules/pipe:
21735         * modules/quotearg, modules/regex, modules/rpmatch:
21736         * modules/unicodeio, modules/userspec, modules/version-etc:
21737         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
21738         * modules/xsetenv:
21739         Depend on gettext-h, not gettext.
21740
21741 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
21742
21743         * gnulib-tool (func_import): Add support for 'public domain' license.
21744         * modules/alloca, modules/atexit, modules/memmove:
21745         Now public domain, not GPL.
21746         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
21747         * modules/realloc, modules/strerror, modules/strtod:
21748         Now LGPL, not GPL.
21749
21750 2005-07-05  Bruno Haible  <bruno@clisp.org>
21751
21752         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
21753         autoconf CVS. Needed for mingw.
21754
21755 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21756
21757         Remove the dependency of the strftime module on the tzset module.
21758         * modules/strftime (Depends-on): Remove dependency on tzset.
21759
21760 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21761
21762         Remove the dependency of the strftime module on the tzset module.
21763         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
21764         gl_FUNC_TZSET_CLOBBER.
21765
21766 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
21767
21768         Remove the dependency of the strftime module on the tzset module.
21769         * lib/strftime.c (my_strftime)
21770         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
21771         Copy the input structure, to work around some of the bug with
21772         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
21773         Solaris releases, you should also use the tzset module, but we won't
21774         require it as a dependency any more since we don't want LGPLed code
21775         to depend on GPLed code.
21776
21777 2005-07-02  Jim Meyering  <jim@meyering.net>
21778
21779         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
21780         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
21781         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
21782         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
21783
21784 2005-07-02  Jim Meyering  <jim@meyering.net>
21785
21786         * lib/backupfile.c (backup_args): Change a `0' to NULL.
21787
21788 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
21789
21790         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
21791         declares only 'struct timespec;' (!).
21792
21793 2005-07-01  Jim Meyering  <jim@meyering.net>
21794
21795         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
21796         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
21797         * lib/save-cwd.c, tempname.c:
21798         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
21799         and don't include <sys/file.h>).
21800
21801 2005-06-29  Jim Meyering  <jim@meyering.net>
21802
21803         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
21804         type name.  Use the variable name instead.
21805         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
21806         Likewise.
21807
21808 2005-06-28  Simon Josefsson  <jas@extundo.com>
21809
21810         * modules/check-version (Files): Add check-version.m4.
21811
21812 2005-06-28  Simon Josefsson  <jas@extundo.com>
21813
21814         * m4/check-version.m4: New file, suggested by Jim Meyering
21815         <jim@meyering.net>.
21816
21817 2005-06-28  Simon Josefsson  <jas@extundo.com>
21818
21819         * lib/check-version.h, lib/check-version.c: New files.
21820
21821 2005-06-28  Simon Josefsson  <jas@extundo.com>
21822
21823         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
21824         collision with global variable.  Better indentation.  Don't
21825         increment buffer pointer beyond buffer end.  Based on comments
21826         from Paul Eggert <eggert@cs.ucla.edu>.
21827
21828         * lib/base64.h: Indent.
21829
21830 2005-06-28  Simon Josefsson  <jas@extundo.com>
21831
21832         * doc/gnulib.texi (Library version handling): New section.
21833
21834 2005-06-28  Jim Meyering  <jim@meyering.net>
21835
21836         * check-module (find_included_lib_files): Hard-code another
21837         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
21838         but modules/fts-lgpl (correctly) does not list those files.
21839
21840         * modules/canonicalize (Files): Add lib/pathmax.h.
21841
21842 2005-06-25  Simon Josefsson  <jas@extundo.com>
21843
21844         * modules/check-version: New file.
21845
21846 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
21847
21848         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
21849         initializer of struct addrinfo, as an indication that we don't
21850         care how many members the structure has.
21851
21852 2005-06-24  Derek Price  <derek@ximbiot.com>
21853         and Bruno Haible  <bruno@clisp.org>
21854
21855         Remove stat module & update lstat.
21856         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
21857         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
21858         * m4/stat.m4: Remove this file.
21859
21860 2005-06-24  Derek Price  <derek@ximbiot.com>
21861         and Bruno Haible  <bruno@clisp.org>
21862
21863         Remove stat module & update lstat.
21864         * lib/stat.c: Remove this file...
21865         (slash_aware_lstat): ...moving this content and its support...
21866         * lib/lstat.c (rpl_lstat): ...into here.
21867         * lib/lstat.h: New file.
21868
21869 2005-06-24  Derek Price  <derek@ximbiot.com>
21870         and Bruno Haible  <bruno@clisp.org>
21871
21872         Remove stat module & update lstat.
21873         * config/srclist.txt (libc sources): Remove stat.
21874
21875 2005-06-24  Derek Price  <derek@ximbiot.com>
21876         and Bruno Haible  <bruno@clisp.org>
21877
21878         Remove stat module & update lstat.
21879         * MODULES.html.sh (stat): Remove.
21880         * MODULES.html: Regenerated.
21881         * modules/lstat (Description): Correct function name.
21882         (Files): Add "lstat.h".
21883         (Depends-on): Remove stat, add xalloc, stat-macros.
21884         * modules/stat: Remove this file.
21885         (Include): Add "lstat.h", remove <sys/stat.h>.
21886
21887 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
21888
21889         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
21890         (ranged_convert): Don't save conversion in a temporary struct.
21891         This causes a warning with GCC 4.0.0, and anyway in the typical
21892         case it's not worth the extra 100 bytes or so of code.
21893         (ranged_convert, __mktime_internal): When calling a function via a
21894         pointer P, use P () rather than (*P) (), as we now assume C89 or
21895         better.
21896
21897 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
21898
21899         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
21900         "who -r" failed to give output.  Problem reported by Tim Waugh.
21901
21902         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
21903         (xcalloc): Use it to avoid needless tests.
21904         Problem reported by Jim Meyering.
21905
21906 2005-06-20  Derek Price  <derek@ximbiot.com>
21907
21908         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
21909         unnecessary for Autoconfs > 2.59c.
21910
21911 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
21912
21913         * lib/argp.h (__option_is_short): Check upper limit of
21914         __key. Isprint() requires its argument to have the value
21915         of an unsigned char or EOF.
21916
21917 2005-06-16  Jim Meyering  <jim@meyering.net>
21918
21919         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
21920         when either N or S is zero.
21921
21922 2005-06-16  Derek Price  <derek@ximbiot.com>
21923
21924         * m4/bison.m4: Declare YACC & YFLAGS precious.
21925
21926 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
21927
21928         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
21929         multibyte string or pattern, fall back on unibyte matching.
21930         Problem reported by James Youngman.
21931
21932 2005-06-08  Bruno Haible  <bruno@clisp.org>
21933
21934         * modules/csharpcomp: New file.
21935         * MODULES.html.sh (C#): Add csharpcomp.
21936
21937 2005-06-08  Bruno Haible  <bruno@clisp.org>
21938
21939         * m4/csharpcomp.m4: New file, from GNU gettext.
21940
21941 2005-06-08  Bruno Haible  <bruno@clisp.org>
21942
21943         * lib/csharpcomp.h: New file, from GNU gettext.
21944         * lib/csharpcomp.c: New file, from GNU gettext.
21945         * lib/csharpcomp.sh.in: New file, from GNU gettext.
21946
21947 2005-06-08  Bruno Haible  <bruno@clisp.org>
21948
21949         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
21950         warning on mingw.
21951
21952 2005-06-07  Derek Price  <derek@ximbiot.com>
21953
21954         Sync from CVS.
21955         * lib/glob_.h: Indent nested #ifdef.
21956
21957 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
21958
21959         Sync from coreutils.
21960         Use "file name" when talking about file names, instead of "filename"
21961         or "path", as per the GNU coding standards.
21962         * lib/mkdir-p.c: Renamed from makepath.c.
21963         (make_dir_parents): Renamed from make_path.  All callers changed.
21964         * lib/mkdir-p.h: Likewise.  All includers changed.
21965         * lib/filenamecat.c: Renamed from path-concat.c.
21966         (file_name_concat): Renamed from path_concat.  All callers changed.
21967         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
21968         * lib/filenamecat.h: Likewise.  All includers changed.
21969         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
21970         in comments or local variable names.
21971         * lib/basename.c: Likewise.
21972         * lib/canonicalize.c, canonicalize.h: Likewise.
21973         * lib/dirname.c, dirname.h: Likewise.
21974         * lib/euidaccess.c: Likewise.
21975         * lib/exclude.c: Likewise
21976         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
21977         * lib/fsusage.c, fsuage.h: Likewise.
21978         * lib/fts.c, fts_.h: Likewise.
21979         * lib/getcwd.c: Likewise.
21980         * lib/getloadavg.c: Likewise.
21981         * lib/mkstemp.c: Likewise.
21982         * lib/mountlist.c, mountlist.h: Likewise.
21983         * lib/openat.c, openat.h: Likewise.
21984         * lib/readlink-stub.c: Likewise.
21985         * lib/readutmp.c, readutmp.h: Likewise.
21986         * lib/rename.c: Likewise.
21987         * lib/rmdir.c: Likewise.
21988         * lib/same.c: Likewise.
21989         * lib/savedir.c: Likewise.
21990         * lib/stripslash.c: Likewise.
21991         * lib/tempname.c: Likewise.
21992         * lib/xreadlink.c: Likewise.
21993         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
21994         All uses changed.
21995         * lib/exclude.h: Likewise.
21996
21997         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
21998         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
21999         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
22000         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
22001         * lib/pathmax.h: Include <limits.h> unconditionally, since other
22002         files have been getting away with it for years (MORE/BSD 4.3
22003         is extinct now).
22004         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
22005         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
22006
22007         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
22008         Define to 256, not 255, as per modern POSIX.
22009
22010 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22011
22012         Sync from coreutils.
22013         Use "file name" when talking about file names, instead of "filename"
22014         or "path", as per the GNU coding standards.
22015         * MODULES.html.sh: mkdir-p renamed from makepath.
22016         filenamecat renamed from path-concat.
22017         * modules/filenamecat: Renamed from modules/path-concat.
22018         (Files): filenamecat.h and filenamecat.c renamed from
22019         path-concat.h and path-concat.c.
22020         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
22021         (Include): filenamecat.h, not path-concat.h.
22022         * modules/mkdir-p: Renamed from modules/makepath.
22023         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
22024         makepath.c.
22025         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
22026         (Include): mkdir-p.h, not makepath.h.
22027
22028 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
22029
22030         Sync from coreutils.
22031         * m4/mkdir-p.m4: Renamed from makepath.m4.
22032         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
22033         Rename files from makepath.c to mkdir-p.c, and from
22034         makepath.h to mkdir-p.h.
22035         * m4/filenamecat.m4: Renamed from path-concat.m4.
22036         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
22037         Rename files from path-concat.c to filenamecat.c,
22038         and from path-concat.h to filenamecat.h.
22039         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
22040         "file name" in local variables or comments.
22041         * m4/rename.m4: Likewise.
22042
22043 2005-06-01  Bruno Haible  <bruno@clisp.org>
22044
22045         * modules/csharpexec: New file.
22046         * MODULES.html.sh (C#): New section.
22047
22048 2005-06-01  Bruno Haible  <bruno@clisp.org>
22049
22050         * m4/csharp.m4: New file, from GNU gettext.
22051         * m4/csharpexec.m4: New file, from GNU gettext.
22052
22053 2005-06-01  Bruno Haible  <bruno@clisp.org>
22054
22055         * lib/csharpexec.h: New file, from GNU gettext.
22056         * lib/csharpexec.c: New file, from GNU gettext.
22057         * lib/csharpexec.sh.in: New file, from GNU gettext.
22058
22059 2005-05-31  Derek Price  <derek@ximbiot.com>
22060             Paul Eggert  <eggert@cs.ucla.edu>
22061
22062         Sync from cvs.
22063         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
22064
22065 2005-05-31  Derek Price  <derek@ximbiot.com>
22066             Paul Eggert  <eggert@cs.ucla.edu>
22067
22068         Sync from cvs.
22069         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
22070
22071 2005-05-29  Derek Price  <derek@ximbiot.com>
22072
22073         * config/srclist.txt (glob_.h, glob.c): Add these files.
22074
22075 2005-05-29  Derek Price  <derek@ximbiot.com>
22076
22077         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
22078         * modules/glob: New file.
22079         * modules/getlogin_r: Add link to POSIX spec in description.
22080
22081 2005-05-29  Derek Price  <derek@ximbiot.com>
22082             Paul Eggert  <eggert@cs.ucla.edu>
22083
22084         * m4/glob.m4: New file.
22085
22086 2005-05-29  Derek Price  <derek@ximbiot.com>
22087             Paul Eggert  <eggert@cs.ucla.edu>
22088
22089         * lib/glob_.h, lib/glob.c: New files.
22090
22091 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22092
22093         * modules/fts (Files): Remove m4/inttypes-pri.m4.
22094         * modules/fts-lgpl (Depends-on): Remove gettext.
22095
22096 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22097
22098         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
22099         and don't require gt_INTTYPES_PRI.
22100
22101 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
22102
22103         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
22104
22105         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
22106         the configuration hassle isn't worth it.
22107         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
22108         (LONGEST_MODIFIER, PRIuMAX): Remove.
22109
22110 2005-05-27  Bruno Haible  <bruno@clisp.org>
22111
22112         * lib/getlogin_r.h: Remove second include of <stddef.h>.
22113
22114 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
22115
22116         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
22117         _POSIX_PTHREAD_SEMANTICS for Solaris.
22118
22119 2005-05-25  Derek Price  <derek@ximbiot.com>
22120
22121         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
22122
22123 2005-05-25  Derek Price  <derek@ximbiot.com>
22124             Paul Eggert  <eggert@cs.ucla.edu>
22125
22126         * modules/getlogin_r, m4/getlogin_r.m4: New files.
22127         * lib/getlogin_r.c, getlogin_r.h: New files.
22128
22129 2005-05-25  Bruno Haible  <bruno@clisp.org>
22130             Derek Price  <derek@ximbiot.com>
22131
22132         * lib/getlogin_r.h: Simplify API documentation.
22133
22134 2005-05-23  Derek Price  <derek@ximbiot.com>
22135
22136         * modules/minmax (Files): Add m4/minmax.m4.
22137         (configure.ac): Add gl_MINMAX.
22138
22139 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
22140
22141         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
22142         so that unistd-safer.h (GPL'ed code) need not be included.
22143
22144 2005-05-22  Bruno Haible  <bruno@clisp.org>
22145
22146         * m4/minmax.m4: New file.
22147         Based on a patch by Derek Price <derek@ximbiot.com>.
22148
22149 2005-05-22  Bruno Haible  <bruno@clisp.org>
22150
22151         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
22152         (INT64_MIN): Fix definition.
22153         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
22154
22155         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
22156         NEED_SIGNED_INT_TYPES.
22157
22158         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
22159         HAVE_SYSTEM_INTTYPES.
22160
22161 2005-05-22  Bruno Haible  <bruno@clisp.org>
22162
22163         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
22164         Also include <sys/param.h> if it defines MIN, MAX.
22165         Based on a patch by Derek Price <derek@ximbiot.com>.
22166
22167 2005-05-21  Jim Meyering  <jim@meyering.net>
22168
22169         * modules/fts (Files): Add m4/inttypes-pri.m4.
22170         (Depends-on): Add lstat and remove gettext.  Alphabetize.
22171
22172 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22173
22174         New fts module.
22175         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
22176         (setup_dir, free_dir): New functions.
22177         (enter_dir, leave_dir): Define trivial
22178         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
22179         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
22180         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
22181         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
22182         Move to fts-cycle.c.
22183         (fts_open): Use setup_dir.
22184         (fts_close): Use free_dir.
22185         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
22186         This adds a label and some gotos, but the alternatives were messier.
22187         Check for memory allocation failure when entering a dir.
22188         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
22189         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
22190         (FTS): New member fts_cycle, that is a union that contains the
22191         old active_dir_ht and cycle_state.  All uses changed to mention
22192         fts_cycle.ht and fts_cycle.state.
22193         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
22194         fts.c, with the following changes:
22195         (setup_dir, free_dir): New functions.
22196         (enter_dir): Now returns bool.  Return true if successful, false
22197         if memory exhausted.  All callers changed.
22198         Do not bother partly cleaning up on
22199         memory allocation failure; that is free_dir's job.
22200         However, free ad if hash_insert fails, to avoid memory leak.
22201         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
22202         fts->fts_options to see which union member to use.
22203
22204 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22205
22206         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
22207         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
22208
22209 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
22210
22211         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
22212
22213 2005-05-20  Jim Meyering  <jim@meyering.net>
22214
22215         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
22216         Now a macro, to pacify GCC.
22217
22218 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
22219
22220         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
22221         of -1.
22222
22223 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
22224
22225         * lib/chown.c (rpl_chown): Return -1 on failure.
22226
22227 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
22228
22229         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
22230         Don't check for stddef.h.
22231         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
22232         don't use its results.
22233         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
22234         since we include them unconditionally.  Don't require
22235         AM_STDBOOL_H, since stdbool is a prerequisite.
22236         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
22237         since we assume C89 or better.
22238         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
22239         as we don't use their results.
22240         Don't check for fchdir, memmove, memset, strrchr, as we use
22241         them unconditionally.
22242         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
22243         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
22244
22245 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
22246
22247         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
22248         Include <stddef.h> unconditionally, since we assume C89 now.
22249         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
22250         * lib/fts.c: Include fts_.h first, to check interface.
22251         Do not include intprops.h; no longer needed.
22252         Include cycle-check.h and hash.h, since fts_.h no longer does.
22253         Remove unnecessary casts of closedir to void.
22254         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
22255         decide whether to decrement nlinks.
22256         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
22257         (FTS): Use struct hash_table * instead of Hash_table, so that
22258         we no longer need to include hash.h here.
22259
22260 2005-05-18  Jim Meyering  <jim@meyering.net>
22261
22262         * modules/dirfd (License): Change to LGPL.  Most of the code
22263         is already in the public domain.
22264
22265 2005-05-18  Jim Meyering  <jim@meyering.net>
22266
22267         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
22268         Reported by Yoann Vandoorselaere.
22269
22270 2005-05-17  Jim Meyering  <jim@meyering.net>
22271
22272         * m4/fts.m4: New file, from coreutils.
22273
22274 2005-05-17  Jim Meyering  <jim@meyering.net>
22275
22276         * lib/fts.c, lib/fts_.h: New files, from coreutils.
22277
22278 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22279
22280         Sync from coreutils.
22281         * m4/unlinkdir.m4: New file.
22282
22283 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22284
22285         Sync from coreutils.
22286         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
22287         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
22288         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
22289         White space changes only.
22290         * lib/makepath.c (make_path): Port to hosts where leading "//" is
22291         special.
22292         * lib/yesno.c: Include getline.h, not ctype.h.
22293         (yesno): Don't remove leading white space; POSIX doesn't allow it.
22294         Use getline to remove arbitrary restriction on response length.
22295
22296 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
22297
22298         * config/srclist-update: Spell out "Street" in FSF postal
22299         mail address; this is the style the FSF seems to prefer.
22300
22301         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
22302         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
22303         this updates FSF postal mail address.
22304
22305         Sync from coreutils.
22306         * modules/unlinkdir: New file.
22307         * modules/yesno (Depends-on): Add getline.
22308         * MODULES.html.sh (File system functions): Add unlinkdir.
22309
22310 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
22311
22312         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
22313         lib/strsep.h:
22314         Change the initial comment to refer to GPL, not LGPL.
22315         gnulib-tool will change it to LGPL as needed.
22316
22317         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
22318         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
22319         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
22320         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
22321         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
22322         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
22323         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
22324         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
22325         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
22326         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
22327         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
22328         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
22329         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
22330         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
22331         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
22332         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
22333         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
22334         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
22335         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
22336         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
22337         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
22338         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
22339         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
22340         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
22341         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
22342         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
22343         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
22344         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
22345         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
22346         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
22347         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
22348         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
22349         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
22350         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
22351         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
22352         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
22353         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
22354         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
22355         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
22356         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
22357         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
22358         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
22359         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
22360         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
22361         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
22362         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
22363         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
22364         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
22365         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
22366         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
22367         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
22368         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
22369         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
22370         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
22371         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
22372         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
22373         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
22374         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
22375         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
22376         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
22377         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
22378         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
22379         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
22380         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
22381         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
22382         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
22383         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
22384         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
22385         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
22386         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
22387         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
22388         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
22389         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
22390         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
22391         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
22392         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
22393         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
22394         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
22395         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
22396         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
22397         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
22398         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
22399         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
22400         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
22401         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
22402         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
22403         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
22404         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
22405         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
22406         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
22407         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
22408         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
22409         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
22410         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
22411         lib/yesno.c, lib/yesno.h:
22412         Update FSF postal mail address.
22413
22414 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
22415
22416         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
22417         tests/test-memmem.c, tests/test-stpncpy.c:
22418         Update FSF postal mail address.
22419
22420 2005-05-13  Bruno Haible  <bruno@clisp.org>
22421
22422         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
22423         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
22424         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
22425         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
22426         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
22427         Add support for 64-bit integers in the MSVC compiler.
22428
22429 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
22430
22431         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
22432
22433 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
22434
22435         * gnulib-tool (func_import): Sort and uniquify recommended includes.
22436
22437 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
22438
22439         * doc/getdate.texi (General date syntax): Don't say that date
22440         date --iso-8601=ns generates acceptable dates; it doesn't yet.
22441         Problem reported by Nic Ferrier.
22442
22443 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22444
22445         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
22446         specified in ai_socktype. Fix invalid ai_protocol
22447         check. ai_protocol is usually set to 0 or depending on
22448         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
22449         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
22450         ai_socktype / ai_protocol in the returned addrinfo structure.
22451
22452 2005-05-10  Simon Josefsson  <jas@extundo.com>
22453
22454         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
22455         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22456
22457 2005-05-10  Karl Berry  <karl@gnu.org>
22458
22459         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
22460         (from http://www.gnu.org/licenses).
22461         * doc/COPYING.LIB: also rename to COPYING.LESSER.
22462         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
22463         fdl.texi suffices.
22464
22465 2005-05-10  Karl Berry  <karl@gnu.org>
22466
22467         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
22468         (COPYING.DOC): remove.
22469
22470         * config/srclist-update: new FSF address.
22471
22472 2005-05-10  Derek Price  <derek@ximbiot.com>
22473
22474         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
22475         possible.
22476
22477 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22478             Bruno Haible  <bruno@clisp.org>
22479
22480         * modules/inet_ntop: New file.
22481         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22482         inet_ntop.
22483
22484 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22485             Bruno Haible  <bruno@clisp.org>
22486
22487         * m4/inet_ntop.m4: New file.
22488
22489 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22490             Bruno Haible  <bruno@clisp.org>
22491
22492         * lib/inet_ntop.h: New file.
22493         * lib/inet_ntop.c: New file, from glibc with modifications.
22494
22495 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
22496
22497         * modules/time_r (License): Change to LGPL.
22498         * modules/extensions (License): Change to LGPL.  Actually,
22499         the license is more permissive than that, but currently gnulib-tool
22500         doesn't know how to handle more-permissive licenses.
22501
22502         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
22503         Problem reported by Dave Love.
22504
22505 2005-05-08  Jim Meyering  <jim@meyering.net>
22506
22507         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
22508         blank.
22509
22510 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
22511
22512         * modules/argmatch (Depends-on): Add stdbool.
22513         * modules/backupfile (Depends-on): Likewise.
22514         * modules/chdir-long (Depends-on): Likewise.
22515         * modules/closeout (Depends-on): Likewise.
22516         * modules/cycle-check (Depends-on): Likewise.
22517         * modules/dirname (Depends-on): Likewise.
22518         * modules/fnmatch (Depends-on): Likewise.
22519         * modules/fsusage (Depends-on): Likewise.
22520         * modules/fwriteerror (Depends-on): Likewise.
22521         * modules/getcwd (Depends-on): Likewise.
22522         * modules/getloadavg (Depends-on): Likewise.
22523         * modules/hard-locale (Depends-on): Likewise.
22524         * modules/makepath (Depends-on): Likewise.
22525         * modules/mountlist (Depends-on): Likewise.
22526         * modules/nanosleep (Depends-on): Likewise.
22527         * modules/posixtm (Depends-on): Likewise.
22528         * modules/quotearg (Depends-on): Likewise.
22529         * modules/readtokens (Depends-on): Likewise.
22530         * modules/readtokens0 (Depends-on): Likewise.
22531         * modules/readutmp (Depends-on): Likewise.
22532         * modules/save-cwd (Depends-on): Likewise.
22533         * modules/strftime (Depends-on): Likewise.
22534         * modules/userspec (Depends-on): Likewise.
22535         * modules/utimecmp (Depends-on): Likewise.
22536         * modules/xgetcwd (Depends-on): Likewise.
22537         * modules/xnanosleep (Depends-on): Likewise.
22538         * modules/xstrtod (Depends-on): Likewise.
22539         * modules/yesno (Depends-on): Likewise.
22540
22541 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
22542
22543         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
22544         needless checks.
22545
22546 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22547
22548         Merge from coreutils.  Among other things,
22549         add bulletproofing for cases where stdin, stdout, or stderr are closed.
22550         * lib/fd-safer.c: New file.
22551         * lib/fcntl-safer.h, open-safer.c: Remove.
22552         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
22553         * lib/dup-safer.c: Include unistd-safer.h first.
22554         Don't include errno.h.
22555         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
22556         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
22557         * lib/file-type.c: Rely on file-type.h change.
22558         * lib/getloadavg.c: Include unistd-safer.h.
22559         (getloadavg): Use safer open.
22560         * lib/getusershell.c: Include "stdio-safer.h".
22561         (getusershell): Use safer fopen.
22562         * lib/long-options.c (long_options): Use NULL rather than 0.
22563         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
22564         'free'.
22565         * lib/modechange.c: Likewise.
22566         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
22567         (MODE_DONE): New constant.
22568         (struct mode_change): Remove 'next' member.
22569         (make_node_op_equals): New function; like the old one of the
22570         same name, except it allocates an array.
22571         (mode_compile, mode_create_from_ref): Use it.
22572         (mode_compile): Allocate result as an array, not a linked list.
22573         Parse octal string ourself, so that we catch mistakes like "+0".
22574         (mode_adjust): Arg is an array, not a linked list.
22575         * lib/modechange.c: Include stat-macros.h, xalloc.h.
22576         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
22577         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
22578         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
22579         Remove.  This is now stat-macros.h's job.
22580         (talloc): Remove.  All callers replaced by xalloc, so that
22581         our invokers don't have to worry about reporting memory failures.
22582         (make_node_op_equals): Remove.
22583         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
22584         New constants.
22585         (struct mode_change): Moved here from modechange.h.
22586         (mode_append_entry): Remove.
22587         (mode_compile): Remove MASKED_OPS arg, since it encouraged
22588         apps to have incorrect behavior.  Use simpler algorithm for head
22589         and tail.  Don't futz with umask; that's now the job of mode_adjust.
22590         Detect more invalid usages rather than having somewhat-random behavior.
22591         Don't insert an "a=" action, as that leads to incorrect behavior.
22592         (mode_compile, mode_create_from_ref): Return NULL on error instead
22593         of an enum, since now there's only one way to have an error.  All
22594         callers changed.
22595         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
22596         at the correct time.  Simplify calculation of "+u" and its ilk.
22597         Don't mishandle "+X".
22598         (mode_free): Remove "register" and localize decls.
22599         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
22600         (struct mode_change): Move to modechange.c; callers don't
22601         need to see this stuff.
22602         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
22603         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
22604         (mode_change, mode_adjust): Reflect the new signatures noted above.
22605         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
22606         that might redefine system include files.
22607         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
22608         (my_usleep): Use NULL rather than (void *) 0.
22609         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
22610         Use siginterrupt to specify that system calls should be interrupted.
22611         (rpl_nanosleep): Move initialization of suspended closer to call of
22612         my_usleep.
22613         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
22614         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
22615         (desirable_utmp_entry): New function.
22616         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
22617         using x2nrealloc, to simplify logic.
22618         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
22619         size calculation.  Do not assume utmp file is a regular file.
22620         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
22621         (READ_UTMP_CHECK_PIDS): New constant.
22622         * lib/save-cwd.c: Include unistd-safer.h.
22623         (save_cwd): Use fd_safer.
22624         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
22625         [!_LIBC] Include "stat-macros.h" instead.
22626         * lib/unistd-safer.h (fd_safer): New decl.
22627
22628 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22629
22630         * modules/getloadavg (Depends-on): Add unistd-safer.
22631         * modules/getusershell (Depends-on): Add stdio-safer.
22632         * modules/lstat (Depends-on): Remove xalloc.
22633         * modules/mkstemp (Depends-on): Add stat-macros.
22634         * modules/modechange (Depends-on): Remove xstrtol.
22635         Add stat-macros, xalloc.
22636         * modules/save-cwd (Depends-on): Add unistd-safer.
22637         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
22638         * modules/unistd-safer (Files): Add lib/fd-safer.c
22639         (Makefile.am): Remove lib_SOURCES.
22640
22641         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
22642         Remove fcntl-safer; unistd-safer supersedes it.
22643
22644 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22645
22646         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
22647         AC_HEADER_STAT.
22648         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
22649         (gl_PREREQ_CHOWN): Remove.
22650         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
22651         it.  Don't require AC_HEADER_STAT.
22652         (gl_PREREQ_LSTAT): Remove.
22653         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
22654         Don't require AC_HEADER_STAT.
22655         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
22656         (gl_PREREQ_RMDIR): Remove.
22657         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
22658         mention stat-macros.h or AC_HEADER_STAT, since we'll make
22659         the stat-macros module a prerequisite.
22660         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
22661         * m4/filemode.m4 (gl_FILEMODE): Likewise.
22662         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
22663         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
22664         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
22665         variable names.
22666         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
22667         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
22668         variable prefixes.
22669         * m4/fcntl-safer.m4: Remove.
22670         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
22671         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
22672         Invoke gl_PREREQ_FD_SAFER.
22673         (gl_PREREQ_FD_SAFER): New macro.
22674         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
22675         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
22676         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
22677         Remove duplicate call to AC_LIBOBJ(readutmp).
22678         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
22679
22680         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
22681         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
22682
22683 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
22684
22685         * MODULES.html.sh (Misc): Add byteswap.
22686
22687 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22688
22689         * modules/getcwd (Depends-on): Add extensions.
22690         * modules/openat (Depends-on): Likewise.
22691
22692 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22693
22694         * modules/byteswap: New file.
22695
22696 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22697
22698         * m4/byteswap.m4: New file.
22699
22700 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
22701
22702         * lib/byteswap_.h: New file.
22703
22704 2005-04-25  Karl Berry  <karl@gnu.org>
22705
22706         * m4/gettext.m4: Update from GNU gettext 0.14.4.
22707
22708 2005-04-25  Albert Chin  <china@thewrittenword.com>
22709
22710         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
22711         Toolkit C bug.
22712
22713 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
22714
22715         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
22716         (func_ln_if_changed) Remove forcibly for no error message
22717         in case file does not exist.
22718
22719 2005-04-19  Simon Josefsson  <jas@extundo.com>
22720
22721         * gnulib-tool (Options): Make --symlink mean --symbolic.
22722
22723 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
22724
22725         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
22726
22727 2005-04-16  Simon Josefsson  <jas@extundo.com>
22728
22729         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
22730
22731 2005-04-15  Simon Josefsson  <jas@extundo.com>
22732
22733         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
22734
22735 2005-04-15  Simon Josefsson  <jas@extundo.com>
22736
22737         * gnulib-tool: Rename --symlink to --symbolic.
22738
22739 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
22740
22741         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
22742         symbolic links to files instead of copying/moving.  Add --aux-dir,
22743         specifying directory relative --dir where auxiliary build tools
22744         are placed.
22745
22746 2005-04-14  Bruno Haible  <bruno@clisp.org>
22747
22748         * modules/allocsa (License): Change to LGPL.
22749         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
22750
22751 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
22752
22753         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
22754         that "UTC +1 second" continues to work.  Problem reported
22755         by Dmitry V. Levin.
22756         (relunit_snumber): New rule.
22757         (relunit): Use it.
22758
22759 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
22760
22761         * lib/getdate.y (universal_time_zone_table): New constant.
22762         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
22763         universal_time_zone_table.
22764         (lookup_zone): Prefer universal_time_zone_table to
22765         local_time_zone_table, so that "GMT" time stamps are allowed in
22766         London during the summer.  Problem reported by Ian Abbott.
22767
22768 2005-04-12  Jim Meyering  <jim@meyering.net>
22769
22770         * lib/human.c (humblock): Set *options even when returning due to
22771         xstrtoumax conversion failure.  Thanks to a used-uninitialized
22772         warning from gcc-4.
22773
22774 2005-04-09  Jim Meyering  <jim@meyering.net>
22775
22776         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
22777         -Wuninitialized: initialize tm0.tm_year.
22778
22779 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
22780
22781         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
22782         count, since there's no maximum.  All uses changed.
22783         Add member dsts_seen.
22784         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
22785         not being INT_MAX.
22786         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
22787         Use pc_rels_seen to decide whther a date is absolute.
22788
22789         * lib/getdate.y (number): Don't overwrite year.
22790         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
22791         check.
22792
22793 2005-04-02  Simon Josefsson  <jas@extundo.com>
22794
22795         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
22796         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
22797
22798 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
22799
22800         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
22801         where no absolute path name can be longer than PATH_MAX.
22802
22803 2005-03-27  Jim Meyering  <jim@meyering.net>
22804
22805         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
22806
22807 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
22808
22809         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
22810         "one's complement" -> "ones' complement" in comment, as per Knuth.
22811         "value of type" -> "type or expression" in comment.
22812         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
22813
22814 2005-03-26  Jim Meyering  <jim@meyering.net>
22815
22816         Comment nits.
22817         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
22818         Correct typos: s/or/of/.
22819
22820 2005-03-26  Jim Meyering  <jim@meyering.net>
22821
22822         * modules/check-include-files: Move to ../ and rename to...
22823         * check-module: ...this.
22824
22825 2005-03-25  Jim Meyering  <jim@meyering.net>
22826
22827         * modules/xvasprintf (Files): Add xalloc.h.
22828
22829 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
22830
22831         * modules/gettext (Files): config/config.rpath ->
22832         build-aux/config.rpath
22833         * modules/iconv (Files): Likewise.
22834         Problem reported by Oskar Liljeblad.
22835
22836 2005-03-23  Jim Meyering  <jim@meyering.net>
22837
22838         * modules/check-include-files: New script to check for
22839         missing dependencies, multiple includes, etc.
22840
22841         * modules/c-strtold (Depends-on): Add xalloc.
22842         * modules/c-strtod (Depends-on): Add xalloc.
22843         * modules/hash (Depends-on): Add xalloc.
22844         (Files): Remove lib/xalloc.h.
22845
22846         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
22847         * modules/userspec (Files): Add lib/inttostr.h.
22848
22849 2005-03-23  Jim Meyering  <jim@meyering.net>
22850
22851         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
22852
22853 2005-03-22  Jim Meyering  <jim@meyering.net>
22854
22855         * modules/stat-macros: New module.
22856         * modules/canonicalize, modules/euidaccess, modules/file-type,
22857         * modules/filemode, modules/lchown, modules/makepath,
22858         * modules/rmdir, modules/stat: Depend on new stat-macros module
22859         rather than listing lib/stat-macros.h manually.
22860         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
22861
22862 2005-03-22  Jim Meyering  <jim@meyering.net>
22863
22864         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
22865
22866 2005-03-22  Bruno Haible  <bruno@clisp.org>
22867
22868         * config/srclist.txt: Replace target directory 'config' with
22869         'build-aux'.
22870         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
22871         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
22872         ../build-aux/.
22873
22874 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
22875
22876         * modules/chdir-long (Depends-on): Add mempcpy.
22877
22878         * modules/acl, modules/backupfile, modules/c-strtod,
22879         modules/c-strtold, modules/canon-host, modules/canonicalize,
22880         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
22881         modules/exclude, modules/exitfail, modules/file-type,
22882         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
22883         modules/getdate, modules/getline, modules/getpagesize,
22884         modules/getpass, modules/getugroups, modules/group-member,
22885         modules/hard-locale, modules/hash, modules/human, modules/idcache,
22886         modules/inttostr, modules/long-options, modules/makepath,
22887         modules/md5, modules/memcasecmp, modules/memcoll,
22888         modules/modechange, modules/mountlist, modules/path-concat,
22889         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
22890         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
22891         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
22892         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
22893         modules/strftime, modules/strndup, modules/strverscmp,
22894         modules/timespec, modules/unlocked-io, modules/userspec,
22895         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
22896         modules/yesno:
22897         Remove lib_SOURCES line from Makefile.am section, as this is now
22898         done automatically by the corresponding Autoconf macro.
22899
22900 2005-03-21  Jim Meyering  <jim@meyering.net>
22901
22902         Changes imported from coreutils.
22903
22904         * lib/cycle-check.c: Don't include xalloc.h.
22905
22906         * lib/path-concat.c: Don't include assert.h.
22907         (path_concat): Remove assertion that would have triggered
22908         for ABASE starting with more than one slash.
22909         Reported by Andreas Schwab.
22910
22911         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
22912         properly when ABASE is an absolute file name.
22913         Correct the description of this function.
22914         Include <assert.h>.
22915         Add an assertion and a test driver.
22916         This fixes a bug introduced on 2004-07-02.
22917         Andreas Schwab reported the resulting failure of cp --parents:
22918         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
22919
22920 2005-03-21  Jim Meyering  <jim@meyering.net>
22921
22922         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
22923         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
22924
22925 2005-03-21  Jim Meyering  <jim@meyering.net>
22926         and  Paul Eggert  <eggert@cs.ucla.edu>
22927
22928         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
22929         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
22930         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
22931         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
22932         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
22933         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
22934         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
22935         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
22936         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
22937         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
22938         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
22939         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
22940         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
22941         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
22942         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
22943         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
22944         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
22945         for these modules.
22946
22947 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
22948
22949         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
22950         (which shouldn't happen), generate nothing instead of returning 0
22951         immediately, so that nstrftime (NULL, ...) doesn't return 0.
22952
22953 2005-03-16  Bruno Haible  <bruno@clisp.org>
22954
22955         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
22956         HAVE_LONGLONG_64BIT.
22957
22958 2005-03-16  Bruno Haible  <bruno@clisp.org>
22959
22960         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
22961         HAVE_LONGLONG_64BIT.
22962
22963 2005-03-16  Bruno Haible  <bruno@clisp.org>
22964
22965         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
22966         HAVE_LONGLONG_64BIT.
22967
22968 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
22969
22970         * lib/strftime.c (my_strftime): Prepend space to format so that we can
22971         reliably distinguish strftime failure from empty output on POSIX
22972         hosts.
22973
22974 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
22975
22976         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
22977         (iconv_string): Don't guess a size-zero buffer, as that might cause
22978         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
22979         result would be 'too large', where 'too large' is (heuristically)
22980         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
22981         overflow concerns.  This will prevent some unwanted malloc failures
22982         when the inputs are very large.
22983
22984 2005-03-15  Karl Berry  <karl@gnu.org>
22985
22986         * config/srclist.txt (config.rpath): from gettext.
22987         * config/config.rpath: update.
22988
22989 2005-03-15  Bruno Haible  <bruno@clisp.org>
22990
22991         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
22992         to 'negate'.
22993
22994         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
22995         variable.
22996
22997         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
22998         results.
22999
23000 2005-03-14  Simon Josefsson  <jas@extundo.com>
23001
23002         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
23003         <fx@gnu.org>.
23004
23005 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
23006
23007         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
23008         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
23009         intprops.h.
23010         * lib/strtol.c: Likewise.
23011
23012 2005-03-14  Jim Meyering  <jim@meyering.net>
23013
23014         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
23015         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
23016         to be nonzero so that we (and caller) can detect the difference
23017         between a valid zero-length expansion and an error return, even
23018         when the underlying strftime fails before writing anything into
23019         that location.
23020
23021 2005-03-14  Bruno Haible  <bruno@clisp.org>
23022
23023         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
23024         Update from GNU gettext 0.14.3.
23025
23026 2005-03-10  Jim Meyering  <jim@meyering.net>
23027
23028         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
23029
23030 2005-03-10  Jim Meyering  <jim@meyering.net>
23031
23032         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
23033         so that this module works on systems without fchdir.
23034
23035 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
23036
23037         Factor int-properties macros into a single file, except for
23038         glibc-related files.
23039         * lib/intprops.h: New file.
23040         * lib/getloadavg.c: Include it instead of limits.h.
23041         (INT_STRLEN_BOUND): Remove.
23042         * lib/human.c: Include intprops.h.
23043         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
23044         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
23045         302/1000.
23046         * lib/inttostr.h: Include intprops.h instead of limits.h.
23047         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
23048         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
23049         for consistency with intprops.h.
23050         (time_t_is_integer, twos_complement_arithmetic): Use them.
23051         * lib/sig2str.h: Include <signal.h>, intprops.h.
23052         (INT_STRLEN_BOUND): Remove.
23053         * lib/strftime.c (TYPE_SIGNED): Remove.
23054         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
23055         * lib/strtol.c: Adjust comments to match intprops.h.
23056         * lib/userspec.c: Include intprops.h.
23057         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
23058         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
23059         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
23060         instead of rolling our own expressions.
23061         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
23062
23063         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
23064         instead of int.
23065         (my_strftime): Do not mishandle years close to INT_MAX, by doing
23066         the right thing even if adding 1900 would overflow.  Similarly
23067         for tm_mon + 1 and tm_yday + 1.
23068         Make %Y always equivalent to %C%y, and similarly for %G and %g.
23069         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
23070         (DO_SIGNED_NUMBER): New macro.
23071         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
23072
23073 2005-03-07  Bruno Haible  <bruno@clisp.org>
23074
23075         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
23076
23077 2005-03-07  Bruno Haible  <bruno@clisp.org>
23078
23079         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
23080
23081 2005-03-04  Derek R. Price  <derek@ximbiot.com>
23082
23083         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
23084         (func_import): Only replace files via --import when they have actually
23085         changed.
23086
23087 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23088
23089         * m4/mmap-anon.m4: New file.
23090         * m4/pagealign_alloc.m4: New file.
23091
23092 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23093             Bruno Haible  <bruno@clisp.org>
23094
23095         * modules/pagealign_alloc: New file.
23096         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
23097
23098 2005-03-03  Derek R. Price  <derek@ximbiot.com>
23099             Bruno Haible  <bruno@clisp.org>
23100
23101         * lib/pagealign_alloc.h: New file.
23102         * lib/pagealign_alloc.c: New file.
23103
23104 2005-03-03  Bruno Haible  <bruno@clisp.org>
23105
23106         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
23107         Use an all-permissive copyright notice, recommended by RMS.
23108
23109 2005-03-02  Bruno Haible  <bruno@clisp.org>
23110
23111         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
23112         of AIX, the replacement has to be done only after <string.h> is
23113         included, therefore not in config.h. stpncpy.h does the replacement,
23114         and stpncpy.c uses it.
23115
23116 2005-03-02  Bruno Haible  <bruno@clisp.org>
23117
23118         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
23119         stpncpy.c uses it.
23120
23121 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23122
23123         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
23124         The workaround isn't strictly needed for POSIX conformance, and
23125         it's too much of a pain to configure and maintain.  We'll ask
23126         people to fix their kernels instead.
23127         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
23128         (NANOSLEEP_BUG_WORKAROUND): Remove.
23129         (xnanosleep): Remove the workaround.
23130
23131 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23132
23133         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
23134         Reported by Derek Price.
23135         (Include): Add "timespec.h".
23136
23137         * modules/xnanosleep (Depends-on): Remove gethrxtime.
23138
23139 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
23140
23141         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
23142         to detect nanosleep bug.
23143
23144 2005-03-01  Bruno Haible  <bruno@clisp.org>
23145
23146         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
23147
23148 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
23149
23150         * modules/gethrxtime: New file.
23151         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
23152         (Depends-on): Add gethrxtime.
23153         (configure.ac): Add gl_XNANOSLEEP.
23154         (Makefile.am): Remove lib_SOURCES line.
23155
23156 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
23157
23158         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
23159         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
23160
23161 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
23162
23163         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
23164         * lib/timespec.h (gettime): Return void, since it always
23165         succeeds now.  All uses changed.
23166         * lib/gettime.c (gettime) Likewise.
23167         [HAVE_NANOTIME]: Prefer nanotime.
23168         Assume gettimeofday succeeds, as POSIX requires.
23169         Assime time () succeeds, since other code already does.
23170         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
23171         (timespec_subtract): Remove.
23172         (NANOSLEEP_BUG_WORKAROUND): New constant.
23173         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
23174         things considerably.  Use it only on GNU/Linux hosts, since the
23175         workaround shouldn't be needed elsewhere.
23176
23177 2005-02-24  Bruno Haible  <bruno@clisp.org>
23178
23179         * modules/gettext (Files): Add m4/glibc2.m4.
23180
23181 2005-02-24  Bruno Haible  <bruno@clisp.org>
23182
23183         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
23184         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
23185         * m4/progtest.m4:
23186         Update from GNU gettext 0.14.2.
23187         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
23188
23189 2005-02-24  Bruno Haible  <bruno@clisp.org>
23190
23191         * lib/localcharset.c: Update from GNU gettext 0.14.2.
23192         * lib/config.charset: Update from GNU gettext 0.14.2.
23193
23194 2005-02-24  Bruno Haible  <bruno@clisp.org>
23195
23196         * lib/gettext.h: Update from GNU gettext 0.14.2.
23197
23198 2005-02-23  Simon Josefsson  <jas@extundo.com>
23199
23200         * m4/iconvme.m4: New file.
23201
23202 2005-02-23  Jim Meyering  <jim@meyering.net>
23203
23204         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
23205         change.
23206         Thanks to Bruno Haible for catching it.
23207
23208 2005-02-22  Simon Josefsson  <jas@extundo.com>
23209
23210         * modules/iconvme: New file.
23211
23212         * MODULES.html.sh: Add iconvme.
23213
23214 2005-02-22  Simon Josefsson  <jas@extundo.com>
23215
23216         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
23217
23218 2005-02-22  Simon Josefsson  <jas@extundo.com>
23219
23220         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
23221
23222 2005-02-22  Jim Meyering  <jim@meyering.net>
23223
23224         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
23225         s/ifndef/ifdef/.
23226
23227 2005-02-20  Neil Conway  <neilc@samurai.com>
23228
23229         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
23230         returned by OSX/Darwin if the specified buffer is not large
23231         enough for the hostname.
23232
23233 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23234
23235         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
23236         pass it to _help, otherwise the latter coredumps trying to
23237         dereference state.root_argp.
23238
23239 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23240
23241         * modules/chdir-long (Depends-on): Add memrchr.
23242         * modules/memrchr (Files): Add lib/memrchr.h.
23243         (Include): "memrchr.h".
23244
23245 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23246
23247         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
23248
23249 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
23250
23251         * lib/memrchr.h: New file.
23252         * lib/chdir-long.c: Include it.
23253         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
23254         Don't bother including stddef.h.
23255
23256 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
23257
23258         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
23259         inclusion.
23260         Include <sys/types.h>, for dev_t.
23261         (ME_DUMMY, ME_REMOTE): Move from here....
23262         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
23263         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
23264         Dmitry V. Levin.
23265         Include mountlist.h first, to test the interface.
23266
23267 2005-01-29  Bruno Haible  <bruno@clisp.org>
23268
23269         * lib/progname.c (program_name): Initialize.
23270         Needed when linking statically on MacOS X.
23271
23272 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23273
23274         Sync from coreutils.
23275         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
23276         (Depends-on): Add c-strtod.
23277         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
23278
23279 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23280
23281         Sync from coreutils.
23282         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
23283
23284         Remove files that are specific to coreutils.
23285         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
23286
23287 2005-01-28  Bruno Haible  <bruno@clisp.org>
23288
23289         * modules/javacomp: New file.
23290         * MODULES.html.sh (Java): Add javacomp.
23291
23292 2005-01-28  Bruno Haible  <bruno@clisp.org>
23293
23294         * m4/javacomp.m4: New file, from GNU gettext.
23295
23296 2005-01-28  Bruno Haible  <bruno@clisp.org>
23297
23298         * lib/javacomp.sh.in: New file, from GNU gettext.
23299         * lib/javacomp.h: New file, from GNU gettext.
23300         * lib/javacomp.c: New file, from GNU gettext.
23301
23302 2005-01-26  Simon Josefsson  <jas@extundo.com>
23303
23304         * lib/gai_strerror.c: Use GPL in header.
23305
23306 2005-01-26  Bruno Haible  <bruno@clisp.org>
23307
23308         * modules/javaexec: New file.
23309         * MODULES.html.sh (Java): Add javaexec.
23310
23311 2005-01-26  Bruno Haible  <bruno@clisp.org>
23312
23313         * m4/javaexec.m4: New file, from GNU gettext.
23314
23315 2005-01-26  Bruno Haible  <bruno@clisp.org>
23316
23317         * lib/javaexec.sh.in: New file, from GNU gettext.
23318         * lib/javaexec.h: New file, from GNU gettext.
23319         * lib/javaexec.c: New file, from GNU gettext.
23320
23321 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23322
23323         * modules/lchown (Depends-on): Remove lchown.h
23324
23325 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23326
23327         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
23328         must be defined if the header file was not found, in order
23329         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
23330
23331 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23332
23333         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
23334         initializers for struct pentry_state.
23335         (__argp_error): Check return value of __asprintf
23336         (__argp_failure): Translate error message
23337
23338         * lib/argp-parse.c: Removed braces around the expansion of N_()
23339
23340 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23341
23342         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
23343         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
23344         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
23345         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
23346         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
23347         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
23348         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
23349         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
23350         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
23351         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
23352         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
23353         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
23354         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
23355         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
23356         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
23357         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
23358         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
23359         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
23360         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
23361         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
23362         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
23363         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
23364         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
23365         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
23366         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
23367         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
23368         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
23369         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
23370         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
23371         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
23372         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
23373         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
23374         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
23375         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
23376         xstrtol.m4, xstrtoumax.m4, yesno.m4:
23377         Use an all-permissive copyright notice, recommended by RMS.
23378
23379 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
23380
23381         * modules/chdir-long (Depends-on): Remove mempcpy.
23382
23383 2005-01-21  Jim Meyering  <jim@meyering.net>
23384
23385         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
23386         same value as for Solaris 9.
23387
23388         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
23389         component length.  This included changing the parameter to be
23390         of type `char *' rather than `char const *'.
23391         * lib/chdir-long.h (chdir_long): Update prototype.
23392
23393         * lib/openat.c (fdopendir, fstatat): New functions.
23394         * lib/openat.h: Include headers required for use of DIR and struct
23395         stat.
23396         [AT_SYMLINK_NOFOLLOW]: Define.
23397         (fdopendir, fstatat): Add prototypes.
23398
23399 2005-01-21  Bruno Haible  <bruno@clisp.org>
23400
23401         * modules/classpath: New file.
23402         * MODULES.html.sh (Java): Add classpath.
23403
23404 2005-01-21  Bruno Haible  <bruno@clisp.org>
23405
23406         * lib/classpath.h: New file, from GNU gettext.
23407         * lib/classpath.c: New file, from GNU gettext.
23408
23409 2005-01-20  Simon Josefsson  <jas@extundo.com>
23410
23411         * modules/version-etc-fsf: New file.
23412
23413 2005-01-20  Simon Josefsson  <jas@extundo.com>
23414
23415         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
23416         * lib/version-etc.c: Remove version_etc_copyright.
23417         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
23418         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
23419
23420 2005-01-20  Simon Josefsson  <jas@extundo.com>
23421
23422         * lib/base64.h (isbase64): Add.
23423
23424         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
23425         using a unsigned prototype, don't inline.
23426         (base64_decode): Use it.
23427
23428 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23429
23430         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
23431         it.
23432
23433 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23434
23435         * lib/save-cwd.c (save_cwd): Remove code to support the case
23436         where fchdir is missing or flaky.
23437
23438 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
23439
23440         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
23441
23442 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
23443
23444         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
23445         AC_LIBSOURCES now does this.
23446         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
23447         with new ullong_max module.
23448
23449 2005-01-19  Bruno Haible  <bruno@clisp.org>
23450
23451         * modules/sh-quote: New file.
23452         * MODULES.html.sh (Executing programs): Add sh-quote.
23453
23454 2005-01-19  Bruno Haible  <bruno@clisp.org>
23455
23456         * lib/sh-quote.h: New file, from GNU gettext.
23457         * lib/sh-quote.c: New file, from GNU gettext.
23458
23459 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23460
23461         Merge from coreutils.
23462         * m4/ullong_max.m4: New file.
23463         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
23464         (gl_MACROS): Assume localeconv exists.
23465
23466 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23467
23468         Merge changes from coreutils, as described below in several
23469         changelogs dated today.
23470
23471         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
23472         (O_DIRECTORY): Remove; not needed here, since "." must be
23473         a directory.  All uses removed.
23474         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
23475         universal on Suns, and we also need to test for IRIX.
23476         Revamp code to use 'if' rather than '#if'.
23477         Avoid unnecessary comparison of cwd->desc to 0.
23478
23479         * lib/utimens.c (futimens): Robustify the previous patch, by checking
23480         for known valid error numbers rather than observed invalid ones.
23481
23482 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
23483
23484         * modules/ullong_max: New file.
23485
23486         * modules/chdir-long, modules/openat: New files.
23487         * modules/save-cwd (Depends-on): Depend on chdir-long.
23488         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
23489
23490 2005-01-18  Jim Meyering  <jim@meyering.net>
23491
23492         Merge from coreutils.
23493         * m4/chdir-long.m4, m4/openat.m4: New files.
23494         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
23495         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
23496         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
23497         is sane and DOES follow symlinks.  Besides, testing 20 different
23498         systems found no broken chown implementations.
23499         Prompted by a change in rsync's copy of this macro.
23500         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
23501
23502         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
23503
23504         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
23505         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
23506         NULL-means-set-to-current-time semantics.
23507         Remove temporary file immediately, rather than waiting
23508         for configure's at-exit trap code to do it.
23509
23510 2005-01-18  Jim Meyering  <jim@meyering.net>
23511
23512         * lib/version-etc.c (version_etc_copyright): Update copyright date.
23513
23514         * lib/utimens.c (futimens): Account for the fact that futimes
23515         can also fail with errno == ENOSYS or errno == ENOENT.
23516         Patch from Dmitry V. Levin.
23517
23518         Change the name of the robust chdir function from chdir to chdir_long.
23519         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
23520         (restore_cwd): Use chdir_long, not chdir.
23521         * lib/chdir-long.c: Renamed from chdir.c.
23522         * lib/chdir-long.h: Renamed from chdir.h.
23523         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
23524         Hurd.
23525
23526 2005-01-18  Bruno Haible  <bruno@clisp.org>
23527
23528         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
23529         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
23530         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
23531         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
23532         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
23533         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
23534         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
23535         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
23536         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
23537         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
23538         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
23539         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
23540         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
23541         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
23542         Use an all-permissive copyright notice, recommended by RMS.
23543
23544 2005-01-18  Bob Proulx  <bob@proulx.com>
23545
23546         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
23547         simplify offsetof() macro construct to avoid compile failure with
23548         native HP-UX 11.0 ANSI C compiler.
23549
23550 2005-01-17  Bruno Haible  <bruno@clisp.org>
23551
23552         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
23553         redundant because stpncpy.m4 takes care of it.
23554
23555 2005-01-17  Bruno Haible  <bruno@clisp.org>
23556
23557         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
23558
23559 2005-01-17  Bruno Haible  <bruno@clisp.org>
23560
23561         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
23562         used.
23563
23564 2005-01-17  Bruno Haible  <bruno@clisp.org>
23565
23566         * lib/fwriteerror.h (fwriteerror): Change specification to include
23567         fclose.
23568         * lib/fwriteerror.c: Include <stdbool.h>.
23569         (fwriteerror): At the end, close the file stream. Record whether
23570         stdout was already closed.
23571
23572 2005-01-17  Bruno Haible  <bruno@clisp.org>
23573
23574         * lib/execute.c (environ): Declare if needed.
23575         * lib/pipe.c (environ): Likewise.
23576         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
23577
23578 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23579
23580         * modules/argp: Depend on vsnprintf
23581
23582 2005-01-10  Jim Meyering  <jim@meyering.net>
23583
23584         * modules/closeout (Depends-on): Add atexit.
23585
23586 2005-01-06  Bruno Haible  <bruno@clisp.org>
23587
23588         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
23589
23590 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
23591
23592         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
23593         definitions to be after all include files, to avoid collisions.
23594         Problem reported by Bob Proulx.
23595
23596 2005-01-04  Jim Meyering  <jim@meyering.net>
23597
23598         Changes imported from coreutils.
23599         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
23600         as the mkstemp template, use a temporary directory and an
23601         8.3-friendly template to avoid trouble on systems like DJGPP.
23602         Reported by Juan M. Guerrero via Stepan Kasal.
23603         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
23604         close. Remove the temporary directory right away, rather than waiting
23605         for configure's at-exit trap code to do it.
23606         Suggestion from Stepan Kasal.
23607
23608 2005-01-01  Simon Josefsson  <jas@extundo.com>
23609
23610         * gnulib-tool: Print #include directives when --import'ing.
23611
23612 2004-12-28  Simon Josefsson  <jas@extundo.com>
23613
23614         * tests/test-base64.c: Include required header files.  Remove
23615         unused variables.
23616
23617 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23618
23619         * modules/error (Depends-on): Remove gettext.
23620
23621 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
23622
23623         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
23624         not needed.  This removes a dependency on the gettext module.
23625         [defined _LIBC]: Do not include <libintl.h>; not needed.
23626
23627 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
23628
23629         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
23630         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
23631
23632 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
23633
23634         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
23635         HAVE_DECL_STRTOLD.
23636
23637 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23638
23639         * modules/getdate (Depends-on): Remove alloca-opt.
23640
23641 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23642
23643         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
23644
23645 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
23646
23647         * lib/argp-parse.c: Include <stddef.h>.
23648         (alignof, alignto): New macros.
23649         (parser_init): Don't assume that void * is aligned sufficiently
23650         for struct option.
23651
23652         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
23653         need to extend the stack.
23654         (YYINITDEPTH): New macro, so that the initial stack isn't overly
23655         large.
23656
23657 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23658
23659         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
23660
23661 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
23662
23663         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
23664         (2004-10-24) change.  Apparently this was a false alarm.
23665
23666         * modules/getdate: Depend on alloca-opt, not alloca.
23667
23668 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
23669
23670         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
23671         Remove now-obsolete comment about AIX.
23672         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
23673         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
23674         (YYMAXDEPTH): New macro.
23675
23676 2004-12-18  Simon Josefsson  <jas@extundo.com>
23677
23678         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
23679
23680 2004-12-18  Bruno Haible  <bruno@clisp.org>
23681
23682         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
23683
23684 2004-12-18  Bruno Haible  <bruno@clisp.org>
23685
23686         * lib/fatal-signal.c (fatal_signals): Make non-const.
23687         (init_fatal_signals): New function.
23688         (uninstall_handlers, install_handlers): Ignore signals that were set to
23689         SIG_IGN.
23690         (at_fatal_signal): Call init_fatal_signals.
23691         (init_fatal_signal_set): Likewise. Ignore signals that were set to
23692         SIG_IGN.
23693         Reported by Paul Eggert.
23694
23695 2004-12-18  Bruno Haible  <bruno@clisp.org>
23696
23697         * doc/alloca.texi: New file.
23698         * doc/alloca-opt.texi: New file.
23699
23700 2004-12-17  Jim Meyering  <jim@meyering.net>
23701
23702         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
23703         Otherwise, install-sh could exit with improper exit status when
23704         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
23705
23706 2004-12-16  Simon Josefsson  <jas@extundo.com>
23707
23708         * tests/test-base64.c: Add license.
23709
23710 2004-12-15  Stepan Kasal  <address@hidden>
23711
23712         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
23713
23714 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
23715
23716         * modules/getcwd (Files): Add m4/d-ino.m4.
23717         Suggested by Mark D. Baushke.
23718
23719 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
23720
23721         * lib/getdate.y (textint): New member "negative".
23722         (time_zone_hhmm): New function.
23723         Expect 14 shift-reduce conflicts, not 13.
23724         (o_colon_minutes): New rule.
23725         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
23726         (yylex): Set the "negative" member of signed numbers.
23727
23728 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
23729
23730         * doc/getdate.texi (Time of day items, Time zone items):
23731         Describe new formats +00:00, UTC+00:00.
23732
23733 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
23734
23735         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
23736         spurious "-l"s.  Problem reported by Stepan Kasal.
23737
23738 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
23739
23740         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
23741         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
23742
23743 2004-12-04  Simon Josefsson  <jas@extundo.com>
23744
23745         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
23746         Vandoorselaere <yoann@prelude-ids.org>.
23747
23748 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23749
23750         Changes imported from coreutils.
23751         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
23752         exist.
23753         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
23754
23755 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23756
23757         Changes imported from coreutils.
23758         * lib/hard-locale.c: Assume <locale.h> exists.
23759         Include "strdup.h".
23760         (GLIBC_VERSION): New macro.
23761         (hard_locale): Assume setlocale exists.
23762         Rewrite to avoid #ifdef.
23763         Use strdup rather than malloc + strcpy.
23764         * lib/human.c: Assume <locale.h> exists.
23765         (human_readable): Assume localeconv exists.
23766
23767 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
23768
23769         * modules/hard-locale (Depends-on): Add strdup.
23770
23771 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
23772
23773         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
23774         convert T2, not T.  (Imported from libc.)
23775
23776 2004-11-30  Simon Josefsson  <jas@extundo.com>
23777
23778         * modules/restrict (License): Change to LGPL.
23779
23780 2004-11-30  Simon Josefsson  <jas@extundo.com>
23781
23782         * m4/restrict.m4: Add copyright and copying conditions.
23783
23784 2004-11-30  Simon Josefsson  <jas@extundo.com>
23785
23786         * m4/base64.m4: New file.
23787
23788 2004-11-30  Simon Josefsson  <jas@extundo.com>
23789
23790         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
23791         base64.
23792
23793         * tests/test-base64.c: New file.
23794
23795         * modules/base64: New file.
23796
23797 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
23798
23799         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
23800         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
23801
23802         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
23803
23804 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
23805
23806         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
23807         (__getcwd.c): Don't restore errno; glibc doesn't.
23808         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
23809         first, falling back to our code only if its results look suspicious.
23810         Ensure that the resulting buffer is only as large as necessary.
23811
23812         * lib/readutmp.c: Include readutmp.h first.
23813         Include <errno.h>, since readutmp.h no longer does that.
23814         * lib/readutmp.h: Don't include <errno.h>,
23815         <sys/param.h>, <time.h>; not needed to establish interface.
23816         (errno): Remove decl.
23817         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
23818         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
23819         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
23820
23821 2004-11-28  Simon Josefsson  <jas@extundo.com>
23822
23823         * lib/base64.h, base64.c: New file.
23824
23825 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
23826
23827         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
23828
23829 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
23830
23831         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
23832         (Depends-on): Remove pathmax, same.  Add mempcpy.
23833         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
23834         (Makefile.am): Append getcwd.h to lib_SOURCES.
23835         (Include): Add getcwd.h.
23836         (Maintainer): Change from Jim Meyering to "all, glibc",
23837         since getdate now uses intended-for-glibc code.
23838         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
23839         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
23840
23841 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
23842
23843         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
23844         HP's ANSI C compiler.
23845         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
23846         Declaring int functions causes warnings on some modern systems and
23847         shouldn't be needed to compile on ancient ones.
23848         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
23849         defined.
23850
23851         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
23852         with the following changes.
23853         (__set_errno): Parenthesize properly.
23854         Include <stdbool.h>.
23855         (MIN, MAX, MATCHING_INO): New macros.
23856         (__getcwd): Define with prototype, not K&R form.
23857         Use heuristics to allocate default buffer on stack if possible.
23858         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
23859         behavior, and to avoid the PATH_MAX limit when computing
23860         ../../../../...
23861         Use MATCHING_INO to compare inode number to file.
23862         Check for arithmetic overflow in size calculations.
23863         Fix bug in reallocation of dot array that caused getcwd to fail
23864         on directories nested deeper than 75.
23865         Be more careful about saving errno on error.
23866         Do not use realloc; use only free+malloc, as this is a bit
23867         more flexible and avoids a needless copy operation.
23868         Do not inspect st_dev and st_ino for symbolic links; POSIX
23869         doesn't specify the latter.
23870         Check for closedir errors.
23871         Avoid needless casts.
23872         Use "#ifdef weak_alias" around weak_alias, to be like other
23873         glibc code.
23874         The following changes to getcwd.c have effect only when used in
23875         gnulib; they have no effect inside glibc proper.
23876         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
23877         as alloca isn't used.
23878         (alloca, __alloca): Likewise.
23879         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
23880         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
23881         unconditionally, as gnulib assumes C89 or better.
23882         Do not include <sys/param.h>.
23883         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
23884         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
23885         better.
23886         (NULL) [!defined NULL]: Remove; we assume C89 or better.
23887         Include <dirent.h> in a way that is compatible with modern Autoconf.
23888         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
23889         New macros, if not already defined.
23890         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
23891         Use "_LIBC", not "defined _LIBC", for consistency.
23892         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
23893         a mempcpy module.
23894         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
23895         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
23896         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
23897         credit only to Jim Meyering and adjust the copyright dates.
23898         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
23899         <stdlib.h>, <unistd.h>, "pathmax.h".
23900         Instead, include "xgetcwd.h" (first) and "getcwd.h".
23901         (INITIAL_BUFFER_SIZE): Remove.
23902         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
23903
23904 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
23905
23906         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
23907         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
23908         Use the _ONCE methods, for efficiency.
23909         Check for fcntl.h.  In test program, include <errno.h>
23910         and <fcntl.h> if available.  Remove old K&R cruft from
23911         test program.  Check for common errors in GNU/Linux,
23912         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
23913         don't do AC_LIBOBJ, as that's getcwd.m4's job.
23914         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
23915         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
23916         name accordingly.
23917         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
23918         accommodate new getcwd.c.
23919         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
23920         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
23921         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
23922         that's all we need now.
23923
23924 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23925
23926         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
23927         argp-parse.c depends on getopt internals, that means we should
23928         always use our getopt, to be on the safe side.
23929         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
23930         order not to spoil the result of an eventual previous invocation
23931         of gl_GETOPT_SUBSTITUTE.
23932
23933 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
23934
23935         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
23936         redefinition warnings. To avoid them, include the defines
23937         in `#if !defined __need_getopt ... #endif'. The only place
23938         where __getopt_argv_const is used is in definitions
23939         of getopt_long and getopt_long_only below, which are as well
23940         protected by `#ifndef __need_getopt'.
23941         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
23942         __need_getopt after including <stdio.h> and <unistd.h> These
23943         headers might have defined it.
23944
23945 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
23946
23947         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
23948
23949 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
23950
23951         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
23952         (futimens): New function, which uses futimes if available.
23953         (futimens, utimens): Support timespec==NULL, with same semantics
23954         as utime and utimens.
23955         * lib/utimens.h (futimens): New decl.
23956
23957 2004-11-23  Jim Meyering  <jim@meyering.net>
23958
23959         * lib/getopt_.h: Remove trailing blanks.
23960
23961 2004-11-23  Jim Meyering  <jim@meyering.net>
23962
23963         * lib/__fpending.c: Add comment.
23964
23965 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
23966
23967         * modules/canonicalize (Depends-on): Add xreadlink.
23968         Problem reported by James Youngman.
23969
23970 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
23971
23972         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
23973         New macros.
23974         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
23975         optopt): Use them instead of invoking ## directly; otherwise, the
23976         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
23977
23978 2004-11-19  Bruno Haible  <bruno@clisp.org>
23979
23980         * lib/strtok_r.c: Move comments from here...
23981         * lib/strtok_r.h: ... to here.
23982
23983 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23984
23985         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
23986         implementations that mishandle size_t overflow.
23987
23988 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23989
23990         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
23991         might fail.  Problem reported by Yoann Vandoorselaere.
23992         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
23993         implementations that mishandle size_t overflow.
23994
23995 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23996
23997         * modules/canon-host (Depends-on): Add strdup.
23998
23999 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24000
24001         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
24002
24003 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24004
24005         * lib/canon-host.c: Include "strdup.h".
24006         (canon_host): Use getaddrinfo if available, so that IPv6 works.
24007         Use strdup instead of malloc/strcpy to duplicate strings.
24008
24009         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
24010         (human_space_before_unit): New constant.
24011         * lib/human.c (human_readable): Support it.
24012
24013         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
24014         (xgetcwd): Set errno correctly when failing.
24015         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
24016         the failure is actually due to a PATH_MAX problem.
24017
24018         Further getopt changes to make it more likely that glibc will
24019         buy the changes back.
24020         * lib/getopt.c (POSIXLY_CORRECT): New constant.
24021         (getopt): Use it, so to preserve glibc semantic
24022         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
24023         when compiling for libc.
24024         * lib/getopt_.h (__getopt_argv_const): Bring it back.
24025         (getopt_long, getopt_long_only): Use it.
24026
24027         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
24028         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
24029         (getopt): Argv is now char * const *, as per standard.
24030         (_getopt_internal_r, _getopt_internal): Argv is now char **,
24031         not char *__getopt_argv_const *.
24032         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
24033         _getopt_long_only_r): Likewise.
24034         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
24035         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
24036         _getopt_long_r, _getopt_long_only_r): Likewise.
24037         * lib/getopt_.h (__getopt_argv_const): Remove.
24038         (getopt): Argv is now char * const *, as per standard.
24039
24040         * lib/getdate.y (tORDINAL): New token.
24041         (day, relunit): Allow it for relative times.
24042         (relative_time_table): Use tORDINAL for ordinals.
24043
24044 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
24045
24046         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
24047         Document that "second" isn't allowed as an ordinal number.
24048
24049 2004-11-16  Jim Meyering  <jim@meyering.net>
24050
24051         * modules/closeout (Depends-on): Add fpending.
24052
24053 2004-11-15  Jim Meyering  <jim@meyering.net>
24054
24055         * lib/closeout.c: Include "__fpending.h" once again.
24056         Include <stdbool.h>.
24057         (close_stdout): Don't fail just because stdout was closed initially,
24058         since some programs don't write to stdout in the normal course of
24059         operation (other than --version and --help), and we don't want this
24060         function to make e.g. `touch file >&-' fail.
24061         But do fail if it was closed and someone has tried to write to it.
24062         E.g., `printf foo >&-' must fail.
24063
24064 2004-11-13  Jim Meyering  <jim@meyering.net>
24065
24066         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
24067
24068 2004-11-12  Simon Josefsson  <jas@extundo.com>
24069
24070         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
24071         small doc fix is still pending.
24072
24073 2004-11-11  Simon Josefsson  <jas@extundo.com>
24074
24075         * modules/strtok_r: New file.
24076
24077         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24078         strtok_r.
24079
24080 2004-11-11  Simon Josefsson  <jas@extundo.com>
24081
24082         * m4/strtok_r.m4: New file.
24083
24084         * m4/getopt.m4: Replace opterr.
24085
24086 2004-11-11  Simon Josefsson  <jas@extundo.com>
24087
24088         * lib/strtok_r.h, strtok_r.c: New file.
24089
24090 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
24091
24092         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
24093         of replacing opterr, getopt, etc.  This should handle the
24094         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
24095
24096 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
24097
24098         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
24099         we can stop lying to compilers about the constness of argv when we
24100         are compiled outside glibc.
24101         (getopt, getopt_long, getopt_long_only): Use it.
24102         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
24103         _getopt_internal, getopt): Likewise.
24104         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
24105         _getopt_long_only_r): Likewise.
24106         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
24107         _getopt_long_r, _getopt_long_only_r): Likewise.
24108
24109         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
24110         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
24111         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
24112         the other external symbols.
24113         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
24114         declaration, since the above renaming now works around collisions.
24115
24116 2004-11-11  Jim Meyering  <jim@meyering.net>
24117
24118         * lib/linebreak.c: Remove trailing blanks.
24119         * lib/alloca_.h: Likewise.
24120         * lib/acosl.c: Likewise.
24121         * lib/euidaccess.c: Likewise.
24122         * lib/allocsa.h: Likewise.
24123
24124 2004-11-10  Simon Josefsson  <jas@extundo.com>
24125
24126         * m4/getaddrinfo.m4: New file.
24127
24128 2004-11-10  Simon Josefsson  <jas@extundo.com>
24129
24130         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
24131
24132 2004-11-10  Simon Josefsson  <jas@extundo.com>
24133
24134         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24135         getaddrinfo.
24136
24137         * modules/getaddrinfo: New file.
24138
24139 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24140
24141         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
24142
24143 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
24144
24145         * lib/mktime.c (SHR): New macro, which is a portable
24146         substitute for >> that should work even on Crays.
24147         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
24148         Problem reported by Mark D. Baushke in
24149         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
24150         * lib/getdate.y (SHR): Likewise.
24151         (tm_diff): Use it.
24152         * lib/strftime.c (SHR): Likewise.
24153         (tm_diff): Use it.
24154         * lib/quotearg.c (struct quoting_options): Use unsigned int for
24155         quote_these_too, so that right shifts are well defined.  All uses
24156         changed.
24157
24158 2004-11-10  Jim Meyering  <jim@meyering.net>
24159
24160         Ensure that no close failure goes unreported.
24161         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
24162         return early when it seems there's nothing to flush.
24163         Don't include __fpending.h.
24164
24165 2004-11-10  Jim Meyering  <jim@meyering.net>
24166
24167         * modules/closeout (Depends-on): Remove fpending.
24168
24169 2004-11-10  Jim Meyering  <jim@meyering.net>
24170
24171         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
24172
24173 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
24174
24175         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
24176         gl_FUNC_STRFTIME.
24177         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
24178         and AC_REQUIRE when possible, to avoid duplicate checks.
24179         Check for <wchar.h>.
24180
24181 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
24182
24183         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
24184
24185 2004-11-09  Bruno Haible  <bruno@clisp.org>
24186
24187         * m4/sockpfaf.m4: New file.
24188
24189 2004-11-05  Bruno Haible  <bruno@clisp.org>
24190
24191         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
24192         Reported by Mark D. Baushke <mdb@cvshome.org>.
24193
24194 2004-11-04  Bruno Haible  <bruno@clisp.org>
24195
24196         2004-09-11  Bruno Haible  <bruno@clisp.org>
24197                 * allocsa.valgrind: New file.
24198         2004-02-06  Bruno Haible  <bruno@clisp.org>
24199                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
24200                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
24201                 Reported by Christopher Seip <chris.seip@hp.com>.
24202
24203 2004-11-04  Bruno Haible  <bruno@clisp.org>
24204
24205         * modules/allocsa (Files): Add lib/allocsa.valgrind.
24206         (Makefile.am): Distribute it.
24207
24208 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
24209
24210         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
24211         with errno == ERANGE if the buffer is too small.
24212         Problem reported by Mark D. Baushke.
24213
24214 2004-11-03  Albert Chin  <china@thewrittenword.com>
24215             Paul Eggert  <eggert@cs.ucla.edu>
24216
24217         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
24218         equivalent, substitute $ac_type for equivalent type rather than
24219         blindly using uint32_t *always* which won't work if uint32_t is not
24220         available.  Define _UINT32_T to work around typedef of uint32_t if
24221         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
24222         2.5.1.
24223
24224 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24225
24226         * m4/jm-macros.m4: Sync from coreutils.
24227         (gl_MACROS): Check for mbrlen, for pathchk.
24228         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
24229
24230 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24231
24232         * lib/xreadlink.c (MAXSIZE): New macro.
24233         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
24234         size does not exceed MAXSIZE.  Avoid cast.
24235         As suggested by Mark D. Baushke in
24236         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
24237         if readlink fails with buffer size just under MAXSIZE, try again
24238         with MAXSIZE.
24239
24240 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
24241
24242         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
24243
24244 2004-11-02  Derek R. Price  <derek@ximbiot.com>
24245         and  Paul Eggert  <eggert@cs.ucla.edu>
24246
24247         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
24248         (get_date): Overparenthesize to avoid GCC warning.
24249
24250 2004-11-02  Bruno Haible  <bruno@clisp.org>
24251
24252         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
24253         returns void.
24254
24255 2004-11-02  Bruno Haible  <bruno@clisp.org>
24256
24257         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
24258         function returns void.
24259
24260 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
24261
24262         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
24263         fflush_unlocked, flockfile, funlockfile, funlockfile,
24264         fputs_unlocked, putc_unlocked.
24265
24266 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
24267
24268         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
24269         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
24270         already declared.
24271
24272 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24273
24274         * modules/getdate (Files): Add doc/getdate.texi.
24275         (Depends-on): Add setenv, xalloc.
24276
24277 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24278
24279         * lib/getdate.y: Add support for TZ="foo" within a date string.
24280         Fix some bugs near time_t boundaries.  Reject dates with
24281         out-of-range components, e.g., "Sept 31".
24282         Include <stdlib.h>, "setenv.h", "xalloc.h".
24283         (ISDIGIT_LOCALE): Remove; unused.
24284         Note that the TZ and time functions used here are not reentrant.
24285         (mktime_ok, get_tz): New functions.
24286         (TZBUFSIZE): New constant.
24287         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
24288         This requires that we sometimes generate our own TZ="XXX..." setting.
24289
24290 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
24291
24292         * doc/getdate.texi: New file, from coreutils with modifications for
24293         the new TZ parsing.
24294
24295 2004-10-27  Derek R. Price  <derek@ximbiot.com>
24296
24297         * lib/mktime.c (not_equal_tm): Remove redundant check.
24298
24299 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24300
24301         * modules/regex (lib_SOURCES): Add regex.c.
24302         Reported by James Youngman in
24303         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
24304
24305 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
24306
24307         * lib/getdate.y: Use Bison 1.875 features, and some minor
24308         code cleanups.  This change does not affect semantics.
24309         Don't include <stdlib.h>; no longer needed.
24310         Don't include unlocked-io.h; only the "#if TEST" code uses
24311         stdio, and performance isn't crucial there.
24312         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
24313         Bison 1.875 features as described below.
24314         All uses of "PC." replaced by "pc->".
24315         (YYSTYPE): Add a forward declaration.
24316         (yylex, yyerror): Use full prototypes in forward decls.
24317         Use "%pure-parser" rather than obsolescent "%pure_parser".
24318         Use %parse-param and %lex-param instead of obsolescent
24319         YYPARSE_PARAM and YYLEX_PARAM.
24320         (meridian_table, month_and_day_table, time_units_table,
24321         relative_time_table, time_zone_table, military_table,
24322         lookup_zone, lookup_word, get_date):
24323         Use NULL instead of 0 where appropriate.
24324         (to_hour): Avoid abort (), to avoid a dependency on
24325         stdlib.h.
24326         (yyerror, yylex): Now accepts parser_control * arg.
24327         (main) [TEST]: Use '\0' rather than 0 for char.
24328
24329 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
24330
24331         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
24332
24333 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
24334
24335         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
24336         It's now the caller's responsibility to handle the case where
24337         !HAVE_GETPAGESIZE && !defined getpagesize.
24338
24339         * lib/mktime.c (leapyear): Arg is long int, not int.
24340
24341 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
24342
24343         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
24344
24345 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
24346
24347         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
24348         missing.  Problem reported by James Youngman.
24349
24350 2004-10-16  Simon Josefsson  <jas@extundo.com>
24351
24352         * gnulib-tool: Fix comments.  Fix parse problem.
24353         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
24354
24355 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
24356
24357         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
24358         implementation of getopt_long.  Problem reported by Alexander Taler in:
24359         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
24360
24361 2004-10-15  Bruno Haible  <bruno@clisp.org>
24362
24363         * gnulib-tool: Untabify. Initialize supplied_libname.
24364         (func_usage): More homogenous output.
24365         (func_modules_transitive_closure, func_modules_to_filelist,
24366         func_emit_lib_Makefile_am): New functions.
24367         (func_import): New function, extracted from big case statement. Use
24368         func_get_license, func_modules_transitive_closure,
24369         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
24370         opt_lgpl. Don't use test -a, as it's not portable.
24371         (func_create_testdir): Use func_modules_transitive_closure,
24372         func_modules_to_filelist, func_emit_lib_Makefile_am.
24373
24374 2004-10-15  Bruno Haible  <bruno@clisp.org>
24375
24376         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
24377
24378 2004-10-15  Bruno Haible  <bruno@clisp.org>
24379
24380         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
24381         the portions belonging to each module.
24382         Suggested by Derek Robert Price <derek@ximbiot.com>.
24383
24384 2004-10-12  Simon Josefsson  <jas@extundo.com>
24385
24386         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
24387         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
24388         to real functions.
24389
24390 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24391
24392         * modules/vsnprintf: New file.
24393
24394 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24395
24396         * m4/vsnprintf.m4: New file.
24397
24398 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24399
24400         * lib/vsnprintf.h: New file.
24401         * lib/vsnprintf.c: New file.
24402
24403 2004-10-11  Bruno Haible  <bruno@clisp.org>
24404
24405         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
24406         vsnprintf.
24407
24408 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24409
24410         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
24411
24412 2004-10-07  Bruno Haible  <bruno@clisp.org>
24413
24414         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
24415         fits into the provided buffer.
24416
24417 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
24418
24419         * lib/diacrit.c, diacrit.h: Add GPL notice.
24420
24421         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
24422         notice.
24423         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
24424         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
24425         This avoids a potential constant-folding bug.
24426
24427 2004-10-05  Bruno Haible  <bruno@clisp.org>
24428
24429         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
24430         for the declaration of strsep.
24431
24432 2004-10-05  Bruno Haible  <bruno@clisp.org>
24433
24434         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
24435
24436 2004-10-04  Simon Josefsson  <jas@extundo.com>
24437
24438         * modules/memmem: New file.
24439         * tests/test-memmem.c: New file.
24440         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
24441
24442 2004-10-04  Simon Josefsson  <jas@extundo.com>
24443
24444         * m4/memmem.m4: New file.
24445
24446 2004-10-04  Simon Josefsson  <jas@extundo.com>
24447
24448         * lib/memmem.h: New file.
24449         * lib/memmem.c: New file, taken from glibc.
24450
24451 2004-10-04  Simon Josefsson  <jas@extundo.com>
24452
24453         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
24454         '#ifdef USE_UNLOCKED_IO'.
24455
24456 2004-10-04  Simon Josefsson  <jas@extundo.com>
24457
24458         * config/srclist.txt: Add memmem from glibc.
24459
24460 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24461
24462         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
24463
24464         * modules/argmatch, modules/argp, modules/closeout, modules/error,
24465         modules/exclude, modules/getdate, modules/getline,
24466         modules/getndelim2, modules/getpass, modules/getpass-gnu,
24467         modules/getusershell, modules/linebuffer, modules/md5,
24468         modules/mountlist, modules/posixtm, modules/readtokens,
24469         modules/readutmp, modules/regex, modules/sha1,
24470         modules/version-etc, modules/yesno:
24471         Remove dependency on unlocked-io.
24472
24473 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24474
24475         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
24476
24477         * m4/unlocked-io.m4: Add copyright notice.
24478         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
24479
24480 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24481
24482         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
24483         * lib/xmalloc.c (xmemdup): Likewise.
24484         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
24485         XFREE): Remove these long-obsolescent macros.
24486         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
24487         * lib/xstrdup.c: Remove.
24488
24489         * lib/regex.c (re_comp): Cast gettext return value to char *,
24490         Problem reported by Martin Neitzel via Mark D. Baushke.
24491
24492 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
24493
24494         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
24495         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
24496         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
24497         regex.c, sha1.c, version-etc.c, yesno.c:
24498         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
24499         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
24500         the includer's responsibility.
24501
24502         Sync from coreutils.
24503
24504         * lib/modechange.c (mode_compile): Don't decrement a pointer that
24505         points to the start of a string, as the C Standard says the
24506         resulting behavior is undefined.
24507
24508         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
24509         simple -> simple_backups, numbered_existing ->
24510         numbered_existing_backups, numbered -> numbered_backups
24511         to avoid shadowing problems.  All uses changed.
24512         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
24513         * lib/backupfile.c (check_extension, numbered_backup):
24514         Rename locals to avoid shadowing 'basename'.
24515         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
24516         once.
24517
24518         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
24519         * lib/.cvsignore: Add getopt.h.
24520
24521 2004-10-04  Bruno Haible  <bruno@clisp.org>
24522
24523         * modules/README: New file.
24524         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
24525         not a module.
24526
24527 2004-10-02  Jim Meyering  <jim@meyering.net>
24528
24529         * lib/dirfd.h, getpagesize.h: Add copyright notice.
24530
24531 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24532
24533         * modules/strsep: New file.
24534
24535 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24536
24537         * m4/strsep.m4: New file.
24538
24539 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
24540
24541         * lib/strsep.h: New file.
24542         * lib/strsep.c: New file.
24543
24544 2004-10-01  Simon Josefsson  <jas@extundo.com>
24545
24546         * lib/snprintf.c (snprintf): Handle size==0.
24547
24548 2004-10-01  Simon Josefsson  <jas@extundo.com>
24549             Bruno Haible  <bruno@clisp.org>
24550
24551         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
24552         (snprintf): Declare 'args'.
24553
24554 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
24555
24556         * lib/snprintf.c: Remove comments as to why each header is needed.
24557
24558 2004-10-01  Bruno Haible  <bruno@clisp.org>
24559
24560         * MODULES.html.sh: Add strsep.
24561
24562 2004-09-30  Simon Josefsson  <jas@extundo.com>
24563
24564         * modules/snprintf: New file.
24565
24566 2004-09-30  Simon Josefsson  <jas@extundo.com>
24567
24568         * m4/snprintf.m4: New file.
24569
24570 2004-09-30  Simon Josefsson  <jas@extundo.com>
24571
24572         * lib/snprintf.h, lib/snprintf.c: New files.
24573
24574 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
24575
24576         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
24577         (hol_entry_help): Never translate an empty string.
24578         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
24579         * lib/argp.h (OPTION_NO_TRANS): New option.
24580
24581 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24582
24583         * modules/argp (Maintainer): Replace Simon Josefsson
24584         by Sergey Poznyakoff.
24585
24586 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24587
24588         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
24589         changes merged back into glibc.
24590
24591 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
24592
24593         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
24594
24595 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
24596
24597         * lib/xvasprintf.c: Include xalloc.h.
24598         (xvasprintf): Use xalloc_die, not xmalloc_die.
24599
24600 2004-09-29  Bruno Haible  <bruno@clisp.org>
24601
24602         * modules/alloca-opt: New file, derived from modules/alloca.
24603         * modules/allocsa: Depend on alloca-opt instead of alloca.
24604         * modules/setenv: Likewise.
24605         * modules/vasnprintf: Likewise.
24606         * MODULES.html.sh: Add alloca-opt.
24607
24608 2004-09-28  Simon Josefsson  <jas@extundo.com>
24609
24610         * gnulib-tool: New parameter --lgpl, to asseert that modules are
24611         LGPL, and to replace license template from GPL to LGPL.
24612
24613 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
24614
24615         * modules/dummy: Change license to LGPL.
24616
24617 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
24618
24619         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
24620
24621 2004-09-24  Simon Josefsson  <jas@extundo.com>
24622
24623         * modules/minmax (License): Change from GPL to LGPL.
24624
24625 2004-09-23  Simon Josefsson  <jas@extundo.com>
24626
24627         * gnulib-tool (--import): Typo.
24628
24629 2004-09-23  Simon Josefsson  <jas@extundo.com>
24630
24631         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
24632
24633 2004-09-22  Bruno Haible  <bruno@clisp.org>
24634
24635         * modules/*: Add 'License' field.
24636         * gnulib-tool: Accept --extract-license option.
24637         (func_get_license): New function.
24638
24639 2004-09-21  Bruno Haible  <bruno@clisp.org>
24640
24641         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
24642         Reported by Simon Josefsson.
24643
24644 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24645
24646         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
24647         gl_AC_TYPE_LONG_LONG.
24648
24649 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
24650
24651         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
24652
24653 2004-09-18  Simon Josefsson  <jas@extundo.com>
24654         and  Paul Eggert  <eggert@cs.ucla.edu>
24655
24656         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
24657         calls with autoreconf.  Define GL_LIB.
24658
24659 2004-09-14  Karl Berry  <karl@gnu.org>
24660
24661         * config/srclist.txt: unsync setenv.c, sigh.
24662
24663 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24664
24665         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
24666         Problem reported by Bruno Haible in:
24667         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
24668
24669 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24670
24671         * config/srclist.txt: Comment out argp-pvh.c.
24672
24673 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
24674
24675         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
24676         in case some system header has #define'd it.  Problem reported by
24677         Soeren D. Schulze in
24678         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
24679
24680 2004-09-09  Karl Berry  <karl@gnu.org>
24681
24682         * regex.[ch]: delete from the root.  These were supposed to be
24683                 synced with emacs cvs, but this has not happened for about
24684                 a year, and anyway nothing else uses emacs regex.[ch].
24685                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
24686                 lib/regex[.ch] is untouched.
24687
24688 2004-09-09  Bruno Haible  <bruno@clisp.org>
24689
24690         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
24691
24692 2004-09-09  Bruno Haible  <bruno@clisp.org>
24693
24694         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
24695         modifications.
24696         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
24697
24698 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
24699
24700         * modules/xvasprintf: New file.
24701         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
24702
24703 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
24704
24705         * lib/xvasprintf.h: New file.
24706         * lib/xvasprintf.c: New file.
24707         * lib/xasprintf.c: New file.
24708
24709 2004-09-08  Bruno Haible  <bruno@clisp.org>
24710
24711         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
24712
24713 2004-09-08  Bruno Haible  <bruno@clisp.org>
24714
24715         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
24716         length is > INT_MAX.
24717         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
24718         more.
24719
24720 2004-09-08  Bruno Haible  <bruno@clisp.org>
24721
24722         * lib/stdint_.h: New file, taken from GNU clisp.
24723
24724 2004-09-08  Bruno Haible  <bruno@clisp.org>
24725             Oskar Liljeblad  <oskar@osk.mine.nu>
24726
24727         * modules/stdint: New file.
24728         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
24729
24730 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24731
24732         Import from coreutils.
24733         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
24734         strings on unbounded length.  alloca's performance benefits aren't
24735         that important here.
24736         (V_STRDUP): Remove.
24737         (parse_with_separator): New function, with most of the internals
24738         of the old parse_user_spec.  Allow user to omit both user and group,
24739         for compatibility with FreeBSD.
24740         Clone only the user name, not the entire spec.
24741         Do not set *uid, *gid unless entirely successful.
24742         Avoid memory leak in some failing cases.
24743         Fix regression for USER.GROUP reported by Dmitry V. Levin in
24744         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
24745         (parse_user_spec): Rewrite to use parse_with_separator.
24746
24747 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24748
24749         * modules/userspec: Don't depend on alloca.
24750
24751 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
24752
24753         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
24754
24755 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
24756
24757         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
24758         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
24759         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
24760
24761 2004-08-16  Simon Josefsson  <jas@extundo.com>
24762
24763         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
24764         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
24765         Add --dry-run for --import.
24766         Let user provided command line parameters override configure.ac
24767         settings.
24768
24769 2004-08-12  Simon Josefsson  <jas@extundo.com>
24770
24771         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
24772         as discussed with Paul Eggert in threads rooted at
24773         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
24774         and
24775         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
24776         Before, the test was empty, and relied on ELIDE_CODE in source
24777         code.)
24778         (gl_PREREQ_GETOPT): New macro.
24779         (gl_GETOPT): Use them.
24780
24781 2004-08-12  Simon Josefsson  <jas@extundo.com>
24782
24783         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
24784         * lib/getopt_.h: Renamed from getopt.h.
24785
24786 2004-08-12  Simon Josefsson  <jas@extundo.com>
24787
24788         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
24789         Change default library name from libfoo to libgnu.
24790         Now, if you have a configure.ac that says:
24791                 gl_SOURCE_BASE(gl)
24792                 gl_M4_BASE(gl/m4)
24793                 gl_MODULES(error getopt etcetera)
24794                 gl_INIT
24795         you can import all you need by running:
24796                 ../gnulib/gnulib-tool --import
24797
24798         * modules/getopt (Files): Rename getopt.h to getopt_.h.
24799         (Makefile.am): Rewrite, use logic from argz.
24800         (Include): Use <getopt.h> instead of "getopt.h".
24801
24802 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24803
24804         * modules/argp (Files): Add m4/unlocked-io.m4.
24805         (Depends-on): Add extensions.
24806
24807 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24808
24809         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
24810         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
24811         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
24812         Check for program_invocation_name, program_invocation_short_name,
24813         flockfile, funlockfile, features.h, _getopt_long_only_r.
24814
24815 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24816
24817         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
24818         its complicated substitute.
24819         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
24820         and program_invocation_name.
24821         (__argp_basename) [!_LIBC]: Remove; the only use was
24822         replaced by its body.
24823         (__argp_short_program_name): Change condition from
24824         !defined __argp_short_program_name to
24825         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
24826         to match argp-namefrob.h.
24827         (__argp_failure): Don't assume strerror_r returns char *.
24828         * lib/argp-parse.c (N_): Define unconditionally.
24829         (argp_default_options): Fill out initializers with 0 to avoid
24830         gcc warnings.
24831
24832 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
24833
24834         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
24835         getopt1.c.
24836
24837 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24838
24839         Merge from coreutils.
24840
24841         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
24842
24843         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
24844         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
24845
24846 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24847
24848         Merge from coreutils.
24849
24850         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
24851         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
24852         for Reliant Unix 5.43.
24853
24854         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
24855         (union fooround): Use uintmax_t, not long int.
24856         The rest is a merge from libc:
24857         [defined _LIBC]: Include <shlib-compat.h>.
24858         (_obstack) [defined _LIBC]: Remove after 2.3.4.
24859
24860         * lib/settime.c (settime): Recode to avoid warning with
24861         Sun Forte C 6U2.
24862
24863         * lib/strverscmp.c: Convert to UTF-8.
24864
24865 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
24866
24867         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
24868         m4/uintmax_t.m4.
24869
24870 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24871
24872         * modules/xalloc-die: New file.
24873         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
24874
24875         * modules/md5 (Files): Add m4/uint32_t.m4.
24876         * modules/sha1: Renamed from modules/sha.
24877         (Files):
24878         Rename lib/sha.h to lib/sha1.h.
24879         Rename lib/sha.c to lib/sha1.c.
24880         Rename m4/sha.m4 to m4/sha1.m4.
24881         (lib_SOURCES): Likewise.
24882         (configure.ac): Rename gl_SHA to gl_SHA1.
24883         (Include): sha.h -> sha1.h.
24884
24885 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24886
24887         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
24888         * m4/sha1.m4: Renamed from sha.m4.
24889         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
24890
24891 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
24892
24893         * lib/obstack.h (obstack_empty_p):
24894         Don't assume that chunk->contents is suitably aligned.
24895         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
24896         Likewise. Problem reported by Benno in
24897         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
24898
24899         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
24900         readable.  This could be improved further but it'd take some work.
24901
24902 2004-08-08  Simon Josefsson  <jas@extundo.com>
24903
24904         * modules/xgethostname (Depends-on): Remove exit and error (not
24905         used).
24906
24907         * modules/getpass-gnu: Add getpass.h.
24908         (Depends-on): Add stdbool.
24909         * modules/getpass: Add getpass.h.
24910
24911 2004-08-08  Simon Josefsson  <jas@extundo.com>
24912
24913         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
24914         Check getpass declaration.
24915
24916 2004-08-08  Simon Josefsson  <jas@extundo.com>
24917
24918         * lib/xgethostname.c: Don't include error.h (not used).
24919
24920         * lib/getpass.h: Add.
24921         * lib/getpass.c: Include getpass.h first.
24922
24923 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
24924
24925         * lib/xalloc-die.c: New file.
24926         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
24927         All uses removed.
24928         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
24929         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
24930         xalloc-die.c.
24931         (_, N_, xalloc_die): Move to xalloc-die.c.
24932         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
24933         so that we needn't mess with xalloc_msg_memory_exhausted.
24934
24935         * lib/sha1.h: Renamed from sha.h.
24936         (SHA1_H): Renamed from _SHA_H.
24937         (sha1_ctx): Renamed from sha_ctx.
24938         (sha1_init_ctx): Renamed from sha_init_ctx.
24939         (sha1_process_block): Renamed from sha_process_block.
24940         (sha1_process_bytes): Renamed from sha_process_bytes.
24941         (sha1_finish_ctx): Renamed from sha_finish_ctx.
24942         (sha1_read_ctx): Renamed from sha_read_ctx.
24943         (sha1_stream): Renamed from sha_stream.
24944         (sha1_buffer): Renamed from sha_buffer.
24945         * lib/sha1.c: Likewise; renamed from sha.c.
24946         Do not include <sys/types.h>.
24947         Include <stddef.h> rather than <stdlib.h>.
24948
24949 2004-08-08  Bruno Haible  <bruno@clisp.org>
24950
24951         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
24952         FILESYSTEM_PREFIX_LEN.
24953         * lib/progreloc.c: Likewise.
24954         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
24955
24956 2004-08-06  Simon Josefsson  <jas@extundo.com>
24957
24958         * modules/progname (Depends-on): Don't depend on stdbool.
24959
24960 2004-08-06  Simon Josefsson  <jas@extundo.com>
24961
24962         * modules/getsubopt: New file.
24963         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24964         getsubopt.
24965
24966 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24967
24968         More merge from coreutils.
24969
24970         * m4/utimens.m4, m4/utimecmp.m4: New files.
24971         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
24972         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
24973         prereq.m4, sha.m4: Import changes from coreutils.
24974
24975 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24976
24977         More merge from coreutils.
24978         * modules/raise, modules/readtokens0, modules/utimens:
24979         * modules/utimecmp, module/xnanosleep: New files.
24980         * modules/strftime: Add lib/strftime.h.
24981         Change include from <time.h> to "strftime.h".
24982         * modules/yesno: Add lib/yesno.h.
24983         * modules/backupfile: Remove lib/addext.c.
24984         * modules/euidaccess: Add stat-macros.h.
24985         * modules/canonicalize, modules/euidaccess,
24986         modules/filemode, modules/lchown, modules/makepath,
24987         modules/rmdir, modules/stat: Likewise.
24988
24989 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
24990
24991         Merge from tar.
24992         * lib/argp-help.c (make_hol, hol_append): Don't assume that
24993         SIZE_MAX is a valid preprocessor constant.
24994         (__argp_basename): Change from "#ifndef _LIBC"
24995         to "#ifndef __argp_short_program_name", so that
24996         we don't compile these functions for tar.
24997
24998         More merges from coreutils.
24999         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
25000         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
25001         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
25002         * lib/addext.c: Remove; no longer needed.
25003         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
25004         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
25005         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
25006         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
25007         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
25008         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
25009         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
25010         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
25011         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
25012         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
25013         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
25014         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
25015         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
25016         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
25017         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
25018         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
25019         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
25020         Import changes from coreutils.
25021
25022 2004-08-05  Simon Josefsson  <jas@extundo.com>
25023
25024         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
25025
25026 2004-08-05  Simon Josefsson  <jas@extundo.com>
25027
25028         * m4/getsubopt.m4: New file.
25029
25030 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25031
25032         Merge from coreutils.
25033
25034         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
25035         * m4/getcwd-path-max.m4: New files.
25036
25037         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
25038         FILESYSTEM_PREFIX_LEN ->
25039         FILE_SYSTEM_PREFIX_LEN.
25040         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
25041         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
25042         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
25043         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
25044
25045         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
25046         prerequisite modules now handle the DOS stuff.
25047         Don't check for unistd.h.
25048
25049 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25050
25051         Merge from coreutils.
25052
25053         * lib/.gdb-history: Remove; this doesn't belong here.
25054
25055         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
25056         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
25057         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
25058         * lib/getcwd.c: New files.
25059
25060         * lib/dirname.h: Include <stdbool.h>.
25061         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
25062         for consistency with POSIX terminology.  All uses changed.
25063         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
25064         (strip_trailing_slashes): Use bool for booleans.
25065         * lib/stripslash.c (strip_trailing_slashes): Likewise.
25066
25067         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
25068         sometimes returns a positive errno value even when it succeeds.
25069         (print_errno_message) [!LIBC]: Fall back on strerror if
25070         __strerror_r fails.
25071
25072         * lib/path-concat.c (mempcpy): Don't define if a system header defines
25073         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
25074         (longest_relative_suffix): New function.
25075         (path_concat): Use it.  Assume first argument is not NULL.
25076         Port to DOS.  Omit redundant separators.
25077         Report an error instead of returning NULL.
25078         Use mempcpy instead of memcpy.
25079         (xpath_concat): Remove: not declared or used.
25080
25081         * lib/same.h: Include <stdbool.h>
25082         (same_name): Return bool, not int.
25083         * lib/same.c (same_name): Likewise.
25084         (errno): Don't declare; we assume C89 or better now.
25085
25086         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
25087         if not already defined.
25088
25089         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
25090         * lib/dup-safer.c (errno): Likewise.
25091
25092 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
25093
25094         Merge from coreutils.
25095         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
25096         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
25097         * modules/path-concat: Don't depend on strdup.
25098
25099 2004-08-03  Simon Josefsson  <jas@extundo.com>
25100
25101         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
25102         * lib/progname.h: Don't include stdbool.h.
25103
25104 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25105
25106         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
25107         * MODULES.html.sh (func_all_modules): Remove fatal.
25108
25109 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25110
25111         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
25112
25113 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
25114
25115         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
25116         working.
25117
25118 2004-08-02  Simon Josefsson  <jas@extundo.com>
25119
25120         * lib/getsubopt.h: New file, with comments from Bruno Haible.
25121         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
25122         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
25123
25124 2004-08-01  Simon Josefsson  <jas@extundo.com>
25125
25126         * lib/xgetdomainname.c: Include stdlib.h, for free().
25127
25128 2004-07-19  Bruno Haible  <bruno@clisp.org>
25129
25130         * MODULES.html.sh (func_all_modules): Add dummy.
25131
25132 2004-07-16  Simon Josefsson  <jas@extundo.com>
25133
25134         * modules/dummy: New file.
25135
25136 2004-07-16  Simon Josefsson  <jas@extundo.com>
25137
25138         * lib/dummy.c: New file.
25139
25140 2004-07-16  Bruno Haible  <bruno@clisp.org>
25141
25142         * lib/backupfile.h: Add extern "C" for C++.
25143         * lib/closeout.h: Likewise.
25144         * lib/copy-file.h: Likewise.
25145         * lib/findprog.h: Likewise.
25146         * lib/full-write.h: Likewise.
25147         * lib/pathname.h: Likewise.
25148         * lib/progname.h: Likewise.
25149         * lib/stpcpy.h: Likewise.
25150         * lib/stpncpy.h: Likewise.
25151         * lib/strcase.h: Likewise.
25152         * lib/strstr.h: Likewise.
25153         * lib/xalloc.h: Likewise.
25154
25155         * lib/mbswidth.h: Add extern "C" for C++.
25156         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
25157
25158 2004-07-13  Robert Millan  <robertmh@gnu.org>
25159
25160         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
25161
25162 2004-07-09  Simon Josefsson  <jas@extundo.com>
25163
25164         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
25165         failed without this.)
25166
25167 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25168
25169         * modules/chown (Files): Add lib/fchown-stub.c, since
25170         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
25171
25172 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
25173
25174         * lib/fchown-stub.c: New file.
25175
25176 2004-06-24  Jim Meyering  <jim@meyering.net>
25177
25178         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
25179
25180 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25181
25182         * modules/argz: Omit "#include".
25183
25184         * MODULES.html.sh (func_all_modules): Add calloc, to match
25185         2004-06-01 addition of calloc module.
25186
25187 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25188
25189         * m4/argz.m4: New file, which is autoupdated from libtool.
25190
25191 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25192
25193         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
25194         libtool.
25195
25196 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
25197
25198         * config/srclist-update: Don't insist on "USA." before the
25199         close-comment, as libtool omits the period and puts the */ on a
25200         separate line.
25201         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
25202         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
25203
25204 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
25205
25206         * modules/argz: New file.
25207         * MODULES.html.sh (func_all_modules): Add argz.
25208
25209 2004-06-12  Jim Meyering  <jim@meyering.net>
25210         and  Paul Eggert  <eggert@cs.ucla.edu>
25211
25212         * modules/hash (Files): Add lib/xalloc.h.
25213         * modules/pipe (Depends-on): Add wait-process.
25214         * modules/stat (Depends-on): Add xalloc.
25215         * modules/userspec (Files): Add lib/userspec.h.
25216         * modules/xstrto
25217
25218         Upgrade from gettext-0.13.
25219         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
25220         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
25221         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
25222
25223 2004-06-10  Jim Meyering  <jim@meyering.net>
25224
25225         * lib/calloc.c: New file.
25226
25227 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
25228
25229         * lib/getdate.y (yylex): Allow space between sign and number.
25230         Problem reported by Dan Jacobson.
25231
25232 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
25233
25234         Merge from coreutils CVS.
25235
25236         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
25237         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
25238         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
25239         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
25240         xstrtol.m4: Fix copyright date and/or serial number.
25241
25242         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
25243         See if we need an fchown replacement.
25244         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
25245         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
25246         and use the replacement function if we detect either defect.
25247
25248         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
25249         gl_UTIMECMP.
25250
25251 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
25252         and  Jim Meyering  <jim@meyering.net>
25253
25254         Merge from coreutils CVS.
25255
25256         * lib/stat-macros.h: New file, with contents from file-type.h
25257         and coreutils' system.h.
25258         * lib/file-type.c: Include "stat-macros.h".
25259         * lib/file-type.h (file_type): Move all macro definitions to new file,
25260         stat-macros.h.
25261
25262         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
25263         Wrap old code with this conditional.
25264         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
25265         function that does not dereference symlinks.
25266         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
25267
25268         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
25269         dependency problems.
25270         (xreadlink): Accept new arg SIZE, for efficiency.
25271         All decls and uses changed.
25272         * lib/xreadlink.h: Include <stddef.h>, for size_t.
25273
25274         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
25275         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
25276
25277         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
25278         sysexits.h.
25279
25280 2004-06-01  Jim Meyering  <jim@meyering.net>
25281
25282         * m4/calloc.m4: New file.
25283
25284 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
25285
25286         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
25287         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
25288         Also, fix a typo in a diagnostic.
25289
25290 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
25291
25292         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
25293         or AC_FUNC_REALLOC.
25294
25295 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
25296
25297         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
25298         macros to be defined.
25299         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
25300         the allocator returns NULL because the requested size is zero.
25301
25302 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
25303
25304         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
25305         var.  Add comment explaining why libc still defines it.  This
25306         merges the following patch from glibc:
25307         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
25308
25309 2004-05-20  Andreas Schwab  <schwab@suse.de>
25310
25311         * m4/free.m4: Replace free if it not known to work, not the other
25312         way round.
25313
25314 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
25315
25316         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
25317         present in glibc since revision 1.1 of this file.
25318         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
25319         obstack_alignment_mask, obstack_alloc, obstack_base,
25320         obstack_blank, obstack_blank_fast, obstack_chunk_size,
25321         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
25322         obstack_grow0, obstack_init, obstack_int_grow,
25323         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
25324         obstack_next_free, obstack_object_size, obstack_ptr_grow,
25325         obstack_ptr_grow_fast, obstack_room): Remove declarations of
25326         nonexistent functions.
25327
25328 2004-05-18  Karl Berry  <karl@gnu.org>
25329
25330         * config/srclist.txt: break link for vasnprintf.c.
25331
25332 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
25333
25334         Port obstack to the AS/400, where pointers are 16 bytes wide and
25335         you cannot cast an integer to a valid pointer.  This patch is
25336         currently waiting to be integrated into glibc; see
25337         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
25338
25339         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
25340         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
25341         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
25342         (struct obstack): temp member is now a union of a pointer and
25343         an integer, instead of an integer.  All integer uses changed.
25344         This does not affect the physical layout of struct obstack,
25345         except on hosts (like the AS/400) where the size or alignment of
25346         void * is greater than that of ptrdiff_t.
25347         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
25348         __STDC__)]: Store temporary in pointer member of union, not
25349         integer member.
25350         * lib/obstack.c: Include <stddef.h>, for offsetof.
25351         (struct fooalign): Remove; it doesn't need a name.
25352         (union fooround): Change double to long double, and add void *.
25353         (DEFAULT_ALIGNMENT): Use offsetof to compute.
25354         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
25355         not a macro.  Hence the values are always int; so remove all
25356         casts-to-int in uses.
25357
25358 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
25359
25360         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
25361         we can get this patch merged into glibc.
25362
25363 2004-05-17  Derek R. Price  <derek@ximbiot.com>
25364             Paul Eggert  <eggert@cs.ucla.edu>
25365
25366         * m4/argp: Depend on alloca.
25367
25368 2004-05-17  Derek R. Price  <derek@ximbiot.com>
25369             Paul Eggert  <eggert@cs.ucla.edu>
25370
25371         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
25372         freecoding.
25373
25374 2004-05-17  Bruno Haible  <bruno@clisp.org>
25375
25376         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
25377         precision that consists of a '.' followed by an empty digit string.
25378         Patch by Tor Lillqvist <tml@iki.fi>.
25379
25380 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25381
25382         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
25383         for backward compatibility with older code.  We need our own
25384         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
25385         it under some other name, and our alloca.h will define it.
25386
25387 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
25388             Derek Price  <derek@ximbiot.com>
25389
25390         * lib/alloca.c: Include <alloca.h>, to get our interface.
25391         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
25392         include <alloca.h> first.  Use C89 prototype for alloca; this
25393         requires including <stddef.h> for size_t.  Use extern "C" if C++.
25394         Use #elif for simplicity, since we can assume C89 now.
25395         Don't try to source the system alloca.h since it will not be found
25396         and to prevent recursively including its replacement.
25397         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
25398         * lib/regex.c: Likewise.
25399
25400 2004-05-16  Derek Price  <derek@ximbiot.com>
25401             Paul Eggert  <eggert@cs.ucla.edu>
25402
25403         getline cleanup.  This changes the getndelim2 API: both order of
25404         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
25405         no delimiter).
25406
25407         * lib/getline.c: Don't include stddef.h or stdio.h, since our
25408         interface does that.
25409         (getline): Always use getdelim, so that we don't have two
25410         copies of this code.
25411         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
25412         if available.
25413         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
25414         (GETNDELIM2_MAXIMUM): New macro.
25415         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
25416         instead of the old practice of delim2==0.  All callers changed.
25417         Return -1 on overflow, instead of returning junk.
25418         Do not set *linesize unless allocation succeeds.
25419         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
25420         that we include sys/types.h.
25421         * lib/getnline.h: Likewise.
25422         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
25423         (getndelim2): Reorder arguments.
25424         * lib/getnline.c (getnline, getndelim):
25425         Don't discard the NMAX argument.
25426         (getnline): Invoke getndelim, to avoid code duplication.
25427         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
25428         of (size_t) -1 by callers of the getnline family.
25429
25430 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25431
25432         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
25433         Check for gettimeofday.
25434         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
25435         Check for settimeofday, stime.
25436
25437 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
25438
25439         * lib/nanosleep.c (suspended): Change its type from int to
25440         sig_atomic_t volatile.
25441         (first_call): Make it private to rpl_nanosleep, and have it
25442         be zero initially as that's a bit faster.
25443         (my_usleep): Round up fractional times instead of truncating them,
25444         as this is the usual meaning for 'sleep'.
25445
25446         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
25447         doesn't work.
25448         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
25449         (ENOSYS): Define if not defined.
25450         (settime): Fall back on stime if it exists and settimeofday fails.
25451         But don't bother with fallbacks if a method fails with errno == EPERM.
25452
25453 2004-05-11  Jim Meyering  <jim@meyering.net>
25454
25455         Prior to this change, the save_cwd caller required read access to the
25456         current directory on most systems (ones with the fchdir function).
25457
25458         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
25459         fails, try write-only, and finally, resort to using xgetcwd.
25460
25461 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
25462
25463         * lib/obstack.c, obstack.h: Import changes from libc.
25464
25465 2004-04-28  Bruno Haible  <bruno@clisp.org>
25466
25467         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
25468         also implicitly appends .exe to executables.
25469         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
25470         accepts Windows pathnames.
25471         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25472         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25473         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
25474         Treat Cygwin like Windows, since it now accepts Windows pathnames.
25475         Reported by Derek Robert Price <derek@ximbiot.com>.
25476
25477 2004-04-21  Karl Berry  <karl@gnu.org>
25478
25479         * config/srclist.txt (localcharset.c): break sync.
25480
25481 2004-04-20  Paul Eggert  <eggert@twinsun.com>
25482
25483         * m4/host-os.m4: Add a copyright notice.
25484
25485 2004-04-20  Jim Meyering  <jim@meyering.net>
25486
25487         Change UTILS_ to gl_ in AC_DEFINE'd names.
25488         Change utils_- and jm_-prefixed variables, too.
25489         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
25490         UTILS_FUNC_MKDIR_TRAILING_SLASH.
25491         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
25492
25493         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
25494         Don't emit trailing blanks.
25495         Also rename jm_-prefixed variables to have gl_ prefix.
25496
25497         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
25498         Also rename jm_-prefixed variables to have gl_ prefix.
25499
25500         * m4/jm-macros.m4: Reflect the renamings.
25501         * m4/prereq.m4: Likewise.
25502
25503 2004-04-20  Jim Meyering  <jim@meyering.net>
25504
25505         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
25506         memory.
25507
25508 2004-04-20  Jim Meyering  <jim@meyering.net>
25509             Bruno Haible  <bruno@clisp.org>
25510
25511         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
25512         memory when realloc fails.
25513
25514 2004-04-19  Jim Meyering  <jim@meyering.net>
25515
25516         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
25517         now that readutmp.c may call `free (0)'.
25518
25519 2004-04-19  Bruno Haible  <bruno@clisp.org>
25520
25521         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
25522         * m4/inttypes_h.m4: Likewise.
25523         * m4/stdint_h.m4: Likewise.
25524         * m4/intmax_t.m4: Likewise.
25525         * m4/uintmax_t.m4: Likewise.
25526
25527 2004-04-18  Jim Meyering  <jim@meyering.net>
25528
25529         * m4/prereq.m4: Don't forbid jm_ prefix.
25530
25531         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
25532         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
25533         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
25534         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
25535         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
25536         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
25537         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
25538         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
25539         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
25540         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
25541         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
25542         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
25543         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
25544         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
25545         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
25546         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
25547         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
25548         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
25549         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
25550
25551 2004-04-18  Jim Meyering  <jim@meyering.net>
25552
25553         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
25554         failure, don't leak memory and do call END_UTMP_ENT.
25555
25556 2004-04-16  Jim Meyering  <jim@meyering.net>
25557
25558         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
25559         coreutils' stat program.
25560         (gl_PREREQ): Don't require jm_PREREQ_STAT.
25561
25562 2004-04-11  Paul Eggert  <eggert@twinsun.com>
25563
25564         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
25565         C89.
25566         (CHAR_BIT): Remove, since we assume C89.
25567         Include <stdint.h> if available, as per current Autoconf CVS advice.
25568
25569 2004-03-31  Jim Meyering  <jim@meyering.net>
25570
25571         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
25572         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
25573         * m4/xalloc.m4: Likewise.
25574
25575 2004-03-30  Paul Eggert  <eggert@twinsun.com>
25576
25577         Merge from coreutils.
25578
25579         * m4/inttostr.m4: New file.
25580         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
25581         Require AM_STDBOOL_H and gl_TIMESPEC instead.
25582         Require gl_CLOCK_TIME.
25583         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
25584
25585 2004-03-30  Paul Eggert  <eggert@twinsun.com>
25586
25587         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
25588         not bool, to be more consistent with Unix conventions.
25589         Suggested by Bruno Haible.
25590
25591         Merge from coreutils.
25592
25593         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
25594         * lib/umaxtostr.c: New files.
25595
25596         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
25597         the usual <time.h> dance.
25598         (get_date): Change signature to support fractional time stamps.
25599         All callers changed.
25600         * lib/getdate.y: Include "getdate.h" first, as we can now
25601         assume C89 and don't need to worry about 'const'.
25602         Similarly, include "unlocked-io.h" near start, not in middle.
25603         Include <limits.h>.
25604         (textint.value): Use long int rather than int.
25605         (textint.digits): Use size_t rather than int.
25606         (BILLION, LOG10_BILLION): New constants.
25607         (parser_control): New member rel_ns.  Members day_ordinal,
25608         time_zone, month, day, hour, minutes, rel_year, rel_month,
25609         rel_day, rel_hour, rel_minutes, rel_seconds
25610         are now long int, not int.  Member seconds is now struct timespec,
25611         not int.  New member timespec_seen.  Members dates_seen, days_seen,
25612         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
25613         not int.
25614         (%union.intval): Now long int, not int.
25615         New member timespec.
25616         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
25617         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
25618         (spec): Now is a timespec or an item list.
25619         (timespec, items): New nonterminals.
25620         (time, rel, relunit, number, get_date):
25621         Add support for fractional seconds.
25622         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
25623         (gmtime, localtime, mktime): Remove decls; not needed with C89.
25624         (to_hour): First arg is now long int, not int.
25625         (to_year): Returns long int, not int.
25626         Don't treat year -70 like 70.
25627         (tm_diff): Returns long int, not int.
25628         (lookup_word): Use bool instead of int when appropriate.
25629         (yylex): Use size_t for count, not int.
25630         Detect overflow when parsing large integer constants.
25631         Add support for fractions.
25632         (get_date): Make pointers 'const' if possible.
25633         Use more-portable code to detect integer overflow.
25634         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
25635         Don't use ctime; it's not reliable if the year has >4 digits.
25636
25637         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
25638         This is for compatibility with BSD.
25639
25640         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
25641         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
25642         From coreutils' system.h.
25643
25644         * lib/userspec.c: Don't include "posixver.h".
25645         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
25646         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
25647         compatible extension.  Simplify code by removing a boolean int
25648         that was always nonzero if a string was nonnull.
25649
25650 2004-03-30  Jim Meyering  <jim@meyering.net>
25651
25652         Merge from coreutils.
25653
25654         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
25655         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
25656         on some systems one must include <grp.h> before it.
25657         Reported by Christian Krackowizer.
25658
25659 2004-03-30  Jim Meyering  <jim@meyering.net>
25660
25661         Merge from coreutils.
25662
25663         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
25664
25665         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
25666         an empty input stream.
25667
25668         * lib/readtokens.c: Include <stdbool.h>.
25669         (readtoken): Use `size_t' rather than int/long.
25670         All callers adjusted.
25671         Use `bool' rather than `int' where appropriate.
25672         Use memset rather than an explicit loop.
25673         Use x2nrealloc rather than xrealloc.
25674         Allow the use of `\0' as a delimiter.
25675         (readtokens): Likewise.
25676         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
25677
25678 2004-03-30  Jim Meyering  <jim@meyering.net>
25679
25680         * m4/realloc.m4: Remove file, since now it does no more than
25681         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
25682         the `configure.ac' section of module/realloc.
25683         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
25684
25685 2004-03-30  Bruno Haible  <bruno@clisp.org>
25686
25687         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
25688         nonnull.
25689
25690 2004-03-29  Paul Eggert  <eggert@twinsun.com>
25691
25692         Merge changes to getloadavg.c from coreutils and Emacs.
25693
25694         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
25695         Define to an expression, not to the empty string.
25696         Include cloexec.h and xalloc.h.
25697         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
25698         Use set_cloexec_flag rather than rolling our own.
25699         * lib/cloexec.c, lib/cloexec.h: New files.
25700
25701 2004-03-29  Paul Eggert  <eggert@twinsun.com>
25702
25703         * m4/cloexec.m4: New file.
25704
25705 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25706
25707         * lib/getopt.h: Sync with libc CVS.
25708
25709 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25710             Bruno Haible  <bruno@clisp.org>
25711
25712         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
25713         mbswidth.
25714
25715 2004-03-18  Paul Eggert  <eggert@twinsun.com>
25716             Bruno Haible  <bruno@clisp.org>
25717
25718         * lib/mbswidth.h: Include <wchar.h> only if
25719         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
25720         <wchar.h>.
25721         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
25722
25723 2004-03-09  Paul Eggert  <eggert@twinsun.com>
25724
25725         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
25726         Sync with libc CVS.
25727         * lib/getopt_int.h: New file, also synced from libc.
25728
25729 2004-03-09  Paul Eggert  <eggert@twinsun.com>
25730
25731         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
25732         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
25733         Bring back getopt.c, getopt.h, getopt1.c.
25734
25735 2004-03-07  Paul Eggert  <eggert@twinsun.com>
25736
25737         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
25738         All uses changed.  Check for sa_sigaction member; this fixes
25739         a bug first reported by Jason Andrade in
25740         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
25741
25742 2004-03-07  Paul Eggert  <eggert@twinsun.com>
25743
25744         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
25745         '#if' expressions.  Unlike the code it replaces, it does not
25746         depend on (defined _SC_PAGESIZE).  However, it does depend on
25747         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
25748         first reported by Jason Andrade in
25749         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
25750
25751 2004-02-25  Simon Josefsson  <jas@extundo.com>
25752
25753         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
25754
25755 2004-02-25  Simon Josefsson  <jas@extundo.com>
25756
25757         * lib/strdup.h: New file.
25758         * lib/strdup.c: Include it.
25759         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
25760         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
25761
25762 2004-02-23  Karl Berry  <karl@gnu.org>
25763
25764         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
25765         (from fencepost.gnu.org:/gd/gnuorg).
25766
25767 2004-02-23  Karl Berry  <karl@gnu.org>
25768
25769         * config/srclistvars.sh (GNUORG) [karl]: redefine.
25770         * config/srclist.txt: add maintain/standards documents.
25771
25772 2004-02-18  Bruno Haible  <bruno@clisp.org>
25773
25774         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
25775         Reported by Derek Robert Price <derek@ximbiot.com>.
25776
25777 2004-02-16  Karl Berry  <karl@gnu.org>
25778
25779         * config/mkinstalldirs, install-sh: update from automake.
25780
25781 2004-02-06  Karl Berry  <karl@gnu.org>
25782
25783         * m4/po.m4: update from gettext 0.14.1.
25784
25785 2004-02-06  Karl Berry  <karl@gnu.org>
25786
25787         * lib/config.charset: update from gettext 0.14.1.
25788
25789 2004-02-05  Paul Eggert  <eggert@twinsun.com>
25790
25791         Add comments and code, prompted by suggestions from Bruno Haible
25792         for sh-quote.
25793         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
25794         describing the enum quoting_style values.
25795         * lib/quotearg.c (quotearg_alloc): New function.
25796         (quotearg_buffer_restyled): Treat lone { and } as special.
25797         Treat = as special.  Work around bug with older shells
25798         that "see" a '\' that is really the 2nd byte of a multibyte char.
25799         Quote empty string with shell_quoting_style.
25800
25801 2004-02-03  Bruno Haible  <bruno@clisp.org>
25802
25803         * m4/pipe.m4: New file, from GNU gettext.
25804
25805 2004-02-03  Bruno Haible  <bruno@clisp.org>
25806
25807         * lib/pipe.h: New file, from GNU gettext.
25808         * lib/pipe.c: New file, from GNU gettext.
25809
25810 2004-01-27  Bruno Haible  <bruno@clisp.org>
25811
25812         * m4/execute.m4: New file, from GNU gettext.
25813
25814 2004-01-27  Bruno Haible  <bruno@clisp.org>
25815
25816         * lib/execute.h: New file, from GNU gettext.
25817         * lib/execute.c: New file, from GNU gettext.
25818         * lib/w32spawn.h: New file, from GNU gettext.
25819
25820 2004-01-24  Paul Eggert  <eggert@twinsun.com>
25821
25822         Merge from diffutils.
25823
25824         * lib/file-type.c (file_type): Add typed memory objects.
25825         * lib/file-type.h (S_TYPEISTMO): New macro.
25826
25827         * lib/c-stack.h (c_stack_action): Remove argv argument.
25828         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
25829         (die): Don't calculate message unless segv_action returns.
25830         (get_stack_location, min_address_from_argv, max_address_from_argv,
25831         volatile stack_base, volatile_stack_size): Remove.
25832         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
25833         that every segmentation violation is a stack overflow.  (Ouch!)
25834         See Debian bug 136249 (still outstanding) for more info about why
25835         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
25836
25837 2004-01-24  Paul Eggert  <eggert@twinsun.com>
25838
25839         Exit-status fix from coreutils.
25840
25841         Use exit_failure consistently in place of EXIT_FAILURE,
25842         so that program exit statuses are consistent on failure.
25843
25844         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
25845         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
25846         * lib/argmatch.h: Comment fix to match the above.
25847         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
25848         Now a macro referring to exit_failure, instead of a separate
25849         variable.  Include "exitfail.h" to get it.
25850         * lib/xstrtol.h: Include "exitfail.h".
25851         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
25852
25853         * lib/long-options.c (parse_long_options): Use prototype
25854         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
25855         for clarity.
25856
25857 2004-01-21  Jim Meyering  <jim@meyering.net>
25858
25859         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
25860         so as not to conflict with a different-sized __mktime_internal
25861         function in GNU libc.
25862         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
25863         Problem building statically-linked `ls' reported by Michael Brunnbauer.
25864
25865 2004-01-20  Karl Berry  <karl@gnu.org>
25866
25867         * config/config.guess: update from config.
25868
25869         * config/srclistvars.sh: GNUWWWLICENSES for karl.
25870
25871 2004-01-20  Bruno Haible  <bruno@clisp.org>
25872
25873         Safer stack allocation.
25874         * lib/setenv.c: Include allocsa.h.
25875         (alloca): Remove fallback definition.
25876         (freea): Remove macro.
25877         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
25878         instead of freea.
25879
25880 2004-01-20  Bruno Haible  <bruno@clisp.org>
25881
25882         * m4/eealloc.m4: New file, from GNU gettext.
25883
25884 2004-01-20  Bruno Haible  <bruno@clisp.org>
25885
25886         * m4/allocsa.m4: New file, from GNU gettext.
25887
25888 2004-01-20  Bruno Haible  <bruno@clisp.org>
25889
25890         * lib/xallocsa.h: New file, from GNU gettext.
25891         * lib/xallocsa.c: New file, from GNU gettext.
25892
25893 2004-01-20  Bruno Haible  <bruno@clisp.org>
25894
25895         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
25896
25897 2004-01-20  Bruno Haible  <bruno@clisp.org>
25898
25899         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
25900         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
25901         specially.
25902
25903 2004-01-20  Bruno Haible  <bruno@clisp.org>
25904
25905         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
25906         patch.
25907
25908 2004-01-20  Bruno Haible  <bruno@clisp.org>
25909
25910         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
25911
25912 2004-01-20  Bruno Haible  <bruno@clisp.org>
25913
25914         * lib/eealloc.h: New file.
25915
25916 2004-01-20  Bruno Haible  <bruno@clisp.org>
25917
25918         * lib/binary-io.h: Avoid warnings on Cygwin.
25919
25920 2004-01-20  Bruno Haible  <bruno@clisp.org>
25921
25922         * lib/allocsa.h: New file, from GNU gettext.
25923         * lib/allocsa.c: New file, from GNU gettext.
25924
25925 2004-01-18  Karl Berry  <karl@gnu.org>
25926
25927         * doc/gpl.texi, doc/lgpl.texi: new files.
25928
25929 2004-01-18  Karl Berry  <karl@gnu.org>
25930
25931         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
25932         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
25933
25934 2004-01-15  Paul Eggert  <eggert@twinsun.com>
25935
25936         Merge from coreutils.
25937
25938         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
25939         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
25940         (gl_DEFAULT_POSIX2_VERSION): Move
25941         the documentation from 'configure' into 'config.hin',
25942         so that 'configure --help' isn't burdened by it and
25943         we don't have to worry about its formatting there.
25944         Reword the documentation so that it's more succinct
25945         and can be run together into a single paragraph.
25946         * m4/same.m4 (gl_SAME): Check for pathconf.
25947
25948 2004-01-15  Paul Eggert  <eggert@twinsun.com>
25949
25950         Merge from coreutils.
25951
25952         * lib/posixver.c: Include posixver.h.
25953
25954         * lib/same.c: Include <stdbool.h>, <limits.h>.
25955         (_POSIX_NAME_MAX): Define if not defined.
25956         (MIN): New macro.
25957         (same_name): If file names are silently truncated, report
25958         that the file names are the same if they are the same after
25959         the silent truncation.
25960
25961         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
25962         conversion function.
25963         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
25964         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
25965         longer needed.
25966
25967 2004-01-15  Jim Meyering  <jim@meyering.net>
25968
25969         Merge from coreutils.
25970
25971         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
25972         if no library is required.
25973         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
25974         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
25975         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
25976         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
25977         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
25978         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
25979         value, $ac_cv_search_crypt, if it's "none required".
25980         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
25981         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
25982         not gl_FUNC_GETLOADAVG.
25983         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
25984         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
25985
25986 2004-01-15  Jim Meyering  <jim@meyering.net>
25987
25988         Merge from coreutils.
25989
25990         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
25991         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
25992         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
25993
25994         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
25995         optional configure-time default.
25996
25997         * lib/version-etc.c (version_etc_copyright): Update copyright date.
25998
25999         * lib/xreadlink.c (xreadlink): Correct outdated comment.
26000
26001 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
26002
26003         Merge from coreutils.
26004
26005         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
26006         value, $ac_cv_search_nanosleep, if it's "none required".
26007
26008 2004-01-14  Paul Eggert  <eggert@twinsun.com>
26009
26010         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
26011         with like-named macro in fnmatch.c.
26012         (EXT): Use an internal constant instead.
26013
26014         Merge fnmatch patches from glibc.
26015         * lib/fnmatch.c (mbsinit): Remove define.
26016         Add libc_hidden_ver (__fnmatch, fnmatch).
26017         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
26018         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
26019
26020 2004-01-14  Karl Berry  <karl@gnu.org>
26021
26022         * config/install-sh: update from automake.
26023
26024 2004-01-13  Karl Berry  <karl@gnu.org>
26025
26026         * config/install-sh: update from automake.
26027
26028 2004-01-09  Karl Berry  <karl@gnu.org>
26029
26030         * config/install-sh: update from automake.
26031
26032 2004-01-05  Karl Berry  <karl@gnu.org>
26033
26034         * config/config.{sub,guess}: update from config.
26035
26036 2003-12-31  Karl Berry  <karl@gnu.org>
26037
26038         * config/depcomp: update from automake.
26039
26040 2003-12-14  Karl Berry  <karl@gnu.org>
26041
26042         * lib/config.charset: update from gettext-runtime.
26043
26044 2003-12-03  Paul Eggert  <eggert@twinsun.com>
26045
26046         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
26047         Bug reported by Alfred M. Szmidt.
26048
26049 2003-12-03  Bruno Haible  <bruno@clisp.org>
26050
26051         * m4/gettext.m4: Upgrade from gettext-0.13.
26052         * m4/po.m4: Upgrade from gettext-0.13.
26053         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
26054         * m4/intmax.m4: New file, from gettext-0.13.
26055         * m4/printf-posix.m4: New file, from gettext-0.13.
26056
26057 2003-11-29  Karl Berry  <karl@gnu.org>
26058
26059         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
26060
26061 2003-11-25  Paul Eggert  <eggert@twinsun.com>
26062             Bruno Haible  <bruno@clisp.org>
26063
26064         * lib/printf-parse.h: Don't include sys/types.h.
26065         (ARG_NONE): New macro.
26066         (char_directive): Change type of *arg_index fields to size_t.
26067         * lib/printf-parse.c: Don't include sys/types.h.
26068         (SSIZE_MAX): Remove macro.
26069         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
26070         Remove unnecessary overflow check.
26071         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
26072         fields.
26073
26074 2003-11-25  Bruno Haible  <bruno@clisp.org>
26075
26076         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
26077
26078 2003-11-25  Bruno Haible  <bruno@clisp.org>
26079
26080         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
26081         gt_TYPE_SSIZE_T.
26082
26083 2003-11-24  Paul Eggert  <eggert@twinsun.com>
26084
26085         * modules/alloca: Remove dependency on xalloc.
26086
26087 2003-11-24  Paul Eggert  <eggert@twinsun.com>
26088
26089         * lib/alloca.c: Remove dependency on xalloc module.
26090         (xalloc_die): Remove.
26091         (memory_full) [!defined emacs]: New macro.
26092         [!defined emacs]: Don't include xalloc.h.
26093         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
26094         address arithmetic overflows.  Change datatypes a bit to avoid
26095         unnecessary casts.
26096
26097 2003-11-22  Jim Meyering  <jim@meyering.net>
26098
26099         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
26100         s/size/size_t/.
26101
26102 2003-11-21  Karl Berry  <karl@gnu.org>
26103
26104         * config/config.{sub,guess}: update from config.
26105
26106 2003-11-18  Karl Berry  <karl@gnu.org>
26107
26108         * config/config.{sub,guess}: update from config.
26109
26110         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
26111
26112 2003-11-17  Paul Eggert  <eggert@twinsun.com>
26113
26114         * README: Mention that S+T cannot overflow if S is the size of
26115         an existing object and T is sufficiently small.
26116
26117 2003-11-17  Jim Meyering  <jim@meyering.net>
26118
26119         On systems without utime and without a utimes function capable of
26120         dealing with a NULL struct utimbuf* argument, this utime replacement
26121         could -- in unusual circumstances -- leak a file descriptor.
26122         * lib/utime.c: Include <unistd.h> and <errno.h>.
26123         (utime_null): Be sure to close `fd' and to preserve errno.
26124         Reported by Geoff Collyer via Arnold Robbins.
26125
26126 2003-11-17  Bruno Haible  <bruno@clisp.org>
26127
26128         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
26129         (Depends-on): Add xsize.
26130
26131 2003-11-17  Bruno Haible  <bruno@clisp.org>
26132
26133         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
26134
26135 2003-11-17  Bruno Haible  <bruno@clisp.org>
26136
26137         * lib/vasnprintf.c (alloca): Remove fallback definition.
26138         (freea): Remove definition.
26139         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
26140         Reported by Paul Eggert.
26141
26142 2003-11-16  Paul Eggert  <eggert@twinsun.com>
26143             Bruno Haible  <bruno@clisp.org>
26144
26145         Protect against address arithmetic overflow.
26146         * lib/printf-args.h: Include stddef.h.
26147         (arguments): Change type of field 'count' to size_t.
26148         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
26149         'unsigned int' where appropriate.
26150         * lib/printf-parse.h: Include sys/types.h.
26151         (char_directive): Change type of *arg_index fields to ssize_t.
26152         (char_directives): Change type of fields 'count', max_*_length to
26153         size_t.
26154         * lib/printf-parse.c: Include sys/types.h and xsize.h.
26155         (SSIZE_MAX): Define fallback value.
26156         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
26157         instead of 'int' where appropriate. Check a_allocated, d_allocated
26158         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
26159         * lib/vasnprintf.c: Include xsize.h.
26160         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
26161         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
26162         overflow. Avoid wraparound when converting a width or precision from
26163         decimal to binary.
26164
26165 2003-11-16  Bruno Haible  <bruno@clisp.org>
26166
26167         Update from GNU gettext.
26168         * lib/printf-parse.c: Generalize to it can be compiled for wide
26169         strings.
26170         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
26171         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
26172         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
26173         SNPRINTF): New macros.
26174         Don't include <alloca.h> if the file is used inside libintl.
26175         (local_wcslen): New function, for Solaris 2.5.1.
26176         (VASNPRINTF): Use it instead of wcslen.
26177
26178 2003-11-16  Bruno Haible  <bruno@clisp.org>
26179
26180         * lib/xsize.h (xmax): New function.
26181         (xsum, xsum3, xsum4): Declare as "pure" functions.
26182
26183 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26184
26185         * modules/xalloc (Files): Undo latest change, since xalloc.h
26186         no longer needs SIZE_MAX or PTRDIFF_MAX.
26187
26188 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26189
26190         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
26191         gl_PTRDIFF_MAX.
26192
26193 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26194
26195         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
26196         "return", to pacify some unknown compiler.  Problem reported
26197         by Joerg Schilling.
26198
26199 2003-11-12  Paul Eggert  <eggert@twinsun.com>
26200
26201         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
26202         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
26203         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
26204         heuristic is just as accurate as far as we know, and it removes a
26205         dependency on size_max.m4 and ptrdiff_max.m4.
26206
26207 2003-11-11  Bruno Haible  <bruno@clisp.org>
26208
26209         * modules/xsize (Files): Add m4/size_max.m4.
26210         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
26211
26212 2003-11-11  Bruno Haible  <bruno@clisp.org>
26213
26214         * m4/size_max.m4: New file.
26215         * m4/ptrdiff_max.m4: New file.
26216         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
26217         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
26218         (gl_XALLOC): Invoke it.
26219
26220 2003-11-11  Bruno Haible  <bruno@clisp.org>
26221
26222         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
26223         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
26224         defined.
26225
26226 2003-11-10  Paul Eggert  <eggert@twinsun.com>
26227
26228         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
26229         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
26230         rejected some allocations of exactly SIZE_MAX - 2 bytes.
26231         From Bruno Haible.
26232         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
26233         not (size_t) -1, since it's defined here.
26234
26235 2003-11-09  Karl Berry  <karl@gnu.org>
26236
26237         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
26238
26239 2003-11-06  Paul Eggert  <eggert@twinsun.com>
26240
26241         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
26242         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
26243         Reject sizes of exactly SIZE_MAX bytes.
26244         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
26245         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
26246
26247 2003-11-05  Bruno Haible  <bruno@clisp.org>
26248
26249         * lib/xsize.h: Include limits.h, to avoid a possible collision with
26250         SIZE_MAX defined in <limits.h> on Solaris.
26251
26252 2003-11-04  Jim Meyering  <jim@meyering.net>
26253
26254         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
26255         variable names, rather than @VAR@.
26256         * modules/poll: Likewise.
26257
26258 2003-11-04  Bruno Haible  <bruno@clisp.org>
26259
26260         * modules/xsize: New file.
26261         * modules/linebreak: Depend on xsize.
26262         * MODULES.html.sh (func_all_modules): Add xsize.
26263
26264 2003-11-04  Bruno Haible  <bruno@clisp.org>
26265
26266         * m4/xsize.m4: New file.
26267
26268 2003-11-04  Bruno Haible  <bruno@clisp.org>
26269
26270         * lib/xsize.h: New file.
26271         * lib/linebreak.c: Include xsize.h.
26272         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
26273         argument for overflow.
26274         Suggested by Paul Eggert.
26275
26276 2003-11-03  Karl Berry  <karl@gnu.org>
26277
26278         * config/config.{guess,sub}: update from config.
26279
26280 2003-11-03  Jim Meyering  <jim@meyering.net>
26281
26282         * modules/userspec (lib_SOURCES): Add userspec.h.
26283         (Include): Add "userspec.h".
26284         Improve description.
26285
26286 2003-11-03  Jim Meyering  <jim@meyering.net>
26287
26288         * lib/userspec.c: Include "userspec.h".
26289         * lib/userspec.h: New file.
26290
26291 2003-11-03  Bruno Haible  <bruno@clisp.org>
26292
26293         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
26294
26295 2003-11-03  Bruno Haible  <bruno@clisp.org>
26296
26297         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
26298         available, to avoid (extremely rare) race condition.
26299         Suggested by Paul Eggert.
26300
26301 2003-11-02  Karl Berry  <karl@gnu.org>
26302
26303         * config/srclist.txt (vasprintf.c): sync broken, sigh.
26304
26305 2003-10-31  Paul Eggert  <eggert@twinsun.com>
26306
26307         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
26308         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
26309         (read_filesystem_list): Set and use me_type_malloced.
26310         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
26311         whatever the type happens to be), for brevity and consistency.
26312         Check for size calculation overflow on Alphas running OSF/1.
26313
26314 2003-10-31  Jim Meyering  <jim@meyering.net>
26315
26316         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
26317
26318         * lib/linebuffer.c: Include <string.h> for declaration of memset.
26319
26320 2003-10-30  Paul Eggert  <eggert@twinsun.com>
26321             Bruno Haible  <bruno@clisp.org>
26322
26323         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
26324         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
26325
26326 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
26327
26328         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
26329         netbsd*-gnu*.  Suggested by Robert Millan.
26330
26331 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26332
26333         * modules/group-member: Depend on stdbool.
26334
26335 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26336
26337         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
26338
26339 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26340
26341         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
26342         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
26343         after the 'gnu' in these cases.  This fixes some bugs in the
26344         previous change, and is based on suggestions by Robert Millan.
26345
26346 2003-10-29  Paul Eggert  <eggert@twinsun.com>
26347
26348         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
26349         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
26350         no longer needed.
26351         * lib/quotearg.c (quotearg_n_options): Use it.
26352         * lib/group-member.c: Include <stdbool.h>.
26353         (free_group_info): Arg is now const *; don't free arg.
26354         (get_group_info): Now returns bool and accepts struct group_info *,
26355         rather than returning a malloc'ed struct group_info *.
26356         All uses changed.  Check for overflow in internal size calculation.
26357
26358         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
26359         rather than xmalloc/xrealloc.
26360         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
26361         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
26362         conformance bug: the old code used a pointer after freeing the
26363         storage that it addressed.
26364         * lib/hash.c (hash_initialize): Simplify the code by using
26365         xalloc_oversized rather than doing it by hand.
26366         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
26367         the buffer preserved.  Use free and xmalloc instead.
26368         * lib/quotearg.c (quotearg_n_options): Likewise.
26369         Use a simpler test for size overflow.  Don't use xalloc_oversized
26370         because unsigned int might be wider than size_t (!); this suggests
26371         that we should switch from unsigned int to size_t for slot numbers.
26372
26373 2003-10-28  Paul Eggert  <eggert@twinsun.com>
26374
26375         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
26376         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
26377         NetBSD kernels.  Requested by Richard Stallman.
26378
26379 2003-10-27  Paul Eggert  <eggert@twinsun.com>
26380
26381         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
26382         to allocate the returned structure.  Do not allocate a subarray,
26383         as x2nrealloc will do that.
26384         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
26385         instead of xnrealloc.
26386         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
26387
26388 2003-10-27  Bruno Haible  <bruno@clisp.org>
26389
26390         * lib/stdbool_.h: Better support for BeOS.
26391
26392 2003-10-26  Paul Eggert  <eggert@twinsun.com>
26393
26394         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
26395         now uses inline.
26396
26397 2003-10-26  Paul Eggert  <eggert@twinsun.com>
26398
26399         * lib/xalloc.h (xalloc_oversized): New static inline function, for
26400         callers that want to do their own size-overflow checking.  Include
26401         <stdbool.h>, since xalloc_oversized returns bool.
26402         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
26403         to use xalloc_oversized.
26404
26405         Add two functions x2realloc, x2nrealloc, for programs that grow
26406         arrays dynamically by doubling their sizes.
26407         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
26408         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
26409         New functions.
26410
26411         Port to C99 semantics for 'inline' of external functions.
26412         Bug reported by Bruno Haible.
26413         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
26414         with the old contents of xnmalloc.
26415         (xnmalloc, xmalloc): Use it.
26416         (xnrealloc_inline): New static inline function,
26417         with the old contents of xnrealloc.
26418         (xnrealloc, xrealloc): Use it.
26419
26420         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
26421         that.
26422
26423 2003-10-26  Karl Berry  <karl@gnu.org>
26424
26425         * config/srclist.txt (COPYING.DOC): no longer available from
26426         /gd/gnuorg; don't know where the ultimate source is.
26427
26428 2003-10-25  Paul Eggert  <eggert@twinsun.com>
26429
26430         Fix several address-calculation bugs in the hash modules,
26431         plus some minor code cleanup.
26432
26433         * lib/hash.h: Include <stdbool.h>, for bool.
26434         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
26435         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
26436         hash_get_n_entries, hash_get_max_bucket_length,
26437         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
26438         hash_rehash): Use size_t rather than unsigned.
26439         * lib/hash.c (struct hash_table, hash_get_n_buckets,
26440         hash_get_n_buckets_used, hash_get_n_entries,
26441         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
26442         hash_get_entries, hash_do_for_each, hash_string, is_prime,
26443         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
26444         Likewise.
26445         (SIZE_MAX): Define if not defined.
26446         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
26447         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
26448         hash_print):
26449         Use const * when possible.
26450         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
26451         (check_tuning): Fix bug: if tuning parameters were very close to
26452         0 or 1, rounding errors could have caused subscript violations.
26453         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
26454         (hash_initialize): Add 'fail:' label
26455         to free table and return NULL, and use it to simplify code.
26456         Use calloc rather than clearing the storage ourself.
26457         (hash_initialize, hash_rehash): Check for arithmetic overflow in
26458         buffer size calculations.
26459         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
26460         Include <stddef.h>, for size_t.
26461         * lib/hash-pjw.c (hash_pjw): Likewise.
26462         Switch to method described by Bruno Haible.
26463         Include <limits.h>, for CHAR_BIT.
26464         (SIZE_BITS): New macro.
26465
26466 2003-10-23  Paul Eggert  <eggert@twinsun.com>
26467
26468         * m4/getline.m4 (AM_FUNC_GETLINE):
26469         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
26470         hosts.  Problem reported by Derek Robert Price in
26471         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
26472         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
26473         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
26474
26475 2003-10-21  Paul Eggert  <eggert@twinsun.com>
26476
26477         * lib/getndelim2.c (getndelim2): When size calculation overflows,
26478         ceiling the allocation at NMAX bytes rather than silently
26479         discarding input bytes before NMAX is reached.  This makes
26480         a difference only if NMAX exceeds SIZE_MAX / 2.
26481
26482         * lib/obstack.c: Merge from glibc.
26483         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
26484         Add libc_hidden_def (_obstack_newchunk).
26485         (_obstack_free) [! defined _LIBC]: Remove.
26486         [defined _LIBC]: Make a strong alias from obstack_free, rather than
26487         a clone of the function body.
26488         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
26489         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
26490
26491         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
26492         glibc.
26493         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
26494         arg to memcpy.
26495
26496         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
26497         (obstack_ptr_grow_fast, obstack_int_grow_fast):
26498         Don't use lvalue casts, as GCC plans to remove support for them
26499         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
26500         was also present in the non-GCC version, indicating that this
26501         code had always been buggy and had never been widely used.
26502         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
26503         Use the fast variant of each macro, rather than copying the
26504         definiens of the fast variant; that way, we'll be more likely to
26505         catch future bugs in the fast variants.
26506
26507 2003-10-20  Bruno Haible  <bruno@clisp.org>
26508
26509         * modules/wait-process: New file.
26510         * MODULES.html.sh (func_all_modules): Add wait-process.
26511
26512 2003-10-20  Bruno Haible  <bruno@clisp.org>
26513
26514         * m4/wait-process.m4: New file.
26515
26516 2003-10-20  Bruno Haible  <bruno@clisp.org>
26517
26518         * lib/wait-process.h: New file, from GNU gettext.
26519         * lib/wait-process.c: New file, from GNU gettext.
26520
26521 2003-10-19  Jim Meyering  <jim@meyering.net>
26522
26523         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
26524         HPUX 10.20.
26525
26526 2003-10-18  Karl Berry  <karl@gnu.org>
26527
26528         * config/config.guess: update from config.
26529
26530 2003-10-16  Paul Eggert  <eggert@twinsun.com>
26531
26532         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
26533         (getgroups): First arg is int, not size_t.
26534         Don't let 'free' mangle errno.
26535
26536 2003-10-16  Paul Eggert  <eggert@twinsun.com>
26537
26538         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
26539
26540 2003-10-16  Karl Berry  <karl@gnu.org>
26541
26542         * config/config.{guess,sub}: update from config.
26543
26544 2003-10-16  Jim Meyering  <jim@meyering.net>
26545
26546         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
26547         memcpy.
26548
26549 2003-10-15  Paul Eggert  <eggert@twinsun.com>
26550
26551         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
26552         (SIZE_MAX): Remove.
26553         (new_exclude, add_exclude_file): Initial size no longer needs to
26554         be a power of 2.
26555         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
26556         our own address arithmetic overflow checking.
26557
26558         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
26559         (fnmatch): Do not alloca more than 2000 wide characters;
26560         instead, use malloc for large buffers.
26561         Check for address arithmetic overflow, and return -1
26562         with errno set to ENOMEM in that case.
26563         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
26564         (NEW_PATTERN): Do not alloca more than 8000 bytes;
26565         instead, return -1.  Check for address arithmetic overflow.
26566
26567 2003-10-14  Paul Eggert  <eggert@twinsun.com>
26568
26569         Handle invalid suffixes and overflow independently, so that
26570         callers can treat them independently as needed.  Fix some bugs in
26571         suffix handling, e.g., "100k@" was not diagnosed as an invalid
26572         suffix for a human-readable blocksize.  The major caller-visible
26573         change is the addition of a new
26574         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
26575         that both overflow and suffix chars were found.
26576
26577         * lib/human.c (humblock): Don't check separately for invalid suffix
26578         char; that is xstrtoumax's job (now that its bug is fixed).
26579         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
26580         INTMAX_MAX]: New macros.
26581         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
26582         TYPE_MAXIMUM): New macros.
26583         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
26584         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
26585         if overflow occurs, as it's what __strtol does and it's more useful
26586         in practice.
26587         (__xstrtol): If __strtol reports some error other than ERANGE,
26588         reflect it to the caller as LONGINT_INVALID.  If it reports
26589         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
26590         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
26591         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
26592         value.
26593         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
26594         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
26595         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
26596         [defined UINTMAX_MAX]: New macros.
26597
26598 2003-10-14  Bruno Haible  <bruno@clisp.org>
26599
26600         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
26601
26602 2003-10-14  Bruno Haible  <bruno@clisp.org>
26603
26604         * m4/sig_atomic_t: New file, from GNU gettext.
26605         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
26606
26607 2003-10-14  Bruno Haible  <bruno@clisp.org>
26608
26609         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
26610         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
26611         Also use volatile where needed.
26612
26613 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26614
26615         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
26616         Change maintainer from Bruno Haible to 'all'.
26617
26618 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26619
26620         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
26621
26622 2003-10-12  Paul Eggert  <eggert@twinsun.com>
26623
26624         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
26625         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
26626         and define in terms of the other primitives.
26627         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
26628         (SIZE_MAX): Define if not already defined.
26629         (array_size_overflow): New function.
26630         (xalloc_die): Abort instead of exiting if 'error' returns.
26631         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
26632         (xmalloc, xrealloc): Use them.
26633         (xcalloc): Check for address arithmetic overflow.
26634         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
26635         a bit faster than strcpy.
26636
26637 2003-10-10  Simon Josefsson  <jas@extundo.com>
26638
26639         * modules/argp (Depends-on): Add restrict and strcase.
26640
26641 2003-10-10  Simon Josefsson  <jas@extundo.com>
26642
26643         * m4/argp.m4: Add AC_C_INLINE.
26644
26645 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26646
26647         Merge getpass from libc, plus a few fixes.
26648
26649         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
26650         Include <stdbool.h>.
26651         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
26652         __fsetlocking to empty.
26653         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
26654         do include <bits/libc-lock.h>.
26655         Do not include <fcntl.h>; not needed.
26656         [_LIBC]: Include <wchar.h>.
26657         (NOTCANCEL_MODE): New macro.
26658         (flockfile, funlockfile) [_LIBC]: New macros.
26659         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
26660         [!_LIBC]: New macros.
26661         (call_fclose): New function.
26662         (getpass): Use it.  Save tty stream separately; this simplifies the
26663         code and makes it more reliable if stdin happens to equal stdout.
26664         Invoke __fsetlocking on tty.
26665         Handle thread cancellation if needed.
26666         Namespace cleanup (use __tcgetattr, __getline).
26667         Use bool for Booleans.
26668         [USE_IN_LIBIO]: Handle wide streams.
26669         [!_LIBC]: Unconditionally do the fseek, since we don't know what
26670         stream might go where.
26671
26672         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
26673         doesn't have to include <stdio.h> before us.
26674         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
26675         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
26676         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
26677         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
26678         if not declared, so that we can use getpass.c code from libc without
26679         rewriting it.
26680         (flockfile, ftrylockfile, funlockfile): New macros.
26681
26682 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26683
26684         * modules/getpass: Depend on stdbool.
26685
26686 2003-10-08  Paul Eggert  <eggert@twinsun.com>
26687
26688         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
26689
26690 2003-10-07  Karl Berry  <karl@gnu.org>
26691
26692         * config/config.{guess,sub}: update from config.
26693
26694 2003-10-06  Jim Meyering  <jim@meyering.net>
26695             Bruno Haible  <bruno@clisp.org>
26696
26697         This lets translators provide better translations for the
26698         "Written by ..." part of --version output.
26699         * lib/version-etc.h: Include stdarg.h.
26700         (version_etc_copyright): Declare as readonly.
26701         (version_etc): Make this function variadic with a NULL-terminated list
26702         of author name strings.
26703         (version_etc_va): New declaration.
26704         * lib/version-etc.c: Include stdarg.h, stdlib.h.
26705         (version_etc_copyright): Declare as readonly.
26706         (version_etc_va): New function. Provide a different translatable string
26707         for each possible number of authors < 10. Abbreviate when there are 10
26708         authors or more.
26709         (version_etc): Make this function variadic. Call version_etc_va.
26710         Suggestion from Gary V. Vaughan.
26711
26712         * lib/long-options.h (parse_long_options): Change prototype: the
26713         authors string is moved to the end and becomes variadic.
26714         * lib/long-options.c: Include stdarg.h.
26715         (parse_long_options): Make this function variadic, too.
26716         Call version_etc_va, not version_etc.
26717
26718 2003-10-06  Bruno Haible  <bruno@clisp.org>
26719
26720         * modules/version-etc-2: Remove file.
26721         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
26722
26723 2003-10-06  Bruno Haible  <bruno@clisp.org>
26724
26725         * modules/fatal-signal: New file.
26726         * MODULES.html.sh (func_all_modules): Add fatal-signal.
26727
26728 2003-10-06  Bruno Haible  <bruno@clisp.org>
26729
26730         * m4/fatal-signal.m4: New file.
26731         * m4/signalblocking.m4: New file, from GNU gettext.
26732
26733 2003-10-06  Bruno Haible  <bruno@clisp.org>
26734
26735         * lib/version-etc-2.h: Remove file.
26736         * lib/version-etc-2.c: Remove file.
26737
26738 2003-10-06  Bruno Haible  <bruno@clisp.org>
26739
26740         * lib/fatal-signal.h: New file, from GNU gettext.
26741         * lib/fatal-signal.c: New file, from GNU gettext.
26742
26743 2003-10-05  Paul Eggert  <eggert@twinsun.com>
26744
26745         * README: Rework advice for preventing empty .o files.
26746         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
26747         not <sys/types.h>.
26748
26749 2003-10-04  Karl Berry  <karl@gnu.org>
26750
26751         * lib/argp*: update from libc.
26752
26753 2003-10-04  Karl Berry  <karl@gnu.org>
26754
26755         * config/config.{guess,sub}: update from config.
26756
26757 2003-10-02  Bruno Haible  <bruno@clisp.org>
26758
26759         * modules/lchown (Include): Add lchown.h.
26760         * modules/time_r (Include): Use "..." syntax.
26761         * modules/xgetdomainname (Include): Add xgetdomainname.h.
26762
26763 2003-10-01  Simon Josefsson  <jas@extundo.com>
26764
26765         * MODULES.html.sh (func_all_modules): Move gethostname from section
26766         'based on' to section 'lacking' POSIX:2001.
26767
26768 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
26769
26770         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
26771         to output mode on the same stream.
26772
26773 2003-09-29  Paul Eggert  <eggert@twinsun.com>
26774
26775         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
26776         Fix arg typo in previous patch.
26777
26778 2003-09-28  Jim Meyering  <jim@meyering.net>
26779
26780         * lib/error.c: Correct cpp indentation.
26781
26782 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26783
26784         * modules/free: New file.
26785
26786 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26787
26788         * m4/free.m4: New file.
26789
26790 2003-09-27  Paul Eggert  <eggert@twinsun.com>
26791
26792         * lib/minmax.h (MIN, MAX)
26793         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
26794         Omit the special code that used __typeof__, since we worry that
26795         it could be more trouble than it's worth.  See:
26796         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
26797         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
26798
26799         * lib/free.c: New file.
26800
26801 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
26802
26803         Trivial fixes to Makefile.am parts of module listings.
26804         * modules/strstr: Append strstr.h to lib_SOURCES.
26805         * modules/strcase: Likewise, for strcase.h.
26806
26807 2003-09-27  Karl Berry  <karl@gnu.org>
26808
26809         * config/mkinstalldirs: update from automake.
26810
26811 2003-09-26  Paul Eggert  <eggert@twinsun.com>
26812
26813         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
26814         (error_tail): Do not loop, reallocating temporary buffer, since
26815         the output cannot contain more wide characters than the input
26816         contains bytes, the size must be big enough already.  This avoids
26817         one potential size overflow calculation.  Check for size overflow
26818         when calculating temporary buffer size.  Free temporary buffer
26819         when done, if it was allocated with malloc; this plugs a memory
26820         leak.  Remove casts from void * to pointers, that are no longer
26821         needed now that we're assuming C89 or better.
26822
26823         Merge error changes from glibc.
26824
26825         * lib/error.c, error.h: Update copyright notice header to match glibc.
26826         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
26827         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
26828         Disable cancellation while printing error.
26829         * lib/error.h: Prepend __ to parameter names.
26830
26831 2003-09-26  Jim Meyering  <jim@meyering.net>
26832
26833         * lib/error.c (error_tail): Move some declarations
26834         into inner scope where the local variables are used.
26835
26836 2003-09-26  Bruno Haible  <bruno@clisp.org>
26837
26838         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
26839         stpncpy().
26840         Don't define stpncpy through config.h; it's now done through stpncpy.h.
26841
26842 2003-09-26  Bruno Haible  <bruno@clisp.org>
26843
26844         * lib/stpncpy.h (gnu_stpncpy): New declaration.
26845         (stpncpy): Define as alias for gnu_stpncpy.
26846         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
26847
26848 2003-09-25  Simon Josefsson  <jas@extundo.com>
26849
26850         * lib/xgetdomainname.h: New file.
26851         * lib/xgetdomainname.c: New file.
26852
26853 2003-09-25  Simon Josefsson  <jas@extundo.com>
26854             Bruno Haible  <bruno@clisp.org>
26855
26856         * modules/getdomainname: New file.
26857         * modules/xgetdomainname: New file.
26858         * MODULES.html.sh (func_all_modules): Add getdomainname,
26859         xgetdomainname.
26860
26861 2003-09-25  Simon Josefsson  <jas@extundo.com>
26862             Bruno Haible  <bruno@clisp.org>
26863
26864         * m4/getdomainname.m4: New file.
26865
26866 2003-09-25  Simon Josefsson  <jas@extundo.com>
26867             Bruno Haible  <bruno@clisp.org>
26868
26869         * lib/getdomainname.h: New file.
26870         * lib/getdomainname.c: New file.
26871
26872 2003-09-25  Karl Berry  <karl@gnu.org>
26873
26874         * lib/argp-fmtstream.c, argp-help.c: update from libc.
26875
26876 2003-09-25  Karl Berry  <karl@gnu.org>
26877
26878         * config/install-sh: update from automake.
26879
26880 2003-09-25  Bruno Haible  <bruno@clisp.org>
26881
26882         * modules/version-etc-2: New file, from modules/version-etc with
26883         modifications.
26884         * MODULES.html.sh (func_all_modules): Add version-etc-2.
26885
26886 2003-09-25  Bruno Haible  <bruno@clisp.org>
26887
26888         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
26889         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
26890
26891 2003-09-24  Simon Josefsson  <jas@extundo.com>
26892
26893         * modules/xgethostname: Add xgethostname.h.
26894
26895 2003-09-24  Paul Eggert  <eggert@twinsun.com>
26896
26897         * lib/linebuffer.c (freebuffer): Don't free the argument, just
26898         the buffer associated with the argument.  Bug reported by
26899         Simon Josefsson.
26900
26901 2003-09-24  Paul Eggert  <eggert@twinsun.com>
26902
26903         * README: Document assumptions that 'int' is at least 32 bits
26904         wide, that integer arithmetic is 2's complement without overflow,
26905         that there are no holes in integer values, that adding sizes of
26906         two nonoverlapping objects can't overflow, and that all-bits-zero
26907         yields scalar zero.  Fix spelling and capitalization typos.
26908
26909 2003-09-19  Karl Berry  <karl@gnu.org>
26910
26911         * lib/argp.h: update from libc.
26912
26913 2003-09-17  Paul Eggert  <eggert@twinsun.com>
26914
26915         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
26916         to avoid spurious warnings like "AC_RUN_IFELSE was called before
26917         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
26918
26919 2003-09-17  Paul Eggert  <eggert@twinsun.com>
26920
26921         * gnulib-tool: Use "test -h", not "test -L", for portability
26922         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
26923         (tags_regexp): Remove, since \| doesn't conform to POSIX.
26924         (sed_extract_prog): Issue s commands one-by-one, rather than
26925         using \| in one s command.
26926
26927 2003-09-16  Paul Eggert  <eggert@twinsun.com>
26928
26929         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
26930         input error, instead of returning NULL the next time we are called
26931         (and therefore losing track of errno).
26932
26933 2003-09-16  Bruno Haible  <bruno@clisp.org>
26934
26935         * gnulib-tool (func_create_testdir): Warn about duplicated
26936         dependencies.
26937
26938 2003-09-15  Paul Eggert  <eggert@twinsun.com>
26939
26940         * modules/argmatch, modules/fatal, modules/obstack,
26941         modules/xalloc, modules/xgethostname: Sort dependencies by
26942         importance, not alphabetically.
26943
26944 2003-09-15  Paul Eggert  <eggert@twinsun.com>
26945
26946         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
26947         fails, so that the caller gets the proper errno.
26948
26949         * lib/readutmp.c (read_utmp): Likewise.
26950         Check for fstat error.  Close stream and free storage
26951         when failing.
26952
26953 2003-09-14  Karl Berry  <karl@gnu.org>
26954
26955         * config/srclist.txt (strdup.c): disable for c89 changes.
26956
26957 2003-09-14  Jim Meyering  <jim@meyering.net>
26958
26959         * lib/getloadavg.c: Correct cpp indentation.
26960         * lib/strdup.c: Likewise.
26961         * lib/vasnprintf.c: Likewise.
26962
26963 2003-09-14  Bruno Haible  <bruno@clisp.org>
26964
26965         * modules/fwriteerror: New file.
26966         * MODULES.html.sh (func_all_modules): Add fwriteerror.
26967
26968 2003-09-14  Bruno Haible  <bruno@clisp.org>
26969
26970         * lib/fwriteerror.h: New file.
26971         * lib/fwriteerror.c: New file.
26972
26973 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26974
26975         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
26976         modules/xgethostname, modules/xalloc: Depend on exit.
26977
26978 2003-09-12  Paul Eggert  <eggert@twinsun.com>
26979
26980         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
26981
26982         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
26983         and AC_MINIX, too, so that their extensions are available.
26984
26985         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
26986         This macro has been superseded by gl_BACKUPFILE.
26987
26988         More patches to assume C89 or better.
26989
26990         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
26991
26992         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
26993         unconditionally.
26994         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
26995         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
26996         Include <string.h>, <stdlib.h> unconditionally.
26997         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
26998         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
26999         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
27000         headers or for string.h.
27001         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
27002         or strtoul.
27003
27004         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
27005         headers.
27006         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
27007         * m4/userspec.m4 (gl_USERSPEC): Likewise.
27008         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
27009         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
27010         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
27011         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
27012         memcpy, memset.
27013         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
27014         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
27015         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
27016         strtol.
27017         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
27018         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
27019         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
27020         strtoul.
27021
27022 2003-09-12  Paul Eggert  <eggert@twinsun.com>
27023
27024         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
27025         * lib/obstack.c [!defined _LIBC]: Likewise.
27026         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
27027         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
27028         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
27029
27030         More changes to assume C89 or better.
27031
27032         * lib/error.c (error_tail): Assume vprintf.
27033
27034         * lib/argmatch.c (getenv): Remove decl.
27035         * lib/progreloc.c (get_full_program_name): Define via prototype.
27036         * lib/setenv.c (clearenv): Likewise.
27037         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
27038         needed.
27039         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
27040         (malloc, memcpy): Remove decls.
27041         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
27042         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
27043         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
27044         (memcpy): Remove macro.
27045         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
27046         (__P): Remove.  All uses removed.
27047         (PTR): Remove.  All uses changed to void *.
27048         (CHAR_BIT, NULL): Remove.
27049         (spaces, zeros, memset_space, memset_zero)
27050         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
27051         Remove.
27052         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
27053         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
27054         Define with prototype.
27055         Remove now-unnecessary prototype decl.
27056         (extra_args_spec): Assume ANSI C.  All uses changed.
27057         (extra_args_spec_iso): Remove.
27058         (my_strftime, emacs_strftimeu): Define via prototype.
27059         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
27060         unconditionally.
27061         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
27062         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
27063         (strtoul, strtol): Remove decls.
27064         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
27065         LONG_MAX): Remove.
27066         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
27067         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
27068         (LOCALE_PARAM_PROTO): New macro.
27069         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
27070         (INTERNAL (strtol), strtol): Define with a prototype.
27071         (PARAMS): Remove.  All uses removed.
27072         * lib/tempname.c: Include <string.h> unconditionally.
27073         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
27074         * lib/xgethostname.c (main): Define with a prototype.
27075         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
27076         Include <stdlib.h> unconditionally.
27077         (calloc, malloc, realloc, free): Remove decls.
27078         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
27079         Include <stdlib.h> unconditionally.  Sort include file names.
27080         (strtod): Remove.
27081         (xstrtod): Define with a prototype.
27082         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
27083         (strtol, strtoul): Remove decls.
27084
27085 2003-09-11  Paul Eggert  <eggert@twinsun.com>
27086
27087         More patches to assume C89 or better.
27088         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
27089         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
27090         string.h, memchr, STDC_HEADERS.
27091
27092 2003-09-11  Paul Eggert  <eggert@twinsun.com>
27093
27094         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
27095         Include <stdlib.h>, <string.h> unconditionally.
27096         Remove now-unnecessary cast to char *.
27097         * lib/strnlen.c: Include <string.h> unconditionally.
27098         * lib/yesno.c (yesno): Define with a prototype.
27099
27100 2003-09-11  Bruno Haible  <bruno@clisp.org>
27101
27102         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
27103
27104 2003-09-10  Jim Meyering  <jim@meyering.net>
27105
27106         * lib/error.c: Correct indentation of cpp directives.
27107
27108 2003-09-10  Bruno Haible  <bruno@clisp.org>
27109
27110         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
27111         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
27112         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
27113         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
27114         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
27115         <stdlib.h> and <string.h> checks.
27116         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
27117         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
27118
27119 2003-09-10  Bruno Haible  <bruno@clisp.org>
27120
27121         * lib/strcspn.c: Include <string.h> unconditionally.
27122         * lib/strpbrk.c: Include <string.h> unconditionally.
27123         * lib/strstr.c: Include <string.h> unconditionally.
27124         * lib/unicodeio.c: Include <string.h> unconditionally.
27125         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
27126         * lib/unsetenv.c: Likewise.
27127         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
27128         * lib/yesno.c: Include <stdlib.h> unconditionally.
27129         (rpmatch): Add prototype.
27130
27131 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27132
27133         More patches to assume C89 or better.
27134         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
27135         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
27136         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
27137         or for string.h.
27138         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
27139         stdlib.h.
27140         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
27141         C headers.
27142         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
27143         string.h.
27144         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
27145         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
27146         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
27147         or for string.h.
27148         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
27149         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
27150         C headers.
27151         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
27152         memcpy.
27153         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
27154         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
27155         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
27156         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
27157         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
27158         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
27159         string.h, free.
27160         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
27161         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
27162         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
27163         C headers, or for string.h.
27164         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
27165         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
27166         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
27167         headers, memory.h, stdlib.h, string.h, strings.h.
27168         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
27169         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
27170         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
27171         strchr.
27172         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
27173         headers, memory.h, string.h.
27174         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
27175         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
27176         free.
27177         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
27178         headers.
27179         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
27180         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
27181         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
27182         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
27183         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
27184
27185 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27186
27187         More K&R removal.
27188
27189         * lib/acosl.c (main): Use a prototype.
27190         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
27191         tanl.c: Likewise.
27192
27193         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
27194
27195         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
27196         (getopt, etopt_long, getopt_long_only, _getopt_internal)
27197         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
27198         with a prototype.
27199         * lib/getopt.c (const): Remove macro.
27200         Include <string.h> unconditionally.
27201         (my_index): Remove; all uses changed to strchr.
27202         (strlen): Remove decl.
27203         (exchange): Remove forward decl; no longer needed.
27204         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
27205         Define with prototype.
27206         * lib/getopt1.c (const): Remove macro.
27207         (getopt_long, getopt_long_only, main): Define with prototype.
27208
27209         * lib/getugroups.c: Include <string.h> unconditionally.
27210
27211         * lib/getusershell.c: Include <stdlib.h> unconditionally.
27212         (getusershell, setusershell, endusershell, readname, main):
27213         Define with prototypes.
27214
27215         * lib/group-member.c: Include group-member.h first.
27216         Include <stdlib.h> unconditionally.
27217
27218         * lib/hard-locale.c: Include hard-locale.h first.
27219         Include <stdlib.h>, <string.h> unconditionally.
27220
27221         * lib/hash.c (free, malloc): Remove decls.
27222         Include <stdlib.h> unconditionally.
27223
27224         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
27225         (getenv): Do not declare.
27226
27227         * lib/idcache.c: Include <string.h> unconditionally.
27228
27229         * lib/long-options.c: Include long-options.h first, to test interface.
27230         Include <stdlib.h> unconditionally.
27231
27232         * lib/makepath.c: Include makepath.h first, to test interface.
27233         Include <stdlib.h> and <string.h> unconditionally.
27234
27235         * lib/linebuffer.c: Include <stdlib.h>.
27236         (free): Remove decl.
27237
27238         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
27239         stddef.h. rpl_malloc returns void *, not char *.
27240         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
27241         prototype.
27242
27243         * lib/md5.h: Include <limits.h> unconditionally.
27244         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
27245         (__P): Remove; all uses removed.
27246         * lib/md5.c: Include "md5.h" first.
27247         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
27248         md5_buffer, md5_process_bytes, md5_process_block):
27249         Define with prototypes.
27250         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
27251         * lib/sha.c: Include "sha.h" first.
27252         Include <stdlib.h>, <string.h> unconditionally.
27253
27254         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
27255         * lib/memcmp.c (__ptr_t): Likewise.
27256         * lib/memrchr.c (__ptr_t): Likewise.
27257         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
27258         Include <string.h> unconditionally.
27259         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
27260         * lib/memchr.c: Include <stdlib.h> unconditionally.
27261         * lib/memchr.c (LONG_MAX): Remove.
27262         * lib/memrchr.c (LONG_MAX): Likewise.
27263         * lib/memchr.c (__memchr): Define via a prototype.
27264         * lib/memrchr.c (__memrchr): Likewise.
27265         * lib/memcmp.c (__P): Remove, and remove all uses.
27266         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
27267         Remove forward decls; no longer needed.
27268         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
27269         Use types required by C89 in prototype.
27270
27271         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
27272         * lib/savedir.c: Likewise.
27273         * lib/mkdir.c (free): Remove decl.
27274         * lib/rmdir.c (rmdir): Define with a prototype.
27275         * lib/savedir.c: Include savedir.h first, to test interface.
27276
27277         * lib/mktime.c (STDC_HEADERS): Remove.
27278         Include <stdlib.h>, <string.h> unconditionally.
27279
27280         * lib/modechange.c: Include <stdlib.h> unconditionally.
27281         (malloc): Remove decl.
27282
27283         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
27284         (free): Remove decl.
27285
27286         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
27287         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
27288         (This type really should be intptr_t, but that's a C99ism.)
27289         (_obstack_memcpy): Remove: all uses changed to memcpy.
27290         Include <string.h> unconditionally.
27291         (struct obstack): Assume __STDC__ for types of members
27292         chunkfun, freefun, extra_arg.
27293         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
27294         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
27295         obstack_begin, obstack_specify_allocation,
27296         obstack_specify_allocation_with_arg, obstack_chunkfun,
27297         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
27298         Remove unprototyped decls and the macros that use them.
27299         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
27300         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
27301         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
27302         (defined __STDC__ && __STDC__)]:
27303         Remove nonprototyped code.
27304         Include <stdlib.h> unconditionally.
27305         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
27306         _obstack_allocated_p, _obstack_free, obstack_free,
27307         _obstack_memory_used, print_and_abort):
27308         Define using prototypes.
27309         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
27310         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
27311         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
27312         obstack_next_free, obstack_object_size, obstack_room) [0]:
27313         Remove unused, unprototyped code.
27314
27315         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
27316
27317         * lib/physmem.c (physmem_total, physmem_available, main): Define
27318         with prototypes.
27319
27320         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
27321         (main): Define with a prototype.
27322
27323         * lib/posixver.c (getenv): Remove decl.
27324
27325         * lib/putenv.c (malloc): Returns void *, not char *.
27326         Include <string.h> unconditionally.
27327         (strchr, memcpy, NULL): Do not define.
27328
27329         * lib/readtokens.c: Include readtokens.h first, to test interface.
27330         Include <stdlib.h>, <string.h> unconditionally.
27331         (init_tokenbuffer): Define with a prototype.
27332
27333         * lib/regex.c (PARAMS): Remove.  All uses removed.
27334         All uses of _RE_ARGS removed, too.
27335         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
27336         unconditionally.
27337         (bzero): Assume memset exists.
27338         (memcmp, memcpy, NULL): Remove.
27339         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
27340         char, or assignments to local vars of type signed char.
27341         (init_syntax_once, PREFIX(extract_number_and_incr),
27342         PREFIX(print_partial_compiled_pattern),
27343         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
27344         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
27345         PREFIX(regex_grow_registers), PREFIX(regex_compile),
27346         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
27347         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
27348         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
27349         wcs_compile_range, byte_compile_range, truncate_wchar,
27350         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
27351         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
27352         count_mbs_length, wcs_re_match_2_internal,
27353         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
27354         PREFIX(alt_match_null_string_p),
27355         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
27356         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
27357         regfree, PREFIX(extract_number)): Define with prototype.  Remove
27358         now-unnecessary declaration, if any.
27359         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
27360         regcomp, regexec):
27361         Remove now-unnecessary casts among pointer types.
27362         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
27363
27364         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
27365         (free): Remove decl.
27366
27367         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
27368
27369         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
27370         (free): Remove decl.
27371
27372         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
27373         * lib/xgetcwd.c: Likewise.
27374
27375         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
27376         (free): Remove decl.
27377
27378         * lib/strchrnul.c (strchrnul): Define with a prototype.
27379         Fix bug: c_in was not converted to char before searching.
27380
27381         The following changes are not K&R related:
27382
27383         * lib/group-member.h: Include <sys/types.h>, so that this file is
27384         self-contained.
27385         * lib/makepath.h: Likewise.
27386
27387         * lib/getusershell.c (readname, default_index, line_size, readname):
27388         Use size_t, not int, for sizes.
27389         (readname): If the size overflows, report an error instead of
27390         looping forever.
27391
27392 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27393
27394         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
27395         libc.
27396
27397 2003-09-09  Paul Eggert  <eggert@twinsun.com>
27398
27399         * README: New section: portability guidelines.
27400
27401 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27402
27403         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
27404         C89 spec.
27405
27406 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
27407
27408         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
27409
27410 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27411
27412         Assume C89 or better; remove K&R cruft.
27413         A few of these changes were first proposed by Derek Robert Price
27414         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
27415
27416         * lib/addext.c: Include <string.h> unconditionally.
27417         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
27418         Don't declare getenv or malloc.
27419
27420         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
27421         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
27422         (NULL): Remove.
27423         (find_stack_direction, alloca): Use prototypes.
27424
27425         * lib/atexit.c (atexit): Define using a prototype.
27426
27427         * lib/basename.c, dirname.c, stripslash.c:
27428         Include <string.h> unconditionally.
27429
27430         * lib/bcopy.c: Include <stddef.h>.
27431         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
27432
27433         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
27434
27435         * lib/error.h (error, error_at_line, error_print_progname)
27436         [! (defined (__STDC__) && __STDC__)]: Remove decls.
27437         * lib/error.c: Include error.h first, to check interface.
27438         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27439         (VA_START): Remove; all uses changeed to va_start.
27440         (exit, strerror): Remove decls.
27441         (error_print_progname): Prototype uncondionally.
27442         Don't include <errno.h>; no longer needed.
27443         (private_strerror): Remove.
27444         (error_tail): Always define.
27445         (error, error_at_line): Assume C89 or better; always use prototypes.
27446         * lib/fatal.c: Include "fatal.h" first, to test interface.
27447         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
27448         (VA_START): Remove; all uses changed to va_start.
27449         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
27450         this case.
27451         (exit): Remove decl.
27452         (fatal): Prototype unconditionally.  Assume va_start works.
27453         Abort at end, to pacify gcc.
27454
27455         * lib/euidaccess.c (main): Define with a prototype.
27456
27457         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
27458
27459         * lib/exitfail.c: Include <stdlib.h> unconditionally.
27460
27461         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
27462         prototypes.
27463         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
27464         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
27465         (getenv): Remove decl.
27466         (fnmatch): Define using a prototype.
27467         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
27468         (FCT): Define using a prototype.
27469
27470         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
27471
27472         * lib/gethostname.c: Include <stddef.h>.
27473         (gethostname): Define with prototype.  Length is size_t, not int.
27474
27475 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27476
27477         Assume C89 or better; remove K&R cruft.
27478         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
27479         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
27480         string.h, getenv, malloc.
27481         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
27482         headers.
27483         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
27484         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
27485         do not check for strerror.
27486         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
27487         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
27488         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
27489         do not check for doprnt or vprintf.
27490         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
27491         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
27492
27493 2003-09-08  Paul Eggert  <eggert@twinsun.com>
27494
27495         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
27496         getversion.c should have been removed then, but was accidentally
27497         preserved.
27498
27499         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
27500         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
27501
27502 2003-09-08  Karl Berry  <karl@gnu.org>
27503
27504         * config/config.sub, config.guess, srclistvars.sh: update from savannah
27505                 config, forget about prep.
27506
27507         * config/depcomp, missing: update from automake.
27508
27509 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27510
27511         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
27512         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27513
27514 2003-09-07  Paul Eggert  <eggert@twinsun.com>
27515
27516         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
27517         copy_tm_result.  Bug reported by Simon Josefsson in
27518         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
27519
27520 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27521
27522         * m4/time_r.m4: New file.
27523         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
27524         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
27525         is. Check for timegm declaration.
27526         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
27527         Do not check for gmtime_r.
27528         Replace mktime if __mktime_internal does not exist and if mktime
27529         hasn't been replaced already.
27530
27531 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27532
27533         * lib/time_r.c, lib/time_r.h: New files.
27534
27535         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
27536         __localtime_r.
27537         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
27538         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
27539
27540         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
27541         __gmtime_r.
27542         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
27543         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
27544         Include <time_r.h>.
27545
27546         * lib/timegm.c: Switch to glibc implementation, with the following
27547         changes:
27548         [defined HAVE_CONFIG_H]: Include <config.h>.
27549         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
27550         (__mktime_internal) [!defined _LIBC]: New decl.
27551         (__gmtime_r) [!defined _LIBC]: New macro and function.
27552         (timegm): Use a prototype, since gnulib assumes C89.
27553         Do not bother declaring tmp to be const, as it's not really usefu.
27554         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
27555         (timegm): Declare only if HAVE_DECL_TIMEGM.
27556
27557 2003-09-06  Paul Eggert  <eggert@twinsun.com>
27558
27559         * MODULES.html.sh (func_all_modules): Add time_r.
27560         * modules/time_r: New file.
27561         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
27562         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
27563
27564 2003-09-03  Paul Eggert  <eggert@twinsun.com>
27565
27566         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
27567         Bug reported by Lute Kamstra in
27568         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
27569
27570         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
27571         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
27572         course with correspondingly smaller numbers for tomorrow and
27573         yesterday.  From Tadayoshi Funaba.  Originally installed into
27574         sh-utils on 1999-08-07, but the patch got lost (I guess during the
27575         coreutils merge?).
27576
27577 2003-08-31  Simon Josefsson  <jas@extundo.com>
27578
27579         * modules/timegm: New file.
27580         * MODULES.html.sh (func_all_modules): Add timegm.
27581
27582 2003-08-31  Simon Josefsson  <jas@extundo.com>
27583
27584         * m4/timegm.m4: New file.
27585
27586 2003-08-31  Simon Josefsson  <jas@extundo.com>
27587
27588         * lib/timegm.h: New file.
27589         * lib/timegm.c: New file.  Based on
27590         wget-1.8.2/src/http.c:mktime_from_utc.
27591
27592 2003-08-31  Karl Berry  <karl@gnu.org>
27593
27594         * lib/argp.h: update from libc.
27595
27596 2003-08-28  Bruno Haible  <bruno@clisp.org>
27597
27598         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
27599         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
27600         followed by '#define fnmatch fnmatch_posix' gives an error.
27601
27602 2003-08-28  Bruno Haible  <bruno@clisp.org>
27603
27604         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
27605         warning on QNX, which defines O_BINARY to 000000.
27606
27607 2003-08-27  Jim Meyering  <jim@meyering.net>
27608
27609         * m4/mkstemp.m4: Require that the system mkstemp be able to create
27610         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
27611         would fail after 32.  Reported by Danny Levinson.  Details here:
27612         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
27613
27614 2003-08-24  Bruno Haible  <bruno@clisp.org>
27615
27616         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
27617         MSVC7 <stdio.h> is included later.
27618
27619 2003-08-22  Simon Josefsson  <jas@extundo.com>
27620
27621         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
27622
27623 2003-08-20  Karl Berry  <karl@gnu.org>
27624
27625         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
27626
27627 2003-08-20  Bruno Haible  <bruno@clisp.org>
27628
27629         * modules/progname: New file.
27630         * MODULES.html.sh (func_all_modules): Add progname.
27631
27632 2003-08-20  Bruno Haible  <bruno@clisp.org>
27633
27634         * lib/progname.h: New file, from GNU gettext.
27635         * lib/progname.c: New file, from GNU gettext.
27636         * lib/progreloc.c: New file, from GNU gettext.
27637
27638 2003-08-19  Jim Meyering  <jim@meyering.net>
27639
27640         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
27641         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
27642
27643 2003-08-19  Bruno Haible  <bruno@clisp.org>
27644
27645         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
27646         more.
27647
27648 2003-08-19  Bruno Haible  <bruno@clisp.org>
27649
27650         * lib/xstrdup.c: Assume <string.h> exists.
27651
27652 2003-08-18  Paul Eggert  <eggert@twinsun.com>
27653
27654         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
27655         in makefile rules.
27656
27657 2003-08-18  Jim Meyering  <jim@meyering.net>
27658
27659         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
27660         * m4/lib-ld.m4: Likewise.
27661
27662 2003-08-18  Jim Meyering  <jim@meyering.net>
27663
27664         * lib/setenv.h: Indent nested cpp directive.
27665         * lib/vasnprintf.c: Remove trailing blanks.
27666
27667 2003-08-17  Simon Josefsson  <jas@extundo.com>
27668
27669         * modules/xstrndup: New file.
27670         * MODULES.html.sh (func_all_modules): Add xstrndup.
27671
27672 2003-08-17  Simon Josefsson  <jas@extundo.com>
27673
27674         * modules/argp: Fix autoconf macro name. Add more dependencies.
27675
27676 2003-08-17  Simon Josefsson  <jas@extundo.com>
27677
27678         * m4/xstrndup.m4: New file.
27679
27680 2003-08-17  Simon Josefsson  <jas@extundo.com>
27681
27682         * m4/argp.m4: New file.
27683
27684 2003-08-17  Simon Josefsson  <jas@extundo.com>
27685             Bruno Haible  <bruno@clisp.org>
27686
27687         * lib/xstrndup.h: New file.
27688         * lib/xstrndup.c: New file.
27689
27690 2003-08-17  Bruno Haible  <bruno@clisp.org>
27691
27692         * modules/strndup (Files, Include): Add lib/strndup.h.
27693
27694 2003-08-17  Bruno Haible  <bruno@clisp.org>
27695
27696         * modules/euidaccess (Files): Add lib/euidaccess.h.
27697
27698 2003-08-17  Bruno Haible  <bruno@clisp.org>
27699
27700         * lib/strndup.h: New file.
27701
27702 2003-08-17  Bruno Haible  <bruno@clisp.org>
27703
27704         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
27705         like AC_GNU_SOURCE.
27706         * modules/extensions (configure.ac): Comment out the invocation of
27707         gl_USE_SYSTEM_EXTENSIONS.
27708
27709 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27710
27711         Merges from coreutils, etc.
27712         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
27713         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
27714         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
27715         fixing a typo.
27716         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
27717         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
27718
27719 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27720
27721         Document merge from coreutils.
27722         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
27723         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
27724         * modules/utime: Add m4/utimes-null.m4.
27725
27726 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27727
27728         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
27729         space, undoing this 2003-08-12 change:
27730         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
27731
27732 2003-08-16  Paul Eggert  <eggert@twinsun.com>
27733
27734         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
27735         strtoul.c from libc, undoing this 2003-08-12 change:
27736         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
27737
27738 2003-08-16  Jim Meyering  <jim@meyering.net>
27739
27740         Merges from coreutils.
27741         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
27742         prefix.  Adjust cache variables similarly.  Create 500 rather than
27743         just 300 files, to exercise bug on Darwin6.5, too.
27744         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
27745         $missing_dir.
27746         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
27747         AM_SYS_POSIX_TERMIOS.
27748         Reported by mkc@mathdogs.com.
27749         Also change use of $am_cv_sys_posix_termios
27750         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
27751         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
27752         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
27753         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
27754         in /proc/mounts until it finds one with matching device number.  This
27755         is unnecessary when the FILE argument *is* a mount point.  No stat call
27756         is necessary in that case.  So, disable the statvfs-testing code on
27757         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
27758         as RedHat bug# 84846.
27759         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
27760         to 1MB, so as not to render systems with no stack size limit (e.g.,
27761         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
27762         Include <unistd.h>.  On some systems,
27763         it is required for the definition of _SC_PAGESIZE.
27764
27765 2003-08-16  Jim Meyering  <jim@meyering.net>
27766
27767         Merge from coreutils.
27768         * lib/xstrtoimax.c: #else #if -> #elif.
27769         * lib/xstrtoumax.c: Likewise.
27770
27771 2003-08-16  Jim Meyering  <jim@meyering.net>
27772
27773         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
27774         * m4/utimes.m4: Removed.
27775         * m4/utimes-null.m4: Renamed from utimes.m4.
27776
27777         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
27778         to 1MB, so as not to render systems with no stack size limit (e.g.,
27779         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
27780         Include <unistd.h>.  On some systems,
27781         it is required for the definition of _SC_PAGESIZE.
27782
27783 2003-08-16  Jim Meyering  <jim@meyering.net>
27784         and Paul Eggert  <eggert@cs.ucla.edu>
27785
27786         Merges from coreutils, etc.
27787
27788         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
27789         using the latest version from cvs.  This avoids problems with #line
27790         directives using a vendor (Sun) compiler.
27791         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
27792         Don't set GETGROUPS_LIB here; now it's
27793         done via getgroups.m4's wrapper function.
27794         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
27795         rather than just in sh-util/configure.in, so that the
27796         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
27797         same.
27798         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
27799         AC_FUNC_GETLOADAVG where to find getloadavg.c.
27800         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
27801         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
27802         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
27803         Remove code that is now done by the newly-required macros.
27804         Append $(EXEEXT) to DF_PROG.
27805         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
27806         Do not invoke or require the following here,
27807         since prereq.m4 or some gnulib .m4 now does this for us:
27808         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
27809         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
27810         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
27811         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
27812         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
27813         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
27814         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
27815         AC_FUNC_OBSTACK.
27816         Do not replace the following functions, as this is now the job
27817         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
27818         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
27819         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
27820         atexit getpass, strdup, getpagesize.
27821         Replace 'raise'.
27822         Do not check for the following functions, as this is now the job
27823         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
27824         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
27825         setregid.
27826         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
27827         Check for sys/sysctl.h.
27828         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
27829         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
27830         of checking for ssize_t ourselves.
27831
27832         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
27833         Require every macro that gnulib/modules/* suggests for us.
27834         (jm_PREREQ_ADDEXT): New macro.
27835         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
27836         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
27837
27838         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
27839         (gl_PHYSMEM): Use it.
27840         Also check for `table' function.
27841         Check for new headers and functions.
27842         Add check for sys/sysmp.h.
27843         With suggestions from Kaveh Ghazi.
27844         Ignore headers that are present but cannot be compiled.  This
27845         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
27846         C 5.4.
27847
27848 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27849
27850         Document merge from coreutils.
27851         * modules/userspec: Depend on posixver.
27852         * modules/strftime: Depend on tzset.
27853
27854 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27855
27856         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
27857         rather than tab, after '#' in shell-script copyright notices.
27858         Suggested by Bruno Haible.
27859
27860 2003-08-15  Paul Eggert  <eggert@twinsun.com>
27861
27862         * config/srclist-update: Use three spaces, rather than tab, after '#'
27863         in shell-script copyright notices.  Suggested by Bruno Haible.
27864         Remove unnecessary parenthesization in regular expression.
27865
27866 2003-08-15  Jim Meyering  <jim@meyering.net>
27867
27868         Merge from coreutils.
27869         * lib/xgethostname.c: Include <stdlib.h>.
27870         (xghostname): Don't exit for anything other than memory-related
27871         failure; just return NULL.
27872         * lib/userspec.c: Include "posixver.h".
27873         (parse_user_spec): Accept `.' as a separator only
27874         in pre-POSIX-200112 mode.
27875         * lib/strtoimax.c: Use #elif rather than #else #if.
27876         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
27877         Remove function, now that we can rely on a working tzset function.
27878         [!_LIBC]: Ensure that the required autoconf test has been run.
27879         [!defined _NL_CURRENT && HAVE_STRFTIME]:
27880         Use underlying_strftime for %r.
27881         * lib/sha.c: Merge in some clean-up and optimization changes from
27882         glibc.
27883         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
27884         Ensure that it is a multiple of 64.
27885         Rearrange loop exit tests so as to avoid performing an
27886         additional fread after encountering an error or EOF.
27887         * lib/realloc.c: Update copyright date.
27888
27889 2003-08-15  Jim Meyering  <jim@meyering.net>
27890         and Paul Eggert  <eggert@twinsun.com>
27891
27892         Merge from coreutils.
27893         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
27894         member but strut utmpx does not.  Needed for AIX 4.3.3.
27895         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
27896
27897 2003-08-15  Jim Meyering  <jim@meyering.net>
27898         and Paul Eggert  <eggert@cs.ucla.edu>
27899
27900         Merges from coreutils, etc.
27901         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
27902         Require gl_FUNC_TZSET_CLOBBER.
27903         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
27904         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
27905         members.
27906
27907 2003-08-14  Paul Eggert  <eggert@twinsun.com>
27908
27909         Help the merge from coreutils.
27910         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
27911         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
27912         * m4/tzset.m4: Use it too.
27913
27914 2003-08-14  Paul Eggert  <eggert@twinsun.com>
27915
27916         * modules/tzset: New file.
27917
27918 2003-08-14  Jim Meyering  <jim@meyering.net>
27919
27920         Merges from coreutils.
27921         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
27922         variable names, rather than @FNMATCH_H@.
27923         * modules/alloca: Likewise for $(ALLOCA_H).
27924
27925         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
27926         the three copies of the literal target, `fnmatch.h'.
27927         * modules/alloca (alloca.h): Likewise.
27928
27929 2003-08-14  Jim Meyering  <jim@meyering.net>
27930
27931         Merge from coreutils.
27932         * m4/tzset.m4: New file.
27933         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
27934         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
27935         otherwise, AIX 5.1 systems would end up using the latter.
27936         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
27937         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
27938         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
27939         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
27940
27941 2003-08-14  Jim Meyering  <jim@meyering.net>
27942
27943         Merge from coreutils.
27944         * lib/obstack.h: Whitespace changes.
27945         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
27946         and xcalloc return values.
27947         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
27948         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
27949         hang on OSF/1 5.1 for DIR on both local and remote file systems.
27950         Reported by (and fix confirmed by) Nelson H. F. Beebe.
27951         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
27952         error from mntctl.
27953         Use mntctl's return value to drive the entry-processing loop, since
27954         we can't rely on the value of the vmt_length member in the last
27955         entry.  On some systems doing so could result in exhausting
27956         virtual memory.  Based in part on a patch from Mike Jetzer.
27957
27958 2003-08-14  Jim Meyering  <jim@meyering.net>
27959         and Paul Eggert  <eggert@twinsun.com>
27960
27961         Merges from coreutils, plus other fixes.
27962         * lib/physmem.c: Merge in portability changes from gcc/libiberty
27963         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
27964         for credits and details.  Thanks to Kaveh Ghazi for helping
27965         to keep these files in sync.
27966         (ARRAY_SIZE): Define it.
27967         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
27968         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
27969         (memcasecmp): Don't assume size_t fits in unsigned int.
27970         Remove casts and duplicate code.
27971         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
27972         (memcpy): Remove definition.
27973         Merge in some clean-up and optimization changes from glibc.
27974         [BLOCKSIZE]: Move definition to top of file.
27975         Ensure that it is a multiple of 64.
27976         Rearrange loop exit tests so as to avoid performing an
27977         additional fread after encountering an error or EOF.
27978         * lib/md5.h (md5_uintptr): Define.
27979         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
27980         return to the initial working directory.  Preserve errno
27981         for caller.
27982         * lib/idcache.c: Include "xalloc.h".
27983         (xmalloc, xrealloc): Remove decls.
27984         (getuser): Remove casts no longer required in C89.
27985         * lib/human.c: Include stdio.h, for sprintf.
27986         * lib/group-member.c: Include "xalloc.h".
27987         (xmalloc, xrealloc): Remove decls.
27988         (get_group_info): Remove casts no longer required in C89.
27989         * lib/getusershell.c (readname): Remove casts no longer required in
27990         C89.
27991         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
27992         * lib/getline.c: Whitespace fix, from coreutils.
27993
27994 2003-08-13  Paul Eggert  <eggert@twinsun.com>
27995
27996         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
27997         Check for isascii.
27998
27999         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
28000         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
28001         Undo previous (whitespace-only) change.
28002
28003 2003-08-13  Paul Eggert  <eggert@twinsun.com>
28004
28005         * lib/exclude.c: Include <ctype.h>
28006         (IN_CTYPE_DOMAIN): New macro.
28007         (is_space): New fn.
28008         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
28009         and empty lines.
28010
28011         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
28012         Undo previous (whitespace-only) change.
28013
28014 2003-08-13  Paul Eggert  <eggert@twinsun.com>
28015
28016         * config/srclist-update: Change update back to the old behavior,
28017         leaving whitespace alone.  Use one 'sed' command rather than a
28018         pipeline.
28019         (fixlicense): Now a variable, not a function.
28020         (remove_trailing_blanks): Remove.
28021         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
28022         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
28023         Undo previous (whitespace-only) change.
28024
28025 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28026
28027         Merge from coreutils.
28028         * modules/euidaccess: Add lib_SOURCES, include for new
28029         file euidaccess.h
28030
28031 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28032
28033         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
28034         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
28035         Normalize leading white space and remove trailing white space.
28036
28037         Merge from coreutils
28038         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
28039
28040         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
28041         0.12.1.  These files are now being upgraded automatically by
28042         ../config/srclist-update.
28043
28044 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28045
28046         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
28047         Normalize leading white space and remove trailing white space.
28048         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
28049         notice, as per ../config/srclist-update.
28050
28051         Merge from coreutils.
28052         * lib/euidaccess.h: New file.
28053         * lib/euidaccess.c: Include it.
28054         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
28055         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
28056         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
28057
28058 2003-08-12  Paul Eggert  <eggert@twinsun.com>
28059
28060         * config/srclist-update: Add copyright notice.
28061         (remove_id_lines, remove_trailing_blanks): New constants.
28062         (fixfile): Use them to normalize spacing a bit in copied files.
28063         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
28064         Normalize leading white space and remove trailing white space.
28065
28066         * config/texinfo.tex: Sync with texinfo.
28067
28068         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
28069         strtoul.c from libc, to merge coreutils whitespace changes.
28070
28071         * config/srclist.txt: Get the following m4 files from gettext:
28072         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
28073         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
28074         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
28075         wint_t.m4.
28076
28077 2003-08-12  Karl Berry  <karl@gnu.org>
28078
28079         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
28080         been made.
28081
28082 2003-08-11  Paul Eggert  <eggert@twinsun.com>
28083
28084         * modules/gnu-source, m4/gnu-source.m4:
28085         Remove; we're assuming Autoconf 2.54 or later now.
28086         Suggested by Bruno Haible.
28087         * MODULES.html.sh (func_all_modules): Remove gnu-source.
28088
28089 2003-08-11  Bruno Haible  <bruno@clisp.org>
28090
28091         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
28092
28093 2003-08-11  Bruno Haible  <bruno@clisp.org>
28094
28095         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
28096         (vasnprintf): Use it instead of wcslen.
28097
28098 2003-08-11  Bruno Haible  <bruno@clisp.org>
28099
28100         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
28101         value to ensure that _Bool promotes to int. Use #define for _Bool when
28102         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
28103
28104 2003-08-10  Karl Berry  <karl@gnu.org>
28105
28106         * lib/regex.h: update from libc (whitespace fix).
28107
28108 2003-08-09  Paul Eggert  <eggert@twinsun.com>
28109
28110         Merge some files from coreutils.  These changes were
28111         originally made by Jim Meyering.
28112         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
28113         many older Unixes require this.
28114         * lib/alloca.c (alloca): Remove cast to argument of free;
28115         no longer needed in C89.
28116         * lib/alloca_.h, regex.h: Fix white space to match
28117         what GNU indent does.
28118
28119 2003-08-09  Paul Eggert  <eggert@twinsun.com>
28120
28121         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
28122         apparently Emacs's Unicode mode got confused before my 2003-08-05
28123         checkin.
28124
28125 2003-08-08  Paul Eggert  <eggert@twinsun.com>
28126
28127         * m4/extensions.m4: New file.
28128         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
28129         Require gl_USE_SYSTEM_EXTENSIONS.
28130         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
28131         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
28132
28133 2003-08-08  Paul Eggert  <eggert@twinsun.com>
28134
28135         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
28136         * modules/extensions, modules/gnu-source: New files.
28137         * modules/timespec, modules/unlocked-io: Depend on extensions.
28138
28139 2003-08-07  Paul Eggert  <eggert@twinsun.com>
28140
28141         * modules/restrict: New file.
28142         * MODULES.html.sh (func_all_modules): Add restrict.
28143         * modules/regex: Depend on restrict.
28144
28145 2003-08-07  Paul Eggert  <eggert@twinsun.com>
28146
28147         * m4/restrict.m4: New file.
28148         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
28149
28150 2003-08-07  Bruno Haible  <bruno@clisp.org>
28151
28152         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
28153         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
28154
28155 2003-08-07  Bruno Haible  <bruno@clisp.org>
28156
28157         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
28158         makes the module 'getndelim2' compatible with the module 'getline'.
28159
28160 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28161
28162         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
28163         byte with "\201" to avoid glitches when editing that source file
28164         with multi-gnome-terminal.
28165
28166 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28167
28168         * lib/bumpalloc.h: Remove.
28169
28170 2003-08-05  Paul Eggert  <eggert@twinsun.com>
28171
28172         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
28173         * modules/bumpalloc: Remove.
28174
28175 2003-08-04  Paul Eggert  <eggert@twinsun.com>
28176
28177         * lib/getloadavg.c: Change copyright notice and spacing to conform to
28178         GNU coding style.
28179
28180         Merge from coreutils.
28181         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
28182         1. From glibc.
28183         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
28184         from Karl Berry, implemented by Jim Meyering.
28185         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
28186         from Dmitry V. Levin.
28187         Remove anachronistic cast of xrealloc.
28188         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
28189         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
28190         type. Otherwise, it wouldn't compile with at least /bin/cc on
28191         ymp-cray-unicos9.0.2.X.
28192         Combine two mostly-identical uses of alloca into one.
28193         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
28194
28195 2003-08-04  Dave Love  <d.love@dl.ac.uk>
28196
28197         [From Emacs.]
28198
28199         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
28200         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
28201         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
28202         obsolete NLIST_NAME_UNION.
28203         [__GNU__]: Undef BSD and FSCALE.
28204         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
28205
28206 2003-08-03  Paul Eggert  <eggert@twinsun.com>
28207
28208         * lib/stdbool_.h (_Bool): Make it signed char, instead of
28209         an enum type, so that it's guaranteed to promote to int.  See:
28210         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
28211
28212 2003-08-03  Karl Berry  <karl@gnu.org>
28213
28214         * config/depcomp: update from automake.
28215
28216 2003-07-31  Paul Eggert  <eggert@twinsun.com>
28217
28218         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
28219         (strerror): Don't assume that a printable int fits in 14 bytes.
28220
28221 2003-07-31  Bruno Haible  <bruno@clisp.org>
28222
28223         * modules/getpass-gnu: New file.
28224         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
28225
28226 2003-07-31  Bruno Haible  <bruno@clisp.org>
28227
28228         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
28229
28230 2003-07-24  Karl Berry  <karl@gnu.org>
28231
28232         * config/missing: update from automake.
28233
28234 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
28235             Bruno Haible  <bruno@clisp.org>
28236
28237         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
28238         * lib/getline.c (getline, getdelim): Likewise.
28239         Remove _GNU_SOURCE define; now it's defined in config.h through
28240         m4/getline.m4.
28241
28242 2003-07-23  Karl Berry  <karl@gnu.org>
28243
28244         * config/config.sub: update from prep.
28245
28246 2003-07-22  Paul Eggert  <eggert@twinsun.com>
28247
28248         * modules/xalloc (Depends-on): Add exitfail.
28249         * modules/xmemcoll: Likewise.
28250
28251 2003-07-22  Paul Eggert  <eggert@twinsun.com>
28252
28253         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
28254         over-parenthesization in macros.
28255
28256         Sync with coreutils.
28257
28258         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
28259         required by C99.
28260
28261         Use `exit_failure' for xalloc and xmemcoll instead of their own
28262         private exit-failure variables.
28263         * lib/xalloc.h (xalloc_exit_failure): Remove.
28264         * lib/xmalloc.c: Likewise.  Include exitfail.h.
28265         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
28266         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
28267         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
28268         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
28269
28270 2003-07-20  Jim Meyering  <jim@meyering.net>
28271
28272         * modules/closeout (Depends-on): Add exitfail.
28273         Suggestion from Bruno Haible.
28274
28275 2003-07-19  Karl Berry  <karl@gnu.org>
28276
28277         * config/config.sub: update from prep.
28278
28279 2003-07-18  Paul Eggert  <eggert@twinsun.com>
28280
28281         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
28282         Remove.
28283         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
28284         to test that it can stand by itself.  Include "exitfail.h".
28285         Clients should set exit_failure instead.
28286         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
28287
28288 2003-07-18  Bruno Haible  <bruno@clisp.org>
28289
28290         * modules/getndelim2: New file.
28291         * modules/getline: Share files with module getndelim2.
28292         * modules/getnline: Depend on getndelim2 instead of sharing files with
28293         it. Add getnline.c to lib_SOURCES.
28294         * MODULES.html.sh (func_all_modules): Add getndelim2.
28295
28296 2003-07-18  Bruno Haible  <bruno@clisp.org>
28297
28298         * m4/getndelim2.m4: New file.
28299         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
28300         invoke gl_PREREQ_GETNDELIM2.
28301         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
28302         gl_PREREQ_GETNDELIM2.
28303         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
28304         gl_GETNDELIM2.
28305
28306 2003-07-18  Bruno Haible  <bruno@clisp.org>
28307
28308         * lib/getndelim2.h: New file.
28309         * lib/getndelim2.c: Make into a module of its own. Include config.h,
28310         getndelim2.h.
28311         (getndelim2): Make non-static. Change return type to ssize_t.
28312         * lib/getline.h: Change argument names.
28313         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
28314         * lib/getnline.c: Include getndelim2.h.
28315
28316 2003-07-18  Andreas Schwab  <schwab@suse.de>
28317
28318         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
28319
28320 2003-07-17  Karl Berry  <karl@gnu.org>
28321
28322         * config/config.sub: update from prep.
28323
28324 2003-07-17  Bruno Haible  <bruno@clisp.org>
28325
28326         * modules/getnline: New file.
28327         * modules/getline: Add lib/getndelim2.c to source file list.
28328         * MODULES.html.sh (func_all_modules): Add getnline.
28329
28330 2003-07-17  Bruno Haible  <bruno@clisp.org>
28331
28332         * m4/getnline.m4: New file.
28333
28334 2003-07-17  Bruno Haible  <bruno@clisp.org>
28335
28336         * m4/Makefile.am.in: Remove file.
28337         * m4/Makefile.am: Remove file.
28338         * m4/Makefile.in: Remove file.
28339
28340 2003-07-17  Bruno Haible  <bruno@clisp.org>
28341
28342         * lib/getnline.h: New file.
28343         * lib/getnline.c: New file.
28344         * lib/getndelim2.c: New file, extracted from getline.c.
28345         (getndelim2): Renamed from getdelim2, with added nmax argument.
28346         * lib/getline.c: Include getndelim2.c.
28347         (getdelim2): Moved out to getndelim2.c.
28348         (getline, getdelim): Update.
28349
28350 2003-07-17  Bruno Haible  <bruno@clisp.org>
28351
28352         * lib/Makefile.am: Remove file.
28353         * lib/Makefile.in: Remove file.
28354
28355 2003-07-17  Bruno Haible  <bruno@clisp.org>
28356
28357         * configure.in: Remove file.
28358         * Makefile.in: Remove file.
28359
28360 2003-07-17  Bruno Haible  <bruno@clisp.org>
28361
28362         * MODULES.html.sh: Put the </BODY> right before </HTML>.
28363
28364 2003-07-16  Karl Berry  <karl@gnu.org>
28365
28366         * config/srclist-update: was running fixlicense twice, which caused
28367                 texinfo.tex to be nullified for some reason.  Simplify,
28368                 $gplsrc is no longer needed as far as I can see?
28369
28370 2003-07-16  Jim Meyering  <jim@meyering.net>
28371
28372         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
28373
28374 2003-07-15  Paul Eggert  <eggert@twinsun.com>
28375
28376         * config/srclist.txt: Get the following files from gettext-runtime/intl
28377         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
28378         ref-del.sin.  From Bruno Haible.
28379         * config/srclist-update (fixfile): Change grep pattern again, since the
28380         previous fix didn't work (there was another trailing $).  Use
28381         '[$]' to escape the $s.
28382
28383 2003-07-15  Karl Berry  <karl@gnu.org>
28384
28385         * lib/vasnprintf.c: update from gettext.
28386
28387 2003-07-15  Karl Berry  <karl@gnu.org>
28388
28389         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
28390         gets expanded when surrounded by '$'.
28391
28392 2003-07-15  Jim Meyering  <jim@meyering.net>
28393
28394         * modules/save-cwd: Don't depend on error.  From Derek Price.
28395
28396 2003-07-15  Jim Meyering  <jim@meyering.net>
28397
28398         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
28399
28400 2003-07-14  Simon Josefsson  <jas@extundo.com>
28401
28402         * modules/mempcpy: New file.
28403         * MODULES.html.sh (func_all_modules): Add mempcpy.
28404
28405 2003-07-14  Simon Josefsson  <jas@extundo.com>
28406
28407         * m4/mempcpy.m4: New file.
28408
28409 2003-07-14  Simon Josefsson  <jas@extundo.com>
28410
28411         * lib/mempcpy.h: New file.
28412         * lib/mempcpy.c: New file.
28413
28414 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28415
28416         * modules/getdate, modules/posixtm: Depend on mktime.
28417
28418 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28419
28420         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
28421         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
28422         unicodeio.c, unicodeio.h, unlocked-io.h:
28423         Switch from LGPL to GPL.
28424
28425 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28426
28427         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
28428         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
28429         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
28430         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
28431         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
28432         updated automatically by ../config/srclist-update.  This changes
28433         their license from LPGL to GPL.
28434
28435 2003-07-14  Paul Eggert  <eggert@twinsun.com>
28436
28437         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
28438         assumed to refer to the root of the most recent stable gettext version.
28439         * config/srclistvars.sh: Add defaults for eggert.
28440         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
28441         Match "This program" as well as "The program".  This is needed
28442         for gettext.
28443
28444 2003-07-14  Jim Meyering  <jim@meyering.net>
28445
28446         Don't emit diagnostics.  Let callers do that.
28447         * lib/save-cwd.c: Don't include "error.h".
28448         (save_cwd): Don't call error.  Ensure that errno is valid
28449         when returning nonzero.
28450
28451         * lib/save-cwd.h (restore_cwd): Update prototype.
28452         * lib/save-cwd.c (restore_cwd): Remove two parameters.
28453         Simplify.  Don't call error upon failure.  Let callers do that.
28454         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
28455         when auditing is enabled.  But don't bother updating the #if.
28456
28457 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
28458
28459         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
28460         it breaks C++ compilation.
28461         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
28462
28463 2003-07-10  Simon Josefsson  <jas@extundo.com>
28464
28465         * modules/strchrnul (Makefile.am): Add strchrnul.h.
28466
28467 2003-07-10  Jim Meyering  <jim@meyering.net>
28468
28469         * m4/clock_time.m4: Remove trailing blank.
28470         * m4/intmax_t.m4: Likewise.
28471
28472 2003-07-10  Jim Meyering  <jim@meyering.net>
28473
28474         * lib/vasnprintf.c: Remove trailing blanks.
28475         Make cpp indentation consistent.
28476
28477 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28478
28479         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
28480         posixver.c, strftime.c, strnlen.c, strverscmp.c:
28481         Switch from LGPL to GPL.
28482
28483 2003-07-09  Paul Eggert  <eggert@twinsun.com>
28484
28485         * config/srclist.txt: Sort sublists.  Add
28486         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
28487         that differ from gnulib for one reason or another; we'd like this list
28488         to be smaller but for now let's document what we have.
28489
28490 2003-07-08  Paul Eggert  <eggert@twinsun.com>
28491
28492         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
28493         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
28494         and sweeter "eval x=$x".
28495         * config/srclist.txt: Get lib/argp* from glibc.
28496
28497 2003-07-07  Paul Eggert  <eggert@twinsun.com>
28498
28499         * lib/mktime.c: Fix some boundary cases and remove need for floating
28500         point.
28501
28502         Issue a compile-time diagnostic if time_t is floating point, or if
28503         two's complement arithmetic is not in effect, or if arithmetic
28504         right shift does not propagate the sign.  These assumptions were
28505         all in the original code but they weren't checked.
28506
28507         (TIME_T_MIDPOINT, verify): New macros.
28508         (__isleap): Remove; it has integer overflow problems.
28509         (leapyear): New function, without those problems.
28510         (ydhms_tm_diff): Remove; splitting into two parts.
28511         (ydhms_diff): New function, containing the arithmetic part of
28512         the old ydhms_tm_diff function.  Issue a compile-time
28513         diagnostic if we are not using C99 integer division.
28514         Avoid casts when possible.
28515         (guess_time_tm): New function, containing the checking part of
28516         the old ydhms_tm_diff function.  Return the new value, rather than
28517         the difference between it and the old.  Accept a new argument T
28518         so that *T specifies the old value.  Check for overflow in the result.
28519
28520         (__mktime_internal): Use a time_t offset, not a long int offset.
28521         This undoes the 2003-06-04 change, which is no longer needed now
28522         that we have better overflow checking.
28523         (localtime_offset): Likewise.
28524
28525         (__mktime_internal): Avoid harmful overflow on hosts where time_t
28526         and long are 64-bit but int is only 32-bit.
28527         (ydhms_diff): Use long int to store year1 and yday1.
28528         Issue a compile-time diagnostic if long int is not wide enough.
28529
28530         (__mktime_internal): Use long int to store adjusted year and yday.
28531         Use plain C rather than preprocessor commands, if that doesn't
28532         affect efficiency.
28533         Check for overflow (and try to repair) after each probe
28534         rather than checking only at the very end.  This avoids some bugs
28535         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
28536         does not equal GMT offset at maximum time).
28537         Use integer to check for overflow rather than floating point; this
28538         is more portable to non-IEEE hosts, and is a tad faster.
28539         When we detect that we are oscillating between two values,
28540         don't check whether tm_isdst has the requested value, since
28541         we already know the answer.  When tm_isdst has the wrong value,
28542         use a different heuristic to find the right one, based on the
28543         extreme values actually observed in practice in tz2003a,
28544         rather than the (overly optimistic) "previous 3 calendar quarters".
28545
28546         (not_equal_tm, print_tm, check_result): Use "const T" rather than
28547         "T const" to accommodate glibc style.
28548         (check_result): Use less-confusing report format.  "long" -> "long int.
28549         (main): Likewise.
28550         Don't loop if the iteration overflows time_t.
28551         Allow a negative step in the iteration.
28552
28553 2003-07-06  Karl Berry  <karl@gnu.org>
28554
28555         * config/depcomp: update from automake.
28556         * config/config.sub: update from prep.
28557
28558 2003-07-03  Karl Berry  <karl@gnu.org>
28559
28560         * config/config.guess: update from prep.
28561
28562 2003-07-01  Paul Eggert  <eggert@twinsun.com>
28563
28564         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
28565         xreadlink.c now includes it unconditionally.
28566
28567 2003-07-01  Paul Eggert  <eggert@twinsun.com>
28568
28569         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
28570         having it depend on HAVE_SYS_TYPES_H.
28571
28572 2003-07-01  Bruno Haible  <bruno@clisp.org>
28573
28574         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
28575         <sys/types.h> should be sufficient.
28576         Reported by Paul Eggert.
28577
28578 2003-06-26  Karl Berry  <karl@gnu.org>
28579
28580         * config/depcomp: update from automake.
28581
28582 2003-06-26  Bruno Haible  <bruno@clisp.org>
28583
28584         * modules/human: Depend on module stdbool.
28585
28586 2003-06-25  Bruno Haible  <bruno@clisp.org>
28587
28588         * modules/readlink: New file.
28589         * modules/xreadlink: Depend on it.
28590         * MODULES.html.sh (func_all_modules): Add readlink.
28591
28592 2003-06-25  Bruno Haible  <bruno@clisp.org>
28593
28594         * m4/readlink.m4: New file.
28595
28596 2003-06-25  Bruno Haible  <bruno@clisp.org>
28597
28598         * lib/readlink.c: New file.
28599
28600 2003-06-22  Karl Berry  <karl@gnu.org>
28601
28602         * config/srclist.txt: update mkinstalldirs from automake.
28603         * config/mkinstalldirs: update.
28604
28605 2003-06-22  Bruno Haible  <bruno@clisp.org>
28606
28607         Portability to mingw32.
28608         * m4/ssize_t.m4: New file, from GNU gettext.
28609         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
28610         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
28611
28612 2003-06-22  Bruno Haible  <bruno@clisp.org>
28613
28614         * modules/safe-read: Add m4/ssize_t.m4.
28615         * modules/xreadlink: Add m4/ssize_t.m4.
28616
28617 2003-06-20  Bruno Haible  <bruno@clisp.org>
28618
28619         Assume C89, so PARAMS isn't needed.
28620         * lib/unicodeio.h (PARAMS): Remove.
28621         * lib/unicodeio.c: Don't use PARAMS.
28622
28623 2003-06-18  Karl Berry  <karl@gnu.org>
28624
28625         * config/config.{guess,sub}: update from prep.
28626
28627 2003-06-18  Jim Meyering  <jim@meyering.net>
28628
28629         Merge changes from coreutils.
28630         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
28631         Remove explicit declarations of xmalloc and realloc.
28632         Include xalloc.h.
28633         (read_utmp): Remove anachronistic cast of xmalloc.
28634
28635 2003-06-17  Paul Eggert  <eggert@twinsun.com>
28636
28637         Assume C89, so PARAMS isn't needed.
28638         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
28639         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
28640         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
28641         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
28642         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
28643         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
28644         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
28645         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
28646         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
28647         lib/xstrtod.h, lib/xstrtol.h: Likewise.
28648         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
28649         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
28650         no longer needed. Anyway, config.h should always be included before any
28651         other file.
28652
28653 2003-06-11  Simon Josefsson  <jas@extundo.com>
28654
28655         * modules/sysexits: New file.
28656         * MODULES.html.sh (func_all_modules): Add sysexits.
28657
28658 2003-06-11  Simon Josefsson  <jas@extundo.com>
28659
28660         * lib/sysexit_.h: New file.
28661
28662 2003-06-11  Derek Price  <derek@ximbiot.com>
28663
28664         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
28665         necessary.
28666
28667 2003-06-11  Bruno Haible  <bruno@clisp.org>
28668
28669         * m4/sysexits.m4: New file.
28670
28671 2003-06-10  Simon Josefsson  <jas@extundo.com>
28672
28673         * lib/argp.h: New file, from glibc.
28674         * lib/argp-ba.c: New file, from glibc.
28675         * lib/argp-eexst.c: New file, from glibc.
28676         * lib/argp-fmtstream.c: New file, from glibc.
28677         * lib/argp-fmtstream.h: New file, from glibc.
28678         * lib/argp-fs-xinl.c: New file, from glibc.
28679         * lib/argp-help.c: New file, from glibc.
28680         * lib/argp-namefrob.h: New file, from glibc.
28681         * lib/argp-parse.c: New file, from glibc.
28682         * lib/argp-pv.c: New file, from glibc.
28683         * lib/argp-pvh.c: New file, from glibc.
28684         * lib/argp-xinl.c: New file, from glibc.
28685
28686 2003-06-10  Simon Josefsson  <jas@extundo.com>
28687
28688         * modules/strchrnul: New file.
28689
28690 2003-06-10  Simon Josefsson  <jas@extundo.com>
28691
28692         * modules/argp: New file.
28693
28694 2003-06-10  Simon Josefsson  <jas@extundo.com>
28695
28696         * m4/strchrnul.m4: New file.
28697
28698 2003-06-10  Simon Josefsson  <jas@extundo.com>
28699
28700         * lib/strchrnul.h: New file.
28701         * lib/strchrnul.c: New file.
28702
28703 2003-06-10  Bruno Haible  <bruno@clisp.org>
28704
28705         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
28706
28707 2003-06-07  Karl Berry  <karl@gnu.org>
28708
28709         * config/config.{guess,sub}: update from prep.
28710
28711 2003-06-07  Jim Meyering  <jim@meyering.net>
28712
28713         * modules/strtod: Use $(...) notation, not @...@ for
28714         AC_REPLACE'd variables.
28715         * modules/localcharset: Likewise.
28716
28717 2003-06-07  Jim Meyering  <jim@meyering.net>
28718
28719         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
28720         in place of my name in the copyright comment.
28721         Remove definition and uses of __P.
28722
28723         From coreutils.
28724         * lib/stat.c: Don't declare xmalloc explicitly.
28725         Instead, include "xalloc.h".
28726         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
28727         xrealloc, and xcalloc return values.
28728         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
28729         Improve comment.
28730         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
28731
28732 2003-06-07  Bruno Haible  <bruno@clisp.org>
28733
28734         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
28735         avoid AC_CONFIG_LINKS.
28736         * modules/fnmatch (Makefile.am): Use explicit creation rule for
28737         fnmatch.h, to avoid AC_CONFIG_LINKS.
28738         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
28739
28740 2003-06-07  Bruno Haible  <bruno@clisp.org>
28741
28742         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
28743         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
28744         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
28745         directory.
28746         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
28747         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
28748         directory.
28749
28750 2003-06-06  Jim Meyering  <jim@meyering.net>
28751
28752         Merge from coreutils.
28753         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
28754         Consolidate declarations and initializations of *_base* locals.
28755
28756         Merge from coreutils.
28757         This avoids a core dump on systems without GNU putenv,
28758         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
28759         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
28760         (unsetenv): New static function, from GNU libc.
28761         (rpl_putenv): Use it.
28762
28763         * lib/modechange.c: Remove trailing blanks.
28764
28765         Merge from coreutils.
28766         * lib/fsusage.c: Remove declaration of statfs.
28767         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
28768
28769         * lib/posixtm.c: Include <stdbool.h> unconditionally.
28770
28771 2003-06-06  Jim Meyering  <jim@meyering.net>
28772
28773         * lib/stdbool_.h: Renamed from stdbool.h.in.
28774
28775 2003-06-06  Jim Meyering  <jim@meyering.net>
28776             Bruno Haible  <bruno@clisp.org>
28777
28778         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
28779         Adjust Makefile.am snippet not to redirect directly to target.
28780         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
28781
28782 2003-06-05  Paul Eggert  <eggert@twinsun.com>
28783
28784         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
28785         mismatch, look in future quarters as well as past.  This fixes a
28786         bug when processing fall-backwards gaps immediately after a long
28787         period of daylight-saving time.
28788
28789         * lib/mktime.c: Assume freestanding C89 or better.
28790         (HAVE_LIMITS_H): Remove.  Assume it's 1.
28791         (__P): Remove; not used.
28792         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
28793         (mktime, not_equal_tm, print_tm, check_result,
28794         main): Use prototypes.  Use const * where appropriate.
28795         (main): Fix typo in testing code that uncovered by above changes.
28796         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
28797
28798 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28799
28800         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
28801         locale.h, localeconv.  This merges changes from coreutils.
28802
28803         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
28804         It can be removed after the next Autoconf is released.
28805         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
28806         needed.
28807
28808 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28809
28810         * lib/mktime.c: Fix Debian bug 177940
28811         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
28812         (localtime_offset): Now long int, not time_t, because we want it
28813         to be guaranteed to be signed.  All uses changed.
28814         (__mktime_internal): If overflow would occur when adding offset,
28815         don't add it.
28816
28817         Merge 'human' changes from coreutils.  Rewrite to support
28818         locale-specific notations like thousands separators.
28819         * lib/human.c: Simplify authorship notice.
28820         Include human.h immediately after config.h.
28821         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
28822         <limits.h>: Do not include, since human.h does.
28823         (SIZE_MAX, UINTMAX_MAX): New macros.
28824         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
28825         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
28826         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
28827         (power_letter): Renamed from suffixes.
28828         (generate_suffix_backwards): Remove.
28829         (adjust_value): Now takes int style (because of human.h changes)
28830         and long double value (for greater precision on some platforms).
28831         (group_number): New function.
28832         (human_readable): Use it.  Use integer options, not enum.
28833         Put the options before the sizes in the arg list.
28834         Support all the new options.
28835         The old human_readable function has been removed;
28836         use inttostr.h instead.
28837         (human_readable, default_block_size, humblock):
28838         Use uintmax_t, not int, for block sizes.
28839         (human_readable_inexact, block_size_types): Remove.
28840         (block_size_opts): New constant.
28841         (human_options): Renamed from human_block_size, with new signature
28842         that allows block sizes up to UINTMAX_MAX.  All callers changed.
28843         * lib/human.h: Add copyright and authorship notice.
28844         Include <limits.h> and <stdbool.h> unconditionally.
28845         (PARAMS): Remove.  All uses removed.
28846         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
28847         (enum human_inexact_style): Remove tag; now a nameless enum.
28848         (human_floor, human_ceiling, human_round_to_even): Now have
28849         values 2, 0, 1 rather than -1, 1, 0.
28850         (human_group_digits, human_suppress_point_zero, human_autoscale,
28851         human_base_1024, human_SI, human_B): New constants.
28852         (human_readable_inexact, human_block_size): Remove.
28853         (human_readable): Size args are now uintmax_t, not int.
28854         (human_options): New decl.
28855
28856         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
28857         unnecessary now that we assume C89 or better.  This change
28858         imported from coreutils.
28859
28860         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
28861         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
28862         in the 2003-05-30 sync from glibc.
28863
28864         .h files should stand alone, but we shouldn't include <sys/types.h>
28865         if we can get away with just <stddef.h>.
28866
28867         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
28868         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
28869         rather than <sys/types.h>, as we merely need size_t.
28870         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
28871         to get size_t.
28872         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
28873         Include <stdio.h>, to get FILE.
28874         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
28875         memcasecmp.h has included <stddef.h> and all we need is size_t.
28876         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
28877         our interface, instead of including <sys/types.h>
28878
28879 2003-06-04  Paul Eggert  <eggert@twinsun.com>
28880
28881         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
28882         now, as glibc mktime is buggy on non-glibc systems.
28883
28884 2003-06-03  Karl Berry  <karl@gnu.org>
28885
28886         * config/config.sub: update from prep.
28887
28888 2003-06-02  Paul Eggert  <eggert@twinsun.com>
28889
28890         [from coreutils]
28891         Fix some minor time-related bugs with POSIX time arguments.
28892         Some valid time stamps were being rejected (notably -1, and
28893         time stamps before 1900 on 64-bit hosts).  And some invalid
28894         time stamps were being accepted, e.g. September 31.
28895
28896         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
28897         that we can return (time_t) -1 successfully.
28898         * lib/posixtm.c: Likewise.
28899         [HAVE_STDBOOL_H]: Include <stdbool.h>.
28900         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
28901         (t): Remove static var.
28902         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
28903         of static var.  All uses changed.
28904         (year): Do not reject years before 1900; they can occur with
28905         64-bit time_t.
28906         (posix_time_parse): Do not check for out-of-range components;
28907         that is now the caller's responsibility, since our checks were
28908         only approximations.
28909         (posixtime): Use mktime to check for out-of-range components,
28910         since it knows them exactly.
28911         If mktime returns (time_t) -1, check whether an error actually occurred
28912         by invoking localtime on -1.
28913         (main) [TEST_POSIXTIME]: Check for input data errors, and report
28914         posixtime failures better.
28915         Improve the test data (in comments only).
28916
28917 2003-06-02  Karl Berry  <karl@gnu.org>
28918
28919         * config/mkinstalldirs (version): new variable.
28920         (--version): new option.
28921         (usage): improve message.
28922
28923 2003-05-30  Karl Berry  <karl@gnu.org>
28924
28925         * lib/mktime.c: update from libc.
28926
28927 2003-05-30  Bruno Haible  <bruno@clisp.org>
28928
28929         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
28930         * config/config.rpath: Upgrade to gettext-0.12.1.
28931
28932 2003-05-30  Bruno Haible  <bruno@clisp.org>
28933
28934         * m4/gettext.m4: Upgrade to gettext-0.12.1.
28935         * m4/nls.m4: New file, from gettext-0.12.1.
28936         * m4/po.m4: New file, from gettext-0.12.1.
28937         * m4/progtest.m4: Upgrade to gettext-0.12.1.
28938
28939 2003-05-30  Bruno Haible  <bruno@clisp.org>
28940
28941         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
28942         * lib/localcharset.h: Likewise.
28943         * lib/localcharset.c: Likewise.
28944
28945 2003-05-29  Karl Berry  <karl@gnu.org>
28946
28947         * config/config.rpath: update from gettext.
28948
28949 2003-05-28  Paul Eggert  <eggert@twinsun.com>
28950
28951         Assume the headers required for C89 freestanding compilers.
28952         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
28953         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
28954         * m4/human.m4 (gl_HUMAN): Likewise.
28955         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
28956         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
28957         * m4/userspec.m4 (gl_USERSPEC): Likewise.
28958         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
28959         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
28960         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
28961
28962 2003-05-28  Paul Eggert  <eggert@twinsun.com>
28963
28964         Assume the headers required for C89 freestanding compilers.
28965         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
28966         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
28967         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
28968         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
28969         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
28970         define, since <limits.h> is guaranteed to do that.
28971         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
28972         * lib/exclude.c: Include <stdbool.h> unconditionally.
28973         * lib/tempname.c: Include <stddef.h> unconditionally.
28974         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
28975         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
28976         <stddef.h> does that.
28977         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
28978         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
28979         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
28980         needed.
28981         * lib/xstrtol.c: Likewise.
28982         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
28983         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
28984
28985         * lib/addext.c (addext): Use assignment rather than cast, to avoid
28986         warnings on some platforms.
28987
28988         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
28989         arbitrarily.
28990
28991 2003-05-26  Jim Meyering  <jim@meyering.net>
28992
28993         Merge in a change from coreutils:
28994         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
28995         that is guaranteed to be `no'.  Use `no_such_member' to indicate
28996         that condition, rather than `-1' which is slightly misleading.
28997         Change the name of the cache variable to have the gl_ prefix.
28998         Prompted by a patch from Richard Dawe for DJGPP.
28999
29000 2003-05-24  Karl Berry  <karl@gnu.org>
29001
29002         * config/config.guess: update from prep.
29003
29004 2003-05-22  Karl Berry  <karl@gnu.org>
29005
29006         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
29007
29008 2003-05-20  Karl Berry  <karl@gnu.org>
29009
29010         * config/config.guess: update from prep.
29011
29012 2003-05-18  Karl Berry  <karl@gnu.org>
29013
29014         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
29015         might actually be set by the user.
29016
29017         * config/depcomp, install-sh, mdate-sh: update from automake.
29018
29019 2003-05-17  Bruno Haible  <bruno@clisp.org>
29020
29021         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
29022         invalid expansion for AC_EGREP_CPP.
29023         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
29024         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
29025         Suggested by Akim Demaille <akim@epita.fr> in
29026         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
29027
29028 2003-05-12  Jim Meyering  <jim@meyering.net>
29029
29030         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
29031         the space-padded-by-default conversion specifiers, %e, %k, %l.
29032
29033 2003-05-12  Bruno Haible  <bruno@clisp.org>
29034
29035         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
29036         the string is longer than 4 KB.
29037
29038 2003-05-11  Karl Berry  <karl@gnu.org>
29039
29040         * config/config.{guess,sub}: update from prep.
29041
29042 2003-05-09  Bruno Haible  <bruno@clisp.org>
29043
29044         * modules/error: Add m4/strerror_r.m4 to file list.
29045
29046 2003-05-03  Bruno Haible  <bruno@clisp.org>
29047
29048         Upgrade to Unicode-4.0.
29049         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
29050         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
29051         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
29052         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
29053         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
29054         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
29055         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
29056         Change width of U+E0100..U+E01EF from 1 to 0.
29057
29058 2003-04-25  Jim Meyering  <jim@meyering.net>
29059
29060         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
29061         of type size_t, not int.
29062
29063 2003-04-25  Bruno Haible  <bruno@clisp.org>
29064
29065         * lib/copy-file.c: Include <stddef.h>, for size_t.
29066
29067 2003-04-21  Paul Eggert  <eggert@twinsun.com>
29068
29069         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
29070         code which expansion is under static control.  Patch imported from
29071         Akim Demaille's patch to Bison; see
29072         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
29073
29074 2003-04-14  Bruno Haible  <bruno@clisp.org>
29075
29076         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
29077
29078 2003-04-11  Jim Meyering  <jim@meyering.net>
29079
29080         Merge changes from Coreutils.
29081
29082         2003-03-22  Jim Meyering  <jim@meyering.net>
29083
29084         * lib/strftime.c (widen): Cast alloca return value to proper type.
29085
29086         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
29087
29088         From GNU libc.
29089         * lib/strftime.c (my_strftime): Handle very large width
29090         specifications for numeric values correctly.  Improve checks for
29091         overflow.
29092
29093         2003-01-19  Jim Meyering  <jim@meyering.net>
29094
29095         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
29096         definitions.
29097         (nl_get_alt_digit) [! defined my_strftime]: Define.
29098         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
29099         _nl_get_alt_digit and _nl_get_walt_digit.
29100
29101         * lib/strftime.c (my_strftime): Merge in locale-related changes from
29102         libc. These changes have no effect outside of _LIBC.
29103
29104 2003-04-10  Bruno Haible  <bruno@clisp.org>
29105
29106         * modules/findprog: New file.
29107         * MODULES.html.sh (func_all_modules): Add it.
29108
29109 2003-04-10  Bruno Haible  <bruno@clisp.org>
29110
29111         * m4/findprog.m4: New file.
29112         * m4/eaccess.m4: New file.
29113
29114 2003-04-10  Bruno Haible  <bruno@clisp.org>
29115
29116         * lib/findprog.h: New file, from GNU gettext.
29117         * lib/findprog.c: New file, from GNU gettext.
29118
29119 2003-04-05  Jim Meyering  <jim@meyering.net>
29120
29121         Merge changes from Coreutils.
29122
29123         * lib/exclude.h (PARAMS): Remove definition and uses.
29124         * lib/exclude.c: Remove uses of `PARAMS'.
29125
29126         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
29127         Add test-cases for DOS filenames. Declare program_name.
29128         (main): Set up program_name.  Patch by Rich Dawe.
29129
29130         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
29131         error from mntctl.
29132         Use mntctl's return value to drive the entry-processing loop, since
29133         we can't rely on the value of the vmt_length member in the last
29134         entry.  On some systems doing so could result in exhausting
29135         virtual memory.  Based in part on a patch from Mike Jetzer.
29136
29137 2003-04-04  Bruno Haible  <bruno@clisp.org>
29138
29139         * modules/linebreak: New file.
29140         * MODULES.html.sh (func_all_modules): Add it.
29141
29142 2003-04-04  Bruno Haible  <bruno@clisp.org>
29143
29144         * m4/linebreak.m4: New file.
29145
29146 2003-04-04  Bruno Haible  <bruno@clisp.org>
29147
29148         * lib/linebreak.h: New file, from GNU gettext.
29149         * lib/linebreak.c: New file, from GNU gettext with slight
29150         modifications.
29151         * lib/lbrkprop.h: New file, from GNU gettext.
29152
29153 2003-04-03  Bruno Haible  <bruno@clisp.org>
29154
29155         * modules/utf8-ucs4: New file.
29156         * modules/utf16-ucs4: New file.
29157         * modules/ucs4-utf8: New file.
29158         * modules/ucs4-utf16: New file.
29159         * MODULES.html.sh (func_all_modules): Add them.
29160
29161 2003-04-03  Bruno Haible  <bruno@clisp.org>
29162
29163         * m4/utf-ucs4.m4: New file.
29164         * m4/ucs4-utf.m4: New file.
29165
29166 2003-04-03  Bruno Haible  <bruno@clisp.org>
29167
29168         * lib/utf8-ucs4.h: New file, from GNU gettext.
29169         * lib/utf16-ucs4.h: New file, from GNU gettext.
29170         * lib/ucs4-utf8.h: New file, from GNU gettext.
29171         * lib/ucs4-utf16.h: New file, from GNU gettext.
29172
29173 2003-04-02  Bruno Haible  <bruno@clisp.org>
29174
29175         * modules/binary-io: New file.
29176         * MODULES.html.sh (func_all_modules): Add it.
29177
29178 2003-04-02  Bruno Haible  <bruno@clisp.org>
29179
29180         * lib/binary-io.h: New file, from GNU gettext.
29181
29182 2003-04-01  Bruno Haible  <bruno@clisp.org>
29183
29184         * modules/pathname: New file.
29185         * MODULES.html.sh (func_all_modules): Add it.
29186
29187 2003-04-01  Bruno Haible  <bruno@clisp.org>
29188
29189         * lib/pathname.h: New file, from GNU gettext.
29190         * lib/concatpath.c: New file, from GNU gettext.
29191
29192 2003-03-30  Bruno Haible  <bruno@clisp.org>
29193
29194         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
29195
29196 2003-03-30  Bruno Haible  <bruno@clisp.org>
29197
29198         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
29199         function chown() doesn't exist.
29200
29201 2003-03-28  Bruno Haible  <bruno@clisp.org>
29202
29203         * modules/copy-file: New file.
29204         * MODULES.html.sh (func_all_modules): Add it.
29205
29206 2003-03-28  Bruno Haible  <bruno@clisp.org>
29207
29208         * m4/copy-file.m4: New file.
29209
29210 2003-03-28  Bruno Haible  <bruno@clisp.org>
29211
29212         * lib/copy-file.h: New file, from GNU gettext.
29213         * lib/copy-file.c: New file, from GNU gettext.
29214
29215 2003-03-18  Jim Meyering  <jim@meyering.net>
29216
29217         * lib/quote.c (quote_n): Fix typo in comment.
29218
29219 2003-03-18  Bruno Haible  <bruno@clisp.org>
29220
29221         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
29222         checking.
29223         * m4/onceonly_2_57.m4: Likewise.
29224
29225 2003-03-17  Bruno Haible  <bruno@clisp.org>
29226
29227         * m4/onceonly.m4: Require autoconf 2.54 or newer.
29228         (m4_quote): Remove macro.
29229         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
29230
29231 2003-03-14  Jim Meyering  <jim@meyering.net>
29232
29233         Merge changes from Coreutils.
29234         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
29235         to be const, in order to avoid warnings.
29236         (obstack_room): Likewise.
29237         (obstack_empty_p): Likewise.
29238
29239 2003-03-14  Bruno Haible  <bruno@clisp.org>
29240
29241         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
29242         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
29243
29244 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29245
29246         Merge changes from Bison.
29247         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
29248         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
29249         when compiling Bison 1.875's `bitset bset = obstack_alloc
29250         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
29251         * lib/hash.c: Include <stdbool.h> unconditionally.
29252
29253 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29254
29255         * m4/onceonly.m4 (m4_quote): New macro.
29256         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
29257         Quote AC_FOREACH variable-expansions properly.
29258
29259 2003-03-13  Paul Eggert  <eggert@twinsun.com>
29260
29261         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
29262
29263 2003-03-09  Paul Eggert  <eggert@twinsun.com>
29264
29265         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
29266         Reported by Bruce Becker; see:
29267         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
29268
29269 2003-03-03  Paul Eggert  <eggert@twinsun.com>
29270             Bruno Haible  <bruno@clisp.org>
29271
29272         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
29273         Reported by John Hughes, see
29274         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
29275
29276 2003-02-20  Bruno Haible  <bruno@clisp.org>
29277
29278         * MODULES.html.sh (func_all_modules): Add poll.
29279
29280 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29281
29282         * modules/poll: New file.
29283
29284 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29285
29286         * lib/poll_.h: New file.
29287         * lib/poll.c: New file.
29288
29289 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
29290
29291         * m4/poll.m4: New file.
29292
29293 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29294
29295         * modules/mathl: New file.
29296
29297 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29298
29299         * lib/mathl.h: New file.
29300         * lib/acosl.c: New file.
29301         * lib/asinl.c: New file.
29302         * lib/atanl.c: New file.
29303         * lib/ceill.c: New file.
29304         * lib/cosl.c: New file.
29305         * lib/expl.c: New file.
29306         * lib/floorl.c: New file.
29307         * lib/frexpl.c: New file.
29308         * lib/ldexpl.c: New file.
29309         * lib/logl.c: New file.
29310         * lib/sincosl.c: New file.
29311         * lib/sinl.c: New file.
29312         * lib/sqrtl.c: New file.
29313         * lib/tanl.c: New file.
29314         * lib/trigl.c: New file.
29315         * lib/trigl.h: New file.
29316
29317 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
29318
29319         * m4/mathl.m4: New file.
29320
29321 2003-02-18  Bruno Haible  <bruno@clisp.org>
29322
29323         * MODULES.html.sh (func_all_modules): Add mathl.
29324
29325 2003-02-17  Bruno Haible  <bruno@clisp.org>
29326
29327         * modules/mkdtemp: New module.
29328         * MODULES.html.sh (func_all_modules): Add it.
29329
29330 2003-02-17  Bruno Haible  <bruno@clisp.org>
29331
29332         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
29333
29334 2003-02-17  Bruno Haible  <bruno@clisp.org>
29335
29336         * lib/mkdtemp.h: New file, from GNU gettext.
29337         * lib/mkdtemp.c: New file, from GNU gettext.
29338
29339 2003-02-02  Jim Meyering  <jim@meyering.net>
29340
29341         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
29342         e.g. glibc-2.2.93.
29343
29344 2003-01-31  Bruno Haible  <bruno@clisp.org>
29345
29346         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
29347         'rpl_rename'.
29348         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
29349         'rpl_strnlen'.
29350         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
29351         'rpl_strtod'.
29352         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
29353         'rpl_utime'.
29354
29355 2003-01-31  Bruno Haible  <bruno@clisp.org>
29356
29357         * lib/rename.c: #undef rename before defining rpl_rename.
29358         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
29359
29360 2003-01-30  Bruno Haible  <bruno@clisp.org>
29361
29362         * modules/vasnprintf, modules/vasprintf: New modules.
29363         * MODULES.html.sh (func_all_modules): Add them.
29364
29365 2003-01-30  Bruno Haible  <bruno@clisp.org>
29366
29367         * m4/signed.m4: New file, from GNU gettext.
29368         * m4/longdouble.m4: New file, from GNU gettext.
29369         * m4/wchar_t.m4: New file, from GNU gettext.
29370         * m4/wint_t.m4: New file, from GNU gettext.
29371         * m4/vasnprintf.m4: New file.
29372         * m4/vasprintf.m4: New file.
29373
29374 2003-01-30  Bruno Haible  <bruno@clisp.org>
29375
29376         * lib/printf-args.h: New file, from GNU gettext.
29377         * lib/printf-args.c: New file, from GNU gettext.
29378         * lib/printf-parse.h: New file, from GNU gettext.
29379         * lib/printf-parse.c: New file, from GNU gettext.
29380         * lib/vasnprintf.h: New file, from GNU gettext.
29381         * lib/vasnprintf.c: New file, from GNU gettext.
29382         * lib/asnprintf.c: New file, from GNU gettext.
29383         * lib/vasprintf.h: New file, from GNU gettext with modifications.
29384         * lib/vasprintf.c: New file, from GNU gettext.
29385         * lib/asprintf.c: New file, from GNU gettext.
29386
29387 2003-01-29  Bruno Haible  <bruno@clisp.org>
29388
29389         * modules/stpncpy: New module.
29390         * MODULES.html.sh (func_all_modules): Add it.
29391
29392 2003-01-29  Bruno Haible  <bruno@clisp.org>
29393
29394         * m4/stpncpy.m4: New file.
29395
29396 2003-01-29  Bruno Haible  <bruno@clisp.org>
29397
29398         * lib/stpncpy.h: New file, from GNU gettext with modifications.
29399         * lib/stpncpy.c: New file, from GNU gettext with modifications.
29400
29401 2003-01-28  Bruno Haible  <bruno@clisp.org>
29402
29403         * modules/c-ctype: New module.
29404         * MODULES.html.sh (func_all_modules): Add it.
29405
29406 2003-01-28  Bruno Haible  <bruno@clisp.org>
29407
29408         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
29409         Paul Eggert.
29410         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
29411         Paul Eggert.
29412
29413 2003-01-27  Bruno Haible  <bruno@clisp.org>
29414
29415         * modules/xsetenv: New module.
29416         * MODULES.html.sh (func_all_modules): Add it.
29417
29418 2003-01-27  Bruno Haible  <bruno@clisp.org>
29419
29420         * lib/xsetenv.h: New file, from GNU gettext.
29421         * lib/xsetenv.c: New file, from GNU gettext.
29422
29423 2003-01-23  Jim Meyering  <jim@meyering.net>
29424
29425         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
29426         from working on systems without dirfd (at least Irix and OSF1/Tru64).
29427
29428 2003-01-23  Bruno Haible  <bruno@clisp.org>
29429
29430         * modules/minmax: New module.
29431         * MODULES.html.sh (func_all_modules): Add it.
29432
29433 2003-01-23  Bruno Haible  <bruno@clisp.org>
29434
29435         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
29436         Eggert.
29437
29438 2003-01-22  Bruno Haible  <bruno@clisp.org>
29439
29440         * modules/exit: New module.
29441         * MODULES.html.sh (func_all_modules): Add it.
29442
29443 2003-01-22  Bruno Haible  <bruno@clisp.org>
29444
29445         * lib/exit.h: New file, from GNU gettext.
29446
29447 2003-01-19  Bruno Haible  <bruno@clisp.org>
29448
29449         * gnulib-tool: Recognize option --extract-maintainer.
29450         (func_get_maintainer): New function.
29451         * modules/*: Add Maintainer entry.
29452
29453 2003-01-16  Jim Meyering  <jim@meyering.net>
29454
29455         * m4/regex.m4: The `regex' struct is both input and output.
29456         Initialize it before each use.  Patch by Tim Waugh.
29457
29458 2003-01-16  Bruno Haible  <bruno@clisp.org>
29459
29460         * MODULES.html.sh: Add a table of contents. Add the module name as
29461         leftmost column. Add hyperlinks.
29462
29463 2003-01-15  Bruno Haible  <bruno@clisp.org>
29464
29465         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
29466
29467 2003-01-15  Bruno Haible  <bruno@clisp.org>
29468
29469         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
29470         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
29471         suffix.
29472
29473 2003-01-15  Bruno Haible  <bruno@clisp.org>
29474
29475         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
29476
29477 2003-01-15  Bruno Haible  <bruno@clisp.org>
29478
29479         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
29480         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
29481
29482 2003-01-14  Jim Meyering  <jim@meyering.net>
29483
29484         * lib/same.c (same_name): Tweak a comment.
29485
29486 2003-01-14  Bruno Haible  <bruno@clisp.org>
29487
29488         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
29489         when a string comparison is sufficient.
29490
29491 2003-01-14  Bruno Haible  <bruno@clisp.org>
29492
29493         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
29494         'unsigned int'.
29495
29496 2003-01-14  Bruno Haible  <bruno@clisp.org>
29497
29498         * lib/hash-pjw.c: Add comment about low quality of this function.
29499
29500 2003-01-13  Bruno Haible  <bruno@clisp.org>
29501
29502         * modules/stpcpy: Distribute lib/stpcpy.h.
29503         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
29504
29505 2003-01-13  Bruno Haible  <bruno@clisp.org>
29506
29507         * modules/*: Add a description.
29508         * modules/strpbrk: Fix Makefile.am snippet.
29509         * modules/strtoimax: Fix dependencies.
29510         * modules/strtoumax: Likewise.
29511
29512 2003-01-13  Bruno Haible  <bruno@clisp.org>
29513
29514         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
29515         * modules/alloca (Makefile.am): All object files depend on alloca.h.
29516         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
29517
29518 2003-01-13  Bruno Haible  <bruno@clisp.org>
29519
29520         * gnulib-tool (func_create_testdir): Store config/* files in the main
29521         directory.
29522         * config.rpath: Move to ...
29523         * config/config.rpath: ... here.
29524         * modules/gettext: Contains config/config.rpath, not config.rpath.
29525         * modules/iconv: Likewise.
29526
29527 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29528
29529         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29530         to avoid collisions with libcurses and libreadline.
29531
29532         * m4/getstr.m4: Remove.
29533         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
29534
29535 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29536
29537         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29538         to avoid collisions with libcurses and libreadline.
29539
29540         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
29541         * lib/getstr.h, getstr.c: Remove.
29542         * lib/getline.c: Include "getline.h", to check interface.
29543         Move body of old getstr.c here: this defines MIN_CHUNK and
29544         declares getdelim2, which is renamed from getstr.
29545         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
29546
29547         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
29548         All uses changed.
29549         * lib/linebuffer.h: Likewise.
29550         (readline): Remove backward-compatibility macro.
29551
29552 2003-01-12  Paul Eggert  <eggert@twinsun.com>
29553
29554         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
29555         to avoid collisions with libcurses and libreadline.
29556         * getstr: Remove.
29557         * MODULES.html.sh: Remove getstr.
29558         * modules/getline: Depend on unlocked-io, not getstr.
29559
29560 2003-01-12  Jim Meyering  <jim@meyering.net>
29561
29562         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
29563
29564 2003-01-10  Bruno Haible  <bruno@clisp.org>
29565
29566         * modules/alloca: Change Makefile.am requirements. Simplify Include
29567         requirements. Add lib/alloca_.h to file list.
29568
29569 2003-01-10  Bruno Haible  <bruno@clisp.org>
29570
29571         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
29572
29573 2003-01-10  Bruno Haible  <bruno@clisp.org>
29574
29575         * lib/alloca_.h: New file.
29576         * lib/getdate.y: Unconditionally include alloca.h.
29577         * lib/makepath.c: Likewise.
29578         * lib/setenv.c: Likewise.
29579         * lib/userspec.c: Likewise.
29580
29581 2003-01-09  Karl Berry  <karl@gnu.org>
29582
29583         * MODULES.html.sh: include `dirname $0` in PATH, to find
29584         gnulib-tool.
29585
29586 2003-01-09  Bruno Haible  <bruno@clisp.org>
29587
29588         * modules/stdbool: Change configure.ac, Makefile.am requirements.
29589         Simplify Include requirements. Add lib/stdbool.h.in to file list.
29590
29591 2003-01-09  Bruno Haible  <bruno@clisp.org>
29592
29593         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
29594
29595 2003-01-09  Bruno Haible  <bruno@clisp.org>
29596
29597         * lib/stdbool.h.in: New file.
29598
29599 2003-01-09  Bruno Haible  <bruno@clisp.org>
29600
29601         * gnulib-tool (func_all_modules): Ignore files ending in ~.
29602         * MODULES.html.sh: Likewise.
29603
29604 2003-01-08  Jim Meyering  <jim@meyering.net>
29605
29606         * lib/full-write.c: Undefine and define-away `const' after inclusion
29607         of errno.h, not before.  Suggestion from Bruno Haible.
29608
29609 2003-01-08  Bruno Haible  <bruno@clisp.org>
29610
29611         * modules/full-read: Depend on full-write.
29612
29613 2003-01-08  Bruno Haible  <bruno@clisp.org>
29614
29615         * lib/safe-read.c: Include specification header first, to ensure its
29616         selfcontainedness.
29617         * lib/full-write.c: Likewise.
29618
29619 2003-01-07  Jim Meyering  <jim@meyering.net>
29620
29621         * lib/full-write.c: Rework so that it may serve to define full_read,
29622         too.
29623         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
29624
29625 2003-01-07  Bruno Haible  <bruno@clisp.org>
29626
29627         * lib/strtoimax.c: Include <stdint.h> as an alternative to
29628         <inttypes.h>.
29629         * lib/xstrtol.h: Likewise.
29630         * lib/xstrtoimax.c: Likewise.
29631         * lib/xstrtoumax.c: Likewise.
29632         * lib/human.h: Likewise.
29633
29634         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
29635         on systems that have <inttypes.h> but not <stdint.h>.
29636
29637 2003-01-07  Bruno Haible  <bruno@clisp.org>
29638
29639         * MODULES.html.sh: Add copyright notice.
29640         (missed_files): Omit CVS directory entries.
29641         (func_module): Make it work with sed-3.02.
29642         * MODULES.txt: Remove file.
29643
29644 2003-01-06  Jim Meyering  <jim@meyering.net>
29645
29646         * lib/version-etc.c: Update year in translatable copyright string.
29647
29648 2003-01-03  Karl Berry  <karl@gnu.org>
29649
29650         * config/config.{guess,sub}: update from prep.
29651
29652 2003-01-02  Karl Berry  <karl@gnu.org>
29653
29654         * doc/COPYING.DOC: belatedly updated to 1.2.
29655
29656 2003-01-01  Karl Berry  <karl@gnu.org>
29657
29658         * gnulib-tool (func_verify_module): report module name $module in
29659         error message, not $1.
29660         * gnulib-tool (create-testdir): don't complain if destdir couldn't
29661         be created, only if it doesn't exist.
29662         * gnulib-tool (last_checkin_date): don't expand the $Date here.
29663
29664 2002-12-31  Paul Eggert  <eggert@twinsun.com>
29665
29666         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
29667
29668 2002-12-31  Paul Eggert  <eggert@twinsun.com>
29669
29670         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
29671         memcmp if strcoll doesn't work.
29672
29673 2002-12-31  Bruno Haible  <bruno@clisp.org>
29674
29675         * lib/utime.c (utime_null): No need to call ftruncate if the file was
29676         nonempty.
29677
29678 2002-12-31  Bruno Haible  <bruno@clisp.org>
29679
29680         * lib/memcoll.c (STRCOLL): New macro.
29681         (memcoll): Use it.
29682
29683 2002-12-31  Bruno Haible  <bruno@clisp.org>
29684
29685         * lib/localcharset.h: New file.
29686         * lib/localcharset.c: Include it.
29687         * lib/unicodeio.c: Likewise.
29688
29689 2002-12-31  Bruno Haible  <bruno@clisp.org>
29690
29691         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
29692         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
29693
29694 2002-12-31  Bruno Haible  <bruno@clisp.org>
29695
29696         * lib/getline.h: Include <stddef.h>, for size_t.
29697
29698         * lib/unicodeio.h: Include <stddef.h>, for size_t.
29699         * lib/unicodeio.c: Don't include <stddef.h>.
29700
29701 2002-12-31  Bruno Haible  <bruno@clisp.org>
29702
29703         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
29704         HAVE_TM_ZONE.
29705
29706 2002-12-24  Karl Berry  <karl@gnu.org>
29707
29708         * config/config.guess: update from prep.
29709
29710 2002-12-24  Bruno Haible  <bruno@clisp.org>
29711
29712         General infrasructure.
29713         * m4/README: Rewritten.
29714         * m4/onceonly.m4: New file.
29715         * m4/onceonly_2_57.m4: New file.
29716
29717         Module atexit.
29718         * m4/atexit.m4: New file.
29719
29720         Module strtod.
29721         * m4/strtod.m4: New file.
29722
29723         Module strtol.
29724         * m4/strtol.m4: New file.
29725
29726         Module strtoul.
29727         * m4/strtoul.m4: New file.
29728
29729         Module memchr.
29730         * m4/memchr.m4: New file.
29731
29732         Module memcmp.
29733         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
29734         (jm_FUNC_MEMCMP): Invoke it.
29735
29736         Module memcpy.
29737         * m4/memcpy.m4: New file.
29738
29739         Module memmove.
29740         * m4/memmove.m4: New file.
29741
29742         Module memset.
29743         * m4/memset.m4: New file.
29744
29745         Module strcspn.
29746         * m4/strcspn.m4: New file.
29747
29748         Module strpbrk.
29749         * m4/strpbrk.m4: New file.
29750
29751         Module strstr.
29752         * m4/strstr.m4: New file.
29753
29754         Module strerror.
29755         * m4/strerror.m4: New file.
29756
29757         Module mktime.
29758         * m4/mktime.m4: Renamed from jm-mktime.m4.
29759         (gl_PREREQ_MKTIME): New macro.
29760         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
29761
29762         Module malloc.
29763         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
29764         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
29765         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
29766
29767         Module realloc.
29768         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
29769         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
29770         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
29771
29772         Module strftime.
29773         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
29774         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
29775         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
29776         gl_TM_GMTOFF.
29777         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
29778
29779         Module xalloc.
29780         * m4/xalloc.m4: New file.
29781
29782         Module alloca.
29783         * m4/alloca.m4: New file.
29784
29785         Module putenv.
29786         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
29787         (jm_FUNC_PUTENV): Invoke it.
29788
29789         Module setenv.
29790         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
29791         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
29792         when invoked twice.
29793         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
29794         gt_FUNC_SETENV.
29795
29796         Module memrchr.
29797         * m4/memrchr.m4: New file.
29798
29799         Module stpcpy.
29800         * m4/stpcpy.m4: New file.
29801
29802         Module strcase.
29803         * m4/strcase.m4: New file.
29804
29805         Module strdup.
29806         * m4/strdup.m4: New file.
29807
29808         Module strnlen.
29809         * m4/strnlen.m4: New file.
29810
29811         Module strndup.
29812         * m4/strndup.m4: New file.
29813
29814         Module xstrtod.
29815         * m4/xstrtod.m4: New file.
29816
29817         Module xstrtol.
29818         * m4/xstrtol.m4: New file.
29819
29820         Module getdate.
29821         * m4/getdate.m4: New file.
29822
29823         Module unlocked-io.
29824         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
29825         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
29826         * m4/jm-glibc-io.m4n: Remove file.
29827
29828         Module long-options.
29829         * m4/long-options.m4: New file.
29830
29831         Module md5.
29832         * m4/md5.m4: New file.
29833
29834         Module sha.
29835         * m4/sha.m4: New file.
29836
29837         Module getstr.
29838         * m4/getstr.m4: New file.
29839
29840         Module getline.
29841         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
29842         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
29843         <sys/types.h>, for size_t. Use the function name gnu_getline, not
29844         simply getline. Infoke gl_PREREQ_GETLINE.
29845
29846         Module obstack.
29847         * m4/obstack.m4: New file.
29848
29849         Module hash.
29850         * m4/hash.m4: New file.
29851
29852         Module readtokens.
29853         * m4/readtokens.m4: New file.
29854
29855         Module strverscmp.
29856         * m4/strverscmp.m4: New file.
29857
29858         Module stdbool.
29859         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
29860         OSF/1.
29861
29862         Module strtoll.
29863         * m4/strtoll.m4: New file.
29864
29865         Module strtoull.
29866         * m4/strtoull.m4: New file.
29867
29868         Module strtoimax.
29869         * m4/strtoimax.m4: New file.
29870
29871         Module strtoumax.
29872         * m4/strtoumax.m4: New file.
29873
29874         Module xstrtoimax.
29875         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
29876         jm_AC_PREREQ_XSTRTOIMAX.
29877         Moved the strtol prerequisites to strtol.m4.
29878         Moved the strtoll prerequisites to strtoll.m4.
29879         Moved the strtoimax prerequisites to strtoimax.m4.
29880
29881         Module xstrtoumax.
29882         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
29883         jm_AC_PREREQ_XSTRTOUMAX.
29884         Moved the strtoul prerequisites to strtoul.m4.
29885         Moved the strtoull prerequisites to strtoull.m4.
29886         Moved the strtoumax prerequisites to strtoumax.m4.
29887
29888         Module chown.
29889         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
29890         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
29891
29892         Module dup2.
29893         * m4/dup2.m4: New file.
29894
29895         Module ftruncate.
29896         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
29897         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
29898
29899         Module getgroups.
29900         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
29901         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
29902
29903         Module gettimeofday.
29904         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
29905         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
29906         gl_PREREQ_GETTIMEOFDAY.
29907
29908         Module mkdir.
29909         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
29910         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
29911
29912         Module mkstemp.
29913         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
29914         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
29915         jm_AC_TYPE_UINTMAX_T.
29916         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
29917
29918         Module stat.
29919         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
29920         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
29921
29922         Module lstat.
29923         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
29924         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
29925
29926         Module timespec.
29927         * m4/timespec.m4 (gl_TIMESPEC): New macro.
29928         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
29929         * m4/st_mtim.m4: Indentation.
29930
29931         Module nanosleep.
29932         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
29933         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
29934         gl_PREREQ_NANOSLEEP.
29935
29936         Module regex.
29937         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
29938         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
29939         (gl_REGEX): New macro.
29940
29941         Module rename.
29942         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
29943         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
29944
29945         Module rmdir.
29946         * m4/rmdir.m4: New file.
29947
29948         Module utime.
29949         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
29950         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
29951         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
29952
29953         Module dirname.
29954         * m4/dirname.m4: New file.
29955
29956         Module getopt.
29957         * m4/getopt.m4: New file.
29958
29959         Module unistd-safer.
29960         * m4/unistd-safer.m4: New file.
29961
29962         Module fnmatch.
29963         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
29964         declaration.
29965         (gl_PREREQ_FNMATCH_EXTRA): New macro.
29966         (gl_FUNC_FNMATCH_POSIX): New macro.
29967         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
29968         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
29969         simply fnmatch.
29970
29971         Module exclude.
29972         * m4/exclude.m4: New file.
29973
29974         Module human.
29975         * m4/human.m4: New file.
29976
29977         Module acl.
29978         * m4/acl.m4: Nop.
29979
29980         Module backupfile.
29981         * m4/backupfile.m4: New file.
29982         * m4/d-ino.m4: Indentation.
29983
29984         Module fsusage.
29985         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
29986         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
29987         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
29988
29989         Module dirfd.
29990         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
29991         requirements.
29992
29993         Module euidaccess.
29994         * m4/euidaccess.m4: New file.
29995
29996         Module file-type.
29997         * m4/file-type.m4: New file.
29998
29999         Module fileblocks.
30000         * m4/fileblocks.m4: New file.
30001
30002         Module filemode.
30003         * m4/filemode.m4: New file.
30004
30005         Module isdir.
30006         * m4/isdir.m4: New file.
30007
30008         Module lchown.
30009         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
30010         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
30011
30012         Module makepath.
30013         * m4/makepath.m4: New file.
30014
30015         Module modechange.
30016         * m4/modechange.m4: New file.
30017
30018         Module mountlist.
30019         * m4/mountlist.m4: New file.
30020         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
30021         Indentation.
30022
30023         Module path-concat.
30024         * m4/path-concat.m4: New file.
30025
30026         Module pathmax.
30027         * m4/pathmax.m4: New file.
30028
30029         Module same.
30030         * m4/same.m4: New file.
30031
30032         Module save-cwd.
30033         * m4/save-cwd.m4: New file.
30034
30035         Module savedir.
30036         * m4/savedir.m4: New file.
30037
30038         Module xgetcwd.
30039         * m4/xgetcwd.m4: New file.
30040         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
30041
30042         Module xreadlink.
30043         * m4/xreadlink.m4: New file.
30044
30045         Module safe-read.
30046         * m4/safe-read.m4: New file.
30047
30048         Module safe-write.
30049         * m4/safe-write.m4: New file.
30050
30051         Module closeout.
30052         * m4/closeout.m4: New file.
30053
30054         Module stdio-safer.
30055         * m4/stdio-safer.m4: New file.
30056
30057         Module getpass.
30058         * m4/getpass.m4: New file.
30059
30060         Module getugroups.
30061         * m4/getugroups.m4: New file.
30062
30063         Module group-member.
30064         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
30065         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
30066
30067         Module idcache.
30068         * m4/idcache.m4: New file.
30069
30070         Module userspec.
30071         * m4/userspec.m4: New file.
30072
30073         Module gettime.
30074         * m4/clock_time.m4: New file.
30075         * m4/gettime.m4: New file.
30076
30077         Module settime.
30078         * m4/settime.m4: New file.
30079
30080         Module posixtm.
30081         * m4/posixtm.m4: New file.
30082
30083         Module gethostname.
30084         * m4/gethostname.m4: New file.
30085
30086         Module canon-host.
30087         * m4/canon-host.m4: New file.
30088
30089         Module gettext.
30090         * m4/codeset.m4: New file, from gettext-0.11.5.
30091         * m4/gettext.m4: New file, from gettext-0.11.5.
30092         * m4/glibc21.m4: New file, from gettext-0.11.5.
30093         * m4/iconv.m4: New file, from gettext-0.11.5.
30094         * m4/intdiv0.m4: New file, from gettext-0.11.5.
30095         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
30096         * m4/inttypes.m4: New file, from gettext-0.11.5.
30097         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
30098         * m4/isc-posix.m4: New file, from gettext-0.11.5.
30099         * m4/lcmessage.m4: New file, from gettext-0.11.5.
30100         * m4/lib-ld.m4: New file, from gettext-0.11.5.
30101         * m4/lib-link.m4: New file, from gettext-0.11.5.
30102         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
30103         * m4/progtest.m4: New file, from gettext-0.11.5.
30104         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
30105         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
30106         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
30107
30108         Module localcharset.
30109         * m4/localcharset.m4: New file.
30110
30111         Module hard-locale.
30112         * m4/hard-locale.m4: New file.
30113
30114         Module mbswidth.
30115         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
30116         onceonly macros.
30117         * m4/mbrtowc.m4: Add comment.
30118
30119         Module memcasecmp.
30120         * m4/memcasecmp.m4: New file.
30121
30122         Module memcoll.
30123         * m4/memcoll.m4: New file.
30124
30125         Module unicodeio.
30126         * m4/unicodeio.m4: New file.
30127
30128         Module rpmatch.
30129         * m4/rpmatch.m4: New file.
30130
30131         Module yesno.
30132         * m4/yesno.m4: New file.
30133
30134         Module exitfail.
30135         * m4/exitfail.m4: New file.
30136
30137         Module c-stack.
30138         * m4/c-stack.m4 (gl_C_STACK): New macro.
30139         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
30140
30141         Module error.
30142         * m4/error.m4 (gl_ERROR): New macro.
30143         (jm_PREREQ_ERROR): Use onceonly macros.
30144
30145         Module fatal.
30146         * m4/fatal.m4: New file.
30147
30148         Module getloadavg.
30149         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
30150         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
30151
30152         Module getpagesize.
30153         * m4/getpagesize.m4: New file.
30154
30155         Module getusershell.
30156         * m4/getusershell.m4: New file.
30157
30158         Module physmem.
30159         * m4/physmem.m4: New file.
30160
30161         Module posixver.
30162         * m4/posixver.m4: New file.
30163
30164         Module quotearg.
30165         * m4/quotearg.m4: New file.
30166
30167         Module quote.
30168         * m4/quote.m4: New file.
30169
30170         Module readutmp.
30171         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
30172
30173         Module sig2str.
30174         * m4/sig2str.m4: New file.
30175
30176         Other.
30177         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
30178         ulonglong.m4.
30179         * m4/intmax_t.m4: New file.
30180         * m4/d-type.m4: Indentation.
30181         * m4/jm-macros.m4: Update.
30182         * m4/prereq.m4 (jm_PREREQ): Update.
30183         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
30184         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
30185         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
30186         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
30187         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
30188         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
30189         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
30190         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
30191         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
30192         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
30193         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
30194         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
30195         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
30196         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
30197         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
30198         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
30199         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
30200         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
30201         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
30202
30203 2002-12-24  Bruno Haible  <bruno@clisp.org>
30204
30205         * MODULES.txt: Update according to m4/ changes.
30206
30207         Module gettext.
30208         * config.rpath: New file, from gettext-0.11.5.
30209
30210         * modules/*: New module descriptions.
30211         * gnulib-tool: New file.
30212         * MODULES.html.sh: New file.
30213
30214 2002-12-21  Karl Berry  <karl@gnu.org>
30215
30216         * doc/fdl.texi: update to version 1.2.
30217
30218 2002-12-19  Karl Berry  <karl@gnu.org>
30219
30220         * config/config.guess: update from prep.
30221
30222 2002-12-18  Bruno Haible  <bruno@clisp.org>
30223
30224         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
30225         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
30226
30227 2002-12-17  Bruno Haible  <bruno@clisp.org>
30228
30229         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
30230         stdlib.h, string.h.
30231
30232 2002-12-17  Bruno Haible  <bruno@clisp.org>
30233
30234         * lib/canon-host.c (strdup): Remove unused declaration.
30235
30236         * lib/fsusage.c: Include full_read.h.
30237         (get_fs_usage): Use full_read instead of safe_read.
30238
30239         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
30240
30241 2002-12-12  Karl Berry  <karl@gnu.org>
30242
30243         * config/config.guess: update from prep.
30244
30245 2002-12-11  Bruno Haible  <bruno@clisp.org>
30246
30247         * m4/setenv.m4: New file, from gettext-0.11.5.
30248
30249 2002-12-11  Bruno Haible  <bruno@clisp.org>
30250
30251         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
30252         not unsetenv().
30253         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
30254         modifications:
30255
30256         2002-12-11  Bruno Haible  <bruno@clisp.org>
30257
30258                 * setenv.c (alloca): Fall back to malloc.
30259                 (freea): New macro.
30260                 (setenv): Use freea() to free memory allocated with alloca().
30261
30262         2002-11-13  Bruno Haible  <bruno@clisp.org>
30263
30264                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
30265                 function declarations.
30266                 * unsetenv.c (unsetenv): Likewise.
30267
30268         2002-03-04  Bruno Haible  <bruno@clisp.org>
30269
30270                 Portability to AIX 4.3.3.
30271                 * unsetenv.c: New file, extracted from setenv.c.
30272                 * setenv.c: Move the unsetenv() function to unsetenv.c.
30273
30274         2001-12-20  Bruno Haible  <bruno@clisp.org>
30275
30276                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
30277                 use malloc instead. For SunOS 4.
30278
30279         2001-12-11  Bruno Haible  <bruno@clisp.org>
30280
30281                 * setenv.c: Declare alloca.
30282                 (compar_fn_t): New typedef.
30283                 (KNOWN_VALUE, STORE_VALUE): Use it.
30284
30285         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
30286         setenv.h.
30287
30288 2002-12-10  Paul Eggert  <eggert@twinsun.com>
30289
30290         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
30291         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
30292         Choose values that are less likely to collide with system fnmatch
30293         options.
30294         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
30295         defined (e.g., a pure POSIX system).
30296         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
30297         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
30298
30299 2002-12-06  Paul Eggert  <eggert@twinsun.com>
30300
30301         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
30302         a pain in practice to deal with generated m4 files.  This change
30303         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
30304
30305         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
30306         and jm-glibc-io.m4, as they are no longer a special case.
30307         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
30308         kludge and the auto-generation stuff.  Check only whether the
30309         functions are declared, not whether they exist, since older hosts
30310         that don't declare the functions can't use the optimization anyway.
30311
30312 2002-12-06  Jim Meyering  <jim@meyering.net>
30313
30314         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
30315
30316         Merge in changes from libc's misc/error.c, in preparation
30317         for the merge of gnulib's changes back into libc.
30318
30319         * lib/error.c (_): Define only if not already defined.
30320         Move definition to follow all #include directives.
30321         Include unlocked-io.h only if !_LIBC.
30322         [_LIBC]: Include <libio/libioP.h>.
30323         [USE_IN_LIBIO]: Include <libio/iolibio.h>
30324         (fflush): Tweak definition to use INTUSE.
30325         (putc): Define.
30326
30327 2002-12-05  Paul Eggert  <eggert@twinsun.com>
30328
30329         * lib/alloca.c [defined emacs]: Include "lisp.h".
30330         (xalloc_die) [defined emacs]: New macro.
30331         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
30332         [! defined emacs]: Include <xalloc.h>.
30333         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
30334         (pointer): Typedef to POINTER_TYPE *.
30335         (malloc): Remove decl; we now always use xmalloc.
30336         (alloca): Use old-style definition, since Emacs needs this.
30337         Check for arithmetic overflow when computing combined size.
30338
30339 2002-12-04  Paul Eggert  <eggert@twinsun.com>
30340
30341         Do not generate unlocked-io.h automatically, since it's easier to
30342         maintain it by hand.
30343
30344         * lib/unlocked-io.h: New file, from GNU diffutils,
30345         but with proper copyright notice and attribution.
30346         * lib/gen-uio: Remove.
30347         * lib/Makefile.am: Add copyright notice.
30348         (libfetish_a_SOURCES): Add unlocked-io.h.
30349         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
30350         (DISTCLEANFILES, io_functions): Remove macros.
30351         (EXTRA_DIST): Remove gen_uio.
30352         (unlocked-io.h): Remove rule.
30353
30354 2002-12-04  Jim Meyering  <jim@meyering.net>
30355
30356         Reflect the fact that stat.c and lstat.c are no longer generated.
30357         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
30358         (DISTCLEANFILES): Likewise.
30359         (EXTRA_DIST): Likewise.
30360         (all_local): Don't depend on stat.c or lstat.c.
30361         (stat.c, lstat.c): Remove rules.
30362         (EXTRA_DIST): Remove xstat.in.
30363
30364         * lib/xstat.in: Remove file.  Contents moved into stat.c.
30365         * lib/stat.c: New file.  Contents mostly from xstat.in.
30366         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
30367         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
30368
30369         * lib/safe-read.c: Rework so that it may serve to define safe_write,
30370         too.
30371         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
30372
30373 2002-12-03  Jim Meyering  <jim@meyering.net>
30374
30375         * lib/safe-read.c, safe-write.c: Change variable names and comments,
30376         but not semantics, to minimize the differences between these two files.
30377         (safe_read): Change comment to mention SAFE_READ_ERROR.
30378
30379         * lib/safe-read.c (IS_EINTR): Define.
30380         (safe_read): Use IS_EINTR in place of in-function cpp directives.
30381
30382 2002-12-02  Jim Meyering  <jim@meyering.net>
30383
30384         * lib/safe-read.c (EINTR): Define.
30385         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
30386         (INT_MAX): Provide fallback.
30387         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
30388
30389         * lib/safe-read.h (SAFE_READ_ERROR): Define.
30390
30391 2002-12-02  Bruno Haible  <bruno@clisp.org>
30392
30393         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
30394         Define, taken from safe-read.c.
30395         (INT_MAX): Provide fallback.
30396         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
30397         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
30398
30399         * lib/safe-read.c (EINTR): Remove definition.
30400         (safe_read): Don't use EINTR if it is absent.
30401
30402 2002-12-01  Jim Meyering  <jim@meyering.net>
30403
30404         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
30405         zero.
30406         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
30407
30408 2002-11-27  Paul Eggert  <eggert@twinsun.com>
30409
30410         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
30411         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
30412         with `if (! (value < limit)) abort ();', for readability.
30413
30414 2002-11-26  Karl Berry  <karl@gnu.org>
30415
30416         * lib/strdup.c: copy from libc again, with jim's ok.
30417         * lib/.cppi-disable: re-add strdup.c
30418
30419 2002-11-25  Karl Berry  <karl@gnu.org>
30420
30421         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
30422         instead of "strtol.c".
30423
30424 2002-11-25  Karl Berry  <karl@gnu.org>
30425
30426         * config/install-sh: update from automake for variable quoting, $0 in
30427         error msgs, etc.
30428
30429         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
30430         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
30431         entry.
30432
30433 2002-11-25  Jim Meyering  <jim@meyering.net>
30434
30435         * lib/mktime.c: Sync from libc, now that it has the latest fix.
30436
30437 2002-11-24  Karl Berry  <karl@gnu.org>
30438
30439         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
30440         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
30441
30442 2002-11-24  Jim Meyering  <jim@meyering.net>
30443
30444         Update from coreutils:
30445
30446         * lib/mktime.c: Merge in changes from libc.
30447
30448         Avoid a link-time failure on some Linux systems.
30449         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
30450         (otherwise).
30451         (__mon_yday): Declare with the STATIC attribute.
30452         (__mktime_internal): Likewise.
30453         Based on a report from Greg Schafer.
30454
30455 2002-11-23  Jim Meyering  <jim@meyering.net>
30456
30457         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
30458         Use `unsigned', not `int', as type of index.
30459
30460         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
30461
30462         * lib/fsusage.c: Remove unneeded parentheses around operands of
30463         `defined'.
30464
30465 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30466
30467         * lib/quotearg.h: Allow multiple inclusion by surrounding with
30468         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
30469         so that we can be included first.
30470         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
30471         * lib/quotearg.c: Include quotearg.h immediately after config.h.
30472         No need to include stddef.h or sys/types.h any more.
30473         Surround local include files with "", not "<>".
30474         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
30475         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
30476         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
30477         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
30478         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
30479         (ISPRINT): Remove; no longer needed now that we assume C89.
30480
30481         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
30482         Preserve errno.
30483
30484         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
30485         quotearg_char): Use SIZE_MAX rather than
30486         (size_t) -1 when we are talking about "infinity".
30487
30488         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
30489
30490 2002-11-22  Paul Eggert  <eggert@twinsun.com>
30491
30492         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
30493         hint that one should use `if (! x) abort ();' rather than `assert
30494         (x);', and anyway it's one less thing to worry about configuring.
30495         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
30496         hash_rehash, hash_insert): Use abort rather than assert.
30497
30498 2002-11-22  Bruno Haible  <bruno@clisp.org>
30499
30500         * lib/safe-read.h: Assume C89. Add comments.
30501         (safe_read): Change return type to size_t.
30502         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
30503         byte counts > SSIZE_MAX correctly.
30504         * lib/safe-write.h: New file.
30505         * lib/safe-write.c: New file.
30506         * lib/full-read.h: New file.
30507         * lib/full-read.c: New file.
30508         * lib/full-write.h: Assume C89. Add comments.
30509         * lib/full-write.c: Include safe-write.h.
30510         (full_write): Rewritten to use safe_write.
30511         Suggested by Jim Meyering and Paul Eggert.
30512
30513 2002-11-21  Jim Meyering  <jim@meyering.net>
30514
30515         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
30516
30517         Merge in changes from the coreutils.
30518
30519         2002-09-25  Paul Eggert  <eggert@twinsun.com>
30520         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
30521         <stdint.h>.
30522         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
30523         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
30524         int.  Work more efficiently if X is the same width as uintmax_t.
30525         Do not compare X to -1, to avoid bogus compiler warning.
30526         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
30527         Don't assume that f_frsize and f_bsize are the same type.
30528
30529         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
30530         warning on FreeBSD.
30531
30532         * lib/makepath.c (make_path): Restore umask *before* creating the final
30533         component.
30534         (make_path): Minor reformatting.
30535
30536         * lib/xmalloc.c: Adjust to work with new autoconf macros,
30537         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
30538         HAVE_MALLOC/HAVE_REALLOC.
30539
30540         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
30541         dummy ones.  At least on GNU/Linux systems, `auto' means something
30542         else.
30543         From Michael Stone.
30544
30545 2002-11-21  Bruno Haible  <bruno@clisp.org>
30546
30547         Remove case insensitive option matching.
30548         * lib/argmatch.h (argcasematch): Remove declaration.
30549         (ARGCASEMATCH): Remove macro.
30550         (__xargmatch_internal): Remove case_sensitive argument.
30551         (XARGMATCH): Update.
30552         (XARGCASEMATCH): Remove macro.
30553         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
30554         case_sensitive argument.
30555         (argcasematch): Remove function.
30556         (__xargmatch_internal): Remove case_sensitive argument.
30557         (main): Use XARGMATCH instead of XARGCASEMATCH.
30558
30559         * lib/xmalloc.c: Change compile-time error message. Add comment about
30560         required autoconf version.
30561
30562 2002-11-20  Paul Eggert  <eggert@twinsun.com>
30563
30564         Merge argmatch cleanups from Bison.  Assume C89.
30565
30566         * lib/argmatch.c: Include config.h here, not in argmatch.h.
30567         Include stdlib.h, for EXIT_FAILURE.
30568         Always include <string.h>, since we assume C89.
30569         (EXIT_FAILURE): Remove pre-C89 bug workaround.
30570         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
30571         Include <stddef.h> instead, since it's all we need for size_t.
30572         (PARAMS): Remove.  All uses removed.
30573         (ARRAY_CARDINALITY): Do not bother to #undef.
30574         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
30575         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
30576         Remove unnecessary parentheses.
30577         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
30578         Insert necessary parentheses.
30579         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
30580         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
30581
30582 2002-11-19  Bruno Haible  <bruno@clisp.org>
30583
30584         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
30585         * lib/mbswidth.h: Include <stddef.h>, for size_t.
30586
30587         * lib/mbswidth.h (PARAMS): Remove macro.
30588         (mbswidth, mbsnwidth): Use ANSI C function declarations.
30589         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
30590
30591         * lib/gcd.h (PARAMS): Remove macro.
30592         (gcd): Use ANSI C function declarations.
30593         * lib/gcd.c (gcd): Likewise.
30594
30595 2002-11-15  Bruno Haible  <bruno@clisp.org>
30596
30597         * lib/strcspn.c: Include <stddef.h>.
30598         (strcspn): Use ANSI C function declaration. Change return type to
30599         size_t. Use NULL.
30600         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
30601         (strpbrk): Use NULL.
30602         * lib/strpbrk.h (PARAMS): Remove macro.
30603         (strpbrk): Use ANSI C function declaration.
30604         * lib/strstr.c: Don't include <sys/types.h>.
30605         * lib/strstr.h (PARAMS): Remove macro.
30606         (strstr): Use ANSI C function declarations.
30607
30608 2002-11-14  Karl Berry  <karl@gnu.org>
30609
30610         * config/mkinstalldirs: `do' on separate line, instead of
30611         `for var; do'.
30612
30613 2002-11-06  Bruno Haible  <bruno@clisp.org>
30614
30615         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
30616         * lib/gcd.c (gcd): Likewise.
30617
30618 2002-11-05  Bruno Haible  <bruno@clisp.org>
30619
30620         * lib/gcd.h: New file, from gettext-0.11.5.
30621         * lib/gcd.c: New file, from gettext-0.11.5.
30622
30623 2002-11-05  Bruno Haible  <bruno@clisp.org>
30624
30625         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30626         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30627         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30628         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
30629
30630         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
30631         <libintl.h>.
30632         * lib/makepath.c: Include gettext.h instead of <locale.h> and
30633         <libintl.h>.
30634
30635         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
30636         * lib/human.c: Include gettext.h instead of <libintl.h>.
30637         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
30638         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
30639         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
30640         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
30641         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
30642         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
30643         (textdomain): Remove definition.
30644         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
30645
30646         * lib/long-options.c: Remove include of <libintl.h> and definition of
30647         _.
30648         * lib/same.c: Remove include of <libintl.h> and definition of _.
30649
30650 2002-11-04  Owen Taylor  <otaylor@redhat.com>
30651
30652         * lib/config.charset: A few additions for Solaris.
30653
30654 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
30655
30656         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
30657         * lib/localcharset.c (locale_charset): Declare as extern "C".
30658
30659 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
30660
30661         * lib/config.charset: msdos in uk_UA uses CP1125.
30662
30663 2002-11-04  Bruno Haible  <bruno@clisp.org>
30664
30665         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
30666         * lib/strcase.h: New file, from GNU gettext-0.11.5.
30667         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
30668         * lib/strstr.h: New file, from GNU gettext-0.11.5.
30669         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
30670
30671 2002-11-04  Bruno Haible  <bruno@clisp.org>
30672
30673         * lib/localcharset.c (locale_charset): Don't return an empty string.
30674
30675 2002-11-04  Bruno Haible  <bruno@clisp.org>
30676
30677         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
30678         aliases.
30679
30680 2002-11-04  Bruno Haible  <bruno@clisp.org>
30681
30682         * lib/config.charset: Update for newest glibc. Add canonical names
30683         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
30684
30685 2002-11-04  Bruno Haible  <bruno@clisp.org>
30686
30687         * lib/config.charset: Add support for NetBSD.
30688
30689 2002-11-04  Bruno Haible  <bruno@clisp.org>
30690
30691         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
30692
30693 2002-11-01  Bruno Haible  <bruno@clisp.org>
30694
30695         * configure.in: Add AC_CONFIG_AUX_DIR call.
30696         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
30697         test/Makefile.
30698         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
30699
30700 2002-09-28  Karl Berry  <karl@gnu.org>
30701
30702         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
30703         installed automake until the next release, since changes have been
30704         made.
30705
30706 2002-09-25  Karl Berry  <karl@gnu.org>
30707
30708         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
30709         * lib/getopt*: copy from libc/posix.
30710         * lib/gettext.h: copy from gettext.
30711         * lib/.cppi-disable: add strdup.c, gettext.h.
30712
30713 2002-09-25  Karl Berry  <karl@gnu.org>
30714
30715         * config/srclist.txt: enable gettext.h check.
30716         * config/config.{guess,sub}: update from prep.
30717         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
30718                 from automake 1.6.3.
30719         See srclist*.
30720
30721 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
30722
30723         * regex.c (PATFETCH): Remove the translating fetch.
30724         (PATFETCH_RAW): Rename to PATFETCH.
30725         (set_image_of_range): New fun.
30726         (SET_RANGE_TABLE_WORK_AREA): Use it.
30727         (regex_compile): Don't translate the pattern chars so eagerly.
30728         Only do it when inserting an `exactn' bytecode or when handling
30729         a char-range.
30730         (mutually_exclusive_p): Avoid empty statement.
30731
30732 2002-07-06  Jim Meyering  <meyering@lucent.com>
30733
30734         * m4/README: Don't mention Makefile.am.in.
30735         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
30736
30737 2002-07-01  Jim Meyering  <meyering@lucent.com>
30738
30739         * lib/c-stack.c: Include sys/time.h.
30740         From Volker Borchert.
30741
30742 2002-06-26  Paul Eggert  <eggert@twinsun.com>
30743
30744         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
30745
30746 2002-06-26  Paul Eggert  <eggert@twinsun.com>
30747
30748         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
30749         New macro.  Use it uniformly instead of
30750         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
30751         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
30752         reported by Vin Shelton.
30753
30754 2002-06-22  Paul Eggert  <eggert@twinsun.com>
30755
30756         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
30757         Do not assume SA_SIGINFO behavior.
30758         Bug reported by Jim Meyering on NetBSD 1.5.2.
30759
30760 2002-06-22  Jim Meyering  <meyering@lucent.com>
30761
30762         * m4/c-stack.m4: New file, from diffutils-2.8.2.
30763         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
30764
30765         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
30766         now that configure.ac uses AC_GNU_SOURCE.
30767         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
30768         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
30769
30770         Update to latest tools.  Suggestions from Paul Eggert.
30771         * m4/stdbool.m4: New file, from diffutils-2.8.2.
30772         * m4/gnu-source.m4: Update from diffutils-2.8.2.
30773         * m4/fnmatch.m4: Likewise.
30774         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
30775         to AC_HEADER_STDBOOL
30776
30777 2002-06-22  Jim Meyering  <meyering@lucent.com>
30778
30779         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
30780         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
30781
30782 2002-06-22  Jim Meyering  <meyering@lucent.com>
30783
30784         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
30785
30786         * lib/exitfail.c, exitfail.h: Likewise.
30787         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
30788
30789         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
30790         of fnmatch.h.
30791         (EXTRA_DIST): Add fnmatch_loop.c.
30792         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
30793
30794         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
30795         * lib/fnmatch.c: Update from diffutils-2.8.2.
30796         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
30797         * lib/fnmatch.h: Remove file.
30798
30799 2002-06-21  Jim Meyering  <meyering@lucent.com>
30800
30801         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
30802         * m4/mbrtowc.m4: Likewise.
30803
30804         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
30805         * m4/mbswidth.m4: Reflect name change:
30806         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
30807         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
30808
30809         * m4/lib-link.m4: Update from gettext-0.11.2.
30810         * m4/gettext.m4: Likewise.
30811
30812         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
30813         From Alfred M. Szmidt.
30814
30815 2002-06-18  Paul Eggert  <eggert@twinsun.com>
30816
30817         * lib/file-type.h: Report an error if neither S_ISREG nor
30818         S_IFREG is defined, instead of using a test specific to glibc
30819         2.2.  This should be safe, since POSIX requires S_ISREG and
30820         Unix Version 7 had S_IFREG.  We don't need to check for
30821         <sys/types.h> since we don't use any symbols that it defines.
30822
30823 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
30824
30825         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
30826         $@-t, so that each temporary file name is unique and valid in the first
30827         8 characters, for operation under DOS.
30828
30829 2002-06-15  Paul Eggert  <eggert@twinsun.com>
30830
30831         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
30832
30833 2002-06-15  Jim Meyering  <meyering@lucent.com>
30834
30835         Work even with DJGPP 2.03, which lacks support for symlinks.
30836         From Richard Dawe.
30837         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
30838         is defined.
30839         * lib/lchown.c (S_ISLNK): Likewise.
30840
30841 2002-06-15  Jim Meyering  <meyering@lucent.com>
30842
30843         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
30844         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
30845         have been included before this file.
30846
30847 2002-06-14  Jim Meyering  <meyering@lucent.com>
30848
30849         * lib/file-type.h: Use the version from diffutils-2.8.2.
30850         * lib/file-type.c: Likewise.
30851
30852 2002-06-07  Jim Meyering  <meyering@lucent.com>
30853
30854         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
30855         They're needed at least for NetBSD 1.5.2.
30856         ($statxfs_includes): Include those same headers.
30857         ($statxfs_includes): Include sys/vfs.h if available.
30858         ($statxfs_includes): Likewise for sys/statvfs.h.
30859         Check for the following members in both structs statfs and statvfs:
30860         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
30861
30862 2002-06-01  Jim Meyering  <meyering@lucent.com>
30863
30864         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
30865         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
30866
30867 2002-05-28  Jim Meyering  <meyering@lucent.com>
30868
30869         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
30870         Reported by Volker Borchert.
30871
30872 2002-05-27  Jim Meyering  <meyering@lucent.com>
30873
30874         Fix a problem seen only on nonconforming systems whereby ls.c's
30875         use of localtime, and then of gettimeofday would cause trouble:
30876         the localtime call used to initialize rpl_gettimeofday's save
30877         mechanism would clobber ls's current local time information so
30878         that in any long listing the first file would always be listed
30879         with date 1970-01-01.  Analysis by Volker Borchert.
30880
30881         * lib/gettimeofday.c (localtime): Undefine.
30882         (rpl_localtime): New function.
30883
30884 2002-05-27  Jim Meyering  <meyering@lucent.com>
30885
30886         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
30887         localtime.
30888
30889         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
30890         use the replacement function; it wouldn't resolve at link time.
30891         Reported by Volker Borchert.
30892
30893 2002-05-22  Jim Meyering  <meyering@lucent.com>
30894
30895         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
30896         file-type.h.
30897         * lib/file-type.h: New file.
30898         * lib/file-type.c (file_type): New file/function.  Extracted from
30899         diffutils.
30900
30901 2002-04-30  Jim Meyering  <meyering@lucent.com>
30902
30903         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
30904
30905 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30906
30907         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
30908
30909 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30910
30911         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
30912         Do not check for alloca.h (no longer used) or stdbool.h (was never
30913         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
30914
30915 2002-04-29  Paul Eggert  <eggert@twinsun.com>
30916
30917         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
30918
30919 2002-04-29  Jim Meyering  <meyering@lucent.com>
30920
30921         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
30922         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
30923         Use AC_FUNC_STRNLEN here instead.
30924
30925         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
30926         With autoconf-2.53a, it's part of AC_PROG_CC.
30927
30928 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30929
30930         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
30931         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
30932
30933 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30934
30935         * lib/sig2str.h, lib/sig2str.c: New files.
30936         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
30937
30938 2002-04-28  Paul Eggert  <eggert@twinsun.com>
30939
30940         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
30941         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
30942         of 127, since 64 is the largest conceivable number for ancient
30943         nonstandard hosts.
30944         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
30945
30946 2002-04-28  Jim Meyering  <meyering@lucent.com>
30947
30948         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
30949
30950 2002-04-24  Jim Meyering  <meyering@lucent.com>
30951
30952         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
30953         (jm_PREREQ): Use it.
30954
30955         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
30956         mach/mach.h fcntl.h.
30957         Check for this function: setlocale.
30958
30959 2002-04-24  Jim Meyering  <meyering@lucent.com>
30960
30961         * lib/gettext.h: New file, from Gettext.
30962         * lib/Makefile.am (INCLUDES): Remove -I../intl.
30963         (libfetish_a_SOURCES): Add gettext.h.
30964
30965 2002-04-16  Jim Meyering  <meyering@lucent.com>
30966
30967         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
30968         ut_pid, ut_id, ut_exit.
30969
30970 2002-04-16  Jim Meyering  <meyering@lucent.com>
30971
30972         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
30973         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
30974         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
30975
30976 2002-04-12  Jim Meyering  <meyering@lucent.com>
30977
30978         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
30979         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
30980         existence of the getmntinfo function.  Needed for Darwin 5.3.
30981
30982         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
30983         This is necessary at least on Darwin 5.3.
30984
30985         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
30986         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
30987         strnlen.o in the library, and that makes some versions of ranlib
30988         object.
30989
30990 2002-04-12  Jim Meyering  <meyering@lucent.com>
30991
30992         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
30993
30994 2002-04-09  Jim Meyering  <meyering@lucent.com>
30995
30996         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
30997         to be more precise.  Rather than saying we're checking whether the
30998         function `works', say what we're testing.
30999         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
31000         Reported by Bruno Haible.
31001
31002 2002-03-10  Jim Meyering  <meyering@lucent.com>
31003
31004         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
31005         Suggestion from Santiago Vila.
31006
31007 2002-03-08  Jim Meyering  <meyering@lucent.com>
31008
31009         * lib/rename.c: Mention that this wrapper is needed also on
31010         mips-dec-ultrix4.4 systems.
31011
31012 2002-03-02  Jim Meyering  <meyering@lucent.com>
31013
31014         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
31015         not HAVE_CLOCK_SETTIME.
31016
31017 2002-02-27  Paul Eggert  <eggert@twinsun.com>
31018
31019         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
31020         Check for clock_settime.
31021
31022 2002-02-27  Paul Eggert  <eggert@twinsun.com>
31023
31024         * lib/nanosleep.h: Rename to....
31025         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
31026
31027         * lib/gettime.c: New file.
31028         * lib/settime.c: New file.
31029         * lib/stime.c: Remove.
31030
31031         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
31032         timespec.h.  Remove nanosleep.h.
31033
31034 2002-02-25  Paul Eggert  <eggert@twinsun.com>
31035
31036         * m4/acl.m4: New file.
31037         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
31038         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
31039
31040 2002-02-25  Paul Eggert  <eggert@twinsun.com>
31041
31042         * lib/acl.c, lib/acl.h: New files.
31043         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
31044
31045 2002-02-24  Jim Meyering  <meyering@lucent.com>
31046
31047         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
31048         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
31049         cause trouble.  Reported by Nelson Beebe.
31050
31051 2002-02-23  Paul Eggert  <eggert@twinsun.com>
31052
31053         * lib/path-concat.c (xpath_concat): Reorder code to pacify
31054         compilers that don't know that xalloc_die never returns.
31055
31056 2002-02-20  Jim Meyering  <meyering@lucent.com>
31057
31058         * lib/getdate.c: Regenerate using bison-1.33.
31059
31060 2002-02-17  Jim Meyering  <meyering@lucent.com>
31061
31062         * config/config.guess (main): Don't use `head -1'; it's no longer
31063         portable. Use `sed 1q' instead.
31064
31065 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
31066
31067         * m4/codeset.m4: Upgrade to gettext-0.11.
31068         * m4/gettext.m4: Upgrade to gettext-0.11.
31069         * m4/glibc21.m4: Upgrade to gettext-0.11.
31070         * m4/iconv.m4: Upgrade to gettext-0.11.
31071         * m4/isc-posix.m4: Upgrade to gettext-0.11.
31072         * m4/lcmessage.m4: Upgrade to gettext-0.11.
31073         * m4/lib-ld.m4: New file, from gettext-0.11.
31074         * m4/lib-link.m4: New file, from gettext-0.11.
31075         * m4/lib-prefix.m4: New file, from gettext-0.11.
31076         * m4/progtest.m4: Upgrade to gettext-0.11.
31077
31078 2002-02-15  Paul Eggert  <eggert@twinsun.com>
31079
31080         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
31081         (jm_PREREQ): Use it.
31082
31083 2002-02-15  Paul Eggert  <eggert@twinsun.com>
31084
31085         * lib/posixver.c, lib/posixver.h: New files.
31086         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
31087
31088 2002-02-02  Paul Eggert  <eggert@twinsun.com>
31089             Bruno Haible  <bruno@clisp.org>
31090
31091         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
31092         (fwrite_success_callback): New declaration.
31093         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
31094         print_unicode_char. Call failure callback instead of error.
31095         (fwrite_success_callback): New function.
31096         (exit_failure_callback): New function.
31097         (fallback_failure_callback): New function.
31098         (print_unicode_char): Call unicode_to_mb.
31099
31100 2002-01-26  Jim Meyering  <meyering@lucent.com>
31101
31102         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
31103         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
31104
31105 2002-01-26  Jim Meyering  <meyering@lucent.com>
31106
31107         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
31108
31109 2002-01-22  Paul Eggert  <eggert@twinsun.com>
31110
31111         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
31112
31113 2002-01-22  Jim Meyering  <meyering@lucent.com>
31114
31115         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
31116         Otherwise, some versions of automake would omit the rule that makes
31117         Makefile from Makefile.in.
31118
31119 2002-01-21  Paul Eggert  <eggert@twinsun.com>
31120
31121         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
31122         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
31123         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
31124         (memcoll): Set errno to zero if there is no error.
31125
31126         * lib/quotearg.c (quotearg_buffer_restyled):
31127         Fix bug with quoting buffers containing NUL when backslashing escapes.
31128         This bug was exposed by the other changes in this patch.
31129         (quotearg_n_options): New arg ARGSIZE.
31130         All callers changed.
31131         (quoting_options_from_style): New function.
31132         (quotearg_n_style): Use it.
31133         (quotearg_n_style_mem): New function.
31134
31135         * lib/quotearg.h (quotearg_n_style_mem): New function.
31136
31137 2002-01-19  Jim Meyering  <meyering@lucent.com>
31138
31139         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
31140         Remove useless quotes: DF_PROG="df".
31141         * m4/strnlen.m4: New file.
31142
31143 2002-01-16  Paul Eggert  <eggert@twinsun.com>
31144
31145         * lib/backupfile.c (ISDIGIT): Comment fix.
31146         * lib/getdate.y (ISDIGIT): Likewise.
31147         * lib/posixtm.c (ISDIGIT, year): Likewise.
31148         * lib/strverscmp.c (ISDIGIT): Likewise.
31149         * lib/userspec.c (ISDIGIT): Likewise.
31150
31151 2002-01-16  Jim Meyering  <meyering@lucent.com>
31152
31153         * lib/getdate.y: Add three semicolons, each just before a closing
31154         brace. Bison (as of version 1.31) no longer papers over that mistake.
31155
31156 2002-01-05  Jim Meyering  <meyering@lucent.com>
31157
31158         * lib/version-etc.c (version_etc_copyright): Update copyright year.
31159
31160 2001-12-19  Paul Eggert  <eggert@twinsun.com>
31161
31162         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
31163         not silently exit merely because the output buffer happens to
31164         have nothing pending.
31165
31166 2001-12-18  Paul Eggert  <eggert@twinsun.com>
31167
31168         See the big note in ../ChangeLog.
31169         * lib/human.c (suffixes): Prefer K to k for 1024.
31170         (generate_suffix_backwards): New function.
31171         (human_readable_inexact): Use it.
31172         * lib/xstrtol.c (__xstrtol): If there is no number but there
31173         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
31174         Accept 'K' as well as 'k'.
31175
31176 2001-12-15  Jim Meyering  <meyering@lucent.com>
31177
31178         * lib/regex.h (__restrict_arr): Update from libc.
31179
31180         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
31181         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
31182         (STREQ): Define.
31183
31184 2001-12-14  Jim Meyering  <meyering@lucent.com>
31185
31186         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
31187         Suggestion from Bruno Haible.
31188
31189 2001-12-10  Jim Meyering  <meyering@lucent.com>
31190
31191         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
31192         xrealloc, Instead, include "xalloc.h".
31193         (initbuffer): Don't cast xmalloc return value to char*.
31194         (readline): Reword comment.
31195         Don't cast xrealloc return value to char*
31196         Return NULL, not 0.
31197
31198 2001-12-09  Jim Meyering  <meyering@lucent.com>
31199
31200         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
31201         about `signed and unsigned type in conditional expression'.
31202         * lib/posixtm.c (posix_time_parse): Likewise.
31203
31204         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
31205
31206         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
31207         to avoid a pedantic warning.
31208
31209         * lib/getstr.c: Don't include assert.h.
31210         (getstr): Remove warning-evoking assertions.
31211         Return -1 if offset parameter is out of bounds.
31212         Change the type of a local from int to size_t.
31213
31214         * lib/strftime.c (my_strftime_localtime_r): Include this function
31215         definition in the `#if ! HAVE_TM_GMTOFF' block.
31216
31217         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
31218         Include xalloc.h instead.
31219
31220 2001-12-02  Jim Meyering  <meyering@lucent.com>
31221
31222         * lib/tempname.c: Don't declare getenv, thus reverting the change of
31223         2001-11-18.  It's no longer necessary, now that stdlib.h is always
31224         included.
31225
31226         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
31227         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
31228
31229 2001-11-30  Akim Demaille  <akim@epita.fr>
31230
31231         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
31232         before being defined.
31233
31234 2001-11-27  Paul Eggert  <eggert@twinsun.com>
31235
31236         * lib/quotearg.h (quotearg_n, quotearg_n_style):
31237         First arg is int, not unsigned.
31238         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
31239         (SIZE_MAX, UINT_MAX): New macros.
31240         (quotearg_n_options): Abort if N is negative.
31241         Avoid overflow check on hosts where size_t is 64 bits and int
31242         is 32 bits, as overflow is impossible there.
31243         Fix off-by-one typo that caused unnecessary reallocation.
31244
31245 2001-11-27  Jim Meyering  <meyering@lucent.com>
31246
31247         * lib/tempname.c: Merge with version from libc.
31248         * lib/regex.c: Likewise.
31249
31250         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
31251         systems for which STDC_HEADERS is 0, it was not included, resulting in
31252         a warning about an integer-to-pointer conversion problem with getenv.
31253         Reported by Volker Borchert.
31254
31255 2001-11-26  Jim Meyering  <meyering@lucent.com>
31256
31257         * lib/gtod.h: Remove file.
31258         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
31259         * lib/gettimeofday.c: Don't include gtod.h.
31260         (GTOD_init): Remove function.
31261         (rpl_gettimeofday): Do its job here instead, rather than aborting.
31262         Suggestion from Volker Borchert.
31263
31264 2001-11-23  Jim Meyering  <meyering@lucent.com>
31265
31266         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
31267         it.
31268         * lib/hash.c (struct hash_table): Define it here instead.
31269
31270 2001-11-22  Jim Meyering  <meyering@lucent.com>
31271
31272         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
31273
31274 2001-11-20  Jim Meyering  <meyering@lucent.com>
31275
31276         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
31277         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
31278
31279 2001-11-19  Jim Meyering  <meyering@lucent.com>
31280
31281         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
31282         directory.  Use "conftestXXXXXX" as the template.
31283         Suggestion from Paul Eggert.
31284
31285         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
31286         immediately, so the test doesn't mistakenly hit the max-open-files
31287         limit.
31288
31289 2001-11-18  Paul Eggert  <eggert@twinsun.com>
31290
31291         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
31292         (TEMPORARIES): New macro.
31293         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
31294         removes an artificial limitation (e.g. HP-UX 10.20, where
31295         TMP_MAX is 17576).
31296
31297 2001-11-18  Jim Meyering  <meyering@lucent.com>
31298
31299         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
31300
31301 2001-11-18  Jim Meyering  <meyering@lucent.com>
31302
31303         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
31304         on SunOS 4.
31305
31306         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
31307         files will be created before anything else.
31308
31309 2001-11-17  Paul Eggert  <eggert@twinsun.com>
31310
31311         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
31312         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
31313
31314 2001-11-17  Jim Meyering  <meyering@lucent.com>
31315
31316         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
31317         Prompted by a report from Bob Proulx.
31318
31319         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
31320         Instead, require UTILS_FUNC_MKSTEMP.
31321
31322 2001-11-17  Jim Meyering  <meyering@lucent.com>
31323
31324         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
31325         Now, that's done as part of AC_FUNC_STRTOD.
31326
31327 2001-11-17  Jim Meyering  <meyering@lucent.com>
31328
31329         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
31330         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
31331         rather than group writable.  Patch by Juan F. Codagnone.
31332
31333         * lib/readtokens.c: Remove explicit declarations of xmalloc and
31334         xrealloc, Instead, include "xalloc.h".
31335
31336         * lib/mountlist.c: Include unlocked-io.h after all system headers.
31337         Remove explicit declarations of xmalloc, xrealloc,
31338         and xstrdup.  Instead, include "xalloc.h".
31339
31340         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
31341         unlocked-io.h.
31342         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
31343         Likewise.
31344         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
31345
31346         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
31347         Reported by Padraig Brady.
31348
31349         * lib/mkstemp.c: #undef mkstemp.
31350         Include config.h.
31351         (rpl_mkstemp): Rename from mkstemp.
31352         Protoize.
31353
31354 2001-11-16  Jim Meyering  <meyering@lucent.com>
31355
31356         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
31357         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
31358         determine the amount of total physical memory, use pstat_getstatic.
31359         HPUX-11 doesn't define _SC_PHYS_PAGES.
31360         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
31361         If sysconf couldn't be used to determine the amount of available
31362         physical memory, use both pstat_getstatic and pstat_getdynamic.
31363         Based on a patch from Bob Proulx.
31364
31365 2001-11-10  Jim Meyering  <meyering@lucent.com>
31366
31367         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
31368         (jm_PREREQ): Use it.
31369
31370 2001-11-09  Jim Meyering  <meyering@lucent.com>
31371
31372         * m4/jm-macros.m4: Require autoconf-2.52f.
31373         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
31374         Use these AC_-prefixed names, not the AM_-prefixed ones.
31375
31376         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
31377
31378 2001-11-05  Jim Meyering  <meyering@lucent.com>
31379
31380         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
31381
31382 2001-11-04  Jim Meyering  <meyering@lucent.com>
31383
31384         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
31385         $DEFS.
31386
31387 2001-11-03  Jim Meyering  <meyering@lucent.com>
31388
31389         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
31390         of AC_DEFUN.
31391
31392         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
31393         know the name of the variable in the macro definition.
31394
31395 2001-11-03  Jim Meyering  <meyering@lucent.com>
31396
31397         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
31398         in argmatch_to_argument call.
31399
31400         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
31401         argument.
31402
31403         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
31404         e.g., a fault due to an attempt to free a NULL pointer.
31405
31406 2001-11-01  Jim Meyering  <meyering@lucent.com>
31407
31408         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
31409         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
31410
31411 2001-11-01  Jim Meyering  <meyering@lucent.com>
31412
31413         * lib/dirfd.c, lib/dirfd.h: New files.
31414         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
31415
31416         * lib/hash.c (hash_print) [TESTING]: Clean up.
31417
31418 2001-10-22  Paul Eggert  <eggert@twinsun.com>
31419
31420         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
31421         to avoid a warning if -Wall.
31422
31423 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
31424
31425         * README: New file
31426         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
31427         (per RMS's instructions, this is now the canonical source)
31428         * lgpl/, gpl/: New directories.
31429
31430 2001-10-21  Paul Eggert  <eggert@twinsun.com>
31431
31432         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
31433
31434 2001-10-21  Jim Meyering  <meyering@lucent.com>
31435
31436         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
31437         this code would end up calling gettext even in packages built
31438         with --disable-nls.
31439         * lib/getopt.c (_): Likewise.
31440         * lib/regex.c (_): Likewise.
31441
31442 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31443
31444         * m4/error.m4 (jm_PREREQ_ERROR):
31445         Do not invoke AC_CHECK_FUNCS with strerror_r, as
31446         AC_FUNC_STRERROR_R does that.
31447         Check for strerror declaration.
31448
31449         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
31450         are supposed to have them these days.
31451         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
31452         Merge changes from latest Autoconf CVS.
31453         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
31454         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
31455         POSIX decided to standardize on the int flavor of strerror_r.
31456
31457 2001-10-20  Paul Eggert  <eggert@twinsun.com>
31458
31459         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
31460         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
31461         Use strerror_r that is only a macro, even if it is not a function.
31462         (strerror): Check for HAVE_DECL_STRERROR before declaring.
31463         (private_strerror): Use prototypes, not old-style function definition.
31464         (print_errno_message): New function.
31465         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
31466         char*-flavored one.
31467         (error_tail, error, error_at_line): Use it.
31468
31469 2001-10-11  Jim Meyering  <meyering@lucent.com>
31470
31471         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
31472         and quote_n (1, ... to avoid clobbering a buffer.
31473
31474 2001-10-05  Jim Meyering  <meyering@lucent.com>
31475
31476         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
31477         hash-pjw.h.
31478         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
31479         * lib/hash-pjw.h: New file.
31480
31481 2001-09-30  Jim Meyering  <meyering@lucent.com>
31482
31483         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
31484         `struct fsstat' has the `f_fstypename' member.
31485         Use that to define FS_TYPE, which is now used to make
31486         the getfsstat link test tighter.
31487
31488 2001-09-30  Jim Meyering  <meyering@lucent.com>
31489
31490         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
31491         Include <sys/ucred.h>, for Apple Darwin.
31492         Include sys/mount.h and sys/fs_types.h only if available.
31493         (FS_TYPE): Define.
31494         (read_filesystem_list): Use FS_TYPE.
31495
31496 2001-09-29  Paul Eggert  <eggert@twinsun.com>
31497
31498         * lib/exclude.c (excluded_filename): 0 -> false, since it's
31499         a boolean context.
31500
31501 2001-09-29  Jim Meyering  <meyering@lucent.com>
31502
31503         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31504         [one-argument getmntent function]): Include stdio.h before mntent.h.
31505         SunOS 4.1.x needs it for the declaration of `FILE'.
31506         Patch by Volker Borchert.
31507
31508         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
31509         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
31510         sys/fs_types.h, and make the link-test for getfsstat guard #include
31511         directives with appropriate #if HAVE_*_H tests so that we can
31512         detect getfsstat on Apple Darwin1.3.7 systems.
31513         Reported by Nelson Beebe.
31514         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
31515
31516 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31517
31518         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31519         #defines strtoimax.  Also treat the other strto* functions
31520         like strtoimax.
31521
31522         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
31523         Check for strtoul and strtoumax,
31524         as those declarations are made even in the signed case.
31525         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
31526         Likewise, for strtol and strtoimax.
31527
31528 2001-09-28  Paul Eggert  <eggert@twinsun.com>
31529
31530         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
31531         #defines strtoimax.  Also treat the other strto* functions
31532         like strtoimax.
31533
31534         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
31535         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
31536         (strtoimax, strtoumax): Do not declare if already defined as a macro.
31537
31538 2001-09-26  Jim Meyering  <meyering@lucent.com>
31539
31540         Most macros in unlocked-io.h had the wrong number of arguments.
31541         * lib/gen-uio: New script.
31542         (USE_UNLOCKED_IO): Define to 1 if not already defined.
31543         * lib/unlocked-io.hin: Remove file.
31544         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
31545         rather than trying to embed it here.
31546         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
31547         Reported by Padraig Brady.
31548
31549 2001-09-25  Volker Borchert  <bt@teknon.de>
31550
31551         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
31552         `result'.
31553
31554 2001-09-24  Jim Meyering  <meyering@lucent.com>
31555
31556         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
31557
31558 2001-09-23  Jim Meyering  <meyering@lucent.com>
31559
31560         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
31561         instead of the mere test for existence of mntent.h.  The latter
31562         would get a false-positive on AIX 3.4 systems.
31563         In the outer getmntent if-block, don't die if neither of the getmntent
31564         tests succeeds.  Instead, just fall through and continue with the
31565         remaining tests.
31566
31567 2001-09-23  Jim Meyering  <meyering@lucent.com>
31568
31569         * lib/mountlist.c: Remove useless parentheses in #if directives.
31570         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
31571         the deprecated MOUNTED symbol is no longer defined in mntent.h.
31572
31573 2001-09-22  Jim Meyering  <meyering@lucent.com>
31574
31575         * m4/gettext.m4: New file.  From gettext.
31576         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
31577         * m4/progtest.m4: Likewise
31578         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
31579         * m4/glibc21.m4: Likewise.
31580
31581         * m4/libintl.m4: Remove.  No longer used.
31582
31583 2001-09-22  Jim Meyering  <meyering@lucent.com>
31584
31585         * lib/localcharset.c: Update from latest gettext.
31586         * lib/config.charset: Likewise.
31587
31588 2001-09-20  Jim Meyering  <meyering@lucent.com>
31589
31590         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
31591         strtoimax.
31592         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
31593         strtoumax.
31594
31595 2001-09-20  Jim Meyering  <meyering@lucent.com>
31596
31597         * lib/xstrtol.c (strtoimax): Guard declaration with
31598         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
31599         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
31600         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
31601         (strtoumax): Likewise, for completeness (it wasn't necessary).
31602
31603 2001-09-17  Paul Eggert  <eggert@twinsun.com>
31604
31605         * lib/strtoimax.c (HAVE_LONG_LONG):
31606         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
31607         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
31608         to work around bug in IBM C compiler.
31609
31610 2001-09-17  Jim Meyering  <meyering@lucent.com>
31611
31612         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
31613         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
31614         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
31615         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
31616         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
31617         whenever the right hand side need not be expanded by the shell.
31618
31619 2001-09-16  Paul Eggert  <eggert@twinsun.com>
31620
31621         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
31622         library.  It's not correct, as some older glibcs are buggy.
31623         fnmatch wasn't fixed until glibc 2.2.
31624
31625         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
31626         special shell magic here.
31627
31628 2001-09-16  Jim Meyering  <meyering@lucent.com>
31629
31630         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
31631         * m4/jm-macros.m4: Require it.
31632
31633 2001-09-16  Jim Meyering  <meyering@lucent.com>
31634
31635         * lib/mkdir.c: New file.
31636
31637 2001-09-15  Jim Meyering  <meyering@lucent.com>
31638
31639         * m4/jm-macros.m4: Check for help2man.
31640
31641 2001-09-11  Jim Meyering  <meyering@lucent.com>
31642
31643         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
31644         The body, by Paul Eggert, was moved here from configure.in.
31645         * m4/jm-macros.m4: Require UTILS_HOST_OS.
31646
31647 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31648
31649         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
31650         (jm_PREREQ): Use it.
31651
31652 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31653
31654         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
31655         Use ssize_t, not int, to store result of readlink.
31656         Check for ssize_t overflow as well as size_t overflow,
31657         as POSIX says the result of readlink is implementation-defined
31658         when ssize_t overflows.
31659         Remove unnecessary cast to char*.
31660         Use free+malloc instead of realloc, as the storage doesn't need
31661         to be preserved and it's clearer and can be more efficient that way.
31662         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
31663         * lib/xreadlink.h (xreadlink): Update prototype.
31664
31665 2001-09-04  Paul Eggert  <eggert@twinsun.com>
31666
31667         * lib/xgetcwd.c: Revert some of the previous change; intead,
31668         fix the HAVE_GETCWD_NULL code to behave more like the
31669         !HAVE_GETCWD_NULL code used to.
31670
31671         Include "xalloc.h".
31672         (xgetcwd): Do not return NULL when memory is exhausted; instead,
31673         invoke xalloc_die.
31674
31675 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31676
31677         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
31678         sys/param.h, as pathmax.h includes them.
31679
31680 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31681
31682         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
31683         (jm_PREREQ_XGETCWD): New macro.
31684
31685         * m4/getcwd.m4: New file.
31686
31687 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31688
31689         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
31690         like the HAVE_GETCWD_NULL code.
31691         Include pathmax.h if not HAVE_GETCWD.
31692         Do not include xalloc.h.
31693         (INITIAL_BUFFER_SIZE): New symbol.
31694         Do not use xmalloc / xrealloc, since the caller is responsible for
31695         handling errors.  Preserve errno around `free' during failure.
31696         Do not overrun buffer when using getwd.
31697
31698 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31699
31700         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
31701         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
31702         getcwd (NULL, 0).
31703
31704 2001-09-03  Paul Eggert  <eggert@twinsun.com>
31705
31706         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
31707         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
31708         spotted by Jim Meyering.
31709
31710 2001-09-03  Jim Meyering  <meyering@lucent.com>
31711
31712         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
31713         failure.
31714
31715 2001-09-02  Jim Meyering  <meyering@lucent.com>
31716
31717         * lib/error.c: Update from GNU libc.
31718
31719 2001-09-01  Jim Meyering  <meyering@lucent.com>
31720
31721         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
31722         Used by df.
31723
31724 2001-09-01  Jim Meyering  <meyering@lucent.com>
31725
31726         * lib/xreadlink.c: New file.
31727         * lib/xreadlink.h: New file.
31728         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
31729         xreadlink.h.
31730
31731         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
31732         doesn't conflict with sparc Solaris 7's definition in
31733         /usr/include/sys/int_types.h.
31734
31735         * lib/exclude.c: Use `""', not `<>' to #include non-system header
31736         files.
31737         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
31738         and strncasecmp as r-values.  Unixware didn't have declarations.
31739
31740 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31741
31742         * lib/xstrtol.h: Add copyright notice.
31743         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
31744         LONGINT_INVALID_SUFFIX_CHAR.
31745
31746 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31747
31748         * lib/xstrtol.c (strtoimax): New decl.
31749
31750 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31751
31752         * lib/xgetcwd.c: Don't include pathmax.h.
31753         Include stdlib.h and unistd.h if available.
31754         Include xalloc.h.
31755         (xmalloc, xstrdup, free): Remove decls.
31756         (xgetcwd): Don't assume sizes fit in unsigned.
31757         Check for overflow when computing sizes.
31758         Simplify reallocation code.
31759
31760 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31761
31762         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
31763         a directory's st_size can have an arbitrary value, so the old
31764         usage could waste an arbitrary amount of memory.  All uses
31765         changed.
31766         * lib/savedir.h: Update prototype.
31767
31768 2001-08-31  Paul Eggert  <eggert@twinsun.com>
31769
31770         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
31771
31772         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
31773         old strtoimax.c.
31774
31775         Also, make the following further changes to make this file's
31776         configuration more similar to that of strtol.c:
31777         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
31778         (strtoumax, uintmax_t, strtoull, strtol): Remove.
31779         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
31780         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
31781         changed to signed values.
31782
31783         And make the following changes as well:
31784         Fix copyright notice, as 1999 was missing.
31785         (verify): New macro.
31786         (strtoimax): Check sizes at compile-time, not run-time.
31787         Prefer strtol to strtoll if both work.
31788         (main): Remove; it was not that useful and was a pain to maintain.
31789
31790         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
31791
31792 2001-08-31  Jim Meyering  <meyering@lucent.com>
31793
31794         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
31795         Use an initial, malloc'd, buffer of length 128 rather than
31796         a statically allocated one of length 1024.
31797
31798 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31799
31800         Simplify code, partly by assuming autoconf 2.52 semantics.
31801
31802         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
31803
31804         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
31805         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
31806         All uses removed.
31807         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
31808         Move AC_REQUIRE to next-to-top level, to avoid confusion.
31809         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
31810         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
31811         jm_AC_HEADER_INTTYPES_H.
31812         * m4/jm-macros.m4 (jm_MACROS): Likewise.
31813
31814         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
31815
31816         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
31817         Quote first arg of AC_DEFUN.
31818         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
31819         since they are needed to parse the include file even if we need
31820         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
31821         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
31822         but with opposite signedness.
31823
31824 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31825
31826         Merge 'exclude' changes from tar 1.13.22.
31827         This fixes one or two unlikely storage allocation overflow bugs,
31828         but doesn't change user-visible behavior otherwise.
31829
31830 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31831
31832         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
31833         (jm_PREREQ_EXCLUDE): New macro.
31834
31835 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31836
31837         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
31838         tm to be declared.
31839
31840 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31841
31842         * lib/hash.c: Remove '2001' from copyright notice.
31843
31844 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31845
31846         * lib/full-write.h: New file.
31847         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
31848         * lib/full-write.c: Correct credits, as cccp.c no longer
31849         exists and anyway it was so heavily changed from the old cccp
31850         code as to be unrecognizable.  Include full-write.h.
31851         (full_write) Return size_t, with short writes meaning failure.
31852         All callers changed.  This fixes a bug with large buffers
31853         on 64-bit hosts.
31854         * lib/utime.c: Include full-write.h.
31855
31856 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31857
31858         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
31859         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
31860         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
31861         Include if available.
31862         (<xalloc.h>): Include
31863         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
31864         (verify): New macro.  Use it to verify that EXCLUDE macros do not
31865         collide with FNM macros.
31866         (struct patopts): New struct.
31867         (struct exclude): Use it, as exclude patterns now come with options.
31868         (new_exclude): Support above changes.
31869         (new_exclude, add_exclude_file):
31870         Initial size must now be a power of two to simplify overflow checking.
31871         (free_exclude, fnmatch_no_wildcards): New function.
31872         (excluded_filename): No longer requires options arg, as the options
31873         are determined by add_exclude.  Now returns bool, not int.
31874         (excluded_filename, add_exclude):
31875         Add support for the fancy new exclusion options.
31876         (add_exclude, add_exclude_file): Now takes int options arg.
31877         Check for arithmetic overflow when computing sizes.
31878         (add_exclude_file): xrealloc might modify errno, so don't
31879         realloc until after errno might be used.
31880
31881         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
31882         New macros.
31883         (free_exclude): New decl.
31884         (add_exclude, add_exclude_file): Now takes int options arg.
31885         (excluded_filename): No longer requires options arg, as the options
31886         are determined by add_exclude.  Now returns bool, not int.
31887
31888 2001-08-30  Paul Eggert  <eggert@twinsun.com>
31889
31890         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
31891
31892 2001-08-27  Jim Meyering  <meyering@lucent.com>
31893
31894         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
31895
31896         * lib/version-etc.c (N_): Remove definition.
31897         Revert most of last change.
31898         Instead, simply don't mark the `Copyright...' string for translation.
31899         Based on advice from Paul Eggert.
31900
31901         * lib/strtoxmax.c: Tweak comment.
31902
31903 2001-08-26  Jim Meyering  <meyering@lucent.com>
31904
31905         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
31906
31907         * m4/xstrtoimax.m4: New file.
31908         * m4/xstrtoumax.m4: Add comments explaining why we
31909         AC_REPLACE_FUNCS(strtol).
31910
31911 2001-08-26  Jim Meyering  <meyering@lucent.com>
31912
31913         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
31914         of copyright with `%s' so translators don't get an untranslated
31915         message in 2002.
31916         (COPYRIGHT_YEAR): Define.
31917         (version_etc): Use fprintf rather than fputs.
31918         Suggestion from Ulrich Drepper.
31919
31920         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
31921
31922         * lib/strtoll.c: New file, from GNU libc.
31923         * lib/xstrtoimax.c: New file.
31924
31925         * lib/xstrtol.h: Add xstrtoimax.
31926         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
31927         * lib/strtoimax.c: New file.  Likewise, but first define
31928         STRTOUXMAX_SIGNED.
31929
31930         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
31931         ...
31932         * lib/strtoxmax.c: ... then renamed to this.
31933
31934 2001-08-18  Paul Eggert  <eggert@twinsun.com>
31935
31936         * m4/inttypes.m4: Add AC_PREREQ(2.13).
31937         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
31938         (jm_AC_TYPE_INTMAX_T): New macro.
31939         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
31940
31941         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
31942
31943         * m4/longlong.m4: Renamed from ulonglong.m4.
31944         * m4/inttypes.m4: Renamed from inttypes_h.m4.
31945         * m4/uintmax_t.m4: Removed.
31946
31947 2001-08-13  Paul Eggert  <eggert@twinsun.com>
31948
31949         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
31950         Port to Solaris 8, where 'sed' requires a space after the 'r'
31951         command, and where sh dislikes "$/".  Clean up the spacing a bit.
31952         Redirect output to $tmp just once.
31953
31954 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
31955
31956         * lib/addext.c (<errno.h>): Include.
31957         (errno): Declare if not defined.
31958         (addext): Work correctly when pathconf returns -1 and leaves
31959         errno alone because there is no limit.  Also, work even if
31960         pathconf returns a value greater than SIZE_MAX.
31961
31962 2001-08-12  Jim Meyering  <meyering@lucent.com>
31963
31964         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
31965         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
31966         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
31967         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
31968         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
31969         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
31970         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
31971         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
31972         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
31973         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
31974         utime.m4, utimes.m4, xstrtoumax.m4:
31975         Quote the first argument in each use of AC_DEFUN.
31976
31977 2001-08-12  Jim Meyering  <meyering@lucent.com>
31978
31979         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
31980         Simply `return getcwd (NULL, 0);'.
31981         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
31982         Use 1300 as initial value for length, not PATH_MAX.
31983
31984         * lib/pathmax.h: Clean up cpp syntax.
31985
31986 2001-08-12  Jim Meyering  <meyering@lucent.com>
31987
31988         * lib/gettimeofday.c: New file.
31989         * lib/gtod.h: New file.
31990         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
31991
31992 2001-08-05  Jim Meyering  <meyering@lucent.com>
31993
31994         * m4/jm-macros.m4: Require autoconf-2.52.
31995
31996 2001-08-04  Jim Meyering  <meyering@lucent.com>
31997
31998         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
31999         stmt, to get in sync with glibc.
32000
32001 2001-08-03  Paul Eggert  <eggert@twinsun.com>
32002
32003         The following changes are from gettext 0.10.39 as maintained by
32004         Bruno Haible.
32005
32006         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
32007         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
32008         with inverted sense.  All uses changed.
32009
32010         * lib/mbswidth.c: Don't include <limits.h>.
32011         Include <stdlib.h> and <string.h> unconditionally.
32012         (iswcntrl, mbsinit, ISCNTRL): New macros.
32013         (mbsnwidth): Use K&R style function declarations.
32014         Don't bother checking for MB_LEN_MAX == 1, since the compiler
32015         can optimize it when MB_CUR_MAX == 1.
32016         The width of control characters is zero, not 1.
32017
32018 2001-08-03  Paul Eggert  <eggert@twinsun.com>
32019
32020         The following changes are from gettext 0.10.39 as maintained by
32021         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
32022
32023         * m4/codeset.m4: Upgrade to serial AM1.
32024         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
32025         all uses changed.  Quote first arg of AC_DEFUN.
32026         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
32027
32028         * m4/iconv.m4: Upgrade to serial AM2.
32029         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
32030         Add --with-libconv-prefix.
32031         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
32032         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
32033         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
32034         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
32035         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
32036
32037         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
32038         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
32039         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
32040         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
32041         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
32042         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
32043         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
32044         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
32045         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
32046
32047         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
32048         string.h any more.
32049
32050         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
32051         not the default value.
32052
32053         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
32054         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
32055         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
32056         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
32057         Also check for iswcntrl, used for wcwidth fallback.
32058         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
32059         to Autoconf 2.13.
32060
32061 2001-08-03  Jim Meyering  <meyering@lucent.com>
32062
32063         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
32064         as it was in the original.  Reported by Paul Eggert.
32065
32066 2001-07-16  Jim Meyering  <meyering@lucent.com>
32067
32068         * m4/gettimeofday.m4: New file.
32069         Prompted by a report from Bernhard Baehr.
32070
32071 2001-07-15  Jim Meyering  <meyering@lucent.com>
32072
32073         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
32074         stuff. Now it's in ../Makefile.cfg.
32075
32076 2001-07-15  Jim Meyering  <meyering@lucent.com>
32077
32078         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
32079         (BUILT_SOURCES): Add unlocked-io.h.
32080         (io_functions): Define.
32081         (unlocked-io.h): New rule.
32082         (DISTCLEANFILES): Add unlocked-io.h.
32083         (all-local): Depend on unlocked-io.h, to ensure it is created.
32084
32085         * lib/unlocked-io.hin: New file
32086
32087         * lib/regex.c: Update from glibc.
32088
32089 2001-07-05  Jim Meyering  <meyering@lucent.com>
32090
32091         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
32092         recommendation.
32093         (libfetish_a_SOURCES): Put all .h files here instead.
32094         Remove a thus-exposed (better checks in automake) duplicate and
32095         two unnecessary .h files.
32096
32097 2001-07-04  Jim Meyering  <meyering@lucent.com>
32098
32099         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
32100         that generates jm-glibc-io.m4 so that it doesn't trigger any make
32101         distcheck failure.
32102
32103 2001-07-02  Jim Meyering  <meyering@lucent.com>
32104
32105         The following changes were prompted by suggestions from Bruno Haible.
32106
32107         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
32108         is now generated.
32109         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
32110         definition of EXTRA_DIST.
32111         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
32112         ensure that the generated file is created/updated whenever the list
32113         of $(unlocked_functions) is changed.
32114         (jm-glibc-io.m4): New rule.
32115         (unlocked-io.h): New rule -- currently unused.
32116
32117 2001-06-24  Jim Meyering  <meyering@lucent.com>
32118
32119         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
32120         unmatched right bracket, rather than kludging it with an extra,
32121         falsely-matching quote in a comment.  Patch by Akim Demaille.
32122
32123 2001-06-11  Jim Meyering  <meyering@lucent.com>
32124
32125         * lib/regex.c: Update from GNU libc.
32126
32127 2001-05-27  Jim Meyering  <meyering@lucent.com>
32128
32129         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
32130         Check for ut_type in struct utmp.
32131
32132 2001-05-27  Jim Meyering  <meyering@lucent.com>
32133
32134         * lib/readutmp.h (UT_TYPE): Define.
32135
32136 2001-05-24  Jim Meyering  <meyering@lucent.com>
32137
32138         * lib/argmatch.c: Include "quote.h".
32139         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
32140         quote function.  Reported by Göran Uddeborg.
32141
32142 2001-05-22  Jim Meyering  <meyering@lucent.com>
32143
32144         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
32145         now that we use the package-supplied version unconditionally.
32146         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
32147
32148 2001-05-21  Jim Meyering  <meyering@lucent.com>
32149
32150         * m4/regex.m4: Change a couple backticks to single quotes to avoid
32151         shell syntax errors.
32152
32153 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
32154
32155         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
32156
32157 2001-05-20  Paul Eggert  <eggert@twinsun.com>
32158
32159         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
32160         Don't bother to check library strftime, since
32161         we'll be using our own my_strftime function anyway.
32162         Define my_strftime instead of strftime.
32163
32164 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
32165
32166         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
32167         which is not yet declared.
32168
32169 2001-05-15  Jim Meyering  <meyering@lucent.com>
32170
32171         * m4/regex.m4: Use proper quoting so brackets appear in the test
32172         program.
32173         Reported by, and with help from, Bruno Haible.
32174
32175 2001-05-13  Jim Meyering  <meyering@lucent.com>
32176
32177         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
32178         undefined.
32179
32180 2001-05-11  Paul Eggert  <eggert@twinsun.com>
32181
32182         dirname code cleanup.  base_name now behaves more compatibly
32183         with POSIX basename when given file names that have trailing
32184         slashes, and similarly for dir_name.  Add new primitives
32185         base_len and dir_len.  Put the directory-name-related decls
32186         into dirname.h.
32187
32188         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
32189         * lib/backupfile.c (base_name): Likewise.
32190         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
32191         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
32192         * lib/makepath.c (strip_trailing_slashes): Likewise.
32193         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
32194         ISSLASH): Likewise.
32195         * lib/rename.c (strip_trailing_slashes): Likewise.
32196         * lib/same.c (base_name): Likewise.
32197         * lib/stripslash.c (ISSLASH): Likewise.
32198
32199         * lib/addext.c: Include <dirname.h> after size_t is defined.
32200         * lib/backupfile.c: Likewise.
32201
32202         * lib/addext.c (addext): Use base_len to trim redundant
32203         trailing slashes instead of doing it ourselves.
32204         But do not trim the last slash if it is not redundant.
32205
32206         * lib/backupfile.c (find_backup_file_name,
32207         max_backup_version): Use base_len instead of rolling it ourselves.
32208         Handle the case of "" and (on DOS) "C:" correctly.
32209
32210         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
32211         needed. Include <string.h>, <dirname.h>.
32212         (base_name): Allow file names ending in slashes, other than names
32213         that are all slashes.  In this case, return the basename followed
32214         by the slashes.  This is more general, and can be used in places
32215         where the original base_name purposely had an assertion failure.
32216         (base_len): New function.
32217
32218         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
32219         Do not include <assert.h>; no longer needed.
32220         Include xalloc.h.
32221         (memrchr): Remove decl.
32222         (dir_name_r): Remove.
32223         (dir_len): Renamed from dirlen.  All callers changed.
32224         Rewrite in terms of base_name, for simplicity and consistency.
32225         (dir_name): Never return NULL.  All callers changed.
32226         Do not include <stdlib.h> in test program; no longer needed.
32227         return 0; is fine for test program.
32228
32229         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
32230         New macros.
32231         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
32232
32233         * lib/path-concat.c (path_concat): Use base_len to compute
32234         base length, not strlen; this means we cannot rely on memcpy
32235         to null-terminate.
32236
32237         * lib/same.c (STREQ): Remove.
32238         (same_name): Handle the case where the basename ends in trailing '/'.
32239
32240         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
32241         a slash was stripped.  Do not strip the last slash after a
32242         file system prefix.
32243
32244 2001-05-11  Paul Eggert  <eggert@twinsun.com>
32245
32246         * lib/Makefile.am (libfetish_a_SOURCES):
32247         Add strftime.c, since we now compile it on all hosts.
32248
32249         * lib/strftime.c (my_strftime):
32250         Define to nstrftime if emacs, but only if my_strftime is not defined.
32251         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
32252         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
32253         Add one more extra argument: a nanoseconds value.
32254         All uses changed.
32255         (ns): New macro.
32256         (my_strftime function): Add %N format.
32257         (emacs_strftimeu): Renamed from emacs_strftime,
32258         with extra ut argument.
32259
32260 2001-05-09  Paul Eggert  <eggert@twinsun.com>
32261
32262         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
32263
32264 2001-04-21  Jim Meyering  <meyering@lucent.com>
32265
32266         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
32267         doesn't interfere.
32268
32269 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
32270
32271         * m4/ftruncate.m4: Check for chsize.
32272         Link with ftruncate.o unconditionally if ftruncate is missing.
32273         This was required when cross-compiling to i586-mingw32msvc.
32274
32275 2001-04-08  Jim Meyering  <meyering@lucent.com>
32276
32277         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
32278         recomputed; that's necessary when the offset spans a DST transition.
32279         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
32280
32281 2001-04-02  Jim Meyering  <meyering@lucent.com>
32282
32283         * lib/regex.h, regex.c: Update from GNU libc.
32284
32285 2001-03-24  Jim Meyering  <meyering@lucent.com>
32286
32287         * m4/jm-macros.m4: Require autoconf-2.49d.
32288
32289 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
32290
32291         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
32292
32293 2001-03-19  Paul Eggert  <eggert@twinsun.com>
32294
32295         * lib/version-etc.c (version_etc_copyright): Update to 2001.
32296
32297 2001-03-17  Jim Meyering  <meyering@lucent.com>
32298
32299         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
32300         now that the version in autoconf is equivalent.
32301         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
32302
32303         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
32304         Suggestion from Akim Demaille.
32305
32306         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
32307         (jm_PREREQ_TEMPNAME): New function.
32308
32309 2001-03-16  Paul Eggert  <eggert@twinsun.com>
32310
32311         * lib/tempname.c (uint64_t): Define to uintmax_t if
32312         not defined, and if UINT64_MAX is not defined.
32313         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
32314         Reported by John David Anglin.
32315
32316 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
32317
32318         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
32319         resolve alias if codeset is empty.
32320         * lib/config.charset (BeOS): Use wildcard syntax.
32321
32322 2001-03-13  Jim Meyering  <meyering@lucent.com>
32323
32324         * lib/path-concat.c (path_concat)
32325         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
32326         concatenating e.g., `C:' and `foo'.
32327         From Bruno Haible.
32328
32329 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
32330
32331         * lib/localcharset.c (locale_charset): Don't use
32332         setlocale(LC_CTYPE,NULL). Don't return NULL.
32333         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
32334
32335 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
32336
32337         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
32338         support for DOS/DJGPP.
32339
32340 2001-03-01  Paul Eggert  <eggert@twinsun.com>
32341
32342         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
32343         lacks mkstemp.  Compile our own tempname.c if we compile our own
32344         mkstemp.c, as mkstemp relies on tempname.
32345
32346 2001-03-01  Jim Meyering  <meyering@lucent.com>
32347
32348         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
32349         AH_VERBATIM really does output its argument verbatim.
32350
32351 2001-02-28  Paul Eggert  <eggert@twinsun.com>
32352
32353         * lib/Makefile.am (libfetish_a_SOURCES):
32354         Add dup-safer.c, fopen-safer.c.
32355         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
32356
32357         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
32358         * lib/unistd-safer.h: New files.
32359
32360 2001-02-25  Paul Eggert  <eggert@twinsun.com>
32361
32362         The mkstemp replacement is taken from glibc 2.2.2, with some
32363         portability fixes for use outside glibc, as follows:
32364
32365         * lib/tempname.c (struct_stat64): New macro.
32366         (direxists, __gen_tempname): Use it.
32367         This avoids a portability problem with Solaris 8.
32368
32369         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
32370         (<stddef.h>, <stdint.h>, <string.h>):
32371         Include only if STDC_HEADERS || _LIBC.
32372         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
32373         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
32374         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
32375         (__set_errno): Define this macro if <errno.h> doesn't.
32376         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
32377         Define these macros if <stdio.h> doesn't.
32378         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
32379         Define these macros if <sys/stat.h>
32380         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
32381         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
32382         __xstat64): Define if not _LIBC.
32383         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
32384         (__gen_tempname): Invoke gettimeofday only if
32385         HAVE_GETTIMEOFDAY || _LIBC;
32386         otherwise, fall back on plain "time".
32387         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
32388
32389         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
32390
32391         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
32392
32393 2001-02-18  Paul Eggert  <eggert@twinsun.com>
32394
32395         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
32396
32397 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32398
32399         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
32400         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
32401         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
32402         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
32403
32404 2001-02-17  Paul Eggert  <eggert@twinsun.com>
32405
32406         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
32407         Remove workaround macros for hosts that have mbrtowc but not
32408         mbstate_t, as we now insist on proper declarations for both
32409         before using mbrtowc.
32410
32411 2001-02-17  Jim Meyering  <meyering@lucent.com>
32412
32413         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
32414         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
32415         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
32416         UnixWare 7.1.1.
32417
32418         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
32419         rather than AC_CACHE_VAL.
32420
32421 2001-02-17  Jim Meyering  <meyering@lucent.com>
32422
32423         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
32424         around included file name.
32425
32426         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
32427
32428         * lib/strftime.c: Update from GNU libc (the only changes were to
32429         comments).
32430
32431 2001-02-17  Jim Meyering  <meyering@lucent.com>
32432
32433         * lib/regex.c: Update from libc.
32434
32435 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
32436
32437         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
32438         clash.
32439
32440 2001-02-16  Paul Eggert  <eggert@twinsun.com>
32441
32442         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
32443         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
32444         Reported by Mark Hounschell via Paul Eggert.
32445
32446 2001-02-07  Jim Meyering  <meyering@lucent.com>
32447
32448         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
32449
32450 2001-02-05  Jim Meyering  <meyering@lucent.com>
32451
32452         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
32453         it includes the patch required for `large file' support with at least
32454         HP-UX's 10.20 /bin/cc.
32455
32456 2001-02-03  Jim Meyering  <meyering@lucent.com>
32457
32458         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
32459         AS_IF, now that it works once again (mysteriously).
32460         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32461
32462 2001-01-30  Jim Meyering  <meyering@lucent.com>
32463
32464         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
32465         * m4/chown.m4: Rename conftestchown to conftest.chown.
32466         * m4/rename.m4: s/conftestdir/conftest.d1/ and
32467         s/conftestdir2/conftest.d2/.
32468         * m4/utimes.m4: s/conftestdata/conftest.data/
32469         Inspired by Pavel Roskin's change in autoconf.
32470
32471 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
32472
32473         * lib/config.charset: Update for FreeBSD 4.2.
32474
32475 2001-01-27  Jim Meyering  <meyering@lucent.com>
32476
32477         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
32478         a use of AS_IF.
32479         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
32480
32481 2001-01-26  Jim Meyering  <meyering@lucent.com>
32482
32483         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
32484         quotearg.c includes it.
32485
32486 2001-01-26  Jim Meyering  <meyering@lucent.com>
32487
32488         * lib/quotearg.c: Include stddef.h.
32489         * lib/quote.c: Include stddef.h.
32490         Reported by Axel Kittenberger.
32491
32492         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
32493         line in double quotes so that it evokes a better diagnostic.
32494         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
32495         Reported by Axel Kittenberger.
32496
32497 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
32498
32499         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
32500         as if it was a `charset'.
32501
32502 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32503
32504         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
32505         has const.
32506
32507 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
32508
32509         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
32510         to avoid a warning.  Add back 'const' to inptr.
32511
32512 2001-01-20  Jim Meyering  <meyering@lucent.com>
32513
32514         Be sure that headers are checked before used in code compiled
32515         for the type checks.
32516         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
32517         In place of that, invoke jm_CHECK_ALL_TYPES.
32518         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
32519         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
32520         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
32521         The check for ssize_t was mistakenly run before the test for unistd.h.
32522
32523         The configure-time check for stdbool.h was missing.
32524         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
32525         (jm_PREREQ_HASH): New function.
32526
32527 2001-01-17  Jim Meyering  <meyering@lucent.com>
32528
32529         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
32530         for autoconf-2.49c.
32531         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
32532
32533 2001-01-16  Jim Meyering  <meyering@lucent.com>
32534
32535         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
32536         From Bruno Haible.
32537
32538 2001-01-14  Jim Meyering  <meyering@lucent.com>
32539
32540         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
32541         foo and bar.  Create conftestdir/ in the script, not in the C code.
32542         Remove directories in the script, not in the C code.
32543         Remove conftestdir{,2} before trying to create the directory.
32544         Make the entire configure script fail if the mkdir fails.
32545
32546 2001-01-14  Jim Meyering  <meyering@lucent.com>
32547
32548         * lib/rename.c: New file.  From Volker Borchert.
32549         Include stdlib.h, string.h or strings.h, and xalloc.h.
32550         Use strip_trailing_slashes rather than open-coding it.
32551
32552 2001-01-03  Paul Eggert  <eggert@twinsun.com>
32553
32554         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
32555
32556 2001-01-03  Jim Meyering  <meyering@lucent.com>
32557
32558         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
32559         of local `inptr' to avoid warning with some system declarations of
32560         iconv.
32561
32562 2001-01-02  Volker Borchert  <bt@teknon.de>
32563
32564         * m4/rename.m4: New file.
32565         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
32566
32567 2001-01-01  Jim Meyering  <meyering@lucent.com>
32568
32569         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
32570         even on systems with utmpx.h.  It's necessary for the declaration of
32571         utmp's ut_user member.  Reported by Andreas Jaeger.
32572
32573         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
32574         available. They are required for the declarations of getgrgid and
32575         getpwuid resp.
32576         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
32577         Reported by Andreas Jaeger.
32578
32579 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
32580
32581         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
32582         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
32583         so `make install' also works in VPATH builds.
32584
32585 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
32586
32587         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
32588         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
32589         can be used in subdirectories.
32590
32591 2000-12-29  Paul Eggert  <eggert@twinsun.com>
32592
32593         * lib/modechange.c: Do not assume that mode_t uses the
32594         traditional octal encoding.  E.g. "chmod 1 FOO" should set
32595         the other-execute bit of FOO even if S_IXOTH != 1.
32596
32597         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
32598         WOTH, XOTH, ALLM): New macros.
32599         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
32600          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
32601         Use them.
32602         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
32603         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
32604         (mode_compile):
32605         No need to use uintmax_t; unsigned long is long enough.
32606         Don't bother to get suffix since we don't use it.
32607
32608 2000-12-26  Jim Meyering  <meyering@lucent.com>
32609
32610         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
32611         better with autoheader.
32612
32613 2000-12-24  Jim Meyering  <meyering@lucent.com>
32614
32615         * lib/hash.c (is_prime): Return explicit boolean values.
32616         (hash_get_first): Return NULL to appease Irix5.6's 89.
32617         Reported by Nelson Beebe.
32618
32619 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
32620
32621         * lib/localcharset.c (locale_charset): Add support for Win32.
32622
32623 2000-12-18  Paul Eggert  <eggert@twinsun.com>
32624
32625         * lib/physmem.h, lib/physmem.c: New files.
32626
32627         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
32628         (noinst_HEADERS): Add physmem.h.
32629
32630         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
32631         't' for compatibility with Solaris 8 sort.
32632
32633 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
32634
32635         * lib/config.charset: Add support for BeOS.
32636
32637 2000-12-17  Jim Meyering  <meyering@lucent.com>
32638
32639         * m4/dos.m4 (jm_AC_DOS): New file and macro.
32640         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
32641
32642 2000-12-16  Jim Meyering  <meyering@lucent.com>
32643
32644         This bug had a serious impact on chown: `chown N:M FILE' (for integer
32645         N and M) would have treated it like `chown N:N FILE'.
32646
32647         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
32648
32649 2000-12-16  Jim Meyering  <meyering@lucent.com>
32650
32651         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
32652         SHELLS_FILE to a file name that's useful on djgpp systems.
32653         Include stdlib.h.
32654         (ADDITIONAL_DEFAULT_SHELLS): Define.
32655         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
32656         Based mostly on a patch from Prashant TR.
32657
32658 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
32659
32660         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
32661         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
32662         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
32663
32664 2000-12-08  Andreas Schwab  <schwab@suse.de>
32665
32666         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
32667         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
32668
32669 2000-12-07  Jim Meyering  <meyering@lucent.com>
32670
32671         * lib/stripslash.c (ISSLASH): Define.
32672         (strip_trailing_slashes): Use ISSLASH rather than comparing against
32673         `/'.
32674         From Prashant TR.
32675
32676         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
32677         (dir_name_r): Declare this function as static.
32678         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
32679         manifest itself on a name containing a mix of slashes and
32680         backslashes.
32681         Make this function work with names starting with a DOS-style
32682         drive letter and colon prefix.
32683         (dir_name): Append `.' if necessary.
32684         Based mostly on patches from Prashant TR and Eli Zaretskii.
32685
32686         * lib/dirname.h (dir_name_r): Remove prototype.
32687
32688 2000-12-06  Paul Eggert  <eggert@twinsun.com>
32689
32690         * m4/off_t-format.m4: Remove this file.
32691         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
32692
32693 2000-12-06  Jim Meyering  <meyering@lucent.com>
32694
32695         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
32696         replacement strtoull, we may well need the replacement strtoul, too.
32697         Check for declarations of strtoul and strtoull.
32698         Check for strtol.  Mainly as a cue to cause automake to include
32699         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
32700         Check for limits.h -- strtol.c needs it.
32701
32702 2000-12-05  Jim Meyering  <meyering@lucent.com>
32703
32704         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
32705
32706 2000-12-04  Jim Meyering  <meyering@lucent.com>
32707
32708         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
32709         Also include memory.h, stdlib.h, unistd.h if appropriate.
32710         Reported by Andreas Jaeger (conflicting declaration of malloc).
32711
32712 2000-12-02  Jim Meyering  <meyering@lucent.com>
32713
32714         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
32715         * m4/jm-macros.m4 (jm_MACROS): require it.
32716
32717 2000-12-02  Jim Meyering  <meyering@lucent.com>
32718
32719         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
32720
32721 2000-12-01  Paul Eggert  <eggert@twinsun.com>
32722
32723         * lib/memrchr.c: Include <config.h> before any system include file.
32724
32725 2000-11-30  Jim Meyering  <meyering@lucent.com>
32726
32727         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
32728
32729 2000-11-30  Jim Meyering  <meyering@lucent.com>
32730
32731         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
32732
32733 2000-11-29  Paul Eggert  <eggert@twinsun.com>
32734
32735         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
32736
32737 2000-11-26  Jim Meyering  <meyering@lucent.com>
32738
32739         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
32740
32741 2000-11-22  Paul Eggert  <eggert@twinsun.com>
32742
32743         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
32744         size of (size_t) -1; it's not portable.
32745
32746 2000-11-17  Jim Meyering  <meyering@lucent.com>
32747
32748         * lib/strstr.c: Update from GNU libc.
32749
32750 2000-11-17  Akim Demaille  <akim@epita.fr>
32751
32752         * lib/obstack.h: Formatting changes.
32753         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
32754         prevent type checking.
32755         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
32756         cast the value to (void *): assigning a `foo *' to a `void *'
32757         variable is valid.
32758         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
32759
32760 2000-11-16  Jim Meyering  <meyering@lucent.com>
32761
32762         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
32763
32764 2000-11-11  Jim Meyering  <meyering@lucent.com>
32765
32766         * lib/error.c: Add a couple #includes, merging from GNU libc version.
32767
32768 2000-11-10  Jim Meyering  <meyering@lucent.com>
32769
32770         * lib/obstack.h: Update from GNU libc.
32771         * lib/obstack.c: Likewise.
32772
32773 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
32774
32775         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
32776
32777 2000-11-06  Paul Eggert  <eggert@twinsun.com>
32778
32779         * lib/getusershell.c (setusershell): Use rewind rather than
32780         fseek/fseeko, to avoid configuration hassles with fseeko.
32781         Don't bother opening SHELLS_FILE if shellstream is NULL;
32782         it's not necessary.
32783
32784 2000-11-05  Jim Meyering  <meyering@lucent.com>
32785
32786         * lib/makepath.h (make_dir): Declare.
32787         * lib/makepath.c (make_dir): Remove `static' attribute.
32788         Tweak a comment.
32789
32790 2000-11-04  Jim Meyering  <meyering@lucent.com>
32791
32792         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
32793
32794 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
32795
32796         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
32797         last one in a bucket, advance to the next bucket.
32798
32799 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
32800
32801         * lib/fnmatch.c: Do not comment out all the code if we are using
32802         the GNU C library, because in some cases we are replacing buggy
32803         code in the GNU C library itself.
32804
32805 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
32806
32807         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
32808         (regex_compile): Catch bogus \(\1\).
32809
32810 2000-10-30  Paul Eggert  <eggert@twinsun.com>
32811
32812         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
32813         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
32814         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
32815
32816 2000-10-30  Paul Eggert  <eggert@twinsun.com>
32817
32818         * lib/error.h, getline.h, modechange.h:
32819         Remove "2000" from Copyright line, as the file hasn't been
32820         changed this year other than in the copyright notice.
32821
32822         * lib/xalloc.h: Add "2000" to Copyright line, as this file
32823         was changed this year.
32824
32825 2000-10-29  Jim Meyering  <meyering@lucent.com>
32826
32827         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
32828         renaming.
32829         * m4/ls-mntd-fs.m4: Likewise
32830
32831 2000-10-29  Jim Meyering  <meyering@lucent.com>
32832
32833         * lib/xstat.in: Fix grammar in comment.
32834
32835 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
32836
32837         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
32838         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
32839         doesn't define __restrict_arr.
32840
32841 2000-10-28  Jim Meyering  <meyering@lucent.com>
32842
32843         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
32844         (jm_PREREQ_MEMCHR): New function.
32845
32846 2000-10-28  Jim Meyering  <meyering@lucent.com>
32847
32848         * lib/memchr.c: Update from libc.
32849         Adjust for portability:
32850         [HAVE_STDLIB_H]: Include stdlib.h.
32851         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
32852         Undef __memchr, too.
32853         [!weak_alias]: Define __memchr to memchr.
32854
32855         * lib/regex.c: Update from libc.
32856         * lib/regex.h: Likewise.
32857         * lib/getopt1.c: Likewise.
32858         * lib/memcmp.c: Likewise.
32859
32860         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
32861         Avoid using fseek, when possible -- it's broken by design.
32862         Patch by Ulrich Drepper.
32863
32864 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
32865
32866         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
32867         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
32868         Giving in to popular pressure to shut up the compiler with casts.
32869
32870 2000-10-26  Jim Meyering  <meyering@lucent.com>
32871
32872         * lib/strftime.c: Update from libc.
32873
32874 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
32875
32876         * regex.c: More `unsigned char' -> `re_char' changes.
32877         Also change several `int' into `re_wchar_t'.
32878         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
32879         (PUSH_FAILURE_POINTER): Don't cast any more.
32880         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
32881         We want GCC to complain, since this piece of code makes
32882         re_match non-reentrant, which *should* be fixed.
32883         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
32884         (EXTEND_BUFFER): Use RETALLOC.
32885         (SET_LIST_BIT): Don't cast.
32886         (re_wchar_t): New type.
32887         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
32888         that those two functions will always properly return.
32889         (IMMEDIATE_QUIT_CHECK): Cast to void.
32890         (analyse_first): Use recursion rather than an explicit stack.
32891         (re_compile_fastmap): Can't fail anymore.
32892         (re_search_2): Don't check re_compile_fastmap for failure.
32893         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
32894         Now also sets the new value (passed in a new argument).
32895         (re_match_2_internal): Use it.
32896         Also, use a new var `reg' of type size_t when looping through regs
32897         rather than reuse the inappropriate `mcnt'.
32898
32899 2000-10-25  Jim Meyering  <meyering@lucent.com>
32900
32901         * lib/obstack.c: Update from libc.
32902
32903 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
32904
32905         * regex.c (regex_compile): Change the way of handling a range from
32906         a char less than 256 to a char not less than 256.
32907
32908 2000-10-24  Andrew Innes  <andrewi@gnu.org>
32909
32910         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
32911         NT-Emacs only.
32912         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
32913         so that re_search functions only quit when callers expect them to.
32914
32915 2000-10-23  Jim Meyering  <meyering@lucent.com>
32916
32917         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
32918         wrong.  That set_locale call must not have any side effects.
32919         From Paul Eggert.
32920
32921 2000-10-22  Jim Meyering  <meyering@lucent.com>
32922
32923         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
32924         [CYCLIC]: Remove now-unused definition.
32925
32926         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
32927         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
32928         Suggestion from Ulrich Drepper.
32929
32930 2000-10-21  Jim Meyering  <meyering@lucent.com>
32931
32932         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
32933         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
32934         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
32935
32936 2000-10-21  Jim Meyering  <meyering@lucent.com>
32937
32938         * lib/dirname.c (memrchr): Declare if necessary.
32939         (dir_name): Remove the restriction that there be no
32940         trailing slashes.  Now, this code skips past them, effectively
32941         ignoring them.
32942         [TEST_DIRNAME] (main): New unit tests.
32943
32944         * lib/memrchr.c: New file from GNU libc.
32945         Undef __memrchr, too.
32946         [!weak_alias]: Define __memrchr to memrchr.
32947         Guard weak_alias use with `#ifdef weak_alias'.
32948
32949 2000-10-21  Jim Meyering  <meyering@lucent.com>
32950
32951         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
32952         (dir_name): Use dir_name_r.
32953         * lib/dirname.h (dir_name_r): Declare it.
32954
32955 2000-10-17  Jim Meyering  <meyering@lucent.com>
32956
32957         * lib/quote.h (PARAMS): Define and use.
32958         Reported by Akim Demaille.
32959
32960         * lib/getopt.c: Update from libc.
32961
32962 2000-10-16  Jim Meyering  <meyering@lucent.com>
32963
32964         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
32965         setlocale.
32966         From Jan Fedak.
32967
32968 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
32969
32970         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
32971
32972 2000-09-25  Jim Meyering  <meyering@lucent.com>
32973
32974         * lib/md5.h (rol): Define (from GnuPG).
32975
32976         * lib/sha.c: Give credit (GnuPG) where due.
32977         (M): Use rol rather than open-coding it.
32978         Add a FIXME comment.
32979
32980 2000-09-21  Jim Meyering  <meyering@lucent.com>
32981
32982         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
32983         Reported by Michael Stone.
32984
32985 2000-09-20  Jim Meyering  <meyering@lucent.com>
32986
32987         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
32988         (noinst_HEADERS): Add sha.h.
32989         Based on code from Scott G. Miller and from GnuPG.
32990
32991 2000-09-18  Jim Meyering  <meyering@lucent.com>
32992
32993         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
32994         LIBS. Otherwise, everyone ends up linking with -lelf for some
32995         configurations.
32996         Reported by Mike Stone.
32997
32998 2000-09-15  Jim Meyering  <meyering@lucent.com>
32999
33000         * lib/regex.c: Update from libc.
33001
33002 2000-09-10  Jim Meyering  <meyering@lucent.com>
33003
33004         * lib/getopt.c (_getopt_internal): Update from glibc.
33005
33006 2000-09-09  Jim Meyering  <meyering@lucent.com>
33007
33008         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
33009         think it should be used as a general replacement for isascii.
33010         * lib/fnmatch.c: Likewise.
33011         * lib/mbswidth.c: Likewise
33012         * lib/regex.c: Likewise.
33013
33014         Don't use atoi.
33015         * lib/userspec.c: Include sys/param.h and limits.h.
33016         Include xstrtol.h.
33017         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
33018         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
33019         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
33020         UID, GID.  Check range.
33021
33022 2000-09-06  Jim Meyering  <meyering@lucent.com>
33023
33024         * lib/getopt.c (_getopt_internal): Update from glibc.
33025
33026 2000-08-30  Jim Meyering  <meyering@lucent.com>
33027
33028         * lib/strftime.c: Merge in changes from GNU libc.
33029
33030 2000-08-26  Jim Meyering  <meyering@lucent.com>
33031
33032         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
33033         * m4/fpending.m4: New file.
33034
33035 2000-08-26  Jim Meyering  <meyering@lucent.com>
33036
33037         * lib/closeout.c: Include "__fpending.h".
33038         (close_stdout_status): Return right away if there's nothing to flush.
33039
33040         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
33041         * lib/__fpending.c: New file.
33042         * lib/__fpending.h: New file.
33043
33044 2000-08-20  Jim Meyering  <meyering@lucent.com>
33045
33046         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
33047         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
33048         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
33049
33050 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
33051
33052         Improve fileutils installation on systems where running
33053         programs (like install) can't be unlinked.
33054         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
33055         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
33056
33057 2000-08-07  Paul Eggert  <eggert@twinsun.com>
33058
33059         Standardize on "memory exhausted" instead of "Memory exhausted"
33060         or "virtual memory exhausted".
33061         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
33062         "virtual memory exhausted".
33063         * lib/same.c (same_name): Invoke xalloc_die instead of printing
33064         our own message.
33065         * lib/userspec.c (parse_user_spec): Likewise.
33066         * lib/bumpalloc.h: comment fix
33067         * lib/same.c, userspec.c: Include xalloc.h.
33068
33069         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
33070         not char *const and pointing to a constant array.
33071         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
33072         (xrealloc): Comment fix.
33073
33074         * lib/userspec.c (parse_user_spec):
33075         Don't translate a message until just before returning,
33076         to avoid unnecessary translation.
33077
33078 2000-08-07  Jim Meyering  <meyering@lucent.com>
33079
33080         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
33081         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
33082         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
33083         getgroups.c, gethostname.c, getopt.h, group-member.c,
33084         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
33085         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
33086         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
33087         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
33088         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
33089         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
33090         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
33091         yesno.c: Back out Copyright date changes for each file with no change
33092         this year.  This eases coordination with other programs using the same
33093         source code modules.  From Paul Eggert.
33094
33095 2000-08-06  Paul Eggert  <eggert@twinsun.com>
33096
33097         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
33098         not char, for compatibility with glibc 2.1.3 strftime.c.
33099
33100 2000-08-03  Greg McGary  <greg@mcgary.org>
33101
33102         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
33103         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
33104         (EXTEND_BUFFER): Use them.
33105
33106 2000-08-01  Jim Meyering  <meyering@lucent.com>
33107
33108         * lib/dirname.c (ISSLASH): Define.
33109         (BACKSLASH_IS_PATH_SEPARATOR): Define.
33110         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
33111         both `\' and `/' may be use as path separators.
33112         Based on a patch from Prashant TR.
33113
33114 2000-07-31  Paul Eggert  <eggert@twinsun.com>
33115
33116         * lib/quotearg.c (quotearg_n_options): Don't make the initial
33117         slot vector a constant, since it might get modified.
33118
33119 2000-07-31  Jim Meyering  <meyering@lucent.com>
33120
33121         * lib/xmalloc.c: Use `virtual memory exhausted', not
33122         `Memory exhausted'.
33123         * lib/obstack.c (print_and_abort): Likewise.
33124
33125 2000-07-30  Paul Eggert  <eggert@twinsun.com>
33126
33127         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
33128         buffer, so that the caller can always quote one small
33129         component of a "memory exhausted" message in slot 0.
33130         From a suggestion by Jim Meyering.
33131
33132 2000-07-30  Jim Meyering  <meyering@lucent.com>
33133
33134         * lib/makepath.c (make_path): Quote the other instance, too.
33135
33136         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
33137         (STATIC_BUF_SIZE): Define.
33138         (quotearg_n_options): Use only statically allocated storage when
33139         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
33140         than STATIC_BUF_SIZE.
33141
33142 2000-07-29  Jim Meyering  <meyering@lucent.com>
33143
33144         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
33145         * lib/dirname.c (dir_name): Likewise.
33146
33147         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
33148         `/'.
33149
33150         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
33151         (dir_name): Assert that there are no trailing slashes.
33152
33153 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
33154
33155         * lib/mbswidth.h (mbswidth): Add a flags argument.
33156         (mbswidth): New declaration.
33157         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
33158         * lib/mbswidth.c (mbswidth): Add a flags argument.
33159         (mbsnwidth): New function.
33160
33161 2000-07-24  Jim Meyering  <meyering@lucent.com>
33162
33163         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
33164
33165 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33166
33167         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
33168
33169 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33170
33171         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
33172         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
33173         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
33174         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
33175         invoke multibyte primitives.
33176
33177 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33178
33179         * lib/quotearg.c:
33180         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
33181         so that mbstate_t is always defined.
33182
33183         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
33184         be 1 in at least one GCC installation, and this configuration
33185         error is likely to be common.  Ignoring MB_LEN_MAX hurts
33186         performance on hosts that have mbrtowc but have only unibyte
33187         locales, but I assume these hosts are rare.
33188
33189 2000-07-23  Paul Eggert  <eggert@twinsun.com>
33190
33191         * lib/mbswidth.c (_XOPEN_SOURCE):
33192         Don't define; this causes problems on Solaris 7.
33193         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
33194
33195 2000-07-23  Jim Meyering  <meyering@lucent.com>
33196
33197         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
33198         too: getgrgid, getpwuid, getuid.
33199
33200 2000-07-23  Jim Meyering  <meyering@lucent.com>
33201
33202         * lib/basename.c (base_name): Add an assertion.
33203
33204 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
33205
33206         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
33207         shadow its mbsinit function.
33208
33209 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
33210
33211         * lib/mbswidth.h: New file.
33212         * lib/mbswidth.c: New file.
33213         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
33214         (noinst_HEADERS): Add mbswidth.h.
33215
33216 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
33217
33218         * lib/config.charset: Add support for FreeBSD. Improve support for
33219         HP-UX and IRIX 6.
33220
33221 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
33222
33223         * m4/mbswidth.m4: New file.
33224         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
33225
33226 2000-07-15  Jim Meyering  <meyering@lucent.com>
33227
33228         * lib/makepath.c: Include quote.h.
33229         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
33230         corresponding argument in a `quote (...)' call.
33231         Give better diagnostics.
33232
33233         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
33234         (noinst_HEADERS): Add quote.h.
33235
33236         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
33237         from tar's src/misc.c.
33238         * lib/quote.h: New file.  Prototypes for same.
33239
33240 2000-07-14  Paul Eggert  <eggert@twinsun.com>
33241
33242         From a suggestion by Bruno Haible.
33243         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
33244         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
33245         to decide whether to define the BeOS workaround macro;
33246         this adjusts to the change to AC_MBSTATE_T.
33247
33248 2000-07-14  Jim Meyering  <meyering@lucent.com>
33249
33250         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
33251         jm_AC_TYPE_UINTMAX_T.
33252
33253 2000-07-13  Paul Eggert  <eggert@twinsun.com>
33254
33255         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
33256
33257         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
33258         quotearg_buffer_restyled): Add support for
33259         clocale_quoting_style.  Undo previous change to
33260         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
33261         and "{RIGHT QUOTATION MARK}" msgids.
33262
33263 2000-07-10  Paul Eggert  <eggert@twinsun.com>
33264
33265         From a suggestion by Bruno Haible.
33266         * m4/mbstate_t.m4 (AC_MBSTATE_T):
33267         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
33268         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
33269         and mbstate_t, to a single-part test that simply defines mbstate_t.
33270         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
33271         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
33272
33273 2000-07-10  Jim Meyering  <meyering@lucent.com>
33274
33275         * m4/strerror_r.m4: Mirror the correction made in autoconf.
33276
33277         * m4/gnu-source.m4: Output to confdefs.h directly.
33278         Suggestion from Akim Demaille.
33279
33280 2000-07-09  Paul Eggert  <eggert@twinsun.com>
33281
33282         The old behavior of quoting `like this' doesn't look good with
33283         newer, ISO-style fonts.  See:
33284         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
33285
33286         Instead, quote "like this" by default.  Let the translator
33287         tailor the locale-specific quoting behavior by providing
33288         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
33289
33290         * lib/quotearg.c (N_): New macro.
33291         (gettext_default): New function.
33292         (quotearg_buffer_restyled): Use
33293         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
33294         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
33295
33296 2000-07-09  Jim Meyering  <meyering@lucent.com>
33297
33298         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
33299         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
33300
33301         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
33302         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
33303
33304 2000-07-09  Jim Meyering  <meyering@lucent.com>
33305
33306         * lib/Most files: Update copyright dates to include 2000.
33307
33308 2000-07-08  Jim Meyering  <meyering@lucent.com>
33309
33310         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
33311         if not defined.
33312         (xgethostname): Remove now-unnecessary #ifdef.
33313         Move declaration of `err' into loop where it's used.
33314
33315 2000-07-05  Paul Eggert  <eggert@twinsun.com>
33316         and Bruno Haible  <haible@clisp.cons.org>
33317
33318         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
33319         only if the test for an object-type mbstate_t fails.  This
33320         prevents us from mistakenly reporting that mbstate_t is a
33321         system object type after we "#define mbstate_t int" to work
33322         around its lack.
33323
33324 2000-07-05  Paul Eggert  <eggert@twinsun.com>
33325         and Bruno Haible  <haible@clisp.cons.org>
33326
33327         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
33328
33329 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33330
33331         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
33332         to strerror_r.
33333         Include <ctype.h> for use of isalpha.
33334
33335 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33336
33337         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
33338         by allocating a larger buffer. Test the gethostname return value for
33339         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
33340         returns an error and ENAMETOOLONG isn't defined.
33341
33342 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
33343
33344         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
33345         dimension.
33346
33347 2000-07-04  Jim Meyering  <meyering@lucent.com>
33348
33349         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
33350         of the deprecated AC_CHECKING.
33351
33352 2000-07-04  Jim Meyering  <meyering@lucent.com>
33353
33354         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
33355         Reported by Bruno Haible.
33356
33357 2000-07-04  Jim Meyering  <meyering@lucent.com>
33358
33359         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
33360         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
33361         lacks mbrtowc.
33362
33363 2000-07-03  Paul Eggert  <eggert@twinsun.com>
33364
33365         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
33366         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
33367
33368 2000-07-03  Paul Eggert  <eggert@twinsun.com>
33369         and Bruno Haible  <haible@clisp.cons.org>
33370
33371         * lib/quotearg.c (mbrtowc):
33372         Assign to *pwc, and return 1 only if result is nonzero.
33373         (iswprint): Use ISPRINT when substituting our own mbrtowc.
33374
33375 2000-07-03  Jim Meyering  <meyering@lucent.com>
33376
33377         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
33378
33379 2000-07-03  Jim Meyering  <meyering@lucent.com>
33380
33381         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
33382         This is necessary to get a definition of e.g., UTMP_FILE on
33383         HP-UX 10.20.
33384         From Bob Proulx.
33385
33386 2000-07-02  Jim Meyering  <meyering@lucent.com>
33387
33388         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
33389
33390         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
33391         AC_LIBOBJ(function_name).
33392         * m4/chown.m4: Likewise.
33393         * m4/fnmatch.m4: Likewise.
33394         * m4/ftruncate.m4: Likewise.
33395         * m4/getgroups.m4: Likewise.
33396         * m4/getline.m4: Likewise.
33397         * m4/group-member.m4: Likewise.
33398         * m4/jm-macros.m4: Likewise.
33399         * m4/lstat.m4: Likewise.
33400         * m4/malloc.m4: Likewise.
33401         * m4/memcmp.m4: Likewise.
33402         * m4/nanosleep.m4: Likewise.
33403         * m4/putenv.m4: Likewise.
33404         * m4/realloc.m4: Likewise.
33405         * m4/regex.m4: Likewise.
33406         * m4/stat.m4: Likewise.
33407         * m4/strftime.m4: Likewise.
33408
33409 2000-07-02  Jim Meyering  <meyering@lucent.com>
33410
33411         * lib/quotearg.c (mbstate_t): Don't define here.
33412
33413 2000-07-02  Jim Meyering  <meyering@lucent.com>
33414
33415         * lib/nanosleep.c (SIGCONT): Define if not already defined.
33416
33417 2000-07-01  Jim Meyering  <meyering@lucent.com>
33418
33419         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
33420
33421 2000-07-01  Jim Meyering  <meyering@lucent.com>
33422
33423         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
33424         problem.
33425
33426 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33427
33428         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
33429         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
33430
33431 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
33432
33433         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
33434         per change in ../m4/ls-mntd-fs.m4.
33435         (read_filesystem_list): Ignore symbolic links.
33436
33437 2000-06-29  Jim Meyering  <meyering@lucent.com>
33438
33439         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
33440         for declaration of strcmp.
33441
33442         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
33443
33444         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
33445         Avoid warning by casting result to `char *' to remove `const'.
33446
33447 2000-06-28  Jim Meyering  <meyering@lucent.com>
33448
33449         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
33450         included by quotearg.c, for which we perform this test.  From
33451         Bruno Haible.
33452
33453 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33454
33455         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
33456         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
33457         <utmpx.h> exists, put readutmp.o into LIBOBJS.
33458
33459 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
33460
33461         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
33462
33463 2000-06-26  Paul Eggert  <eggert@twinsun.com>
33464
33465         savedir now sets errno on failure and invokes xmalloc to get memory.
33466         Fix a couple of other minor bugs while we're at it.
33467
33468         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
33469         (NAMLEN): Remove macro.
33470         (malloc, realloc): Remove decls.
33471         (stpcpy): Likewise.
33472         ("xalloc.h"): Include.
33473         (NAME_SIZE_DEFAULT): New macro.
33474         (savedir): Use xmalloc / xrealloc to allocate memory.
33475         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
33476         Skip "" directory entries.
33477         Use strlen to calculate directory entry length, since the old method
33478         is rarely used these days and isn't worth supporting.
33479         Don't use a pointer after freeing it.
33480         Check for integer overflow when calculating allocation size.
33481         Use memcpy to copy entries, instead of stpcpy.
33482         Set errno properly when returning NULL.
33483         Check for readdir error.
33484
33485 2000-06-26  Jim Meyering  <meyering@lucent.com>
33486
33487         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
33488
33489 2000-06-25  Jim Meyering  <meyering@lucent.com>
33490
33491         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
33492         Linux header bug when _XOPEN_SOURCE is defined to 500.
33493
33494 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33495
33496         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
33497         deficiency.
33498
33499 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
33500
33501         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
33502         Include xalloc.h.
33503         Don't include <stdlib.h>.  Don't declare malloc, realloc.
33504
33505 2000-06-24  Jim Meyering  <meyering@lucent.com>
33506
33507         * m4/strerror_r.m4: Revive this file -- to try out an experimental
33508         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
33509         for which strerror does return char*, but which lacks a conveniently
33510         accessible declaration of the function.  If the compile-test says
33511         strerror_r doesn't work, then resort to a `run'-test that works on
33512         BeOS and segfaults on DEC Unix.
33513
33514 2000-06-24  Jim Meyering  <meyering@lucent.com>
33515
33516         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
33517
33518 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33519
33520         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
33521         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
33522
33523 2000-06-23  Paul Eggert  <eggert@twinsun.com>
33524
33525         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
33526         (mbrtowc, mbstate_t): Define substitutes if
33527         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
33528         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
33529         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
33530
33531 2000-06-23  Jim Meyering  <meyering@lucent.com>
33532
33533         * m4/afs.m4: Add missing AC_MSG_RESULT.
33534         Reported by Bruno Haible.
33535
33536         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
33537         Suggestion from Bruno Haible.
33538
33539 2000-06-23  Jim Meyering  <meyering@lucent.com>
33540
33541         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
33542
33543 2000-06-21  Jim Meyering  <meyering@lucent.com>
33544
33545         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
33546
33547 2000-06-21  Jim Meyering  <meyering@lucent.com>
33548
33549         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
33550         (noinst_HEADERS): Add getstr.h.
33551
33552         * lib/getline.c (getstr): Move into a separate file.
33553         * lib/getstr.c (getstr): New file, extracted from getline.c, with
33554         the following changes: new parameter, delim2; both delim[12]
33555         parameters have type `int', not `char'.  The latter would lose
33556         with 8-bit delimiters.
33557         * lib/getstr.h: New file.
33558
33559 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33560
33561         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
33562         than 1024, return a memory chunk of least possible size, instead
33563         of size PATH_MAX + 2. In the loop, increment the size proportionally.
33564         Use free/xmalloc instead of xrealloc to avoid copying for very long
33565         paths.
33566
33567 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33568
33569         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
33570         the empty string.
33571
33572 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
33573
33574         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
33575         address, not strdup.  Include <stdlib.h> and don't declare free().
33576
33577 2000-06-19  Jim Meyering  <meyering@lucent.com>
33578
33579         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
33580
33581 2000-06-18  Jim Meyering  <meyering@lucent.com>
33582
33583         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
33584
33585         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
33586         `checking whether...' message to be consistent with that of the
33587         lstat test.
33588
33589 2000-06-18  Jim Meyering  <meyering@lucent.com>
33590
33591         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
33592         Besides, these days every porting target provides a mkdir function.
33593
33594         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
33595         needed. (this snippet comes from src/system.h).
33596
33597 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
33598
33599         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
33600
33601 2000-06-15  Paul Eggert  <eggert@twinsun.com>
33602
33603         * lib/human.c (adjust_value): New function.
33604         (human_readable_inexact): Apply rounding style even when
33605         printing approximate values.
33606
33607 2000-06-14  Paul Eggert  <eggert@twinsun.com>
33608
33609         * lib/human.c (human_readable_inexact): Allow an input block
33610         size that is not a multiple of the output block size, and vice versa.
33611         Reported by Piergiorgio Sartor.
33612
33613 2000-06-14  Paul Eggert  <eggert@twinsun.com>
33614
33615         * lib/getdate.y (get_date): Apply relative times after time
33616         zone indicator, not before.  Reported by Todd A. Jacobs.
33617
33618 2000-06-13  Jim Meyering  <meyering@lucent.com>
33619
33620         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
33621
33622         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
33623
33624 2000-06-12  Paul Eggert  <eggert@twinsun.com>
33625
33626         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
33627
33628 2000-06-12  Jim Meyering  <meyering@lucent.com>
33629
33630         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
33631         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
33632         optional argument.
33633         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
33634         the optional argument, `lib'.
33635
33636 2000-06-08  Jim Meyering  <meyering@lucent.com>
33637
33638         * m4/largefile.m4: Remove file (now that it's part of autoconf).
33639
33640 2000-06-04  Paul Eggert  <eggert@twinsun.com>
33641
33642         Rewrite largefile configuration so that we don't need to run
33643         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
33644         AC_CANONICAL_HOST in configure.in -- jmm]
33645
33646         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
33647         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
33648         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
33649         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
33650         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
33651         All uses changed.
33652         Instead of inspecting the output of getconf, try to compile the
33653         test program without and with the macro definition.
33654         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
33655         for getconf.  Instead, check for the needed flags by compiling
33656         test programs.
33657
33658 2000-06-04  Paul Eggert  <eggert@twinsun.com>
33659
33660         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
33661
33662 2000-06-04  Jim Meyering  <meyering@lucent.com>
33663
33664         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
33665         SunOS 4.1.4 for which gid_t is an unsigned type.
33666
33667 2000-06-03  Jim Meyering  <meyering@lucent.com>
33668
33669         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
33670         now that autoconf requires that.
33671
33672         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
33673         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
33674         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
33675
33676 2000-06-03  Jim Meyering  <meyering@lucent.com>
33677
33678         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
33679
33680 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
33681
33682         * m4/glibc21.m4: New file.
33683         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
33684
33685 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
33686
33687         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
33688         newer, don't install charset.alias.
33689         * lib/config.charset: Change the Linux/glibc rules so they become empty
33690         on glibc-2.1 or newer.
33691
33692 2000-06-02  Jim Meyering  <meyering@lucent.com>
33693
33694         * lib/mountlist.c: Back out last change.  Instead, do this...
33695         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
33696         me_dummy member using the same `ignore'-testing code.
33697         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
33698         fs_type strings.
33699         From Mark D. Roth.
33700
33701 2000-05-29  Jim Meyering  <meyering@lucent.com>
33702
33703         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
33704         mounts with the `ignore' attribute.  Based on a patch from
33705         Mark D. Roth.
33706
33707 2000-05-28  Jim Meyering  <meyering@lucent.com>
33708
33709         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
33710         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33711         * m4/stat.m4: Likewise.
33712         * m4/lstat.m4: Likewise.
33713         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
33714
33715         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
33716         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
33717
33718 2000-05-26  Jim Meyering  <meyering@lucent.com>
33719
33720         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
33721
33722 2000-05-24  Jim Meyering  <meyering@lucent.com>
33723
33724         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
33725         autoconf requires that.
33726         * m4/lib-check.m4: Likewise.
33727         * m4/jm-macros.m4: Likewise.
33728         * m4/strftime.m4: Likewise.
33729
33730         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
33731         AC_CHECK_DECLS, now that autoconf requires that.
33732
33733 2000-05-22  Jim Meyering  <meyering@lucent.com>
33734
33735         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33736         * m4/lstat.m4: Likewise.
33737
33738 2000-05-22  Jim Meyering  <meyering@lucent.com>
33739
33740         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
33741
33742 2000-05-20  Jim Meyering  <meyering@lucent.com>
33743
33744         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
33745         (jm_PREREQ): Use it.
33746
33747 2000-05-18  Jim Meyering  <meyering@lucent.com>
33748
33749         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
33750         back, too, since it may have been modified by allocate_entry.
33751         (hash_delete): Rewrite to use neither the assignment operator
33752         nor the comma operator in an if-expression.
33753
33754 2000-05-15  Paul Eggert  <eggert@twinsun.com>
33755
33756         * lib/closeout.c:
33757         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
33758         Remove; no longer needed.
33759         "quotearg.h": Add include.
33760         (file_name): Do not bother to explicitly initialize to NULL; it's less
33761         efficient on some hosts.
33762         (close_stdout_status): Remove test as to whether stdout was already
33763         closed; it breaks for the case "echo x | sort >&-".
33764         Quote file name colons.
33765         Do not assume that _("write error") lacks format strings.
33766
33767 2000-05-15  Jim Meyering  <meyering@lucent.com>
33768
33769         * lib/version-etc.c (version_etc_copyright): Update the copyright
33770         string used in all --version output.
33771
33772 2000-05-14  Jim Meyering  <meyering@lucent.com>
33773
33774         * lib/closeout.c (close_stdout_set_file_name): New function.
33775         (close_stdout_status): Use new file-scoped global.
33776         Return right away if fstat says the stdout file descriptor is invalid.
33777         * lib/closeout.h (close_stdout_set_file_name): Declare.
33778
33779 2000-05-10  Jim Meyering  <meyering@lucent.com>
33780
33781         * lib/closeout.c [default_exit_status]: New file-scoped variable.
33782         (close_stdout_set_status): New function.
33783         * lib/closeout.h (close_stdout_set_status): Declare.
33784
33785 2000-05-09  Jim Meyering  <meyering@lucent.com>
33786
33787         * m4/gettext.m4: Rename this...
33788         * m4/libintl.m4: ...to this.
33789
33790 2000-05-08  Jim Meyering  <meyering@lucent.com>
33791
33792         * lib/long-options.c: Don't include closeout.h.
33793         (parse_long_options): Don't call close_stdout for --version.
33794
33795 2000-05-06  Paul Eggert  <eggert@twinsun.com>
33796
33797         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
33798         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
33799         2.1.3 bug.  This avoids a clash when files like regex.c define
33800         _GNU_SOURCE.
33801
33802 2000-05-06  Jim Meyering  <meyering@lucent.com>
33803
33804         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
33805         (AC_REPLACE_FUNCS): Add strnlen.
33806
33807         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
33808         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
33809
33810         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
33811         AC_SEARCH_LIBS call for nanosleep.
33812         (LIB_NANOSLEEP): Set and AC_SUBST.
33813
33814 2000-05-06  Jim Meyering  <meyering@lucent.com>
33815
33816         * lib/strnlen.c: Undefine __strnlen and strnlen.
33817         [!weak_alias]: Define __strnlen to strnlen.
33818
33819         * lib/atexit.c: New file, from libiberty.
33820
33821 2000-05-06  Jim Meyering  <meyering@lucent.com>
33822
33823         * lib/closeout.c (close_stdout_status): Also check for errors on the
33824         stderr stream.
33825
33826 2000-05-05  Jim Meyering  <meyering@lucent.com>
33827
33828         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
33829         AC_SEARCH_LIBS call for clock_gettime.
33830         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
33831
33832         * m4/search-libs.m4: Update from autoconf.
33833
33834         su doesn't work on Solaris 2.6.
33835         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
33836         <shadow.h>.  Reported by Dragos Harabor.
33837
33838 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
33839
33840         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
33841         memcpy instead of xmalloc, xrealloc, path_concat.
33842         (locale_charset): Treat empty environment variables as absent.
33843         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
33844
33845 2000-05-04  Jim Meyering  <meyering@lucent.com>
33846
33847         * lib/getopt.c: Update from glibc.
33848         * lib/obstack.c: Likewise.
33849         * lib/obstack.h: Likewise.
33850         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
33851         file
33852
33853         * lib/regex.h: Likewise.
33854         * lib/strndup.c: Likewise.
33855         * lib/strnlen.c: New file, from glibc.
33856
33857 2000-05-03  Jim Meyering  <meyering@lucent.com>
33858
33859         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
33860
33861 2000-05-02  Paul Eggert  <eggert@twinsun.com>
33862
33863         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
33864         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
33865         compile-time test, rather than inspecting host and OS, to
33866         decide whether to define _LARGEFILE_SOURCE.
33867
33868 2000-05-01  Jim Meyering  <meyering@lucent.com>
33869
33870         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
33871
33872         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
33873         Based on a patch from Bruno Haible.
33874
33875 2000-05-01  Jim Meyering  <meyering@lucent.com>
33876
33877         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
33878
33879 2000-04-29  Jim Meyering  <meyering@lucent.com>
33880
33881         * lib/path-concat.c: Declare strdup only if it's not defined.
33882         * lib/canon-host.c: Likewise.
33883
33884 2000-04-28  Jim Meyering  <meyering@lucent.com>
33885
33886         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
33887         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
33888         is included first, then limits.h is included by locale.h by libintl.h.
33889         From John David Anglin.
33890
33891 2000-04-25  Jim Meyering  <meyering@lucent.com>
33892
33893         * lib/makepath.c (S_IRWXUGO): Define.
33894         (make_path): Always perform explicit chmod if MODE specifies any
33895         of the `special' permission bits.  Prompted by a bug report against
33896         install from Mate Wierdl and Joost van Baal.
33897
33898 2000-04-18  Jim Meyering  <meyering@lucent.com>
33899
33900         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
33901         (jm_PREREQ): Use it.
33902
33903 2000-04-18  Jim Meyering  <meyering@lucent.com>
33904
33905         * lib/README: New file.
33906
33907         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
33908         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
33909
33910 2000-04-17  Jim Meyering  <meyering@lucent.com>
33911
33912         Get it right :-)
33913         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
33914         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
33915         Suggestion from Akim Demaille.
33916
33917 2000-04-17  Jim Meyering  <meyering@lucent.com>
33918
33919         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
33920         the definition of it to rpl_strftime also defined-away the system's
33921         declaration.
33922
33923 2000-04-15  Jim Meyering  <meyering@lucent.com>
33924
33925         Use `C' to denote so-called `contiguous' files, the same way
33926         that tar does.
33927         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
33928         (ftypelet): Use S_ISCTG.
33929         From Michael Deutschmann.
33930
33931 2000-04-14  Jim Meyering  <meyering@lucent.com>
33932
33933         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
33934         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
33935         clobbered.
33936
33937 2000-04-14  Jim Meyering  <meyering@lucent.com>
33938
33939         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
33940
33941 2000-04-13  Jim Meyering  <meyering@lucent.com>
33942
33943         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
33944         AH_VERBATIM to insert required #ifndef into config.h.in.
33945         Suggestion from Akim Demaille.
33946
33947 2000-04-12  Jim Meyering  <meyering@lucent.com>
33948
33949         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
33950         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
33951         Christian Krackowizer.
33952
33953         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
33954         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
33955         (AC_SYS_LARGEFILE): Require.
33956         (AM_C_PROTOTYPES): Require.
33957
33958 2000-04-08  Jim Meyering  <meyering@lucent.com>
33959
33960         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
33961         names don't conflict.  Reported by Eli Zaretskii.
33962
33963 2000-04-07  Jim Meyering  <meyering@lucent.com>
33964
33965         * lib/putenv.c: Move inclusion of errno.h so it follows that of
33966         sys/types.h, to work around system header problems on AIX 3.2.5.
33967         From Bruno Haible.
33968
33969 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
33970
33971         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
33972         bug.  Deal with the different error behavior of Irix iconv.
33973
33974 2000-04-05  Paul Eggert  <eggert@twinsun.com>
33975
33976         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
33977         IRIX if the installer said otherwise.
33978
33979 2000-04-05  Jim Meyering  <meyering@lucent.com>
33980
33981         Portability tweaks required for ultrix4.3.
33982         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
33983         (jm_CHECK_DECLS): Add getutent to the list of functions.
33984         (_jm_DECL_HEADERS): Add utmpx.h.
33985         From John David Anglin.
33986
33987         * m4/strftime.m4: Back out the 2000-04-02 change.
33988         Instead of that change, simply undefine putenv in the test program.
33989
33990 2000-04-05  Jim Meyering  <meyering@lucent.com>
33991
33992         Portability tweaks required for ultrix4.3.
33993         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
33994         getutent.
33995         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
33996         * lib/canon-host.c: Declare strdup.
33997         * lib/path-concat.c: Likewise.
33998         From John David Anglin.
33999
34000 2000-04-04  Jim Meyering  <meyering@lucent.com>
34001
34002         Be more DOS 8.3-friendly.
34003         * lib/ref-add.sin: Renamed from ref-add.sed.in.
34004         * lib/ref-del.sin: Renamed from ref-del.sed.in.
34005         * lib/Makefile.am: Reflect renaming.
34006         Reported by Eli Zaretskii.
34007
34008         Use a temporary file name that won't clash with `charset.alias'
34009         in the DOS 8.3 name space.
34010         * lib/Makefile.am (charset_tmp): Define.
34011         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
34012         (uninstall-local): Likewise.
34013         Reported by Eli Zaretskii.
34014
34015 2000-04-03  Jim Meyering  <meyering@lucent.com>
34016
34017         * m4/gettext.m4: Fix typo in comment.
34018
34019         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
34020         textutils/configure.in).  Suggestion from Paul Eggert.
34021         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
34022
34023 2000-04-02  Paul Eggert  <eggert@twinsun.com>
34024
34025         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
34026         variable in the shell rather than using putenv, which isn't
34027         portable.  This avoids the configure-time inter-test dependency
34028         on the potentially-renamed putenv function.
34029
34030 2000-03-30  Paul Eggert  <eggert@twinsun.com>
34031
34032         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
34033         before checking struct stat.st_blksize, so that
34034         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
34035
34036 2000-03-29  Paul Eggert  <eggert@twinsun.com>
34037
34038         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
34039         since strftime.c uses HAVE_STRFTIME to decide whether to use
34040         the underlying strftime.
34041
34042 2000-03-29  Paul Eggert  <eggert@twinsun.com>
34043
34044         * lib/time/strftime.c (my_strftime): Make sure we call the system
34045         strftime, not ourselves, when invoking the underlying strftime.
34046
34047 2000-03-24  Jim Meyering  <meyering@lucent.com>
34048
34049         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
34050         (charset_alias): Define.
34051         (install-exec-local): Factor out common code.
34052         (uninstall-local): Split lines longer than 80.
34053         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
34054         (SUFFIXES): Define.
34055         (.sed.in.sed): New rule.  Don't redirect directly to $@.
34056         (CLEANFILES): Add ref-add.sed and ref-del.sed.
34057
34058 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
34059
34060         * lib/config.charset: Output a line containing "Packages using this
34061         file".
34062         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
34063         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
34064         ref-del.sed): New rules.
34065
34066 2000-03-17  Jim Meyering  <meyering@lucent.com>
34067
34068         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
34069         Otherwise, include <strings.h>
34070
34071 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
34072
34073         * lib/unicodeio.c (utf8_wctomb): New function.
34074         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
34075         format instead of in UCS-4 with platform dependent endianness.
34076
34077 2000-03-10  Jim Meyering  <meyering@lucent.com>
34078
34079         * m4/lib-check.m4: Look for getspnam in -lgen, too.
34080         From Marco Franzen.
34081
34082 2000-03-07  Paul Eggert  <eggert@twinsun.com>
34083
34084         * lib/savedir.c (savedir): Work even if directory size is
34085         negative; this can happen with some screwy NFS configurations.
34086
34087 2000-03-06  Jim Meyering  <meyering@lucent.com>
34088
34089         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
34090         if it's NULL (because we ran out of memory).  From Bruno Haible.
34091
34092 2000-03-05  Jim Meyering  <meyering@lucent.com>
34093
34094         * lib/localcharset.c ("path-concat.h"): Include.
34095         (get_charset_aliases): Use path_concat instead of ANSI string
34096         concatenation.
34097
34098         * lib/unicodeio.h (PARAMS): Define.
34099         Use it to guard prototype.
34100
34101 2000-03-04  Jim Meyering  <meyering@lucent.com>
34102
34103         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
34104         for lib/localcharset.c.
34105
34106 2000-03-04  Jim Meyering  <meyering@lucent.com>
34107
34108         * lib/Makefile.am (install-exec-local): Create $(libdir) before
34109         installing into it.
34110         (uninstall-local): Uncomment this rule so `make distcheck' works
34111         once again.
34112
34113         * lib/unicodeio.c (<errno.h>): Include it.
34114         (errno): Declare if not defined.
34115
34116         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
34117
34118         * lib/config.charset: New version, incorporating remarks from a linux
34119         i18n mailing list.  From Bruno Haible.
34120
34121 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
34122
34123         * m4/codeset.m4: New file.
34124         * m4/iconv.m4: New file.
34125         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
34126
34127 2000-03-03  Jim Meyering  <meyering@lucent.com>
34128
34129         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
34130
34131 2000-03-02  Jim Meyering  <meyering@lucent.com>
34132
34133         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
34134         the messages come out on separate lines.
34135
34136         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
34137         rather than jm_CHECK_DECLARATIONS.
34138         * m4/decl.m4: Remove now-unused file.
34139
34140         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
34141         geteuid.
34142
34143 2000-03-02  Jim Meyering  <meyering@lucent.com>
34144
34145         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
34146
34147 2000-03-01  Jim Meyering  <meyering@lucent.com>
34148
34149         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
34150         * lib/unicodeio.c: Likewise.
34151
34152 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
34153
34154         * lib/config.charset: New file.
34155         * lib/localcharset.c: New file.
34156         * lib/unicodeio.h, lib/unicodeio.c: New files.
34157         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
34158         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
34159         (noinst_HEADERS): Add unicodeio.h.
34160         (all-local, install-exec-local, charset.alias): New targets.
34161
34162 2000-02-28  Paul Eggert  <eggert@twinsun.com>
34163
34164         * lib/quotearg.c (ALERT_CHAR): New macro.
34165         (quotearg_buffer_restyled): Use it.
34166
34167 2000-02-27  Jim Meyering  <meyering@lucent.com>
34168
34169         * m4/check-decl.m4: Add getenv to the list.
34170
34171 2000-02-27  Jim Meyering  <meyering@lucent.com>
34172
34173         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
34174         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
34175
34176         * lib/backupfile.c: Guard inclusion of stdlib.h with
34177         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
34178         Declare malloc if needed.
34179
34180         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
34181         `#ifndef HAVE_DECL..'
34182         now that autoconf always defines the HAVE_DECL_ symbols.
34183         * lib/human.c: Likewise.
34184         * lib/same.c: Likewise.
34185         * lib/strtoumax.c: Likewise.
34186
34187         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
34188         declaration check was not run.
34189         * lib/hash.c: Likewise.
34190         * lib/human.c: Likewise.
34191         * lib/same.c: Likewise.
34192         * lib/strtoumax.c: Likewise.
34193
34194         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
34195         `.', then first look up the entire `.'-containing string as a login
34196         name.
34197
34198 2000-02-23  Jim Meyering  <meyering@lucent.com>
34199
34200         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
34201         in place of my hack.
34202
34203 2000-02-18  Paul Eggert  <eggert@twinsun.com>
34204
34205         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
34206         (textint): New typedef.
34207         (parser_control): Member year changed from int to textint.
34208         All uses changed.
34209         (YYSTYPE): Removed; replaced by %union with int and textint members.
34210         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
34211         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
34212         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
34213         (tSNUMBER, tUNUMBER): Now of type <textintval>.
34214         (date, number, to_year): Use width of number in digits, not its value,
34215         to determine whether it's a 2-digit year, or a 2-digit time.
34216         (yylex): Store number of digits of numeric tokens.
34217         Reported by John Kendall.
34218
34219         (parser_control): Changed from struct parser_control to typedef (for
34220         consistency).  All uses changed.
34221
34222         (tID): Removed; not used.
34223         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
34224
34225 2000-02-14  Paul Eggert  <eggert@twinsun.com>
34226
34227         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
34228         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
34229
34230 2000-02-12  Jim Meyering  <meyering@lucent.com>
34231
34232         * lib/userspec.c (ISDIGIT): Define it.
34233         (isdigit): Remove definition.
34234         (is_number): Use ISDIGIT, not isdigit.
34235         <libintl.h>: Include.
34236         (_ and N_): Define.
34237         (parse_user_spec): Mark translatable strings.
34238
34239 2000-02-10  Jim Meyering  <meyering@lucent.com>
34240
34241         With these changes, nanosleep.[ch] are finally enough like the other
34242         lib/* replacement files to compile on a few more losing systems.
34243
34244         * lib/nanosleep.h: Don't include config.h.
34245         Remove prototype from declaration of nanosleep.
34246         (PARAMS): Remove now-unneeded definition.
34247         * lib/nanosleep.c: #undef nanosleep.
34248         (rpl_nanosleep): Rename from nanosleep.
34249
34250 2000-02-10  Jim Meyering  <meyering@lucent.com>
34251
34252         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
34253         gnu_nanosleep to rpl_nanosleep.
34254
34255 2000-02-09  Jim Meyering  <meyering@lucent.com>
34256
34257         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
34258         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
34259
34260 2000-02-08  Akim Demaille  <akim@epita.fr>
34261
34262         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
34263         `[' and `]' and remove uses of `changequote'.
34264         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
34265         (AC_SYS_LARGEFILE): Likewise.
34266         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
34267         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
34268         of changequote.
34269         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
34270         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
34271         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
34272         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
34273
34274 2000-02-05  Jim Meyering  <meyering@lucent.com>
34275
34276         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
34277         Remove explicit use of AC_HEADER_TIME.  It is required by
34278         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
34279         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
34280         in autoconf whereby the expansion of the latter ended up preceding
34281         the expansion of its prerequisite, AC_HEADER_TIME.
34282         Reported by Volker Borchert.
34283
34284 2000-02-03  Jim Meyering  <meyering@lucent.com>
34285
34286         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
34287
34288 2000-02-03  Jim Meyering  <meyering@lucent.com>
34289
34290         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
34291         rather than with `#if HAVE_UTMPNAME'.
34292
34293 2000-02-02  Jim Meyering  <meyering@lucent.com>
34294
34295         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
34296         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
34297         Reported by Eli Zaretskii.
34298
34299 2000-02-01  Jim Meyering  <meyering@lucent.com>
34300
34301         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
34302
34303 2000-01-31  Jim Meyering  <meyering@lucent.com>
34304
34305         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
34306         functions.  Add the time.h and sys/time.h headers along with the
34307         AC_REQUIRE'ment of AC_HEADER_TIME.
34308
34309 2000-01-31  Jim Meyering  <meyering@lucent.com>
34310
34311         * lib/nanosleep.h (nanosleep): Guard declaration with
34312         `#if ! HAVE_DECL_NANOSLEEP'.
34313         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
34314         the declaration in that vendor's sys/timers.h.
34315         Reported by Christian Krackowizer.
34316
34317         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
34318         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
34319         (ISPRINT): Likewise.
34320         Reported by Tom Tromey.
34321
34322 2000-01-30  Jim Meyering  <meyering@lucent.com>
34323
34324         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
34325
34326         * m4/prereq.m4 (utmp_includes): Define.
34327         Check for ut_user and ut_name members in both struct utmpx
34328         and struct utmp.
34329
34330 2000-01-30  Jim Meyering  <meyering@lucent.com>
34331
34332         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
34333         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
34334         header files where only utmpx.ut_user is declared.
34335
34336         * lib/readutmp.h (UT_USER): Define.
34337
34338 2000-01-29  Jim Meyering  <meyering@lucent.com>
34339
34340         * m4/lib-check.m4: New file containing library-related checks from
34341         fileutils and sh-utils (textutils had none).
34342
34343 2000-01-28  Jim Meyering  <meyering@lucent.com>
34344
34345         * m4/perl.m4: Change format of warning message to look more like that
34346         from the missing script.  Suggestion from François Pinard.
34347
34348 2000-01-25  Jim Meyering  <meyering@lucent.com>
34349
34350         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
34351         well as time.h in the compile check.
34352         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
34353         Fix typo in cross-compiling case: s/yes/no/.
34354
34355 2000-01-23  Jim Meyering  <meyering@lucent.com>
34356
34357         * m4/jm-macros.m4: Move df-related tests here from
34358         fileutils/configure.in
34359
34360         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
34361         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
34362
34363         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
34364         s/space/ac_fsusage_space/.
34365         (jm_FILE_SYSTEM_USAGE): Take two parameters.
34366
34367         * m4/ftruncate.m4: New file (derived from part of
34368         fileutils/configure.in).
34369         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
34370         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
34371
34372         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
34373         AC_SUBST these here, rather than just in sh-util/configure.in, so
34374         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
34375         all the same.
34376         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
34377         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
34378         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
34379         (AC_SUBST(POW_LIBM)): Likewise.
34380         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
34381
34382 2000-01-23  Jim Meyering  <meyering@lucent.com>
34383
34384         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
34385         obstack.c.
34386
34387 2000-01-22  Jim Meyering  <meyering@lucent.com>
34388
34389         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
34390
34391         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
34392
34393         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
34394         configure.in
34395         (AC_CHECK_HEADERS): Likewise for sh-utils.
34396         (AC_CHECK_HEADERS): Likewise for textutils.
34397         Merge the three lists of headers.
34398
34399         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
34400         from fileutils' configure.in.
34401
34402         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
34403         code. Moved tests into their own function (_jm_DECL_HEADERS) in
34404         check-decl.m4.
34405
34406         * m4/check-decl.m4: Use #if rather than #ifdef.
34407         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
34408         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
34409         (_jm_DECL_HEADERS): Define new function.
34410         (jm_CHECK_DECLARATIONS): Require it.
34411
34412 2000-01-22  Jim Meyering  <meyering@lucent.com>
34413
34414         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
34415         [! HAVE_DECL_STRTOULL]: Declare strtoull.
34416         Required for some AIX systems.  Reported by Christian Krackowizer.
34417         [TESTING] (main): New function.
34418
34419         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
34420         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
34421         letters.
34422
34423         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
34424         iswprint.
34425
34426         * lib/strverscmp.c (ISDIGIT): Define.
34427         (strverscmp): Use ISDIGIT, not isdigit.
34428
34429 2000-01-19  Jim Meyering  <meyering@lucent.com>
34430
34431         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
34432         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
34433         defines `struct timespec' in <sys/time.h>
34434
34435         * m4/c-bs-a.m4: Remove uses of changequote altogether.
34436         Thanks to Akim for explaining.
34437
34438 2000-01-17  Paul Eggert  <eggert@twinsun.com>
34439
34440         * lib/nanosleep.c (nanosleep):
34441         Don't use SA_INTERRUPT to decide whether to call sigaction, as
34442         POSIX.1 doesn't require SA_INTERRUPT and some systems
34443         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
34444         it's been part of POSIX.1 since day 1 (in 1988).
34445
34446 2000-01-17  Jim Meyering  <meyering@lucent.com>
34447
34448         * lib/interlock: Remove unused file.  Reported by François Pinard.
34449
34450 2000-01-16  Paul Eggert  <eggert@twinsun.com>
34451
34452         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
34453         alert, backslash, formfeed, and vertical tab unnecessarily in
34454         shell quoting style.
34455
34456 2000-01-16  Jim Meyering  <meyering@lucent.com>
34457
34458         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
34459         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
34460         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
34461         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
34462
34463 2000-01-16  Jim Meyering  <meyering@lucent.com>
34464
34465         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
34466         because the latter didn't work.
34467
34468 2000-01-15  Jim Meyering  <meyering@lucent.com>
34469
34470         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
34471         (AC_REPLACE_FUNCS): Add memcpy and memset.
34472         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
34473         Add strpbrk.
34474         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
34475
34476 2000-01-12  Jim Meyering  <meyering@lucent.com>
34477
34478         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
34479         (jm_PREREQ): Use it.
34480         (jm_PREREQ_READUTMP): New macro.
34481         (jm_PREREQ): Use it.
34482
34483 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34484
34485         Quote multibyte characters correctly.
34486         * m4/c-bs-a.m4: New file.
34487         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
34488         (jm_PREREQ): Use it.
34489
34490 2000-01-11  Paul Eggert  <eggert@twinsun.com>
34491
34492         * m4/uintmax_t.m4: Port to autoconf 2.13.
34493
34494 2000-01-08  Jim Meyering  <meyering@ascend.com>
34495
34496         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
34497         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
34498
34499 2000-01-04  Jim Meyering  <meyering@ascend.com>
34500
34501         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
34502         jm_STRUCT_DIRENT_D_TYPE.
34503         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
34504         jm_STRUCT_DIRENT_D_INO.
34505         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
34506         jm_STRUCT_UTIMBUF.
34507         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
34508         renamings.
34509         * m4/utime.m4: Likewise.
34510
34511         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
34512         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
34513
34514 2000-01-03  Paul Eggert  <eggert@twinsun.com>
34515
34516         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
34517         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
34518
34519 2000-01-02  Jim Meyering  <meyering@ascend.com>
34520
34521         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
34522         remember if this is necessary.
34523
34524 1999-12-26  Jim Meyering  <meyering@ascend.com>
34525
34526         * m4/jm-macros.m4: Use it here.
34527         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
34528
34529 1999-12-23  Jim Meyering  <meyering@ascend.com>
34530
34531         * m4/jm-macros.m4: Check for clock_gettime (moved from
34532         fileutils/configure.in)
34533         Check for gettimeofday.
34534
34535 1999-12-20  Jim Meyering  <meyering@ascend.com>
34536
34537         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
34538         autoconf-2.14a-1999-12-20.
34539
34540 1999-12-19  Jim Meyering  <meyering@ascend.com>
34541
34542         * m4/lstat-slash.m4: New file.
34543         * m4/jm-macros.m4: Use the new macro:
34544         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
34545
34546 1999-12-07  Jim Meyering  <meyering@ascend.com>
34547
34548         * m4/perl.m4: Require that File::Compare be available, too.
34549         Too many systems seem to lack it.
34550
34551         * m4/strftime.m4: Add checks for most of the cpp macros tested in
34552         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
34553
34554 1999-11-18  Paul Eggert  <eggert@twinsun.com>
34555
34556         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
34557         problem with the QNX 4.25 shell, which doesn't propagate exit
34558         status of failed commands inside shell assignments.
34559
34560 1999-11-17  Jim Meyering  <meyering@ascend.com>
34561
34562         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
34563
34564 1999-11-07  Jim Meyering  <meyering@ascend.com>
34565
34566         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
34567
34568 1999-11-06  Jim Meyering  <meyering@ascend.com>
34569
34570         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
34571         * m4/jm-macros.m4 (jm_MACROS): Use it here.
34572
34573 1999-11-05  Jim Meyering  <meyering@ascend.com>
34574
34575         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
34576         configure.in of textutils, fileutils, and sh-utils into this one
34577         (shared between those packages) file.
34578         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
34579         AC_STRUCT_ST_BLKSIZE.
34580
34581 1999-11-03  Jim Meyering  <meyering@ascend.com>
34582
34583         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
34584         of AC_CHECK_TYPE checks includes unistd.h.
34585         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
34586         Suggestion from Akim Demaille.
34587
34588 1999-10-30  Jim Meyering  <meyering@ascend.com>
34589
34590         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
34591         m4-quoted string.
34592         * m4/ls-mntd-fs.m4: Likewise.
34593         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
34594         * m4/jm-winsz1.m4: Likewise.
34595
34596         * m4/const.m4: Remove file, since the fix made it into the experimental
34597         version of autoconf.
34598         * m4/mktime.m4: Likewise.
34599
34600         * m4/check-type.m4: Remove file, now that the latest version of
34601         AC_CHECK_TYPE takes a third arg to specify additional #includes.
34602
34603         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
34604         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
34605         AC_CHECK_TYPE.
34606
34607 1999-10-04  Jim Meyering  <meyering@ascend.com>
34608
34609         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
34610
34611 1999-09-22  Paul Eggert  <eggert@twinsun.com>
34612
34613         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
34614         2.95.1 bug with HP-UX 10.20.
34615
34616 1999-09-17  Jim Meyering  <meyering@ascend.com>
34617
34618         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
34619         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
34620         due to missing strdup (against sh-utils-2.0).
34621
34622 1999-08-29  Jim Meyering  <meyering@ascend.com>
34623
34624         * m4/jm-macros.m4: Require jm_BISON.
34625         * m4/bison.m4: New file.
34626
34627 1999-08-17  Paul Eggert  <eggert@twinsun.com>
34628
34629         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
34630         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
34631
34632 1999-08-05  Jim Meyering  <meyering@ascend.com>
34633
34634         * m4/getline.m4: Rename test file from conftestdata to conftest.data
34635         to avoid conflicts with `conftest' on 8+3 filesystems.
34636         Suggestion from Eli Zaretskii.
34637
34638 1999-08-04  Jim Meyering  <meyering@ascend.com>
34639
34640         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
34641         fileutils and sh-utils (textutils's getline test was inadequate).
34642         (AM_FUNC_GETLINE): Run this test.
34643         (AC_CHECK_FUNCS): Check for getdelim.
34644         Reported by Bob Proulx.
34645
34646 1999-08-02  Jim Meyering  <meyering@ascend.com>
34647
34648         * m4/jm-macros.m4: Add a comment.
34649
34650 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34651
34652         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
34653         <inttypes.h> defines strtoumax as a macro (and not as a
34654         function).
34655
34656 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34657
34658         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
34659         that we can shift, multiply and divide unsigned long long
34660         values; Ultrix cc can't do it.
34661
34662 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34663
34664         * m4/mktime.m4: New file, which is a preview of what should appear
34665         in the next public autoconf release.
34666
34667 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34668
34669         * m4/lfs.m4: Remove this file.
34670         * m4/largefile.m4: New file.  It contains the old contents of
34671         lfs.m4, except that all names with prefix AC_LFS have been
34672         changed to use the prefix AC_SYS_LARGEFILE instead, to be
34673         compatible with future autoconf versions.  Also, some minor m4
34674         quoting problems have been fixed.
34675
34676 1999-08-01  Paul Eggert  <eggert@twinsun.com>
34677
34678         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
34679         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
34680         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
34681         and simplify the shell code.
34682
34683 1999-08-01  Jim Meyering  <meyering@ascend.com>
34684
34685         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
34686         m4.
34687
34688 1999-07-20  Jim Meyering  <meyering@ascend.com>
34689
34690         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
34691
34692 1999-07-15  Jim Meyering  <meyering@ascend.com>
34693
34694         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
34695
34696 1999-05-22  Jim Meyering  <meyering@ascend.com>
34697
34698         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
34699
34700 1999-05-20  Jim Meyering  <meyering@ascend.com>
34701
34702         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
34703         Add a colon after each `then' in case $4 is empty.
34704
34705 1999-05-16  Jim Meyering  <meyering@ascend.com>
34706
34707         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
34708
34709 1999-05-10  Jim Meyering  <meyering@ascend.com>
34710
34711         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
34712
34713         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
34714         AC_FUNC_MKTIME.
34715
34716 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
34717
34718         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
34719
34720 1999-05-04  Paul Eggert  <eggert@twinsun.com>
34721
34722         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
34723         not CPPFLAGS, so that linking works correctly in IRIX.
34724
34725 1999-04-30  Paul Eggert  <eggert@twinsun.com>
34726
34727         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
34728
34729 1999-04-20  Paul Eggert  <eggert@twinsun.com>
34730
34731         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
34732         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
34733         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
34734         jm_AC_TYPE_UNSIGNED_LONG_LONG.
34735         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
34736
34737         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
34738
34739 1999-04-20  Jim Meyering  <meyering@ascend.com>
34740
34741         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
34742         AC_REPLACE xstroull if necessary.  From Paul Eggert.
34743         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
34744
34745 1999-04-18  Jim Meyering  <meyering@ascend.com>
34746
34747         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
34748         * m4/jm-macros.m4: Use it.
34749
34750 1999-04-06  Jim Meyering  <meyering@ascend.com>
34751
34752         * m4/strftime.m4: Remove test for %f.
34753
34754 1999-03-29  Jim Meyering  <meyering@ascend.com>
34755
34756         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
34757         superset of the AC_TYPE_* checks in the textutils, fileutils,
34758         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
34759         AC_TYPE_PID_T.
34760
34761 1999-03-28  Jim Meyering  <meyering@ascend.com>
34762
34763         * m4/jm-macros.m4: Define GNU_PACKAGE here.
34764         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
34765         replaced e.g., in the *.sh files of the sh-utils.
34766
34767 1999-03-20  Jim Meyering  <meyering@ascend.com>
34768
34769         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
34770         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
34771         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
34772
34773 1999-03-19  Jim Meyering  <meyering@ascend.com>
34774
34775         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
34776
34777 1999-03-12  Jim Meyering  <meyering@ascend.com>
34778
34779         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
34780
34781 1999-03-07  Jim Meyering  <meyering@ascend.com>
34782
34783         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
34784         declared.
34785
34786 1999-02-17  Jim Meyering  <meyering@ascend.com>
34787
34788         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
34789         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
34790
34791 1999-02-07  Jim Meyering  <meyering@ascend.com>
34792
34793         * m4/group-member.m4: New file -- extracted from sh-utils'
34794         configure.in.
34795
34796         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
34797         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
34798
34799 1999-02-06  Jim Meyering  <meyering@ascend.com>
34800
34801         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
34802         * m4/fnmatch.m4: Likewise.
34803         * m4/getgroups.m4: Likewise.
34804         * m4/lstat.m4: Likewise.
34805         * m4/malloc.m4: Likewise.
34806         * m4/putenv.m4: Likewise.
34807         * m4/realloc.m4: Likewise.
34808         * m4/regex.m4: Likewise.
34809         * m4/stat.m4: Likewise.
34810         * m4/strftime.m4: Likewise.
34811         Suggestion from Alain Magloire.
34812
34813         * m4/chown.m4: Use `.$ac_objext', not `.o'.
34814         * m4/fnmatch.m4: Likewise.
34815         * m4/getgroups.m4: Likewise.
34816         * m4/getline.m4: Likewise.
34817         * m4/lstat.m4: Likewise.
34818         * m4/malloc.m4: Likewise.
34819         * m4/memcmp.m4: Likewise.
34820         * m4/putenv.m4: Likewise.
34821         * m4/realloc.m4: Likewise.
34822         * m4/regex.m4: Likewise.
34823         * m4/stat.m4: Likewise.
34824         * m4/strftime.m4: Likewise.
34825         Suggestion from Alain Magloire.
34826
34827         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
34828         an argument.
34829
34830         * m4/regex.m4: Add a run-time Test for proper operation of
34831         re_compile_pattern.
34832
34833 1999-01-31  Jim Meyering  <meyering@ascend.com>
34834
34835         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
34836
34837 1999-01-30  Jim Meyering  <meyering@ascend.com>
34838
34839         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
34840
34841         * m4/jm-mktime.m4: Make this a wrapper around the official
34842         AM_FUNC_MKTIME rather than my private copy, now that the official one
34843         is up to date.
34844         * m4/mktime.m4: Remove file.
34845
34846         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
34847         * m4/uptime.m4: Likewise.
34848         * m4/uintmax_t.m4: Likewise.
34849
34850 1999-01-28  Jim Meyering  <meyering@ascend.com>
34851
34852         * m4/jm-macros.m4: Use jm_AFS.
34853         * m4/afs.m4: New file (from fileutils' configure.in).
34854
34855         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
34856         * m4/chown.m4: Likewise.
34857         * m4/d-ino.m4: Likewise.
34858         * m4/d-type.m4: Likewise.
34859         * m4/fnmatch.m4: Likewise.
34860         * m4/getgroups.m4: Likewise.
34861         * m4/gettext.m4: Likewise.
34862         * m4/jm-mktime.m4: Likewise.
34863         * m4/jm-winsz2.m4: Likewise.
34864         * m4/lcmessage.m4: Likewise.
34865         * m4/ls-mntd-fs.m4: Likewise.
34866         * m4/malloc.m4: Likewise.
34867         * m4/memcmp.m4: Likewise.
34868         * m4/putenv.m4: Likewise.
34869         * m4/realloc.m4: Likewise.
34870         * m4/st_mtim.m4: Likewise.
34871         * m4/strftime.m4: Likewise.
34872
34873 1999-01-16  Jim Meyering  <meyering@ascend.com>
34874
34875         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
34876         (ARGMATCH_DIE_DECL): Define.
34877
34878 1999-01-12  Jim Meyering  <meyering@ascend.com>
34879
34880         * m4/Makefile.am.in: Rewrite to avoid using fmt.
34881         Reported by Lars Hecking.
34882
34883 1999-01-10  Jim Meyering  <meyering@ascend.com>
34884
34885         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
34886         gross kludge.
34887         * m4/inttypes_h.m4: Likewise.
34888         * m4/lstat.m4: Likewise.
34889         * m4/malloc.m4: Likewise.
34890         * m4/readdir.m4: Likewise.
34891         * m4/realloc.m4: Likewise.
34892         * m4/st_dm_mode.m4: Likewise.
34893         * m4/stat.m4: Likewise.
34894         * m4/utimbuf.m4: Likewise.
34895         * m4/utimes.m4: Likewise.
34896
34897         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
34898         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
34899         comments in config.h.in are meaningful.
34900
34901         * m4/jm-macros.m4: Require autoconf-2.13 here.
34902
34903         * m4/regex.m4: By default, don't use the included regex.c on systems
34904         with glibc 2.  Suggestion from Uli Drepper.
34905
34906 1999-01-02  Jim Meyering  <meyering@ascend.com>
34907
34908         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
34909
34910 1998-12-18  Jim Meyering  <meyering@ascend.com>
34911
34912         * m4/Makefile.am.in (Makefile.am): Simplify rule.
34913         Based on a suggestion from Lars Hecking.
34914
34915 1998-11-16  Paul Eggert  <eggert@twinsun.com>
34916
34917         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
34918
34919 1998-11-16  Jim Meyering  <meyering@ascend.com>
34920
34921         * m4/lfs.m4: Double-quote the `uname...` expression.
34922
34923 1998-11-14  Jim Meyering  <meyering@ascend.com>
34924
34925         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
34926         * m4/stat.m4: Likewise.
34927
34928 1998-11-03  Jim Meyering  <meyering@ascend.com>
34929
34930         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
34931         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
34932
34933 1998-10-18  Jim Meyering  <meyering@ascend.com>
34934
34935         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
34936
34937 1998-10-17  Jim Meyering  <meyering@ascend.com>
34938
34939         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
34940         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
34941         calls for those previously hard-coded headers.  Instead, take a new
34942         parameter.
34943         (jm_CHECK_DECLARATIONS): Reflect interface change.
34944         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
34945         (jm_CHECK_DECL_LOCALTIME_R): New macro.
34946
34947         * m4/mktime.m4: Test for spring-forward gap before long-running test.
34948
34949 1998-10-14  Jim Meyering  <meyering@ascend.com>
34950
34951         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
34952         instead of "TZ=America/Vancouver".  From Paul Eggert.
34953
34954 1998-10-11  Jim Meyering  <meyering@ascend.com>
34955
34956         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
34957         This adds a test for a recently added compatibility fix for mktime.c.
34958         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
34959
34960 1998-09-27  Jim Meyering  <meyering@ascend.com>
34961
34962         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
34963
34964         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
34965         ../configure.in, including a change from Gordon Matzigkeit to allow
34966         cross-compiling for the Hurd.
34967
34968         * m4/glibc.m4: New file/macro to test for the GNU C Library
34969         versions 1 and 2.  From Gordon Matzigkeit.
34970         Indent.
34971
34972 1998-09-21  Jim Meyering  <meyering@ascend.com>
34973
34974         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
34975
34976 1998-08-18  Paul Eggert  <eggert@twinsun.com>
34977
34978         Port nanosecond-resolution times to UnixWare 2.1.2 and
34979         pedantic Solaris 2.6.
34980
34981         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
34982         AC_STRUCT_ST_MTIM.
34983         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
34984         Generate name of ns member, instead of just 1 or undef.
34985         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
34986
34987 1998-08-15  Jim Meyering  <meyering@ascend.com>
34988
34989         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
34990         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
34991         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
34992         instead of jm_TYPE_SSIZE_T.
34993
34994 1998-08-12  Jim Meyering  <meyering@ascend.com>
34995
34996         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
34997
34998 1998-08-02  Jim Meyering  <meyering@ascend.com>
34999
35000         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
35001         in acconfig.h manually.
35002
35003 1998-07-31  Paul Eggert  <eggert@twinsun.com>
35004
35005         * m4/st_mtim.m4: New file.
35006
35007 1998-07-28  Jim Meyering  <meyering@ascend.com>
35008
35009         * m4/utimes.m4: Undef stat.
35010
35011 1998-07-25  Jim Meyering  <meyering@ascend.com>
35012
35013         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
35014         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
35015
35016 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
35017
35018         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
35019         uid and gid actually remain unchanged.
35020
35021 1998-07-07  Jim Meyering  <meyering@ascend.com>
35022
35023         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
35024
35025 1998-07-04  Jim Meyering  <meyering@ascend.com>
35026
35027         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
35028         to prove that this macro can be used in packages without regex.c.
35029
35030 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
35031
35032         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
35033         is to be used.
35034
35035 1998-07-03  Jim Meyering  <meyering@ascend.com>
35036
35037         * m4/gettext.m4: Add -lintl if it's found to be necessary.
35038
35039         * m4/gettext.m4: New file -- from gettext-0.10.35.
35040         * m4/lcmessage.m4: Likewise.
35041         * m4/progtest.m4: Likewise.
35042
35043         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
35044         * m4/jm-macros.m4: Require the new macro.
35045
35046 1998-06-29  Jim Meyering  <meyering@ascend.com>
35047
35048         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
35049         for the definition of NGROUPS (used in a system header included
35050         by sys/mount.h).
35051
35052 1998-06-28  Jim Meyering  <meyering@ascend.com>
35053
35054         * m4/ls-mntd-fs.m4: New file.
35055         * m4/fstypename.m4: New file.
35056
35057         * m4/jm-macros.m4: Require the new macro.
35058         * m4/jm-glibc-io.m4: New file.
35059
35060 1998-05-19  Jim Meyering  <meyering@ascend.com>
35061
35062         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
35063         * m4/lchown.m4: New file.
35064
35065         * m4/Makefile.am.in: New file.
35066         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
35067
35068 1998-05-14  Jim Meyering  <meyering@ascend.com>
35069
35070         * m4/Makefile.am (EXTRA_DIST): Add them.
35071         * m4/jm-macros.m4: New file.
35072         * m4/utimbuf.m4: New file.
35073
35074 1998-05-12  Jim Meyering  <meyering@ascend.com>
35075
35076         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
35077
35078 1998-05-11  Jim Meyering  <meyering@ascend.com>
35079
35080         * m4/isc-posix.m4: New file.
35081
35082 1998-05-10  Jim Meyering  <meyering@ascend.com>
35083
35084         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
35085
35086 1998-05-09  Jim Meyering  <meyering@ascend.com>
35087
35088         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
35089         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
35090         with automake.
35091
35092         * m4/ssize_t.m4: New file.
35093         * m4/mktime.m4: Remove file -- the new automake has this now.
35094
35095 1998-04-26  Jim Meyering  <meyering@ascend.com>
35096
35097         * m4/assert.m4: New file.
35098         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
35099
35100 1998-04-05  Jim Meyering  <meyering@ascend.com>
35101
35102         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
35103         (jm_PREREQ): Use it here.
35104
35105 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
35106
35107         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
35108         in acconfig.h.
35109
35110 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
35111
35112         * m4/prereq.m4: New file.
35113         * m4/error.m4: New file.
35114         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
35115
35116 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
35117
35118         * m4/getline.m4: Don't set am_cv_func_working_getline before the
35119         cache-check for the same variable -- that defeated the purpose of
35120         the test; the test program was never run.  This was a problem only
35121         on systems with losing getline functions -- HP-UX 10.20 is one.
35122         Reported by Bjorn Helgaas.
35123
35124 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
35125
35126         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
35127
35128 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
35129
35130         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
35131
35132         * m4/const.m4: New file.  Use an initializer in this declaration
35133         typedef int charset[2]; const charset x;
35134         Reported by Bob Glickstein.
35135
35136 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
35137
35138         * m4/chown.m4: Fix reversed types on -1 args to chown.
35139         From Kaveh Ghazi.
35140
35141 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
35142
35143         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
35144         Add lseek and memchr.
35145
35146         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
35147         T.E.Dickey <dickey@clark.net> said that some older preprocessors
35148         have a 20-character limit on names.
35149
35150 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
35151
35152         * m4/inttypes_h.m4: New file.
35153         * m4/uintmax_t.m4: New file.
35154         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
35155
35156 Copyright (C) 1997-2007 Free Software Foundation, Inc.
35157 Copying and distribution of this file, with or without modification,
35158 are permitted provided the copyright notice and this notice are preserved.